Issue with XML::Bare perl -



Issue with XML::Bare perl -

i'm using xml::bare module in perl.

my xml like:

<xml> <element num="1"> <num>10</num> </element> <element num="2"> <num>20</num> </element> </xml>

i want extract out value contained in kid <num> tag. i.e. want 10 , 20 output. when value using $xml->{element}->[$i]->{num}->{value} returns 1 adn 2 i.e returns value of num attribute instead of kid node. can please help me how handle cases when attribute , kid name same.

thanks

if xml::bare or xml::simple used, should limited basic xml reading. given info has attribute , kid node share name fails limitation.

in truth though, unless there specific reason not, 1 should stick more modern xml parsers such xml::twig , xml::libxml , total powerfulness of xpath support.

the next parses xml using both of these 2 modules:

use strict; utilize warnings; utilize xml::libxml; utilize xml::twig; $data = {local $/; <data>}; print "xml::libxml\n"; $xml = xml::libxml->load_xml(string => $data); $node ($xml->findnodes('//element/num')) { print $node->textcontent(), "\n"; } print "xml::twig\n"; $t = xml::twig->new( twig_handlers => { '//element/num' => sub { print $_->text(), "\n" }, }, ); $t->parse( $data ); __data__ <xml> <element num="1"> <num>10</num> </element> <element num="2"> <num>20</num> </element> </xml>

outputs:

xml::libxml 10 20 xml::twig 10 20

xml perl parsing

Comments

Popular posts from this blog

php - Android app custom user registration and login with cookie using facebook sdk -

django - Access session in user model .save() -

php - .htaccess Multiple Rewrite Rules / Prioritizing -