DOKK / manpages / debian 12 / libattean-perl / Attean::TermMap.3pm.en
Attean::TermMap(3pm) User Contributed Perl Documentation Attean::TermMap(3pm)

Attean::TermMap - Mapping terms to new terms

This document describes Attean::TermMap version 0.033

  use v5.14;
  use Attean;
  my $m = Attean::TermMap->short_blank_map;
  my $new_blank = $m->map( Attean::Blank->new('abcdefg') );
  say $new_blank->ntriples_string; # _:a

The Attean::TermMap class represents a one-way mapping process from and to Attean::API::Term objects. This mapping may rename the blank identifiers, skolemize nodes, or map the nodes in some other, custom way.

It conforms to the Attean::API::Mapper role.

"mapper"
A CODE reference that will map Attean::API::Term objects to (possibly different) term objects.

"canonicalization_map"
Returns a new Attean::TermMap that canonicalizes recognized typed Attean::API::Literal values.
"uuid_blank_map"
Returns a new Attean::TermMap that renames blank nodes with UUID values.
"short_blank_map"
Returns a new Attean::TermMap that renames blank nodes with short alphabetic names (e.g. _:a, _:b).
"rewrite_map( \%map )"
Given %map whose keys are term "as_string" serializations, and objects are Attean::API::Term objects, returns a new term map object that maps terms matching entries in %map, and all other terms to themselves.

"map( $term )"
Returns the term that is mapped to by the supplied $term.
"binding_mapper"
Returns a mapping function reference that maps Attean::API::Binding objects by mapping their constituent mapped Attean::API::Term objects.

Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/attean/issues>.

Gregory Todd Williams "<gwilliams@cpan.org>"

Copyright (c) 2014--2022 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2022-10-06 perl v5.34.0