namespace names [was: Concern with URI normalization text; proposed change]

At 13:23 2004 04 06 -0700, Roy T. Fielding wrote:

>>For example, if a URI http:/example.org/namespace is used as an XML Namespace the similar URIs HTTP:/example.org/namespace or
>>http:/example.org:80/namespace are not names for the same XML namespace.
>
>Yes they are. 

No, they aren't names for the same XML namespace
even if they point to the same resource in all cases.

> The processing algorithm does not need to consider them
>to be the same name, but XML cannot change the meaning of a URI.

XML (more accurately, Namespaces in XML [1]) is not trying to say
anything about the meaning of a URI, it defines XML namespaces.

I am not disagreeing what those two URIs mean, but the Namespaces 
in XML spec says:

  An XML namespace is a collection of names, identified by a URI reference....

  URI references which identify namespaces are considered identical when they 
  are exactly the same character-for-character. Note that URI references which 
  are not identical in this sense may in fact be functionally equivalent. 
  Examples include URI references which differ only in case....

All compliant namespace processors should consider those two URIs to 
represent different namespaces which can be tested by seeing if:

<x xmlns:n1="HTTP:/example.org/namespace" 
   xmlns:n2="http:/example.org:80/namespace" >
  <bad a="1"     a="2" />
  <bad n1:a="1"  n2:a="2" />
</x>

gives an error (the above would be illegal if the namespace names
were considered to be the same, and I am aware of no namespace
processor that would give an error here).

Again, I'm not arguing about URIs or comparisons thereof, just what
the Namespace in XML spec says about namespace names.

paul

[1] http://www.w3.org/TR/REC-xml-names/

Received on Tuesday, 6 April 2004 17:00:25 UTC