[
Lists Home |
Date Index |
Thread Index
]
Norman Gray writes:
> Are we reading the same spec? Section 5.2 says[1]
>
> > A default namespace is considered to apply to the element where it
> > is declared (if that element has no namespace prefix), and to all
> > elements with no prefix within the content of that element. If the
> > URI reference in a default namespace declaration is empty, then
> > unprefixed elements in the scope of the declaration are not
> > considered to be in any namespace. Note that default namespaces do
> > not apply directly to attributes.
>
> OK, it's in the legalese appropriate to specs, and a slightly subtle
> point that you might not get the first time you read it (I didn't),
> but just to avoid any doubt, there's an example promptly presented in
> section 5.3 which is intended to drive the point home.
>
> So it isn't quite headlined, and it may or may not be a design wart,
> but there's no way you can say it's ambiguous or implicit.
I'm not saying that the specification is ambiguous. I'm saying that the
ambiguous position in which it leaves attributes is wrong. I'm also
saying that the example in 5.3 is a very bad idea - if hammering home
bad practice counts as a bad idea.
> So there's a best-practice issue; so what? If you design a system
> which uses that slightly surprising behaviour, then you think twice
> to make sure that there isn't a more natural alternative, but if you
> do in fact need it, then that's that.
I started off presenting this as a best-practice issue at
monasticxml.org. "If you do in fact need it" then you're adding a
feature which will make such agreements even more complicated when I've
seen no case whatsoever where there was a strong argument for doing so.
This isn't rope to secure things; this is purely rope with which to hang
yourself.
The "so what?" emerges from the years of debate about what this
specification's implications for document interchange are. In theory,
Namespaces in XML was supposed to make it easier to exchange information
written using a more explicit namespacing approach. In practice, it's
merely added to the list of things about which developers must agree,
something I thought XML was about reducing. (Removing the SGML
declaration and all that...)
As for the heat, I think four years of continuous problems with
Namespaces in XML being dismissed as non-problems is more than enough.
At this point I think it's time to bang on the walls - polite discussion
has gained us pretty much nothing.
--
Simon St.Laurent
Ring around the content, a pocket full of brackets
Errors, errors, all fall down!
http://simonstl.com
|