There can be only one

Jonathan Borden wrote:

> And how is the URI spec to be implemented? This is the crux of the problem.
> If the URI spec had a formal semantics then we wouldn't have so much leeway
> in arguing about how it is intended to be interpreted. Indeed there are a
> number of folks who intend the relationship of a URI to resource be many to
> many! Now I say 1:1 and if the spec doesn't at the very least constrain this
> relationship then people seem to be free to interpret it in any way they
> please. Perhaps that is why these arguments appear never ending.

I'll chip in once, having brought up many to many recently and leave 
it at that.

Let me be clear about my intent. I would much prefer a many to 1 
relationship. The important bit being that there is 1 referent (if 
there was only one one URI in the relationship, I'd argue that we 
wouldn't a seamntic web at all). Indeed I think at certain levels 
you /must/ have a many to 1 relationship. Over the years I've seen 
people get mighty annoyed that it could be any other way, including 
myself. But what I haven't seen is an iota of evidence, or any 
indication that this relationship could ever hold on a global system 
where machines, not people, are doing the heavy lifting of 
intepretation. It could I believe, be held in a closed world, with 
not insignificant coordination costs. IMHO, in denying denotation by 
use,  we might as well be denying the presence of latency, or 
partial failure. My point is that many to one is not an observable 
truth, but as likely as not the result of a processing or filtering 
step.

Now, the TAG can say that 1 to 1 is canonical or axiomatic, but so 
what? We can't even enforce this with authority based URIs - 
different authorities can own URIs at different times.

An axiom does not eliminate the potential for multiple referents. 
Defensive coding against garbage input, because the intent of the 
system is that there can be only one.

We can build a semantics to state, clearly, that a URI has only ever 
one referent. But so what? The coordination costs in doing so are 
surely untenable for a global system (which is why I keep using 
backlinking as an analogy). By the way we already have such a 
semantics in RDF! RDF acknowledges denonations must be distributed 
in an interpretative step before inference can begin. However, if 
the 1 to 1 relationship had anything to do with the web, that part 
of RDF's Model Theory could be dispensed with as redundant.

A semantics does not eliminate the potential for multiple referents. 
Defensive coding against garbage input is needed, because the intent 
of the system is that there can be only one.

On the other hand, if the TAG said something along the lines of Tim 
Bray's response to my request, I could  start to apply techniques to 
disambuguate referents to code's mainline. The top layer of the 
system would still be driven by logical reasoners, things like OWL 
and RDF are in no risk of getting canned if that's what people are 
worried about. But the dismbiguation layers between inference 
machines (RDF reasoners) and the data machines (web servers), would 
be open to some badly needed experimentation. You know, keep the 1 
to 1 model, if it's perceived to be that valuable. But at least 
acknowledge there is a layer missing in the cake between web servers 
and inference machinery that does dismabiguation. That layer is 
neccessary if only because things like RDF and OWL break when 
multiple referents are present in the data. Today maybe we don't see 
it, because we are that layer.

Defensiv coding is removed purely by relaxing the tolerances being 
engineered to, because the intent of the system is that there might 
be more than one.

Cool URIs do change. That's why you had to remind us they don't.

Bill de hÓra

Received on Saturday, 25 January 2003 08:40:27 UTC