Even if a declaration has appeared, what is the processor to do were (given
the present definitions for declaration scope) the "intended" element was
associated with an attribute declaration which included a default value for
the respective attribute?
> >the DTD to see whether the element declaration for "foo:a" contains
> >a default (or fixed) value for the "xmlns:foo" attribute. If not,
> >a namespace constraint has been violated.
>
> You go on to raise the issue in greater detail, but it is clearly
> the case that the rules have to be spelt out. For example, it's
> obvious to me that for a non-validating parser, if he hits <foo:a>
> and hasn't seen an xmlns:foo= in his encestry, the situation is
> broken. Should the spec mandate that in this case, a conforming
> program has to go and fetch any and all external parts of the
> DTD to make sure there isn't a default declaration? Good question.
> I think the answer has to be "no", thus putting the onus on the author
> either to (a) use a validating processor or
> (b) have standalone="true".
How is the validating processor to do this unless either
a, it elevates the prefixes to global status,
or
b, it has a means is to determine the corresponding universal names for
qualified names in the DTD?