#!/usr/bin/perl use strict; use warnings; use XML::LibXML; use XML::LibXML::XPathContext; # load the XML doc my $p = XML::LibXML->new; my $xml_file = do { local $/; <DATA> }; my $dom = $p->parse_string( $xml_file ); # register the namespace my $xc = XML::LibXML::XPathContext->new( $dom ); $xc->registerNs('ns', 'http://www.mydomain.com'); # select using XPath my @nodes = $xc->findnodes( '/ns:info/ns:city'); print $_->toString for @nodes; __DATA__ <?xml version="1.0"?> <info xmlns="http://www.mydomain.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mydomain.com infoschema.xsd"> <name>john</name> <city>baltimore</city> <zip>21205</zip> </info>
In reply to Re: problem with using LibXML and namespace
by un-chomp
in thread problem with using LibXML and namespace
by mjr1n1
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |