On May 20, 2009, at 12:01 AM, David Booth wrote:
Hi Hugh,
Re:
"The URI Lifecycle in Semantic Web Architecture":
http://dbooth.org/2009/lifecycle/
On Tue, 2009-05-19 at 18:08 +0100, Hugh Glaser wrote:
Hi David,
Excellent stuff.
It is important, as you do, to make statements about what is good
citizenship, and to distinguish these from what might be enforced
etc..
I was about to suggest that you might want a ³URI is deprecated² in
your
figure, but then I found that was the title of the Event 4 section
corresponding to ³URI is obsolete². :-)
Oops! Thanks for catching that error. I've fixed it now.
I suspect that this area could do with a bit of teasing out.
For example, your description may indeed be ³obsolete², as it
implies no
access possible, and should never be a deliberate action by the
owner (I
suspect there might be another explicit part of URI owner
responsibility 1,
which is to serve the URI declaration for as long as they are able,
or
something like that). On the other hand, the owner may want to
discourage
use of some URIs in preference to others, so this is a deliberate
act by the
owner (I am thinking of opencyc in particular here), and this is
the sort of
thing I would term deprecation.
Yes, that's a good point. I intended to include that case under the
overall "URI is obsolete" section (since the point is that the URI
should no longer be used to make new statements), but it looks like I
forgot. I've added it now.
It looks like an excellent research topic to provide theories and
tools for
determining when the responsibilities are being broken.
A last comment, which I know we have discussed, and you possibly
disagree:
"Community expropriation of a URI"
Might have meant something else.
One of the problems is that many authors will not discharge their
Statement
Author Responsibilities, but will assume that the URI is the one
they want.
Over time, this may mean that the general SW uses a URI in a way
other than
the URI owner intends, to the extent that it becomes irrelevant
what was the
original meaning (there are many parallels for this in natural
language, and
indeed it is the social process that causes language to change).
[ . . . ]
Yes, that's a great topic for discussion. It is clear that semantic
drift is a natural part of natural language: a word that meant one
thing
years ago may mean something quite different now.
And the same is happening with URIs. My favorite example is dc:author,
which when coined was intended to refer to the relation of authorship
between people and things like books, things that would be found in a
library catalog. But by now, thanks to FOAF, the overwhelmingly
largest usage of dc:author is to state the relationship between a
person and their FOAF home page. This is a real social meaning shift,
and it happened without anyone really noticing and without anything
breaking or failing to work. If the original DC specs had posted a
detailed 'authoritative' ontology, the change would still have
happened and it would still have worked, but there would have been
interminable debates about whether a home page was really a "work" (or
whatever the term that was used), suggestions that FOAF use a
different URI, etc., etc.,, all to absolutely no purpose. Just look at
the interminable and utterly pointless debate now raging about exactly
what an 'information resource' *really is*, none of which has any
bearing whatsoever on how the actual Web works, even though the latter
is actually constructed almost entirely out of the former.
As humans we can
usually deal with this semantic drift by knowing the context in
which a
word is used, though it can cause real life misunderstandings
sometimes.
However, I think our use of URIs in RDF is different from our use of
words in natural language, in two important ways:
- RDF is designed for machine processing -- not just human
communication -- and machines are not so good at understanding context
and resolving ambiguity; and
- with URI declarations there is a simple, feasible, low-cost
mechanism
available that can be used to anchor the semantics of a URI.
But that begs the question of whether you want them to be anchored. I
suggest that we often don't: that letting them 'drift' in meaning to
fit their usage is exactly what we want to be happening.
In short, although semantic web architecture could be designed to
permit
unrestricted semantic drift, I think it is a better design -- better
serving the semantic web community as a whole -- to adopt an
architecture that permits the semantics of each URI to be anchored, by
use of a URI declaration.
And I disagree. I think this whole idea is based on the insistence of
various authoritative sources upon the naive idea that URIs have to
"identify" things. This has never been the case, in fact, even in the
pre-Semantic web, and its even less the case now. Its a chimera:
forget about it, rather than try to enforce it. What URIs do is fetch
chunks of information. Hardly anyone using the normal Web in the
normal way gives a damn what "thing" their URIs "identify": they only
care about what they are looking at, which is whatever that "thing"
sent back to them in the body of the 200 response, and what that means
or what it can do. The very design of html is all about *hiding* the
URIs from users, not about telling them what it is that URIs identify.
Pat
For more explanation see: "Why URI Declarations? A comparison of
architectural approaches"
http://dbooth.org/2008/irsw/
--
David Booth, Ph.D.
Cleveland Clinic (contractor)
Opinions expressed herein are those of the author and do not
necessarily
reflect those of Cleveland Clinic.
------------------------------------------------------------
IHMC (850)434 8903 or (650)494 3973
40 South Alcaniz St. (850)202 4416 office
Pensacola (850)202 4440 fax
FL 32502 (850)291 0667 mobile
phayesAT-SIGNihmc.us http://www.ihmc.us/users/phayes