Another look at namespaces

Andrew Layman andrewl at
Thu Sep 16 17:28:14 BST 1999

With all due respect to Simon St. Laurent, I believe that Tim Berners-Lee
was correctly precise when he wrote "the document corresponding to the
namespace URI becomes
the place where the namespace-author can put *definitive*
information about the intent of the namespace."  (Emphasis in the original).

While there are many processes that can be applied to a document, and
correspondingly many specifications of those processes, there can be, for a
given term in a namespace, at most one correct *definition*.  


As background, and to help make clear some of the thinking on this subject,
the following is the text of a message I posted a few weeks ago to the XML

[Someone] wrote that, although a schema may be somehow associated with a
namespace, the "meaning" of markup will be determined in a number of ways
such as style sheets, or procedural code, or maybe the schema.  I believe
this understates the importance of the schema.  A schema makes a
contribution to the Infoset. It does this by providing default values and --
under some recent proposals -- by indicating type information, which may be
considered also a form of default value.  Elements defined by a schema, when
used in an instance document in a validating processor, will have these
default values available, and this fact is pertinent to the author of the
document.  This means that an element is incompletely read if the schema for
it is not read. 

Unlike the various processings that may or may not be applied to a document,
a cited schema is part of the information conveyed by the document. When a
namespace has an associated schema, that schema is part of the input to any
further complete processing of the referencing document.  A schema is not on
par with other forms of processing that might be specified, say by style
sheets or procedural code. It is prior to other processing.

Further, I expect that one can argue that a namespace is an abstract concept
denoting a set of names, and this argument is true, so far as it goes, but
it does not go far enough:  For specific processing, to make use of a
namespace one needs to know what names are in it, which are not, and what
the meaning is for each name.  Such information may be obtained by various
means such a by reading a schema, by reading a text document, or from
conversations with other people, but in all cases the meaning is not created
by the processing code, the meaning informed the programmer who wrote the
code.  For a namespace to be reliably useful, there must be a document
defining its contents and their meaning.  A schema is, for many namespaces,
that document.

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list