.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
.\"
.\" 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
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
. ds C` ""
. ds C' ""
'br\}
.el\{\
. 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 "Expat 3"
.TH Expat 3 2024-07-13 "perl v5.38.2" "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::Expat \- SAX2 Driver for Expat (XML::Parser)
.SH SYNOPSIS
.IX Header "SYNOPSIS"
.Vb 5
\& use XML::SAX::Expat;
\& use XML::SAX::MyFooHandler;
\& my $h = XML::SAX::MyFooHandler\->new;
\& my $p = XML::SAX::Expat\->new(Handler => $h);
\& $p\->parse_file(\*(Aq/path/to/foo.xml\*(Aq);
.Ve
.SH DESCRIPTION
.IX Header "DESCRIPTION"
This is an implementation of a SAX2 driver sitting on top of Expat
(XML::Parser) which Ken MacLeod posted to perl-xml and which I have
updated.
.PP
It is still incomplete, though most of the basic SAX2 events should be
available. The SAX2 spec is currently available from .
.PP
A more friendly URL as well as a PODification of the spec are in the
works.
.SH METHODS
.IX Header "METHODS"
The methods defined in this class correspond to those listed in the
PerlSAX2 specification, available above.
.SH "FEATURES AND CAVEATS"
.IX Header "FEATURES AND CAVEATS"
.IP supported_features 2
.IX Item "supported_features"
Returns:
.Sp
.Vb 3
\& * http://xml.org/sax/features/external\-general\-entities
\& * http://xml.org/sax/features/external\-parameter\-entities
\& * [ Features supported by ancestors ]
.Ve
.Sp
Turning one of the first two on also turns the other on (this maps
to the XML::Parser ParseParamEnts option). This may be fixed in the
future, so don't rely on this behaviour.
.SH "MISSING PARTS"
.IX Header "MISSING PARTS"
XML::Parser has no listed callbacks for the following events, which
are therefore not presently generated (ways may be found in the
future):
.PP
.Vb 4
\& * ignorable_whitespace
\& * skipped_entity
\& * start_entity / end_entity
\& * resolve_entity
.Ve
.PP
Ways of signalling them are welcome. In addition to those,
set_document_locator is not yet called.
.SH TODO
.IX Header "TODO"
.Vb 1
\& \- reuse Ken\*(Aqs tests and add more
.Ve
.SH AUTHOR
.IX Header "AUTHOR"
Robin Berjon; stolen from Ken Macleod, ken@bitsko.slc.ut.us, and with
suggestions and feedback from perl-xml. Currently maintained by Bjoern
Hoehrmann, .
.SH "COPYRIGHT AND LICENSE"
.IX Header "COPYRIGHT AND LICENSE"
Copyright (c) 2001\-2008 Robin Berjon. All rights reserved. This program is
free software; you can redistribute it and/or modify it under the same
terms as Perl itself.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
XML::Parser::PerlSAX