Search the web
Sign In
New User? Sign Up
rest-discuss · REST Discussion Mailing List
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Want your group to be featured on the Yahoo! Groups website? Add a group photo to Flickr.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
REST's Definition of Resource   Message List  
Reply | Forward Message #4010 of 14020 |
Re: [rest-discuss] REST's Definition of Resource

On Thursday, October 2, 2003, at 07:15 AM, Walden Mathews wrote:

> I don't think it would ever be correct to say that "REST [or
> any architectural style, for that matter] is only about the technical
> aspects...". The purpose of studying architectural styles is so
> that we can reason about the properties of the system.
>
> In this case, there are two properties driving the definition of
> "resource" within the REST style:
>
> (1) consistency of reference. When you say "GET the algorithm
> for computing the area of a circle" or "GET the current weather
> in Norwalk", you want those requests to have consistent semantics
> over time. Even if the particular answers vary.
>
> (2) scaleability. One way to achieve that consistency is to let
> identifiers identify representations, and rely on centralized link
> services to
> track state changes. Every time the current weather in Norwalk
> changed, a new document and a new identifier would have to be
> minted, and all existing documents with a reference to Norwalk
> weather would need their links updated, the overall cost of the
> operation
> being commensurate with the total number of such links. The other,
> more scaleable, way to achieve that is to do what REST does:
>
> """
> Traditional hypertext systems [61], which typically operate in a
> closed or
> local environment, use unique node or document identifiers that change
> every
> time the information changes, relying on link servers to maintain
> references
> separately from the content [135]. Since centralized link servers are
> an
> anathema to the immense scale and multi-organizational domain
> requirements
> of the Web, REST relies instead on the author choosing a resource
> identifier
> that best fits the nature of the concept being identified. Naturally,
> the
> quality of an identifier is often proportional to the amount of money
> spent
> to retain its validity, which leads to broken links as ephemeral (or
> poorly
> supported) information moves or disappears over time.
> """
>
> I don't think REST seeks to be a framework for knowledge
> representation or semantics. I think the requirements above led
> to its definition being inevitably "conceptual".

That's an excellent summary, Walden. REST does not seek to be a
framework for KR, but it is a framework for communication. The KR
systems that I am familiar with are primarily based on models of
facts/claims/reality instead of perceptions, since building a
reasoning system with multiple perspectives is a bit like
working with a schizophrenic. However, since communication is
at the heart of learning, they end up with similar challenges.
and similar terminology.

> REST "resource" is unlike any other architectural component
> I am aware of in this sense. A "filter" component in a pipe &
> filter style makes promises about the consistency and relative
> statelessness of the transform, but not any semantic consistency
> of the output.

Yep, I struggled with that in writing the dissertation -- is
each resource a datum, a connector, a component, or something
else that just hasn't been talked about in the literature?
I think of it as an abstract goal, more than anything else,
but classified it as data because it didn't fit elsewhere.
It is, essentially, data that is only used by reference.

> In modeling REST formally, you can remove "resource" from
> the picture without harming the purely technical aspects of the
> system. What you then end up with is a many-to-many relation
> from URI to representations. Perhaps that's all the Web *really*
> is, but it's hard to find any guidance in the building of useful
> systems in that. Put another way, it's hard to decide what value
> such a system might be providing.

And that is the key, really, since the main reason we know that a
conceptual resource must exist is because of the number of ways
that a link can fail. It is only when people complain bitterly
about the lack of an expected sameness that you realize the goal
of the link has nothing to do with the listener at the end of
the HTTP address, but rather the expectation that it identifies
(indirectly, as there is no such thing as direct HTTP
identification) something other than the address.

