OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [Q] How should SAX support Namespaces?

[ Lists Home | Date Index | Thread Index ]
  • From: Toby Speight <tms@ansa.co.uk>
  • To: "XML developers' list" <xml-dev@ic.ac.uk>
  • Date: 20 Jul 1998 14:58:36 +0100

David> David Megginson <URL:mailto:david@megginson.com>

=> In article <199807201132.HAA00572@unready.megginson.com>, David
=> wrote:

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

I'd like to add a fourth: define namespace support as a layer above
SAX, which can interface with any SAX parser, and produce output
similar to that of SAX with additional information.  Then this
"namespace library" can do one of your proposed actions:

David> 1. Simply ignore them, and require the XML application to do
David>    the work (all of the necessary information is passed on by
David>    SAX).
David> 2. Use the current interface, but allow namespace-aware SAX
David>    processors to prepend namespace URIs to element type and
David>    attribute names, as in
David>    startElement("urn:www.megginson.com:doc", ...)
David>    endElement("urn:www.megginson.com:doc", ...)
David> 3. Revised org.xml.sax.AttributeList and org.xml.sax.DocumentHandler
David>    to include the namespace as a separate (possibly-null) argument:
David>    startElement("urn:www.megginson.com", "doc", ...)
David>    endElement("urn:www.megginson.com", "doc", ...)

4.  Apply an application-specified re-mapping to the names.  So the
    above could be initialised with
       ns_processor.setPrefix("urn:www.megginson.com", "davids-ns");
    and have its document handler called with
       startElement("davids-ns:doc", ...)
       endElement("davids-ns:doc", ...)

I don't particularly like (2) above, since it means that different SAX
parsers may return different values for the same document.

I do feel that namespace handling is orthogonal to syntactic parsing
of XML, and that SAX itself should confine itself to the latter.  I'm
not sure whether namespace processing should happen between SAX and
the application (layered approach) or separately "at the side" of the
application (application developers' utility class).


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo@ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo@ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa@ic.ac.uk)


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS