Lists Home |
Date Index |
Joe Gregorio wrote:
> .... The
> basic idea being that if the document is going to stand alone then no
> namespace qualification is needed. If it is going to be combined or
> in other vocablaries then the namespace is applied. For a concrete
> example consider RSS 2.0, in which the native RSS elements reside in
> the nil
> <rss version="2.0">
This could be written:
<rss version="2.0" xmlns="http:../rss">
It is just a few more characters per document and NO prefixes. It also
makes the document more self-describing and provides a built-in link to
the documentation page. What's not to love?
> I have also run into such a need in other cases, for example
> I have worked with a group that is, at best, namespace allergic.
Anybody who is so namespace allergic that they cannot add a single
"xmlns" attribute to their document is, in my opinion, trying to make
life difficult for others, not trying to make life easy for themselves.
An XML document should have either a DOCTYPE or a namespace declaration
to anchor itself in no global namespace. And even if you have a DOCTYPE
it can hardly hurt to have a single namespace attribute on the root
element (or perhaps defaulted from the DTD).
> Getting them to place the vocabulary we are working on in a namespace
> will be impossible. On the other hand, getting them to agree to an optional
> namespace to be used when combining our work other vocabularies may be
> palatable. What are the pros and cons of such
> an approach?
One "con" is that there is a perfectly good solution in the XML
namespaces specification. Another "con" is that XPaths into documents
with namespaces are different than those without, schemas for documents
with namespaces are different than those without, XSLT templates are
different etc. etc. Supporting the namespace and no-namespace versions
will be a hassle in many contexts.