Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: LibXML, XPath and Namespaces

by choroba (Chancellor)
on Mar 21, 2013 at 15:27 UTC ( #1024769=note: print w/replies, xml ) Need Help??


in reply to LibXML, XPath and Namespaces

You can retrieve the namespace by the namespaceURI method:
my $doc = XML::LibXML->load_xml(location => '1.xml'); my $root = $doc->documentElement; my $nsuri = $root->namespaceURI;

You have to register the namespace before you can use it. It is annoying, but it is how XML works: if no namespace is specified, it means the empty namespace, not a default one (imagine the main:: package in Perl having no name).

If you find XML::LibXML too verbose (as I do), you might like XML::XSH2 which is a simple wrapper around it which reduces most of the incantations. Nevertheless, you still have to

register-namespace gt http://www.govtalk.gov.uk/CM/envelope ;
.
لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ

Replies are listed 'Best First'.
Re^2: LibXML, XPath and Namespaces
by space_monk (Chaplain) on Mar 21, 2013 at 15:46 UTC
    Thanks very much,

    As you say I was really trying to find a way of getting round the verbosity. Unfortunately getting more libraries installed round here is awkward and quite time-consuming so I have to live with LibXML.

    A Monk aims to give answers to those who have none, and to learn from those who know more.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1024769]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (4)
As of 2016-12-11 07:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (168 votes). Check out past polls.