Re: Injective Quality (Was: Re: URIs quack like a duck)

At 10:29 AM 5/31/00 -0400, Michael Mealling wrote:
> > Hmmm...
> > I considered that, but I find this position very hard to reconcile with 
> the
> > statements I was querying...
> >
> > (a)  name X 'different' name Y =!=> resource X 'different' resource Y
> > (b)  URI:resource mapping is 1:1
>
>URI to resource mapping is one to one. But the inverse is not true...
>
> > I would have thought that if (b) were true,
> > then one would be entitled to conclude the converse of (a):
> > (c)  name X 'different' name Y ==> resource X 'different' resource Y
>
>Nope.  I guess the problem comes from the notation "1:1" not being
>sufficient to express the relationship here.

Ahh... I sense a possible source of mis-communication.

We appear to mean different things by 1:1 mapping.
I've checked an old math textbook, and a function

    F:  A -> B

is said to be 1:1 if F maps distinct elements in A onto distinct elements 
in B; i.e.

    F(a1) = F(a2)  ==>  a1 = a2    [This definition taken straight from 
textbook]

where a1 and a2 are members of A.  Then:

   NOT ( a1 = a2 )  ==>  NOT( F(a1) = F(a2) )

or:

   a1 != a2  ==>  F(a1) != F(a2)

This is what I understand by "1:1 mapping".

(There is a wrinkle that I had forgotten:  there may be members of B not 
mapped by F from A.  If there are no such members, then the mapping is said 
to be "1:1 onto".)

>We have two resource A and B. Both are equal in ALL possible cases except one:
>resource A is identified by the identifier A' and resource B is known by
>the identifier B'. After canonicalization, a comparison is made between
>A' and B' and they are found to not be the same identifier. THEREFORE,
>using the base 'equality' or 'sameness' function of the Web which is
>based solely on the identifier, resource A and resource B can NEVER
>be considered equal using this definition of 'same' or 'equal'.
>
>I.e. the binding between a resource and its URI is so tight that
>if the URI is different then the resource is required to be different
>according to the equality definition of the Web.

Good -- this is what I thought you were saying.

Which is, I think, equivalent to my statement (c):

     (c)  name X 'different' name Y ==> resource X 'different' resource Y

which is in contradiction to statement (a):

     (a)  name X 'different' name Y =!=> resource X 'different' resource Y

Now, my original question was made because I thought that statement (a) and 
statement (b):

     (b)  URI:resource mapping is 1:1

could not both be true, which is what I thought Tim was claiming.

I am now claiming that your explanation supports my view, by showing (b) 
==> (c),
therefore (b) ==> NOT(a).  Unless there is something I am missing here.


[file:, news:, etc.]
> > It seems to me that these present just the same problem as a relative
> > URI.  Why should they be treated any differently?
>
>Good question. The way I view it the URI space is large with some
>schemes having characteristics you want while some don't. I think
>its perfectly reasonable to make applicability statements concerning
>which URI schemes are appropriate for certain applications...

I was developing a view along similar lines (but was not sure if that would 
violate fundamental URI architectural principles).

#g

------------
Graham Klyne
(GK@ACM.ORG)

Received on Thursday, 1 June 2000 06:36:50 UTC