- From: Michael Mealling <michael@bailey.dscga.com>
- Date: Mon, 29 May 2000 19:16:52 -0400
- To: "Clark C. Evans" <cce@clarkevans.com>
- Cc: michaelm@netsol.com, abrahams@acm.org, xml-uri@w3.org
On Mon, May 29, 2000 at 07:15:09PM -0400, Clark C. Evans wrote: > On Mon, 29 May 2000, Michael Mealling wrote: > > Does urn:isbn:1-56592-487-9 name or locate? > > > > Before you answer that be aware that there is a standardized process for > > taking that URN, looking it up in an authoritative database and getting > > the exact location of an electronic copy of the resource it names. > > Now, does it name or does it locate? > > Our problem isn't this exactly. I believe the fundamental > question becomes: > > "Is there an injective function from the > identifier space onto the resource space?" > > Why do we need this injective quality? Beacuse in our > domain (namespaces), we wish the following conditional > to be a tautology: > > "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" URIs have this quality by definition..... It just isn't character for character. I.e. your equality function is defined by the URI standard and not simply a simply ASCII string comparision. But there is still an equality function that satisfies your conditional. You just can't get at it using strncasecmp() alone... > The problem with URLs is that, in general, they > lack this injective quality. In other words, > I can find N distinct URLs that identify > (resolve to) the same resource. Just because two identifiers identify the same sequence of bits doesn't mean they're equal. One may give different levels of service, policy, legal resource, jurisdiction, etc than the other. I.e. its a statement about uniform equality: If uri-canonicalization-function(uri1) = uri-canonicalization-function(uri2) then in ALL cases you can assume that, at that time, the resource identified by iri2 and uri2 are equal If uri-canonicalization-function(uri1) != uri-canonicalization-function(uri2) then, <strong>based on that information alone</strong>, there is NO case in which you can assume the two resource are equal. > I am reading into your example above this > injective quality. Am I correct? Yes. As far as what you are allowed to assume based on what the URI specification says once you've done the canonicalization step. > P.S. > > Just for reference, the "functional" quality gives our > domain this tautology: > > "If the name X and the name Y are the same, > then we know the resource identified by X and > the resource identified by Y are the same." Yes. URIs have this same tautology.... But note: same does not mean bit equal.... > And, for reference, the "surjective" quality of > the mapping described gives our domain this property: > > "For any resource X, there is at least one > name X' such that X' identifies X." Correct. Now, this function does not say that X is a network accessible resource. If so, then it follow that any X' can exist such that it identifies any logical, physical, or electronic resource. Even itself or nothing... -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 Monday, 29 May 2000 19:28:46 UTC