W3C home > Mailing lists > Public > xml-uri@w3.org > May 2000

Re: When are 2 URI's the same?

From: Paul Grosso <pgrosso@arbortext.com>
Date: Fri, 19 May 2000 10:09:08 -0500
Message-Id: <>
To: xml-uri@w3.org
At 17:00 2000 05 19 +0000, Anthony B. Coates, ESL +61 2 9373 7972 Sydney
>When are two URI's the same?  

That is not the current discussion.  We are discussing namespace names,
how to derive one from the value of the namespace declaration, and how
to compare namespace names.

>When do two relative URI's refer to the same thing?  

That is most definitely NOT what we're supposed to be discussing.
See what I wrote just above.  No one is suggesting that namespace
name equivalence be defined in terms of actual resource identity.

>I'm a bit confused by the idea that namespace identifiers
>are (allegedly) URI's, yet that can be compared like strings, which I
>would not have thought to be the case for URI's.

Actually, if we had left the spec saying "URIs", we'd never be in the 
mess we're in right now, as URIs can't be relative.  The namespace
spec uses the term "URI references" (defined in RFC 2396).

>If namespace identifiers are URI's, surely they should be compared as
>URI's.  If they are compared as strings, surely the spec should say
>that namespace identifiers are strings, and are not URI's, even if
>they often look like URI's.

Namespace names are strings.  The namespace spec talks of comparing 
namespace names "character for character".  Forget about "equivalence 
of URIs"--it's not clear what that means, and it's irrelevant to this 

We're pretty much in agreement that namespace equivalence is tested
by a character for character string comparison.

The current issue, rather, is what transformation, if any, does one
do to the value given in the namespace declaration (called in some
places the "ns-attrib" value) to produce the namespace name (that would
be used in a string comparison to test equivalence).  Suggested options 
for that transformation have been:

1.  do nothing (the "literal" approach)
2.  absolutize that string (via the RFC 2396 algorithm)
3.  canonicalize that string (which usually implies still more processing
      than absolutization via some not-as-yet defined algorithm)

The other option being considered is to changed the namespace spec to
forbid relative URIs as values of ns-attrib.  This would be like changing
the namespace spec back to say that a namespace name is a URI (instead of
URI reference) as it originally said in earlier drafts.

>Is there something I am missing about comparing URI's?  I fully
>understand the problems for people who already use straight textual
>comparison of namespace identifiers, but I wonder if the current spec
>isn't guilty of standing with one leg on either side of a barbed wire

It probably is in some sense, though the original framers of that spec
didn't realize it.  But here we are now, so the question is what to do.

Received on Friday, 19 May 2000 11:09:25 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:13:58 UTC