Re: Jonathan and Alan's Homework Question

On Mar 18, 2008, at 10:29 AM, Williams, Stuart (HP Labs, Bristol) wrote:

> Alan, Jonathan,
>
> Before spending time on this, I'd like to make sure that I have an  
> accurate rending of the question... so here goes... and please  
> correct as appropriate:
>
> "Consider a time invariant information object whose state can be  
> serialised into a message which conveys the (present) state of the  
> object and directly or indirectly information *about* the object  
> (eg. mime type or a reference to a description or...) - give an  
> account of the relationships which may exist between the object and  
> such a message and between the message and any clones of the object  
> which may be reconstitued by an observer of the message.
>
> More concretely: if the URI http://example/mydoc denotes an  
> invariant MS word document: what relationships may exist between a  
> 200 response message and/or its contents sent in response to an  
> HTTP GET request on the given URI; what relationship may exist  
> between that response message and/or its contents and any cloned  
> objects created by an observer of the message.
>
> As far as is possible - please try to express anwers as a  
> collection of RDF statements."
>
> Does that about capture it?

Well, I wouldn't have said it that way, since I am a foe of the  
object metaphor in computing. But yes, I think it captures the idea.  
It may be more specific than what I was after. Let me recap what led  
up to this idea, and give my version.

The meeting today started quietly, with few people, and as I was  
scanning David's N3, I noticed that there was no relationship between  
the thing named by a URI and any HTTP response (although David  
pointed out there is a declaration relationship given by the 303  
rule). It seemed to me that we ought at least to be able to say what  
happens in the more ordinary 200 case. So I posed this challenge:

	Specify a relationship between a thing and an HTTP response received  
in response to a GET of a URI for the thing.

To make this simple and concrete, Alan proposed that we consider the  
case of a thing that is a single, particular MS Word document. All  
present agreed that this thing is not just a sequence of bits, but  
was also endowed somehow with a Word-document type. (That is, the  
same sequence of bits can be interpreted relative to many different  
types, and each such bits/type complex is to be considered a  
different information-thing.) The purpose of choosing this example  
was to avoid, for the time being, all complications relating to  
change over time, content negotiation, "representation", "information  
resource," and so on.

In addition, to make sure the analysis was well grounded, Alan  
advised that this thing be one that exists independent of the web: it  
might have existed before 1989, or it might exist in a clean room  
containing no whiff of network software or hardware.

Then Alan suggested that this information-thing be named with a URI,  
say http://example.com/mydoc, and that we look at what happens when  
an HTTP GET occurs. One might expect that an HTTP response might come  
along whose Content-type: header encodes the thing's type, and whose  
content is the thing's bit sequence. In this case, the recipient  
would then be able to reconstruct the original thing (you could call  
it a copy).

We then got into some criticism of the appropriateness of the example.

So the homework I suggested for next time is the following:  Compose  
your own scenario. Pick a simple thing and give it - or if your world  
view forces you to, something closely related to it (*) - a URI.  
Carefully specify what kind of thing the thing is by describing it  
and telling what class of things it belongs to. Then suppose a server  
gives a response for that URI, and carefully relate the response to  
the thing.  Give one or more properties, with intermediate things if  
necessary, to describe the relationship.

Give the scenario in prose and in crude RDF (augmented with rules or  
OWL or ...). For each property you use describe the domain and range,  
i.e. what kinds of things make sense on each side of the  
relationship, so that we all can better see the space of  
possibilities that you have in mind.

Make the scenarios agree with your own taste in terminology and world  
view as closely as possible. Feel good about them.

Before starting to argue about what is right, I want to simply place  
all the scenarios side by side so that we can compare them. I imagine  
posting them all on a wall and finding interesting correspondences  
and distinctions, as if they were bugs prepared for a taxonomic  
analysis. Since we're having such a difficult time communicating I  
think it best if we just try to uncritically understand what the  
scenarios all mean, before trying to modify and influence.

It was suggested that the assignment be to prepare multiple  
scenarios, or maybe even as many scenarios and relationships as you  
can come up with. Variety is good, and pathological and disallowed  
cases are always illuminating.

If this seems like a trivial problem, or one that's already been  
solved - great!  You'll finish up quickly then.

Jonathan

(*) Extra credit: What's an example of a world view that forces the  
thing named by the URI for which there are 200 responses to differ  
from the concrete well-grounded non-network-related thing?

Received on Tuesday, 18 March 2008 17:46:25 UTC