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

On Tue, May 30, 2000 at 08:15:17PM +0100, Graham Klyne wrote:
> At 02:27 PM 5/30/00 -0400, Michael Mealling wrote:
> >On Tue, May 30, 2000 at 06:08:10PM +0100, Graham Klyne wrote:
> > > At 09:50 AM 5/30/00 -0400, Tim Berners-Lee wrote:
> > > > >
> > > > >  "If the name X and the name Y are different,
> > > > >   then we know the resource identified by X is
> > > > >   different from the resource identified by Y"
> > > >
> > > >
> > > >I disagree. In fact, I would say that you can't make a system
> > > >which scales globally in a decentralized way with that
> > > >tautology.
> > > >
> > > >[[Two problems with vocabulary, by the way:
> > > >(1) My definition of a resource is that exactly identified by a URI and so
> > > >URIs and resources are in 1:1 mapping.
> > >
> > > These two statements seem to be in contradiction:  if X and Y are 
> > different
> > > names (URIs) that identify the same resource, then URIs and resources are
> > > not in 1:1 mapping.  What am I missing?
> >
> >Because it depends on how you define 'same'. The URI architecture
> >defines 'same' to be an equality function that is solely dependent
> >on what the URI tells you. I.e. its a universe where the URI is
> >the only datatype or semantic you are allowed to use. Its 1:1 because 'n' is
> >specifically defined to not exist. I.e. a binding of a URI to its
> >resource is an identify function....
> >
> >Now, if you include the entire human universe of 'sameness' such as bit
> >equality, copyright, version control, legal jurisdiction, intellectual
> >property, etc, then no, it isn't a 1:1 mapping. Its a 1:n mapping...
> 
> 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.


> especially for the very strong notion of 'sameness' of resources that you 
> describe, and assuming that
>       same(A,B) <=> NOT( different(A,B) )

it depends on what A and B are....

Let me try this another way:

The definition of sameness or equality with respect to resources
identified by URIs is whether or not the URI used to identify the
resource is equal after canonicalization. Stated differently:

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.

I'm not up on algebraic notation or I'd find some function that
elucidates this relationship....

> >Correct. 'file' and 'news' both depend on a local context such as
> >"access to your local filesystem" or "access to your locally defined NNTP
> >server". These schemes define some out of band item that, combined with
> >the URI, allows for uniqueness. I.e. the tuple of "my locality of reference"
> >and the "file:/home/michael/.profile" URI combined gives me my
> >uniqueness and thus my ability to compare any X and Y in the space.
> >Yes, these locality dependent URIs cause problems from time to time.
> >Does it invalidate the entire space? IMHO, not really....
> 
> [And also the tv: scheme whose RFC appeared today ;-)]
> 
> 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...

-MM

-- 
--------------------------------------------------------------------------------
Michael Mealling	|      Vote Libertarian!       | www.rwhois.net/michael
Sr. Research Engineer   |   www.ga.lp.org/gwinnett     | ICQ#:         14198821
Network Solutions	|          www.lp.org          |  michaelm@netsol.com

Received on Wednesday, 31 May 2000 10:41:15 UTC