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

>>>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.
>
>Please try to keep in mind that the REST architectural *style* is a
>model for an information retrieval system.  It is not a model of the
>network-of-linked-resources, but of the process for interacting with
>WWW resources according to instructions found in hypertext.

OK.... I think.... (Im not sure I follow this distinction between 
information retrieval system and network, in this context)  but in 
any case we are still talking about *interacting with* the resources, 
right? Not *referring to* them.

>That is
>why there is a disjoint between the terms used by my dissertation and
>those used by the mix of people adding text to the webarch document.
>REST resources are always information resources, not because the
>resources are information, but because the system is designed to
>retrieve information associated with any resource identifier.

OK, I think I follow that.  But that suggests that the useage of 
"resource" more generally is not arising from the REST model, as I 
had previously supposed. What is the origin of this more general 
usage, then?

>>Well, that document also says (5.2.1.2):
>>"REST components perform actions on a resource .."
>>so if the remote galaxy is a resource then Web components can 
>>preform actions on it.
>
>REST doesn't care what the resource *is* aside from providing a
>sameness over time that might be desirable as a link target (the
>conceptual target).

I don't know your usage of "target" here.  But in any case, even if 
REST doesn't care what the resource is, surely it has to be the kind 
of thing that the REST description could *possibly* apply to. As you 
say, we cannot access a galaxy; "resources" get accessed (REST); so, 
it seems to follow that a galaxy cannot be a "resource", right?

>While it is certainly true that we cannot
>"access" a remote galaxy, it is possible to access a conceptual
>mapping of information observed from those galaxies.

It might be, yes. Though it is also possible to access some 
information which is *about* the galaxy - which *refers to* it -  but 
has nothing particularly to do with observation.

>  The resource
>in REST is the conceptual mapping, not the concept.

Im getting lost here, sorry.  Stick to the galaxy example. There is 
the real thing, the actual galaxy, millions of miles away. There is 
the *concept* of the galaxy, which is probably either in our heads or 
maybe in some abstract concept-space somewhere, I'm never quite sure 
which. There is some (time-dependent, if you like) source of 
representations which all have something to do with the galaxy. The 
last is the resource, right?

>  The concept
>can exist outside the REST-based system and be uniquely identified
>by the same URI outside the system.

Well, yes; but it could also *not* be so identified, surely.

>Claiming that the URI cannot
>identify both the conceptual mapping and the real thing outside
>the information system is equivalent to claiming that your
>social security number cannot be used to identify anything other
>than your social security account.

OK, point taken: so the URI can be ambiguous. I agree names can be 
ambiguous in this sense; they can have more than one possible 
meaning/referent. But then IF a URI has to identify a single UNIQUE 
resource, only one of these different possible meanings can be 'the' 
resource it identifies. Which one is it? (That is where I came in, if 
you recall. )

>REST-based systems use URIs
>as indirect identifiers, even if they happen to identify
>the same thing directly.

?? What does "directly/indirectly" refer to?

>Meanwhile, we can access physical hardware operating in the real
>world using an http URI, such as the robot arms that manufacture
>cars.

True, and I see that examples like this (and webcams etc) require us 
to talk about information resources at a reasonably high level of 
abstraction, and not get stuck into models where information 
resources are limited to hypertext.

>  We can act on them via http in the same way, albeit with
>less fidelity, as we can act on our fingers though signals generated
>by our brains.

Whoa.  I do not agree with that, I'm afraid.  That gets into a huge 
area of discussion and debate in philosophy and cognitive science. 
But in any case this goes way beyond anything to do with the Web.

>We can't say anything about the "realness" of a
>resource by inspecting the naming scheme of its URI.
>
>If I hold up my hand with my index finger extended, people
>interpreting the visible reflection of light from my finger
>(its representation as received by their eyes

No. Sorry, but you are into cognitive science again here.  The light 
is not a *representation*; if anything, it might be called a visual 
affordance.  And mental visual representations are complex - they 
might not be anything like what we would call symbolic 
representations at all, its a highly controversial area - but they 
are only very indirectly related to the light. The information in the 
visual field has already been highly processed even before it gets 
out of your retina into the optic nerve. By the time it has become 
anything like cognitively accessible information it bears only a 
tenuous relationship to the actual light. For example, the colors you 
see are not 'in the light', as Land showed.

>) will comprehend
>it as representing the number 1.  It is still a finger, but when
>presented consistently in the appropriate contexts it has a
>different meaning.  [*]

There isn't space (and I don't have the time) to debate all the 
issues that arise from this example.  Anything can have a meaning if 
it is understood as being in some sense a representation or a symbol; 
but exactly what that means has not been settled in several centuries 
of analysis.  That finger might mean 1, or 'screw you', or it might 
just be a finger with no particular meaning.  And as you say, one has 
to get involved with an analysis of the context in order to even 
begin to discuss this stuff.  It gets very complicated very quickly. 
But surely a description of the Web architecture does not need to get 
into foundational issues of semiotics and cognitive science.

