Reusing schema vocabularies

james anderson James.Anderson at
Wed Sep 23 21:29:12 BST 1998

? why not just keep things simple:

use namespaces to keep names distinct.
use architectures to combine content models?

don't try to use one for a purpose for which it is not intended and for which
the other provides a better mechanism.

Lars Marius Garshol wrote:
> ================================================
> ------------
> --------------------------
> Namespaces, while superficially simple, are really a profound change
> to the XML data model: one of the most basic concepts (the concept
> 'name') is changed from a string to a namespace identifier _and_ a
> string. The reuse of schema vocabularies is enabled by this modified
> concept of names, allowing processing software to pick out names
> belonging to a specific schema/namespace and operate on them.

xml has no data model. while the rec does specify the criteria for identity,
it does not specify that they be modeled as strings. in fact, the discussion
of "match", although loose, distinguishes between names and strings.

the namespace draft simply says that the name has two parts rather than one.
since there is no model specified this can't change what isn't there.

> This is incompatible with the use of names in XML 1.0, which means
> that validation and attribute defaulting no longer work as before. In
> other words: both validating and non-validating parsers are affected,
> but only in the interpretation of the names used in DTDs. (XML 1.0
> documents will work with XML 1.1 parsers, but not vice versa for
> namespace-using documents.)

with certain data models, they work exactly as before. it is not the model for
names which causes the problems, it is the mechanism provided (or in the case
of the present draft <em>not provided</em>) for binding prefixes to uri's
which causes the problems.

> To allow validation and attribute defaulting in XML 1.1 the schema
> syntax will have to change, whether the new syntax is a modified DTD
> syntax or some entirely new schema language. This means that XML 1.1
> documents that use namespaces will not be valid SGML documents.

while the last sentence may be true, it does not follow from the first.
> ---------------------------------------------
> Requirement #1:
> Requirement #2:
>   "The syntax must unambiguously associate an identifier in a document
>    with the related schema without requiring inspection of that or
>    another schema."
> XML architecture names may also collide, but can be specified to
> shadow one another as with prefixes. To enable the unique
> identification of architectures (even in the case of collisions)
> architecture declaration PIs can be extended with a namespace
> attribute that contain an identifying URI.

which is to introduce the same mechanism suggested by namespaces, just with a
different syntax / encoding. why bother?

> Requirement #3:
> -------
> >From this discussion I emerge believing that XML architectures are a
> superior solution to the problem of reusing schema vocabularies. They

i concluded from your arguments more that they were superior for reusing
schema structure and that additions would necessary in order to handle the
issues which namespaces address.


> The data model of XML architecures is also much simpler than that of
> namespaces,

you need to say more about the data model which you propose for the two before
i can believe this. in some data models it is not true.


xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as:
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