What a URI means, was Re: erratum Re: resources and URIs

pat hayes wrote:
>
> >pat hayes wrote:
> >>
> >>  >... I'd assume that it would return
> >>  >a 404 ... BUT ... by creating the URI you actually do 'create' a
> >resource.
> >>
> >>  Really? You do? Well, OK, if you say so.  But if it is that easy to
> >>  create a resource then what do we need the Web for? I can write a
> >>  simple piece of code which will generate syntactically legal URIs at
> >>  an astonishing rate: am I creating resources?
> >
> >yep. what sort of resource do you suppose the URI urn:uuid:1233445523434
> >identifies? (who knows)
>
> You seem to be making my point rather than yours. I must not be following
you.

Perhaps I am being too obtuse in my arguments, and perhaps I am assuming
more "shared state" between us than may exist, let me try again...

> >
> >>What theory -
> >>  and what *kind* of theory - requires us to hypothesise this virtual
> >>  URI space of virtual resources? We don't need it for semantics - in
> >>  fact, its does more harm than good - and I can't see why we need it
> >>  for an architectural theory, since it plays no role in the
> >>  architecture. In fact, it strikes me as just a piece of nonsense made
> >>  up to seem like a theory, which has become a kind of doctrine that
> >>  must be defended at all costs and is beyond the reach of reason.
> >
> >Ok, so evidently you don't find this a useful analogy, but I've never
called
> >this a theory, just a way of explaining the terminology 'exists on the
Web'.
> >We aren't talking metaphysics here, just local lexicon.
>
> How very like the people I argue with to use 'metaphysics' as a term
> of dismissal. As you know, my job is to try to help get semantics
> straight. This does involve something awfully like metaphysics, in
> fact. If y'all don't give a damn about metaphysics, fine: but please
> keep out of the kitchen, because I AM talking metaphysics, and sloppy
> analogies aren't any more help here than they would be in network
> engineering or, say, neuroanatomy.  "Exist" is a technical term with
> a remarkable sharp meaning. If you don't mean it, don't use it.

First:

1) I am using the term "metaphysics" properly as a theory about physics, as
a type of "universal theory" in opposition to "local lexicon". All I am
saying is that "URI space" might *only* be a piece of jargon that *doesn't*
involve metaphysics, i.e. I am simply saying that it need not be a
scientific theory in order for us to use casually in discourse.

2) You of all people ought not insist that a word has a single meaning.
"Exist on the Web" might be used in a casual sense. I do agree that we ought
sharpen the language -- I've said this at the outset -- but first, let's try
to understand what is being said, even if said in the lexicon of "Web
Hackers".

>
> To go back to your analogy: every URI has a corresponding thing in
> 'resource space'. The mapping is 1:1 and onto (no resources without a
> URI; every URI has a resource). The *nature* of resources is not
> discussed and plays no role in the theory. OK, so why not make this
> be the identity map, and say that the URIs *are* the resources? That
> simplifies the theory, apparently causes no problems and saves a lot
> of interminable discussion about the nature of nonexistent entities.

Exactly. Exactly. Exactly. Doesn't the RDF MT essentially, or actually, do
this? (I know that at least one version had made that explicit).

Ok, let's try to run with this... If URI<-> resource is 1:1 isn't that what
TimBL is saying when he states that each URI identifies one and only one
resource? Now the _meaning_ of the resource i.e. the URI, might change. A
URI might mean different things.

When I read "A resource might be anything that has identity" I think: a
resource might be _anything_ and hence I know nothing specific, or perhaps
very little, about what a resource actually is.

This entire discussion could be crisped, by changing the topic to: "What a
URI denotes", or "What a URI means" and avoid all this confusion about what
"resources" are. "What a resource is" is a discussion that we could have in
answering the above questions, but it doesn't seem to be the best _primary_
discussion (a resource might be anything.)

[much discussion snipped in light of above ...]

>
> >
> >>  >
> >>  >In the Web Architecture, you never can actually get your hands on the
> >>  >resource, rather the representation.
> >>
> >>  Is that really correct? Seems to me that you - or maybe the Web
> >>  itself - does 'get its hands on' an actual information resource
> >  > indicated by the URI, and that very thing then emits the
> >>  representation. Isnt that (a sketch of) the Web architecture for all
> >>  the ...TP protocols?
> >
> >If you consider:  HTML representation -isRepresentationOf -> document
> >resource
> >then yes. But if we consider, alternatively,
> >
> >document -isRepresentationOf-> weather in Oaxala
> >
> >then no.
>
> Yes, Sigh. But which is it? That is exactly what I am trying to find out.

