[
Lists Home |
Date Index |
Thread Index
]
At 10:44 PM -0500 3/7/03, Gavin Thomas Nicol wrote:
>Is it
>
> a) To mix and match elements from arbitrary markup vocabularies
> b) To mix and match elements from arbitrary markup vocabularies with
> no prior agreement.
> c) To mix and match elements from arbitrary markup vocabularies with
> no prior agreement, and to then *process* them.
>
The answer is d, none of the above. The real purpose of namespaces in
practice is to easily and quickly identify which vocabulary a given
element comes from. That is, when I receive a DOM or SAX notification
that I've got a set element, I want to know whether it's an SVG set
element or an RDF set element or a MathML set element. Indeed, even
when there's no confusion on name alone (e.g. svg or html) I may
still want to be able to dispatch the element to the right handler
without a lot of effort. namespaces enable this.
In other words, it's useful for elements to have identifiers for
their class as well as their own nature, a genera as well as a
species. Very few people talk about this, but it is far and away the
most important use of namespaces.
--
+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | elharo@metalab.unc.edu | Writer/Programmer |
+-----------------------+------------------------+-------------------+
| Processing XML with Java (Addison-Wesley, 2002) |
| http://www.cafeconleche.org/books/xmljava |
| http://www.amazon.com/exec/obidos/ISBN%3D0201771861/cafeaulaitA |
+----------------------------------+---------------------------------+
| Read Cafe au Lait for Java News: http://www.cafeaulait.org/ |
| Read Cafe con Leche for XML News: http://www.cafeconleche.org/ |
+----------------------------------+---------------------------------+
|