[
Lists Home |
Date Index |
Thread Index
]
> From: Tim Bray [mailto:tbray@textuality.com]
> Sent: Wednesday, February 27, 2002 11:12 PM
> To: xml-dev@lists.xml.org
> Subject: Re: [xml-dev] Question about the sytax of namespace
> declarations
>
>
> At 12:41 PM 27/02/02 -0800, Wayne Steele wrote:
> >Question:
> >
> >Is the below document "conforming" with regard to the XML-Namespaces rec?
> >
> ><root xmlns:a="" />
>
> It's not, but this is probably a bug BTW. You can "undeclare" the
> default namespace like so:
>
> <root xmlns="foo" >
> <child xmlns="" />
> </root>
>
> so why shouldn't you be able to undeclare other prefixes, e.g.
>
> <root xmlns:foo="bar" >
> <child xmlns:foo="" />
> </root>
>
> James Clark was the first to notice this, but that was after
> namespaces had been out for a year.
>
> BTW, *nobody* thinks it's a good idea to allow a namespace name
> to be an empty string - if the abovec were allowed, it would
> strictly be in the interests of undeclaring prefixes; which
> would break no existing namespace semantics. Who knows,
> it might even get done someday. -Tim
Wait-a-minute.
Why would you want to undeclare a namespace prefix???
In the case of
<a:root xmlns:a="" />
we would have a qualified name "a:root", with a prefix of "a".
http://www.w3.org/TR/1999/REC-xml-names-19990114/#ns-qualnames says:
"The Prefix provides the namespace prefix part of the qualified name, and
must be associated with a namespace URI reference in a namespace
declaration. [Definition:] The LocalPart provides the local part of the
qualified name. "
I don't see what this would be good for.
If you want to write an element which has no namespace and are unsure about
the context in which it appears, write
<root xmlns="" />
|