[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Relative Namespaces
- From: Richard Tobin <richard@cogsci.ed.ac.uk>
- To: xml-dev@lists.xml.org
- Date: Thu, 15 Mar 2001 14:36:12 +0000 (GMT)
> In the XML spec:
>
> The Namespaces in XML Recommendation [XML Names] assigns a meaning to
> names containing colon characters. Therefore, authors should not use the
> colon in XML names except for namespace purposes, but XML processors
> must accept the colon as a name character.
>
> So assuming there is no foo prefix in scope in the above, the processor
> must accept the colon anyway?
>
> But then in the namespaces spec:
>
> The Prefix provides the namespace prefix part of the qualified name, and
> must be associated with a namespace URI reference in a namespace
> declaration.
>
> Two possibly conflicting uses of "must" ?
Not conflicting exactly: the first says what you must do to conform to
the XML spec, the second what you must do to conform to the namespaces
spec.
If document authors want to conform to the namespaces spec, they must
use colons in the way it describes. If they don't care about the
namespaces spec, they can use them any way they like. The "authors
should not..." in the XML spec amounts to saying "authors should conform
to the namespaces spec" (and that's *should*, not *must*).
If parser writers want to conform to the XML spec, they must accept
documents that use colons in names in ways that the namespaces spec
makes illegal. As far as I can see, the namespaces spec does not
actually impose any conformance requirements on parsers in this
respect, but if they want to conform to the spirit of the namespaces
spec, they must report misuses of colons. If they want to conform to
both, then they must either have some kind of switch, or report such
misuses as warnings, not fatal errors.
-- Richard