XML::Parser::Lite::Tree - Lightweight XML tree builder
use XML::Parser::Lite::Tree; my $tree_parser = XML::Parser::Lite::Tree::instance(); my $tree = $tree_parser->parse($xml_data); OR my $tree = XML::Parser::Lite::Tree::instance()->parse($xml_data);
This is a singleton class for parsing XML into a tree structure. How does this differ from other XML tree generators? By using XML::Parser::Lite, which is a pure perl XML parser. Using this module you can tree-ify simple XML without having to compile any C.
For example, the following XML:
<foo woo="yay"><bar a="b" c="d" />hoopla</foo>
Parses into the following tree:
'children' => [ { 'children' => [ { 'children' => [], 'attributes' => { 'a' => 'b', 'c' => 'd' }, 'type' => 'element', 'name' => 'bar' }, { 'content' => 'hoopla', 'type' => 'text' } ], 'attributes' => { 'woo' => 'yay' }, 'type' => 'element', 'name' => 'foo' } ], 'type' => 'root' };
Each node contains a type key, one of root, element and text. root is the document root, and only contains an array ref children. element represents a normal tag, and contains an array ref children, a hash ref attributes and a string name. text nodes contain only a content string.
type
root
element
text
children
attributes
name
content
instance()
Returns an instance of the tree parser.
new( options... )
Creates a new parser. Valid options include process_ns to process namespaces.
process_ns
parse($xml)
Parses the xml in $xml and returns the tree as a hash ref.
$xml
Copyright (C) 2004-2008, Cal Henderson, <cal@iamcal.com>
XML::Parser::Lite.
To install XML::Parser::Lite::Tree, copy and paste the appropriate command in to your terminal.
cpanm
cpanm XML::Parser::Lite::Tree
CPAN shell
perl -MCPAN -e shell install XML::Parser::Lite::Tree
For more information on module installation, please visit the detailed CPAN module installation guide.