Namespace declarations are lost on transformation to DOMResult 2007-04-27 - By Christian Koppen
I have a problem with Xalan 2.7. Have a look at the following snippet:
<a:a1 xmlns:a="http://a" xmlns:b="http://b" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <a:a2 xsi:type="b:B"/> </a:a1>
As you can see, the value of the attribute 'xsi:type' contains a namespace prefix, which is declared in the root element.
When I read this document as a StreamSource or SAXSource and transform it with Xalan into a DOMResult, the namespaces are invalid because the namespace declaration 'xmlns:b="http://b"' is lost:
<a:a1 xmlns:a="http://a"> <a:a2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="b:B"/> </a:a1>
When I try to read the document as a DOMSource and try to transform it into a DOMResult, an exception occurs ('NAMESPACE_ERR: An attempt is made to create or change an object in a way which is incorrect with regard to namespaces.').
I attached the example code and output.
Can somebody tell me if I'm doing something wrong, or if this is a bug in Xalan?
Thanks in advance, Christian
|
|