.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "XML::SAX::PurePerl 3" .TH XML::SAX::PurePerl 3 "2019-12-30" "perl v5.30.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" XML::SAX::PurePerl \- Pure Perl XML Parser with SAX2 interface .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 5 \& use XML::Handler::Foo; \& use XML::SAX::PurePerl; \& my $handler = XML::Handler::Foo\->new(); \& my $parser = XML::SAX::PurePerl\->new(Handler => $handler); \& $parser\->parse_uri("myfile.xml"); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This module implements an \s-1XML\s0 parser in pure perl. It is written around the upcoming perl 5.8's unicode support and support for multiple document encodings (using the PerlIO layer), however it has been ported to work with \&\s-1ASCII/UTF8\s0 documents under lower perl versions. .PP The \s-1SAX2 API\s0 is described in detail at http://sourceforge.net/projects/perl\-xml/, in the \s-1CVS\s0 archive, under libxml\-perl/docs. Hopefully those documents will be in a better location soon. .PP Please refer to the \s-1SAX2\s0 documentation for how to use this module \- it is merely a front end to \s-1SAX2,\s0 and implements nothing that is not in that spec (or at least tries not to \- please email me if you find errors in this implementation). .SH "BUGS" .IX Header "BUGS" XML::SAX::PurePerl is \fBslow\fR. Very slow. I suggest you use something else in fact. However it is great as a fallback parser for \s-1XML::SAX,\s0 where the user might not be able to install an \s-1XS\s0 based parser or C library. .PP Currently lots, probably. At the moment the weakest area is parsing \s-1DOCTYPE\s0 declarations, though the code is in place to start doing this. Also parsing parameter entity references is causing me much confusion, since it's not exactly what I would call trivial, or well documented in the \s-1XML\s0 grammar. \s-1XML\s0 documents with internal subsets are likely to fail. .PP I am however trying to work towards full conformance using the Oasis test suite. .SH "AUTHOR" .IX Header "AUTHOR" Matt Sergeant, matt@sergeant.org. Copyright 2001. .PP Please report all bugs to the Perl-XML mailing list at perl\-xml@listserv.activestate.com. .SH "LICENSE" .IX Header "LICENSE" This is free software. You may use it or redistribute it under the same terms as Perl 5.7.2 itself.