XML Namespaces - A Need for Structure?

The Namespaces in XML 1.0 Recommendation defined a non-normative structure 
for XML namespaces which the draft Namespaces in XML 1.1 specification discards 
(at least in the most recent draft). 

It seems to me that with the advent of multiple versions of XML 
specifications with supposedly a single corresponding namespace, e.g. the "XSLT namespace" 
http://www.w3.org/1999/XSL/Transform, that serious consideration needs to be 
given to defining an appropriate structure for XML namespaces to avoid the 
ambiguities described in my earlier email 
(http://lists.w3.org/Archives/Public/www-tag/2003Aug/0007.html).

If a namespace is to be of use as a definitive disambiguating mechanism then 
it must be possible to distinguish:

1. Same names with different characteristics e.g. "apply-templates" in XSLT 
1.0 and XSLT 2.0

2. Names which are present in one version of a namespace e.g. 
"analyze-string" in XSLT 2.0 and absent from others e.g. "analyze-string" in XSLT 1.0. We are 
presently faced with the oxymoron ... or do I mean fundamental contradiction? 
.... that  the namespace <A HREF="http://www.w3.org/1999/XSL/Transform">http://www.w3.org/1999/XSL/Transform</A> contains the 
name analyze-string (for XSLT 2.0) while at the same time not containing it (for 
XSLT 1.0).

It seems to me that if the notion of an "XML namespace" is to mean anything 
then a solution to disambiguating problems like those mentioned above is 
essential. Introducing a versioning mechanism for namespaces into the Namespaces in 
XML specifications seems to me to potentially be part of a solution. But 
providing a defined, unambiguous internal structure for an XML namespace is likely 
also needed. 

Discarding the notion of an XML namespace and providing a better thought out 
mechanism to disambiguate element type names and attribute names (and datatype 
and function names?) is another approach. In other words the XSLT 1.0 
namespace and the XSLT 2.0 namespace would be distinct and different and should, for 
example, be indicated by different URIs. They therefore should not be 
identified by the same namespace URI since the collection of names supposedly defined 
by that URI has two different sets of names with some of those names present 
in both sets having different characteristics.

It seems to me that the status quo is not an option.

Andrew Watt
"XHTML 2.0 - the W3C leading the Web to its full potential ... to implement 
yesterday's technology tomorrow" 

Received on Saturday, 2 August 2003 06:52:46 UTC