Lists Home |
Date Index |
- From: james anderson <firstname.lastname@example.org>
- To: Tim Bray <email@example.com>
- Date: Thu, 31 Aug 2000 12:37:06 +0200
Tim Bray wrote:
> At 12:58 PM 30/08/00 -0400, Frank Boumphrey wrote:
> >Section 2 of the Namespaces rec declares
> > <foo:a xmlns:foo="">In the foo namespace</foo:a>
> >is illegal
> >Can anyone tell me the reasoning behind this?
> Yes, that's illegal. My memory is fuzzy, but one of
> the important reasons is that if you have a default
> namespace <x xmlns="default-ns-uri"> and then you
> want to unset the default so there is none, the
> obvious way to do that is <subX xmlns="">, which
> doesn't mean the default ns is "", it means that
> there isn't a default ns. It would be distinctly
> weird if the semantics of <x xmlns=""> were wildly
> different from <x xmlns:foo="">.
Which, in turn, raises the question, why should they be different? If
the reasoning has to do with "the default namespace which isn't", then
one might ask what purpose that anomaly serves and argue that one should
instead stipulate the existence of a namespace with the name "", to
which not only the default namespace could be associated (by the form
xmlns=""), but also to which any given prefix could be bound (by a form
like xmlns:foo=""). the result is simpler to understand and easier to model.
> Also, the WG was (quite rightly, as history has
> shown) very nervous about relative URIs as
> namespace names, and "" only makes sense as a
> relative name.
While I can follow, that one might assert that a form like xmlns:foo=""
would effect a binding for the prefix "foo" to some namespace which is
bound in a form in which, for example, an external parsed entity has
been included, for example, the default namespace, the mechanism is
couterintuitive and problematic - without regard to the "" value
specified for the namespace name.