People don't create links to server software; they create links to
information. If the system pretends that the target of a link is
nothing more than a communication point, then the system cannot
anticipate and correct for the kinds of information failures that
people actually care about. Or, more to the point, people won't
design the system (which doesn't care either way) such that it
detects such failures when possible and includes the features
necessary for indirection, redirection, etc.

BTW, the definition of resource in REST applies only to information
systems. The one that applies to all uses of URI is in the
rfc2396bis draft, which has larger scope but ends up being less
useful as a result. There are no other generally agreed upon
definitions of resource for the Web technologies, though many people
still think of it as a "document" and simply change the definition
of document to have the same properties as a resource.

....Roy




Fri Oct 3, 2003 12:49 am

roy_fielding
Offline Offline
Send Email Send Email

Forward
Message #4010 of 14020 |
Expand Messages Author Sort by Date

Hello-- I have some questions regarding REST's definition[1] of resource: REST (re-)defines resource to be an abstraction not only of a) information resources...
jalgermissen@...
algermissen1971
Offline Send Email
Oct 1, 2003
1:34 pm

... Here is another way to express my question: I don't believe that the notion of a resource's state makes any sense wrt abstract concepts so why would REST...
jalgermissen@...
algermissen1971
Offline Send Email
Oct 1, 2003
2:06 pm

... How do you think about abstract concepts like "3"? Do you think of it symbolically (the glyph) or numerically? If you need to explain to someone the...
Roy T. Fielding
roy_fielding
Offline Send Email
Oct 2, 2003
12:30 am

... Every thing (two words 8-) is a resource. c) is automatically included by this definition, and to remove it would be arbitrary, and would lessen the power...
Mark Baker
gonga_thrash
Offline Send Email
Oct 1, 2003
2:07 pm

Jan, The two questions are closely related. Suppose you know I've been renovating my house for the last 4 years, and you're interested in that project. ...
Walden Mathews
waldenmathews
Offline Send Email
Oct 1, 2003
2:42 pm

An HTTP URI simply designates a location at which data MAY be retrieved via the HTTP protocol. NOTHING ELSE. If I tell you "My address is 555 Maple Drive." The...
S. Alexander Jacobson
shop2it
Offline Send Email
Oct 1, 2003
3:26 pm

... I understand, though that does not really satisfy me....but that is another topic for another day ;-) ... [...] ... Ah, interesting. This focusses on the...
jalgermissen@...
algermissen1971
Offline Send Email
Oct 1, 2003
3:34 pm

... I think so. I like the way you phrased that, as if this were a feature rather than a bug. Nice. ... Not AFAICT. ... I don't think there's any one answer...
Mark Baker
gonga_thrash
Offline Send Email
Oct 1, 2003
5:21 pm

alex, that may be what the http spec says, but i don't believe that's up-to-date with the thinking that's currently going on in the web architecture area, in...
Walden Mathews
waldenmathews
Offline Send Email
Oct 1, 2003
4:34 pm

It depends on the scheme. HTTP URIs identify locations at which data may be retrieved/deposited. MD5 URIs identify data that may be located at some HTTP URI at...
S. Alexander Jacobson
shop2it
Offline Send Email
Oct 1, 2003
5:39 pm

Alex, I think it would be incorrect, even for HTTP scheme, to assert that the location is necessarily the resource. REST says resources are anything with...
Walden Mathews
waldenmathews
Offline Send Email
Oct 1, 2003
6:23 pm

... There is only one HTTP URI scheme, the HTTP Uniform Resource Locator as defined in (rfc2616). I would agree that server operators *should* avoid changing...
S. Alexander Jacobson
shop2it
Offline Send Email
Oct 1, 2003
8:29 pm

Alex, I don't know where you are going with this, but it doesn't sound like REST to me. I think it's now pretty far afield of Jan's question, and likely to be...
Walden Mathews
waldenmathews
Offline Send Email
Oct 1, 2003
9:46 pm

Please bear with me....I get the impression that there are a number of implicit ideas about REST that I have been completely missing so far. More questions.......
Jan Algermissen
algermissen1971
Offline Send Email
Oct 2, 2003
6:47 am

Jan, ... I have trouble extracting a clear interpretation from "considered with knowledge representation issues". Could you make that more explicit, maybe...
Walden Mathews
waldenmathews
Offline Send Email
Oct 2, 2003
12:02 pm

... What I mean is if REST goes beyond the technical aspects of distributed systems? Roy wrote: "How do you think about abstract concepts like "3"? Do you...
Jan Algermissen
algermissen1971
Offline Send Email
Oct 2, 2003
12:14 pm

Jan, I don't think it would ever be correct to say that "REST [or any architectural style, for that matter] is only about the technical aspects...". The...
Walden Mathews
waldenmathews
Offline Send Email
Oct 2, 2003
2:15 pm

... That's an excellent summary, Walden. REST does not seek to be a framework for KR, but it is a framework for communication. The KR systems that I am...
Roy T. Fielding
roy_fielding
Offline Send Email
Oct 3, 2003
12:50 am

... Hmm, I see some light I think. Do you argue that resource is (re-) defined the way it is on the basis of *observation*? To put this in other words:...
Jan Algermissen
algermissen1971
Offline Send Email
Oct 2, 2003
2:54 pm
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help