[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: DTDs and namespaces (was: using namespaces to version)
- From: "C. M. Sperberg-McQueen" <cmsmcq@acm.org>
- To: james.anderson@setf.de
- Date: Mon, 07 May 2001 21:29:45 -0600
At 2001-05-07 19:41, james anderson wrote:
>C. M. Sperberg-McQueen wrote:
>
> > ... no system which validates using a DTD and the validation
> > rules of XML 1.0, without extension, can support all the syntactic
> > variations allowed by the namespaces recommendation.
>
>This is trivially true, but trivial invalidation is not significant to
>the question.
Er, you took exception -- or appeared to take exception* -- to the
observation that DTDs do not, and cannot, support namespaces in
their full generality. By that I meant that you cannot write a DTD
for a namespace or set of namespaces which will correctly distinguish
document instances legal under the namespace rules and which follow
the rules for each namespace from document instances which don't do so.
If examples illustrating the kinds of things which are in principle
legal for anyone using namespaces, but which DTDs cannot make legal
without overgenerating, are not in your view significant for the
question "Can DTDs support namespaces in their full generality?"
then I think we do not have the makings of any useful exchange here.
* A seventh reading of your notes produces an alternative
reading of your note, in which your posting does not take
exception to the proposition mentioned above, but notes the
interesting fact that it is possible to get namespace-aware
validation without extending DTD notation per se -- the DTD
actually does provide all the information you need -- but
merely by carefully defining a modified rule for matching
elements in an instance with names in declarations in the
DTD.
I agree with your claim that by adding knowledge of how namespaces
work, it is possible to construct systems which use DTD notation
and support namespaces. This, if I may say so, is unsurprising and
not in contradiction with the remark which began this exchange.
In sum, we appear to be in emphatic agreement. If one is willing to
change the rules for interpreting DTDs and validating documents
against them, one can use DTD notation to define sets of documents
which use namespaces. Otherwise, not.
best regards,
C. M. Sperberg-McQueen