Lists Home |
Date Index |
John Cowan wrote:
> james anderson scripsit:
> > A namespace declaration should take the form of an attribute declaration.
> > The scope of the namespace declaration is the respective element declaration, and the closure of the respective contained
> > element and attribute declarations, subject to the limiting effect of contained attribute declarations.
> The trouble with all this, however theoretically pretty, is that as a
> practical matter it will be repetitious and error-prone, since xmlns
> and xmlns:* attributes can appear essentially anywhere. If they have
> to be declared in a NS-aware DTD, then every element will have to
> carry about gobs of these things for all the namespaces in use.
This claim is false.
The declarations need appear in only those places analogous to those in which they would have to appear within the document entity.
Where they are declared as default values, these are the only declarations which are necessary.
As a "pratical matter" a free namespace declaration is "repetitious". Whether it will be "error-prone" is a matter of interpretation.
> IMHO validation DTDs should not even report the presence or absence
> of namespace-declaring attributes as part of validation.
I agree, that it is gratuitous to require that xmlns:* attributes be declared for an element to be valid. On the other hand,
where they are declared, they must be reported as default values.