Petr Cimprich > XML-SAX-ExpatXS > XML::SAX::ExpatXS

Download:
XML-SAX-ExpatXS-1.33.tar.gz

Dependencies

Annotate this POD

Related Modules

XML::Simple
XML::Parser
XML::Twig
XML::LibXML
Test::More
XML::DOM
XML::XPath
Time::HiRes
Text::CSV_XS
File::stat
more...
By perlmonks.org

CPAN RT

Open  0
View/Report Bugs
Module Version: 1.33   Source  

NAME ^

XML::SAX::ExpatXS - Perl SAX 2 XS extension to Expat parser

SYNOPSIS ^

 use XML::SAX::ExpatXS;

 $handler = MyHandler->new();
 $parser = XML::SAX::ExpatXS->new( Handler => $handler );
 $parser->parse_uri($uri);
  #or
 $parser->parse_string($xml);

DESCRIPTION ^

XML::SAX::ExpatXS is a direct XS extension to Expat XML parser. It implements Perl SAX 2.1 interface. See http://perl-xml.sourceforge.net/perl-sax/ for Perl SAX API description. Any deviations from the Perl SAX 2.1 specification are considered as bugs.

Features

The parser behavior can be changed by setting features.

 $parser->set_feature(FEATURE, VALUE);

XML::SAX::ExpatXS provides these adjustable features:

http://xmlns.perl.org/sax/join-character-data

Consequent character data are joined (1, default) or not (0).

http://xmlns.perl.org/sax/ns-attributes

Namespace attributes are reported as common attributes (1, default) or not (0).

http://xmlns.perl.org/sax/xmlns-uris

When set on, xmlns and xmlns:* attributes are put into namespaces in a Perl SAX traditional way; xmlns attributes are in no namespace while xmlns:* attributes are in the http://www.w3.org/2000/xmlns/ namespace. This feature is set to 1 by default.

http://xml.org/sax/features/xmlns-uris

This feature applies if and only if the http://xmlns.perl.org/sax/xmlns-uris feature is off. Then, xmlns and xmlns:* attributes are both put into no namespace (0, default) or into http://www.w3.org/2000/xmlns/ namespace (1).

http://xmlns.perl.org/sax/locator

The document locator is updated (1, default) for ContentHadler events or not (0).

http://xmlns.perl.org/sax/recstring

A recognized string (the text string currently processed by this XML parser) is either maintained as $parser->{ParseOptions}{RecognizedString} (1) or not (0, default).

http://xml.org/sax/features/external-general-entities

Controls whether this parser processes external general entities (1, default) or not (0).

http://xml.org/sax/features/external-parameter-entities

Controls whether this parser processes external parameter entities including an external DTD subset (1) or not (0, default).

Constructor Options

Apart from features, the behavior of this parser can also be changed with options to the constructor.

ParseParamEnt
 ParseParamEnt => 1

This option meaning is exactly the same as the http://xml.org/sax/features/external-parameter-entities feature. The option is supported only because of the compatibility with older versions of this module. Turned off by default.

NoExpand
 NoExpand => 1

No internal entities are expanded if this option is turned on. Turned off by default.

Read-only Properties

ExpatVersion

This property returns a version of linked Expat library, for example expat_1.95.7.

AUTHORS ^

 Petr Cimprich <pcimprich AT gmail DOT com> (maintainer)
 Matt Sergeant <matt AT sergeant DOT org>

COPYRIGHT ^

2002-2004 Matt Sergeant, 2004-2011 Petr Cimprich. All rights reserved.

LICENSE ^

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: