[Q] How should SAX support Namespaces?

David Megginson (david@megginson.com)
Mon, 20 Jul 1998 07:32:24 -0400


How should SAX support namespaces? I can think of three options:

1. Simply ignore them, and require the XML application to do the work
(all of the necessary information is passed on by SAX).

2. Use the current interface, but allow namespace-aware SAX processors
to prepend namespace URIs to element type and attribute names, as in

startElement("urn:www.megginson.com:doc", ...)
endElement("urn:www.megginson.com:doc", ...)

3. Revised org.xml.sax.AttributeList and org.xml.sax.DocumentHandler
to include the namespace as a separate (possibly-null) argument:

startElement("urn:www.megginson.com", "doc", ...)
endElement("urn:www.megginson.com", "doc", ...)

Given that many major XML-based standards (RDF, XSL, etc.) plan to
use namespaces, it probably doesn't make sense to offload the work to
the application as implied by #1, so the best choices would be #2 or
#3. I would be very interested in hearing opinions, especially (but
not exclusively) from people who have implemented SAX on either the
parser or the application side.

All the best,

David

-- 
David Megginson                 david@megginson.com
           http://www.megginson.com/