- From: Roy T. Fielding <fielding@avron.ICS.UCI.EDU>
- Date: Mon, 29 Apr 1996 15:24:52 -0700
- To: jg@w3.org
- Cc: http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com
A few quibbles ... > ... IfValid, and IfInvalid become IfMatch and IfNoMatch, and so > forth. That should be "If-Match" and "Unless-Match", for consistency with other (past and future) conditions. > request > ------- > An HTTP request message (as defined in section 9). An HTTP request message, as defined in section 9. > response > -------- > An HTTP response message (as defined in section 10). An HTTP response message, as defined in section 10. > resource > -------- > A network data object or service that can be identified by a URI > (section 7.2). A "resource" is a concept (a little like a > Platonic ideal). When represented electronically, a resource may be > of the kind which corresponds to only one possible bit stream > representation. An example is the text version of an Internet > RFC. That never changes. It will always has the same checksum. Bad example -- RFCs do change (obsoleted, updated, etc. in header). In any case, this places too much focus on bit streams (which do not have anything to do with a resource aside from being one representation resulting from a GET. Keep in mind that a resource is essentially the same as an "Object" in OO design methodology, and thus is more than just the data representation even when that is static. I prefer the original, since the additional wording just confuses things. resource -------- A network data object or service that can be identified by a URI (section 7.2). > generic resource > ---------------- > On the other hand, a resource may be generic in that as a concept it > is well specified but not so specifically specified that it can only > be represented by a single bit stream. In this case, other URIs may > exist which identify a resource more specifically. These other URIs > identify resources too, and there is a relationship of genericity > between the generic and the relatively specific resource. As an I would prefer a more concise (and less circular) definition: A resource that provides a generic interface to one or more other resources. In this case, other URIs may exist which identify the resource(s) more specifically. As an > example, successively specific resources might be > > 1. The Bible > 2. The Bible, King James Version > 3. The Bible, KJV, in English > 4. A particular ASCII rendering of the KJV Bible in English > > Each resource may have a URI. The authority which allocates the URI > is the authority which determines to what it refers: Therefore, that > authority determines to what extent that resource is generic or > specific. When we discuss electronic resources, an interesting fact > is that a small number of dimensions of genericity emerge. > > Time > A resource may vary with time. For example, "The Wall Street Journal" > varies with time. Each issue is a time-specific resource, which does > not change with time. Most home pages on the Web change with time, in > a less periodic way. NOTE: Allowing time to be a dimension of genericity will mean that almost all resources will be generic, including those that are non-negotiable at a particular instant in time. Is this useful? > Language > When a document is translated, it is useful to be able to refer to it > either in the generic, or to a particular specific translation. > > Representation > A given resource may have many ways in which it can be represented on > the wire, using different Content-Types (section 18.19). As an > example, an image may be represented in PNG or GIF format. > > specific resource > ----------------- > A resource that is not a generic resource. > > variant > ------- > An specific resource that is a member of at least one generic > resource. Sometimes called a resource variant. Note that the set of > variants of a generic resource may change over time as well. A specific resource that is a member of at least one generic > resource. Sometimes called a resource variant. Note that the set of variants of a generic resource may change over time. > entity > ------ > The set of information transferred as the payload of a request or > response. An entity consists of metainformation in the form of > Entity-Header fields and content in the form of an Entity-Body, as > described in section 11 described in section 11. > resource entity > --------------- > A particular representation, rendition, > encoding, or presentation of a resource at a particular point in time. > Resources not supporting content negotiation are bound to a single > entity. Generic resources supporting content negotiation are bound to > a set of one or more entities, whose membership may vary over time. > > content negotiation > ------------------- > The mechanism for selecting the appropriate variant of a generic > resource when applying a request, is described in section 15. as > ... > > cache > ----- > A program's local store of response messages and the subsystem that > controls its message storage, retrieval, and deletion. A cache stores > cachable responses in order to reduce the response time and network > bandwidth consumption on future, equivalent requests. Any client or > server MAY include a cache, though a cache cannot be used by a server > while it is acting as a tunnel. cachable -------- A response is cachable if a cache is allowed to store a copy of the response message for use in answering subsequent requests. The rules for determining the cachability of HTTP responses are defined in Section XX. Even if a resource is cachable, there may be additional constraints on when and if a cache can use the cached copy for a particular request. >... > validator > --------- > A tag or a Last-Modified date and time used to validate whether a cache > entry is "fresh" or "stale." An entity tag or Last-Modified value when used to validate whether a cache entry is "fresh" or "stale." ...Roy T. Fielding Department of Information & Computer Science (fielding@ics.uci.edu) University of California, Irvine, CA 92717-3425 fax:+1(714)824-4056 http://www.ics.uci.edu/~fielding/
Received on Monday, 29 April 1996 16:05:23 UTC