# $Id: /mirror/perl/XML-RSS-LibXML/trunk/lib/XML/RSS/LibXML/Namespaces.pm 2259 2007-05-07T14:41:59.593216Z daisuke $ # # Copyright (c) 2005-2007 Daisuke Maki # All rights reserved. package XML::RSS::LibXML::Namespaces; use strict; use warnings; use base qw(Exporter); use vars qw(@EXPORT_OK); my %KnownNamespaces; my %RevKnownNamespaces; BEGIN { %KnownNamespaces = ( rdf => "http://www.w3.org/1999/02/22-rdf-syntax-ns#", dc => "http://purl.org/dc/elements/1.1/", syn => "http://purl.org/rss/1.0/modules/syndication/", admin => "http://webns.net/mvcb/", content => "http://purl.org/rss/1.0/modules/content/", cc => "http://web.resource.org/cc/", taxo => "http://purl.org/rss/1.0/modules/taxonomy/", rss20 => "http://backend.userland.com/rss2", # really a dummy rss10 => "http://purl.org/rss/1.0/", rss09 => "http://my.netscape.com/rdf/simple/0.9/", ); %RevKnownNamespaces = map { ($KnownNamespaces{$_} => $_) } keys %KnownNamespaces; my %constants; while (my ($prefix, $ns) = each %KnownNamespaces) { $constants{'NS_' . uc($prefix)} = $ns; } require constant; constant->import(\%constants); @EXPORT_OK = keys %constants; } sub lookup_prefix { $RevKnownNamespaces{$_[0]} } sub lookup_uri { $KnownNamespaces{$_[0]} } 1; __END__ =head1 NAME XML::RSS::LibXML::Namespaces - Utility Catalog For Known Namespacee =head1 SYNOPSIS use XML::RSS::LibXML::Namespaces qw(NS_RSS10); print NS_RSS10, "\n"; XML::RSS::LibXML::Namespaces::lookup_uri('rdf'); =head1 FUNCTIONS =head2 lookup_uri($prefix) =head2 lookup_prefix($uri) =cut