Why namespaces?
Paul Prescod
paul at prescod.net
Tue Aug 31 19:41:52 BST 1999
David Megginson wrote:
>
> Sure -- that's why you have a DOCTYPE declaration at the top, so that
> validating processors can check the HTML against a DTD.
This raises a major question about the utility of namespaces in a
vocabulary that cannot be mixed with other vocabularies. What does the
namespace add that you can't get from the doctype?
And when we CAN mix XHTML with other vocabularies the precise details of
the namespace will be vital for proper validation! So multiple
namespaces will be necessary.
> By the way, with SAX, XSL, DOM, or any other existing
> infrastructure, three Namespaces does not mean three extra lines of
> code; it means triple the code for every part that deals with elements
> or attributes (three times as many XSL patterns, for example, not
> just three more patterns).
That is simply not true. Duplicated code can almost always be handled
with abstraction:
if( isHTML(localname, "P" ) ){
}
In Python SAX you would't even need abstraction:
if localname==P and NSURI in HTMLURIs:
...
In XSL you would just use local names. URI-prefixed names are not useful
because you can't mix XHTML with other vocabularies *anyhow*.
If you really did want to use URIs you could do something along the
lines of:
<xsl:template match='P[uri()=="$html1" or uri()=="$html2" ...'>
</xsl:template>
Which is not optimal but neither is it brutal. XSL has no notion about
interchangable namespace URIs and it should.
On the other hand this brings us back to the question at the top. Why
are you matching against namespace URIs at all? The stylesheet only
needs to handle names in the HTML namespace because other namespaces may
not be mixed in *anyhow*. You can check the root element and then quit!
Paul Prescod
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list