- From: David G. Durand <david@dynamicdiagrams.com>
- Date: Tue, 20 Jun 2000 12:52:37 -0400
- To: <XML-uri@w3.org>
At 8:34 AM -0700 6/20/00, Henrik Frystyk Nielsen wrote:
> > But why do this when the binary decision is what we actually _need_,
>> to satisfy the goals of the namespace rec., and when literal
>> comparison of absolute URIs enables this to be something that we can
>> get?
>
>Because you can never guarantee this in a decentralized system. As I
>pointed out, this has *nothing* to do with URIs but everything to do with
>using decentralized names that support indirection. URIs allow up to code
>these names up which no other syntax does.
The current namespace recommendation does guarantee it, because it
says that you _may not_ use any other form of URI normalization in
comparison. This is very clearly spelled out, and for clear and
evident reasons, which have been re-iterated endlessly in this
discussion.
Literal comparison is _the canonical test_ for namespace identity.
Not necessarily for the resource denoted by a URI used as a namespace
identifier. This bothers you, but does not bother everyone.
This is what the namespace recommendation says currently.
If we are forced to accept scheme-dependent comparison as an option
for namespace processing, the only sane thing to do is to abandon the
use of URIs for namespaces altogether. However, I don't see a lot of
support for making namespace comparison variable in this way.
> > The farther we move from a unique string approach the more kinds of
>> failures are possible, and the less we meet the _very simple_
>> requirements for namespaces. A "forbid" solution has none of these
>> errors, but kills old documents. A "literal" solution is confusing if
>> you expect absolutization, but is also consistent with respect to
>> identity.
>
>What you are really saying here is that we should enforce a single URI
>space, call it "ns:" which has certain properties like not use relative
>names and not support indirection. As I have mentioned before, this is a
>GUID. That is a valid thought but please keep it separate from whether URI
>syntax is fine or not.
>
>It's all about choosing your URI space.
No, it's about choosing your comparison algorithm. I don't care what
results from the de-referencing of a URI given as a namespace. As a
namespace creator, all I need to know is that I have the authority to
assign the names that I assign, and that I won't assign the same name
to another namespace.
But all this philosophy is pretty irrelevant. What matters is that
namespace names have a single, deterministic comparison algorithm
that will not change (new schemes being created _cannot_ affect the
definition of whether two namespaces are guaranteed to be the same).
It's acceptable (if pointless) to encumber the namespace spec with
rules about the http: scheme (in particular) if that is deemed
important. However, it's not acceptable if I have the freedom to
create a new namespace dgd-names:, give it weird equivalence rules,
and then demand that namespace processors honor those rules.
Namespaces require a uniform algorithm that will specify when two
namespaces are equivalent, and when they are inequivalent and that
_can't_ depend on the URI scheme.
-- David
--
_________________________________________
David Durand dgd@cs.bu.edu \ david@dynamicDiagrams.com
http://cs-people.bu.edu//dgd/ \ Chief Technical Officer
Graduate Student no more! \ Dynamic Diagrams
--------------------------------------------\ http://www.dynamicDiagrams.com/
\__________________________
Received on Tuesday, 20 June 2000 12:56:42 UTC