/usr/share/perl5/XML/Atom.pm is in libxml-atom-perl 0.41-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | # $Id$
package XML::Atom;
use strict;
use 5.008_001;
our $VERSION = '0.41';
BEGIN {
@XML::Atom::EXPORT = qw( LIBXML DATETIME);
if (eval { require XML::LibXML }) {
*{XML::Atom::LIBXML} = sub() {1};
} else {
require XML::XPath;
*{XML::Atom::LIBXML} = sub() {0};
}
if (eval { require DateTime::Format::Atom }) {
*{XML::Atom::DATETIME} = sub() {1};
} else {
*{XML::Atom::DATETIME} = sub() {0};
}
local $^W = 0;
*XML::XPath::Function::namespace_uri = sub {
my $self = shift;
my($node, @params) = @_;
my $ns = $node->getNamespace($node->getPrefix);
if (!$ns) {
$ns = ($node->getNamespaces)[0];
}
XML::XPath::Literal->new($ns ? $ns->getExpanded : '');
};
$XML::Atom::ForceUnicode = 0;
$XML::Atom::DefaultVersion = 0.3;
}
sub libxml_parser {
## uses old XML::LibXML < 1.70 interface for compat reasons
return XML::LibXML->new(
#no_network => 1, # v1.63+
expand_xinclude => 0,
expand_entities => 1,
load_ext_dtd => 0,
ext_ent_handler => sub { warn "External entities disabled."; '' },
);
}
sub expat_parser {
return XML::Parser->new(
Handlers => {
ExternEnt => sub { warn "External Entities disabled."; '' },
ExternEntFin => sub {},
},
);
}
use base qw( XML::Atom::ErrorHandler Exporter );
package XML::Atom::Namespace;
use strict;
sub new {
my $class = shift;
my($prefix, $uri) = @_;
bless { prefix => $prefix, uri => $uri }, $class;
}
sub DESTROY { }
use vars qw( $AUTOLOAD );
sub AUTOLOAD {
(my $var = $AUTOLOAD) =~ s!.+::!!;
no strict 'refs';
($_[0], $var);
}
1;
__END__
=head1 NAME
XML::Atom - Atom feed and API implementation
=head1 SYNOPSIS
use XML::Atom;
=head1 DESCRIPTION
Atom is a syndication, API, and archiving format for weblogs and other
data. I<XML::Atom> implements the feed format as well as a client for the
API.
=head1 LICENSE
I<XML::Atom> is free software; you may redistribute it and/or modify it
under the same terms as Perl itself.
=head1 AUTHOR
Benjamin Trott, Tatsuhiko Miyagawa
=head1 COPYRIGHT
All rights reserved.
=cut
|