Provided by: librdf-trine-perl_1.019-2_all bug


       RDF::Trine::NamespaceMap - Collection of Namespaces


       This document describes RDF::Trine::NamespaceMap version 1.019


           use RDF::Trine::NamespaceMap;
           my $map = RDF::Trine::NamespaceMap->new( \%namespaces );
           $serializer->serialize_model_to_string( $model, namespaces => $map );

           $map->add_mapping( foaf => '' );
           my $foaf_namespace = $map->foaf;
           my $foaf_person    = $map->foaf('Person');


       This module provides an object to manage multiple namespaces for creating
       RDF::Trine::Node::Resource objects and for serializing.


       "new ( [ \%namespaces ] )"
           Returns a new namespace map object. You can pass a hash reference with mappings from
           local names to namespace URIs (given as string or RDF::Trine::Node::Resource).

       "add_mapping ( $name => $uri )"
           Adds a new namespace to the map. The namespace URI can be passed as string or some
           object, that provides an uri_value method.

       "remove_mapping ( $name )"
           Removes a namespace from the map.

       "namespace_uri ( $name )"
           Returns the namespace object (if any) associated with the given name.

           Returns an array of RDF::Trine::Namespace objects with all the namespaces.

           Returns an array of prefixes.

       "uri ( $prefixed_name )"
           Returns a URI (as RDF::Trine::Node::Resource) for an abbreviated string such as

       prefix_for "uri ($uri)"
           Returns the associated prefix (or potentially multiple prefixes, in list context) for
           the given URI.

       abbreviate "uri ($uri)"
           Complement to "namespace_uri". Returns the given URI in "foo:bar" format or "undef" if
           it wasn't matched, therefore the idiom

               my $str = $nsmap->abbreviate($uri_node) || $uri_node->uri_value;

           may be useful for certain serialization tasks.


       Avoid using the names 'can', 'isa', 'VERSION', and 'DOES' as namespace prefix, because
       these names are defined as method for every Perl object by default.  The method names
       'new' and 'uri' are also forbidden.


       Please report any bugs or feature requests to through the GitHub web interface at


       Gregory Todd Williams  "<>"


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