RE: xml-namespaces

Let me rephrase what you said to see if I understand correctly:

Any qualified element or attribute names need to be fully declared in the
standard XML 1.0 manner in an XML DTD and that the XML Namespace spec is
merely a consistent way of providing additional information about these
elements to applications, and does not provide any processing itself.

	>>Many people seem to be under the misconception that namespace
processing is done first, allowing it to affect validation. This alternate
sequence would potentially be more powerful and useful, but it's also much
more complex

This leads us to believe that we are not the only ones to have expected more
from XML Names than is there. Now that the namespace spec is available to
the general public, perhaps the working group should include a preface or an
implementation note or somehow include this information about what the spec
attempts to be to prevent confusion and disappointment among would-be
implementors.

Lisa

> -----Original Message-----
> From:	ktl@hyperparallel.com [SMTP:ktl@hyperparallel.com]
> Sent:	Friday, August 21, 1998 8:56 PM
> To:	lisa.richards@reedtech.com
> Subject:	Re: xml-namespaces
> 
> Ms. Richards,
> 
> 	With regard to your message to xml-names-issues, my understanding
> from reading the spec and the comments from committee members on various
> mailing lists is that the spec is implying that the following XML instance
> (using your example):
> 
> <?xml version="1.0" ?>
> <!DOCTYPE foo:elt SYSTEM "elt.dtd">
> <foo:elt xmlns="something" xmlns:foo="something">
> 	<gertie foo:att="val2">content</gertie>
> 	<foo:gertie att="val3">more content</foo:gertie>
> </foo:elt>
> 
> is validatable using the following XML 1.0 DTD in elt.dtd:
> 
> <!ELEMENT elt (gertie | foo:gertie)* > <!-- optional -->
> <!ELEMENT gertie (#PCDATA) >
> <!ELEMENT foo:elt (gertie | foo:gertie)* >
> <!ELEMENT foo:gertie (#PCDATA) >
> <!ATTLIST elt
> 	xmlns CDATA #IMPLIED
> 	xmlns:foo CDATA #IMPLIED
> > <!-- optional -->
> <!ATTLIST gertie
> 	att CDATA #IMPLIED
> 	foo:att CDATA #IMPLIED
> >
> <!ATTLIST foo:elt
> 	xmlns CDATA #IMPLIED
> 	xmlns:foo CDATA #IMPLIED
> >
> <!ATTLIST foo:gertie
> 	att CDATA #IMPLIED
> 	foo:att CDATA #IMPLIED
> >
> 
> This DTD is not particularly general and reusable.  However, it does seem
> likely that such a prefix-aware DTD can be mechanically transformed to
> use a different prefix.
> 
> 	Using elements or attributes from multiple DTDs to create a single
> validatable XML instance is not a trivial problem that can be handled
> mechanically.  It *is* possible, though, to manually create the
> appropriate
> prefix-aware DTD by merging content models and attribute lists.  I am not
> sure if it is then possible to re-prefix such a combined DTD mechanically
> (the major problem being reuse of the same prefixed element name to
> specify
> different elements in different namespaces).
> 
> 	Another way of expressing this is with a layered processing model
> that I believe David Megginson has suggested.  The namespace spec assumes
> that the instance is first validated using XML 1.0 and only then is
> namespace processing applied.  Many people seem to be under the
> misconception
> that namespace processing is done first, allowing it to affect validation.
> This alternate sequence would potentially be more powerful and useful, but
> it's also much more complex.  Future schema specifications such as XSchema
> and DCD may alter the processing order.
> 
> 	I believe that the position I have outlined is consistent with the
> spec and its authors' comments.  If you find this not to be the case, I'd
> appreciate it if you could drop me a note to that effect.
> 
> --
> Kian-Tat Lim    HyperParallel, Inc.    lim@hyperparallel.com    (415)
> 284-7005

Received on Monday, 24 August 1998 11:21:49 UTC