[
Lists Home |
Date Index |
Thread Index
]
David Orchard wrote:
> Why is that so? Doesn't the URN spec allow names to define their own
> equivalence rules, such as %44 is different than D?
It's not the URN spec that's at issue here. It's the namespaces spec.
Namespaces in XML 1.1 is quite explicit about this:
The IRI references below are all different for the purposes of
identifying namespaces, since they differ in case:
* http://www.example.org/wine
* http://www.Example.org/wine
* http://www.example.org/Wine
The IRI references below are also all different for the purposes of
identifying namespaces:
* http://www.example.org/rosé
* http://www.example.org/ros%c3%a9
* http://www.example.org/ros%c3%A9
* http://www.example.org/ros%C3%a9
* http://www.example.org/ros%C3%A9
As are these:
* http://www.example.org/~wilbur
* http://www.example.org/%7ewilbur
* http://www.example.org/%7Ewilbur
The original namespaces spec is not quite as explicit about this, but
the practice is the same.
But the URI spec does come into this as well, and the URI spec says that
http://www.example.org/~wilbur and http://www.example.org/%7ewilbur are
the same. So we have to resolve percent escapes before extracting the
namespace names from the qname URN. There's a nasty impedance mismatch
here, though fortunately it doesn't come up too often in practice yet.
However, it probably will soon as IRIs using non-ASCII characters become
more commonly used for namespace names.
--
Elliotte Rusty Harold elharo@metalab.unc.edu
XML in a Nutshell 3rd Edition Just Published!
http://www.cafeconleche.org/books/xian3/
http://www.amazon.com/exec/obidos/ISBN=0596007647/cafeaulaitA/ref=nosim
|