[
Lists Home |
Date Index |
Thread Index
]
At 02:44 PM 5/29/2003 -0700, Joe English wrote:
>In addition to writing XML documents, I also write software
>that processes those XML documents. That's where the real
>namespace pain begins.
Agreed.
>That single "xmlns" attribute (er, namespace declaration)
>means that the nice simple data model of elements, attributes,
>and text turns into a vastly more complicated data model, where
>names are <namespace-name,local-name> pairs -- or even worse,
><namespace-name,namespace-prefix,local-name> triplets -- instead
>of atomic strings, and you have to keep track of the namespace
>environment to serialize or deserialize anything.
There are people who argue that you could just borrow someone else's pain
and use an off-the-shelf parser with a standard API, but that doesn't
always work for my tasks - too much gets lost along the way. Fortunately
I've now written stacks for handling namespace declarations (and scoped
attribute values), so the worst of the pain is over, but the smaller
symptoms linger.
It seems like namespaces aimed at diambiguation with the "let's create big
long names" approach, and then had to abbreviate the big long names to keep
the language usable. Since then, we've had datamodels that are big (pairs
and triples), complex (scoped), and infectious (QNames in attribute and
element values). It doesn't seem like this expansion-contraction approach
is much fun even in cases where disambiguation seems valuable.
>That's why I'm allergic to namespaces.
If I take enough medicine, I can get through the allergies. Can't say I
enjoy it, though. Thankfully, the XML that I most frequently get paid to
work on doesn't use them.
(Relative to more recent specs, my allergy to namespaces is just a
nuisance. That doesn't make namespaces look any better, though.)
|