Constructor. Options are passed as
keyword/value pairs. Recognized options are:
Sets the type of parser. The built-in styles are
Tree, Objects, and
Stream. Custom styles can be provided by giving a
fully qualified package name containing at least one
"::". This package must have
subroutines defined for each parser type.
An anonymous hash containing the handler types as the keys with their
associated values, which are references to subroutines for handling
that type of event.
Some styles will refer to subroutines defined in the specified
The number of lines to show surrounding the line in which an error
Sets the protocol-encoding name (default is none). The built-in
encodings are UTF-8,
ISO-8859-1, UTF-16, and
US-ASCII. You may introduce additional encodings
by adding directories to @Encoding_Path.
If true, then namespace processing is done during the parse.
Normally, the parser will try to expand references to entities
defined internally. If this option is true and a default handler is
also set, then the default handler will be called when an entity
reference is encountered.
A string for XML::Parser to interpret as end-of-file if found alone
on a line. Useful when working with MIME multipart documents. The
string should not contain a trailing newline.
Unless standalone is set to yes in the XML
declaration, setting this to true allows the external DTD to be read,
and parameter entities to be parsed and expanded.
If true, forces the use of a file-based external entity handler.
An anonymous hash whose keys are options that
shouldn't be passed to Expat. This should be a
concern only for those subclassing XML::Parser.
parse(source [, opt => opt_value [...]])
Parses the document. The source parameter
should be either a string containing the entire XML document or an
open IO::Handle. Options given as keyword/value pairs may follow the
source parameter and will override any
options or attributes passed from the XML::Parser instance.
parse exits with die if a parse
error occurs or returns 1 with success.
parsefile(file [, opt => opt_value [...]])
Opens file for reading, then calls
parse with the open handle. The file is closed no
matter what parse returns. Returns what parse
parse_start([ opt => opt_value [...]])
Creates and returns a new instance of XML::Parser::ExpatNB. If an
init handler is specified, it is called before returning the ExpatNB
object. Documents are parsed with incremental calls to the
parse_more. A single call to the
parse_done method of this object indicates that
the document is finished. The parse_done method
returns whatever is returned by the final handler.
An alias for parse, for backwards compatibility.
setHandlers(type, handler [, type, handler [...]])
Registers handlers for various parser events.
setHandlers overrides any previous handlers set in
Style or Handler options or
through earlier calls to setHandlers. Returns a
list of type and handler pairs.