XML-TreePP-XMLPath version 0.50 =============================== A Pure PERL extension to Pure PERL XML::TreePP module to support paths to XML subtree content. This may seem similar to XPath, but it is not XPath. EXAMPLE use XML::TreePP; use XML::TreePP::XMLPath; my $tpp = XML::TreePP->new(); my $tppx = XML::TreePP::XMLPath->new(); my $tree = { rss => { channel => { item => [ { title => "The Perl Directory", link => "http://www.perl.org/";, }, { title => "The Comprehensive Perl Archive Network", link => "http://cpan.perl.org/";, } ] } } }; my $xml = $tpp->write( $tree ); Get a subtree of the XMLTree: my $xmlsub = $tppx->getSubTree( $xml , q{rss/channel/item[title="The Comprehensive Perl Archive Network"]} ); print $xmlsub->{'link'}; Iterate through all attributes and Elements of each XML element: my $xmlsub = $tppx->getSubTree( $xml , q{rss/channel/item} ); my $h_attr = $tppx->getAttributes( $xmlsub ); my $h_elem = $tppx->getElements( $xmlsub ); foreach $attrHash ( @{ $h_attr } ) { while my ( $attrKey, $attrVal ) = each ( %{$attrHash} ) { ... } } foreach $elemHash ( @{ $h_elem } ) { while my ( $elemName, $elemVal ) = each ( %{$elemHash} ) { ... } } INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires these other modules and libraries: XML::TreePP COPYRIGHT AND LICENCE Copyright (c) 2008 Center for the Application of Information Technologies. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.