- From: David G. Durand <david@dynamicdiagrams.com>
- Date: Fri, 23 Jun 2000 13:29:11 -0400
- To: xml-uri@w3.org
At 10:48 AM -0400 6/23/00, keshlam@us.ibm.com wrote:
> > every namespace is a scope which contains every possible legal XML name
>
>This is the level at which I have trouble with the assertion that "a
>namespace is a vocabulary" -- I'm having a bit of trouble wrapping my mind
>around a definition of "vocabulary" which has an infinite set of members.
I think that it's less odd if you focus on the word "scope".
Namespaces allow element type creators (the folks who make up tags)
to create a globally unique scope which can be used to recognize
those tags in an arbitrary XML document. The standard does not
prescribe what kind of formal definition (if any) or special error
checking (if any) are appropriate to names within such a scope --
that's because there's no agreement on how these things should be
described (and I'm not sure there ever will be).
However, most definers of namespaces will add additional conditions.
These will not be new conditions on what a well-formed document with
namespaces is; rather than being syntactic constraints on the _form_
of an XML document these constraints will be semantic rules about the
correct application of tags within that namespace.
The example of Xlink may be useful. Xlink has reserved a namespace,
and declares a limited number of attribute and element type names
within that namespace. Legal XML documents that refer to attribute
names within that namespace that are _not_ defined by Xlink are
illegal Xlink documents, though they are perfectly usable XML +
Namespaces documents. The fact that the namespace claimed for Xlink
is infinite is not a bug, since in Xlink's case it explicitly enables
later expansion, without name collisions, since there's an infinite
space of identifiers reserved just for xlink.
It's just like creating a Java package name: it gives you an infinite
sandbox to play in without worrying about the collisions with other
people's sandboxes.
At some point there may be a widely used, interoperable way to use a
namespace URI to retrieve information that will let you verify
automatically that the element types and attributes defined in that
namespace are being used correctly.
This is part of the good idea that Dan and Tim (among others) are
anxious to see in place. However, it's a significant step beyond
where we are now, and that's going to take time.
-- David
--
_________________________________________
David Durand dgd@cs.bu.edu \ david@dynamicDiagrams.com
http://cs-people.bu.edu//dgd/ \ Chief Technical Officer
Graduate Student no more! \ Dynamic Diagrams
--------------------------------------------\ http://www.dynamicDiagrams.com/
\__________________________
Received on Friday, 23 June 2000 13:45:59 UTC