umesh_epub has asked for the wisdom of the Perl Monks concerning the following question:
Hi,
I have to read xml file using PERL LibXML. I will read many xml files. But this file have some namespace below is my sample xml file.
Please help me to solve this problem.
Thanks, Umesh
Here is my Perl code to read the above file<?xml version="1.0" encoding="UTF-8"?> <alto xmlns="http://www.loc.gov/standards/alto/ns-v2#" xmlns:xsi=" +http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:/ +/www.loc.gov/standards/alto alto-v2.0.xsd"> <Description> <MeasurementUnit>inch1200</MeasurementUnit> </Description> </alto>
But when i changed the xmlns=" to xmlns:x=" It will work. But my xml not contain xmlns:x this only it contains xmlns="value".use XML::LibXML; $xml = 'test.xml'; my $parser =XML::LibXML->new(); eval{ $doc = $parser->parse_file($xml) or die; }; if($@){ return; } else{ $v = $doc->findvalue('/alto/Description/MeasurementUnit'); print "value\t".$v; }
Please help me to solve this problem.
Thanks, Umesh
Back to
Seekers of Perl Wisdom