>Now, consider taking a picture of my finger.  That picture is
>a representation

You could say that, yes.

>-- it doesn't have to be full fidelity to
>represent either my finger or the number 1

You would need to tell a very elaborate story in order to say how it 
represented the number one. I don't think it makes sense to say that 
the picture represents 1 all by itself.

>, though it does require
>some metadata to indicate when the picture was taken.  Now I assign
>two URIs, one for the state of my finger and another for the number 1,

Who or what decides what the URI is 'for' ? Why is the first URI not 
for, say, the person whose finger it is, or the color of his skin, or 
his knuckle, or indeed anything else.?

>and bind both within a server to that representation.  The
>semantic requirement that REST has is that if someone applies GET
>to the first URI they will obtain some representation of my finger,
>whereas if they apply GET to the second URI they will obtain some
>representation of the number 1.

That is not a semantic requirement, since you havn't said what it 
means to be 'of' something.  But in any case, even if it were a 
semantic requirement, this is a really bad way to define a semantics, 
since it cannot possibly be related to any operational or functional 
requirements, such as entailment or inference. Its trivial to say 
that 'the semantics of this symbol: 'fffoijoh:hjlhgdphgd' is that it 
refers to the Eiffel tower'  but what do you get by saying it? What 
follows from saying this? If someone else disagrees with you, how do 
we decide who is right? In fact you havnt really said anything by 
saying that; the only way anyone could understand what you meant by 
'fffoijoh:hjlhgdphgd' would be by accessing your semantic claim and 
then understanding what you meant by *it*; and then you need a 
semantics for your semantic metatheory; and this is a vicious circle. 
(How do I know that what you mean by "Eiffel tower" is what I mean by 
that phrase?) Accessing the representation itself wouldn't do the 
job, any more than accessing the picture of the finger would convey 
the concept of the number 1 all by itself.

>REST doesn't care how, nor why.

OK, I understand that part. (Though my eyebrows are raised: if so, 
why all that stuff in your thesis about network architecture, 
proxies, servers etc. etc.? Just an aside.)

>If Sesame Street wants to link to my resource representing the
>number 1, they had better use the second URI.

They might be better advised to use "1"^^xsd:integer, I'd suggest. 
Seriously, how can they possibly ever come to know that your second 
URI is supposed to refer to a number?

>What is important here is not whether the machines can
>distinguish between those resources

I agree.

>, or even if the semantic
>software can somehow determine their meaning by inspection, but
>rather that Sesame Street gets what it wants.

I have no idea what that means. What they GET, in your example, is a 
picture of a finger: end of story. What *you* think that picture is 
'about' seems to me completely irrelevant (and invisible) to them, 
unless of course you also arrange it so that what they get is 
something that tells them what the picture refers to; but then we 
have to ask, tells them how? In what language, with what semantics?

And in any case suppose you are just putting up a picture on a web 
page, like I did with the Yosemite example: the picture isn't 'of' 
anything in particular, except in the casual sense that its a picture 
of whatever the camera was pointing at. But that makes it a picture 
of Yosemite, of some trees, of some rocks, of a waterfall, of my 
holiday last Spring, of a whole lot of stuff, so *certainly* doesn't 
pick out one "resource" that it is "of".

>  They can find out
>what the URI means by asking the authority

Using what protocols? How will they understand the answer?

>, or by inspecting the
>links that other people (especially me) create when referring to
>the resource using that URI

I agree about that, except to observe that "referring to the resource 
using" is question-begging and completely irrelevant. They might find 
out what the URI means by examining the representations which use the 
URI.  Exactly: the meaning of a referring expression is fixed, 
ultimately, by its context of representational use.

>, or by interpreting metadata

Metadata does not fix semantics unless the metadata representation 
already has some semantics attached to it.

>that
>is provided by anyone (preferably the authority).  Frequently,
>all this requires is looking at other hypertext anchors and
>their surrounding text.

Well, that requires a semantic story to be told, then. *How* does 
surrounding text fix the referents of URIs uniquely? Seems to me that 
when I look at real examples, it doesn't, in fact, most of the time. 
Most web pages are not singly-referential, unless we can say that 
what they refer to is all the information that they contain.

>I hope that helps explain the issues.

It sure helps to get the issues out into the open, yes, thanks.

>
>....Roy
>
>[*] The model presented in REST is based on a theory of human
>     communication, not just a software design.  That was not
>     included in my dissertation because it isn't something I
>     wanted to defend.

That is kind of what I was afraid of, to tell you the truth, ie that 
there actually was a semantic theory lurking in the background 
somewhere but not showing itself clearly.

Pat

-- 
---------------------------------------------------------------------
IHMC	(850)434 8903 or (650)494 3973   home
40 South Alcaniz St.	(850)202 4416   office
Pensacola			(850)202 4440   fax
FL 32501			(850)291 0667    cell
phayes@ihmc.us       http://www.ihmc.us/users/phayes

Received on Sunday, 27 July 2003 16:32:35 UTC