Hi all,

I am having some trouble figuring out what is going on here - is this a bug, or correct behaviour? Basically, when I create an XML document with a namespace using xml.dom.minidom.parse() or parseString(), the namespace exists as an xmlns attribute in the DOM (fair enough, as it's in the original source document). However, if I use the DOM implementation to create an identical document with a namespace, the xmlns attribute is not present.

This mainly affects me when I go to print out the document again using Document.toxml(), as the xmlns attribute is not printed for documents I create dynamically, and therefore XSLT does not kick in (I'm using an external processor).

Any thoughts on this would be appreciated. Should I file a bug on pyxml?

Greg


Python 2.3.3 (#1, May 7 2004, 10:31:40) [GCC 3.3.3 20040412 (Red Hat Linux 3.3.3-7)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import xml.dom.minidom >>> raw = '<test xmlns="http://example.com/namespace"/>' >>> doc = xml.dom.minidom.parseString(raw) >>> print doc.documentElement.namespaceURI http://example.com/namespace >>> print doc.documentElement.getAttribute('xmlns') http://example.com/namespace >>> impl = xml.dom.minidom.getDOMImplementation() >>> doc2 = impl.createDocument('http://example.com/namespace','test',None) >>> print doc2.documentElement.namespaceURI http://example.com/namespace >>> print doc2.documentElement.getAttribute('xmlns')

>>>
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to