URIs, resources, N:1, and 1:1

I'd like to propose some very simple, clear statements about the relationship
between URIs and resources.

1. The relationship between a URI and a resource is like the relationship
between a name and the object it denotes.    A URI and a resource are generally
different things.    It is possible to create self-denoting URIs, but those are
a very special case.

2. The object denoted by a URI may shift with time, but if the URI is properly
chosen, the connotations of the URI remain constant.  For example, "Governor of
Nebraska" denotes different people at different times, but the title always
refers to the person who is currently the governor of Nebraska.

3. A URI at any particular moment unambiguously identifies a resource.  In this
respect URIs differ from names, since names such as "New York" can (as several
folks have pointed out) be ambiguous.    However, names are not generally
ambiguous within a particular universe of discourse.  For instance, I know
someone named John White.  There are probably thousands of John Whites in the
US, but when I refer to John White in a gathering of colleagues they immediately
know who I am referring to.   If I am on Long Island and say that I'm going to
New York, the listeners will know that I am referring to the island of
Manhattan.

4. We can insist that certain classes of URIs be the unique names of the
resources they denote.    OIDs are an example of such a class.  But for the
class we encounter most often, namely, names in the HTTP scheme, that isn't
practical.   Nor is it practical for several other schemes such as "mailto:".
We cannot in practice exclude aliases.   Thus the mapping from URIs to resources
could in principle be 1:1 but in practice cannot be 1:1 except for certain
particular schemes.   (By 1:1, I mean that each resource has at most one URI
that denotes it.)

Paul Abrahams

Received on Thursday, 7 September 2000 19:59:39 UTC