Re: xml-namespaces

Paul Abrahams wrote:
> 
> >>>>> On Sat, 22 Aug 1998 06:11:20 +0700, James Clark <jjc@jclark.com> said:
> 
> |Us> It appears that a document containing qualified names is unlikely
> |Us> to be valid in terms of the unmodified 1.0 spec, so the namespace
> |Us> spec must provide its own interpretation of any such document.
> 
> |James> This is not correct.  XML namespaces do not change what valid
> |James> means.  "Valid" continues to mean exactly what it means in XML
> |James> 1.0.  As far as DTD processing is concerned a colon has no
> |James> special meaning.
> 
> Well, since there's a critical piece of information missing from the
> namespace spec, viz., how to resolve an element name to an ELEMENT
> declaration, it's hard for us to prove that point conclusively.

It's not missing: it's fully defined by XML 1.0.  XML namespaces don't
change that.

>  But
> consider our example, slightly modified to make the point even clearer:
> 
>  <elt xmlns:foo="file:///bar" xmlns:goo="file:///bar">
>     <foo:gertie/>
>     <goo:gertie/>
>  </elt>
> 
> Given the intent of namespace declarations, it would be hard to argue
> that subelements "foo:gertie" and "goo:gertie" ought to refer to
> different ELEMENT declarations. 

But they do.  As far as DTD processing is concerned, a colon is just
another name character.  The processing model is that first you
construct an element tree just as with XML 1.0, and second you associate
each element type and attribute name in the element tree with an
expanded name.

James

Received on Saturday, 22 August 1998 00:22:00 UTC