I am not sure the current architecture can make that distinction. Is it
important to make -- this is a question we need to answer.

(from another email)

> >You are caught in the resource/representation bug.
>
> Actually Im dancing between the alternatives trying to make sense of
> the TAG document.  (You know, Jonathan, the use/mention distinction
> is one that I am reasonably well acquainted with:-)

(hey I know what metaphysics is also, so there! :-)

>
> >What you get when
> >resolving a HTTP URI with a fragid _might be_ an HTML document. It is the
> >responsability of the client to use the fragid to look inside the HTML
> >_representation_
>
> that is, the document, which itself is a representation, right?
>
> >  to find an anchored piece of the HTML document. This is all
> >the _representation_ not the resource.
>
> OK, Im fine with that so far.
>
> >ndeed the same HTTP URI with fragid,
> >might be resolved with Accept: appliction/rdf+xml in which case your same
> >fragid identifies an RDF description (i.e. rdf:ID="frag"), now what? You
> >still don't have the actual resource, rather an RDF/XML representation.
>
> If the resource is what is denoted, you almost never actually get the
> resource.  On the other hand, if the resource is what you get the
> thing that you get from, then its almost never what is denoted. Which
> is it??

A principle of Roy Fielding's REST architecture is that you never directly
operate on the resource.
http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm .
see: 5.2.

"resource: the intended conceptual target of a hypertext reference"

Now I realize that discussing whether a remote galaxy might be part of an
information network gets pretty quickly obtuse, by the REST definition of
resource, a resource might indeed be a remote galaxy _identified_ by a URI.
You may have issues with the wording, but the intention IS NOT to use a URI
like a memory address i.e. to enable direct manipulation of a resource,
rather it is a core principle of the current Web, at least as it is
articulated by REST, that resources are not manipulated directly, nor are
they transmitted over a computer network.

> I still havnt got a clear answer. The TAG architecture
> document, and RFC 2396, both read like they were written by
> committees half of which thought one way and half thought the other
> way.  Oddly enough.
>

I agree. When I read TimBL's writing, they seem to make sense, same for
RoyF. It appears that the interface between the two could be more crisply
described -- or perhaps this reflects a difference in viewpoint? Perhaps we
can find a way to bring these two viewpoints together in a coherent fashion.
(Note: I am, of course, not speaking for Roy or Tim, and have no idea what
they say to eachother privately. I am saying this solely on the basis of
reading email exchanges and documents published on the web.)

>
> >
> >The 'resource' need not physically 'emit' the representation, an HTTP
server
> >acts as a proxy for the resource. Is that way of describing things a
> >problem?
>
> If 'proxy for' and 'denotes' are supposed to be synonymous, then yes,
> of course it is a problem.

Why would "proxy for" and "denotes" be synonymous? I see an HTTP server as a
piece of machinery that is used to publish bit stream representations of a
resource. What word should we use for this?

>
> >In this view the HTTP server is the RPC endpoint, or Sandro's
> >ResponsePoint for the representation. Analogous to RPCs, the proxy is for
> >the remote 'object' which would be the resource itself
>
> OK, I agree the simple 'address' metaphor isnt able to handle the
> full network-engineering subtleties of proxies, endpoints and so on.
> Still, there is a basic distinction between the thingie, howsoever
> complicated and virtual, which in some sense emits the
> representations in response to a network request, and the subject or
> topic or referent of the representation itself. The TAG architecture
> document uses the phrase 'representation of' in senses that can be
> understood either way.  Which of these does it mean??

The thingie need not itself emit representations (at least in this
terminology). If I write a document _about_ a galaxy, it is not the galaxy
which emits the representation, nor is it "my understanding of the galaxy"
(a conceptual resource) which emits the representation, rather it is the
HTTP server -- which I control.

If we can come to agreement about the distinction between these two senses
of "representation" then perhaps we can agree to use different words to
distinguish these senses (I care little which words are used). How would you
prefer to describe each of these uses?

Jonathan

Received on Tuesday, 22 July 2003 18:56:59 UTC