- From: Jonathan Rees <jar@creativecommons.org>
- Date: Mon, 7 Mar 2011 07:54:04 -0500
- To: AWWSW TF <public-awwsw@w3.org>
Roy T. Fielding and Richard N. Taylor. Principled Design of the Modern Web Architecture. ACM Transactions on Internet Technology (TOIT), 2002. http://www.isr.uci.edu/~taylor/documents/2002-REST-TOIT.pdf ... allowing a user to progress through the application by selecting a link or submitting a short data-entry form, with each action resulting in a transition to the next state of the application by transferring a representation of that state to the user. [A representation is of a state.] REST components communicate by transferring a representation of the data ... [A representation is of data.] Finally, it allows an author to reference the concept rather than some singular representation of that concept, thus removing the need to change all existing links whenever the representation changes. [A representation is of a concept.] Depending on the message control data, a given representation may indicate the current state of the requested resource, the desired state for the requested resource, or the value of some other resource, such as a representation of the input data within a client’s query form, or a representation of some error condition for a response. [A representation *indicates* a state.] ... the specification of Web addresses also defines the scope and semantics of what we mean by resource, which has changed since the early Web architecture. REST was used to define the term resource for the URI standard [Berners-Lee et al. 1998], as well as the overall semantics of the generic interface for manipulating resources via their representations. [A resource can be manipulated via a machine interface.] A resource does not always map to a singular file, but all resources that are not static are derived from some other resources, and by following the derivation tree an author can eventually find *all of the source resources that must be edited* in order to modify the representation of a resource. [emphasis JAR's] [A resource is derived from editable sources.] Semantics are a byproduct of the act of assigning resource identifiers and populating those resources with representations. At no time whatsoever do the server or client software need to know or understand the meaning of a URI—they merely act as a conduit through which the creator of a resource (a human naming authority) can associate representations with the semantics identified by the URI. In other words, *there are no resources on the server*; just mechanisms that supply answers across an abstract interface defined by resources. [emphasis JAR's] [Resources do not reside on servers.]
Received on Monday, 7 March 2011 12:54:36 UTC