[Home] [By Thread] [By Date] [Recent Entries]



Kian-Tat Lim wrote:

> Everyone agrees that a namespace is a collection of related
> names, whether they be for elements or attributes.

I most emphatically do *not* agree with this [*].

An XML namespace as defined by "Namespaces in XML" is *not* a
collection of related names in any meaningful sense.

The "collection of names, identified by a URI reference"
mentioned in [XMLNS] section 1 paragraph 4 consists of
the countably infinite set of qualified names that have
that URI as their namespace name.  That's it.

For example, in:

    <html:html xmlns:html="http://www.w3.org/1999/xhtml">
	<html:head>
	    <html:OZZY-R00LZ/>
	</html:head>
	<html:body/>
    </html:html>

the first child of the 'html:head' element does not belong
to the XHTML vocabulary, is not defined in any of the XHTML DTDs,
and may not appear in a valid XHTML document; yet it is
unquestionably, incontrovertibly "in the XHTML namespace".
This is not a useful distinction.


> The whole
> problem seems to me to be a dispute between those who think
> names in no namespace belong to no collection and thus should
> be avoided and those who think names in no namespace are
> "locally scoped" -- defined in some ineffable way by their
> parent but not belonging explicitly to the parent's namespace.


That sounds about right.  I think the whole problem
goes away once we dispose of the notion that "being
in a namespace" has any more semantic import than,
say, "starts with a vowel".


[*] Unless by "namespace" you mean what [XMLNS] calls a
   "Traditional Namespace."  Then I agree.


--Joe English

  jenglish@f...

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member