Reading XML namespaces

Stefan Behnel stefan_ml at behnel.de
Sat May 15 16:58:06 EDT 2010


Adam Tauno Williams, 15.05.2010 22:40:
> On Sat, 2010-05-15 at 22:29 +0200, Stefan Behnel wrote:
>> Adam Tauno Williams, 15.05.2010 20:37:
>>> Say I have an XML document that begins with:
>>> <?xml version="1.0" encoding="utf-8"?>
>>> <dsml:dsml xmlns:dsml="http://www.dsml.org/DSML">
>>> How can one access the namespaces define in this node?  I've done a fair
>>> amount of XML in Python, but haven't been able to uncover the call to
>>> enumerate the namespaces.
>>> Primarily I am using etree from lxml.
>> What do you need the namespaces for?
>
> One needs to know the defined namespace in order to perform xpath
> operations.

Well, yes, but unless you already know the namespace (URI), you can't know 
what the tag you find signifies in the first place.

Unless, obviously, you are confusing namespaces with namespace prefixes. 
But you don't need to know the prefixes for XPath.

Does this help?

http://codespeak.net/lxml/xpathxslt.html#namespaces-and-prefixes

Stefan




More information about the Python-list mailing list