Re: The range of the HTTP dereference function

----- Original Message -----
From: "Roy T. Fielding" <>
To: "Tim Berners-Lee" <>
Cc: "'www-tag'" <>
Sent: Wednesday, March 20, 2002 9:47 PM
Subject: Re: The range of the HTTP dereference function


> The problem is that by not making the distinction between representations
> and resources, it is very hard to say that a given resource has as its
> representations a set of other resources that are selectively mapped
> according to the rules defined by yet another resource.  In other words,
> describing the metadata relationships of a resource that isn't just a

I am not removing the disctinction between representatioins and resources.
I am adding another distinction.
I representation (basically a set of bits) has a relationship
with a rest:Resource, an information object.
I'm using a namespace on the term "resource" as it is otherwise
a cause for confusion with "Resource" as used by other
systems, and in particular RDF.

1. <>
is, in my understanding, a rest:Resource.  I call it
your home page at UCI.  It is an abstract concept,
which may have many possible representations.

2. One representation is the a coupling of the string of bits starting
<title>Roy T. Fielding</title>
<body bgcolor="#FFFFFF">"""
with the (very little in this case!) HTTP metadata
200 OK
Server: Apache/1.3.23 (Unix) PHP/4.1.2 mod_ssl/2.8.7 OpenSSL/0.9.6
Content-Type: text/html
Connection: close
Date: Thu, 21 Mar 2002 15:43:10 GMT
which defines the way those bits should be interpreted and the relationship
bear to the rest:resource, and sometimes other rest:resources.

3. Roy, you are different from your home page.
In RDF we can model anything, and I need to keep information about
you (your contact details, mutual correspondence etc) separate
from information about that page
(where I have a cache of it, what pages link to it,
whether I want a copy on my laptop at all times,
the way I would classify it)

With the HTML use of the web, URIs are just used in
href's which just link bits of rest:resources.
Wiht RDF, we can actually refer to people, and so we
must not get confused when we are actually building

> > I'd like you to elaborate what you meant by RDF not being able to
> > reason about the web, as we are obviously on different wavelengths! :-)
> RDF doesn't understand content negotiation, or anything like it. :(

What do you mean? RDF is a generic language for information.
It doesn't out of the box "understand" in the sense of "have
terms for" anything much.  That is appropriate.  The very general
specs should not presuppose anything more than they have to.

When we publish RDF we generally do use content negotiation:
e.g. there are many documents (such as all hte IRC logs created
by Ralph Swick's RRSAgent) which are avilable in XHTML,
plain text and RDF.

However, RDF can very well be used
to define terms for format negotiation.  (It is used for CC/PP
which I think would come into the "anything like it" category.)
This would allow people to model the inside
workings of servers and clients and the interactions betwene them.
I'm interested in being able to take the lid off a GET operation
from within an RDF-based system and include in a query
the metadata, for example.  To do this we would need to
1. Define a namespace for all the headers
2. In code, hack the network access code to expose the
   HTTP stuff.
3. Model the semantics of HTTP in terms of the new
   vocabulary. Dan Connolly has done this in Larch.
  which explorde this area.


> ....Roy

Received on Thursday, 21 March 2002 17:52:45 UTC