RE: "On the Web" vs "On the Semantic Web" (was Re: resources and URIs)

From: Sandro Hawke [mailto:sandro@w3.org]

> You make it harder than it has to be.

>All I'm saying is: when it comes to building the Semantic Web, it
>seems useful to know or be able to find out easily which URIs denote
>response points.  For the others it's nice to be able to find an
>associated response point which is in some sense authoritative.

Response points within what?  (You are close to Joshua Allen's 
"hypertext dispenser" for "resource").  The system definition 
is authoritative.  Unless you know which system you are in, 
you can't declare any provable properties such as "response point". 
It is like having the "http" morph in the URI:  it automatically 
loads in a set of operation types.  Now meaningful URIs can't 
have "ftp" in them unless both http and ftp operations are 
isomorphic. So the URI doesn't tell us to use HTTP; it says 
there is a protocol morph there.  It's a useful thing to have, 
but not a necessary one.  Insisting on HTTP in that slot is 
insisting on the web as the system for storing and retrieving 
all information in the universe.  Sounds good; won't work. 
Works better than most.  Incomplete but acceptable.  Berners-Lee 
said it well: <paraphrase>not engineers implementing a philosophy but 
philosophical engineers.</paraphrase>

The resource name in a URI is everything to the right of the 
protocol morph.  I digress, but my point is, a naming system 
is not a retrieval system.  They can share the same syntax, 
they can share the same names, but they aren't the same systems. 
Operations over provable properties define a system.  Identity 
is meaningless without identification.  They are not the same 
but to have a system, they must be paired.

> There is only ONE kind of URI and its definition 
> is syntactic (provable properties).

>>There are many useful categories of URIs, just as there are many
>>useful categories of almost anything.

Yes, but again, categorization proceed by some set of assertions 
that result in provable properties (membership rules).  So far, a 
URI is a syntax constrained name which for our purposes includes 
a slot for a protocol morph, itself, a name from a system defined 
by the operations available to implementations of that system. 
By introducing categories of URIs, one introduces a new system. 
We had these before:  URL, URN, URI.  We knew that a URI used as 
a URL meant a named location.  A URN is a name.  Full stop.  A 
URI is an identifier, but its only real meaning is a designator 
for the syntax spec.  Without an named identification process, 
it is meaningless, so just a labelling syntax.

>> An operation can consume a name and 
>> do something meaningful;

>Sure, roughly speaking.

>> meaning is always dependent 
>> on the system of which that operation is a 
>> functional member. 

>Then there is no interoperability, no communication between systems.

Yes there is.  There can be a system of systems, roughly what the 
web architecture winds up being.  If defined from the point of view 
of REST, it is a system with a limited set of operations based on 
transporting bits on the wire to and from a named address.  The 
semantic web is JUST a set of documents that describe other 
documents including some which are not available through 
operations defined for the web system (cannot be put, get, posted, 
etc.).  We can name Jupiter, we can create representations that 
associate to that name, we can push and pull those representations 
by sending a message to a resource which has an identification 
process for those representations, but we can never ever ever 
return Jupiter: The Planet.  So in the end, only some communications 
are meaningful among systems, and only some operations are 
performable by some systems.    Jupiter is not On The Web.  It's
in the universe (local solar system to be more precise). The 
web is not all possible information in the universe.  It is 
all resources named by URIs some of which can return representations 
when a URI is used as a URL or a URN.  The planet Jupiter isn't 
either of those.

Interoperation is in the object model, not the XML or the URI.

>Communication (interoperability) relies on some kind of shared,
>system-independent meaning.

Which is itself, just a system.  That is why the tiered interface 
model has appeal to some.  An interface is used to drill down to 
the next interface.  All objects in that object model are required 
to implement the common interface to be members of that model. 
Everything else is local.

>> That's all. 

>I wish we could define all the useful points of consensus and
>standardization around URIs in a few simple sentences, but there are
>lots of issues that just doesn't address. 

Because URIs don't address those issues.  URIs are names, and their 
provable properties are syntactic.  Full stop.  The rest are systems 
that use URIs and because they don't use them the same way, they 
don't interoperate purely through URIs.  They can share them and 
by sharing them, may in fact be naming their sharable provable properties
and operations, but are not in fact, constrained by the web architecture 
to do so.

len

Received on Thursday, 17 July 2003 16:18:13 UTC