[Home] [By Thread] [By Date] [Recent Entries]


Bob Hutchison wrote:

> I'm not sure what you mean by this. That this is to be the only way to
> declare namespaces? That you can't mix DTD and old-style namespace
> declarations/specification (whatever)?

This (the <!NAMESPACE ...> construct) is the only way to declare
namespaces in the validation DTD. The body of the document still uses
normal namespace declarations (xmlns:foo="...").

John's original question was whether it was an error to use prefixes
that weren't declared. It wasn't clear if he meant the DTD, the
instance, or both. I assume he meant both. For example, would the
following be an error:

   <!NAMESPACE bar "http://www.bar.org/">
   <!ELEMENT bar:Bar (foo:Foo)>
   <!ELEMENT foo:Foo (#PCDATA)>

John suggested that this was not an error. That is, bar:Bar would be
matched on universal name, while foo:Foo would be matched lexically.
Norman and I both felt this should be an error. I feel that it mixes
apples (a namespace world) and oranges (a non-namespace world).

-- Ron

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member