[Home] [By Thread] [By Date] [Recent Entries]



Perhaps someone on this list can explain the following behavior to me.
I'm using JAXP 1.2, with Xerces 2.4.

Given the following document:

    <xc:cursors xmlns:xc="http://docs.sun.com/xmlcursor"/>

If I build a DOM from this document using
javax.xml.parsers.DocumentBuilder, having specified that namespace
processing should take place, the root node reports the following
information:

    node.getNodeName() = "xc:cursors"
    node.getLocalName() = "cursors"
    node.getPrefix() = "xc"
    node.getNamespaceURI() = "http://docs.sun.com/xmlcursor"

All good and well. If I add a document type declaration to the same
document, i.e.

    <!DOCTYPE xc:cursors>
    <xc:cursors xmlns:xc="http://docs.sun.com/xmlcursor">

the root node data changes to

    node.getNodeName() = "xc:cursors"
    node.getLocalName() = null
    node.getPrefix() = null
    node.getNamespaceURI() = null

The presence of the document type declaration appears to shut off
namespace processing. Is this expected behavior? Does it make sense?

// Gregory Murphy.  Isopaleocopria.


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member