- From: T.V Raman <raman@google.com>
- Date: Fri, 8 Aug 2008 08:02:11 -0700
- To: richard@cyganiak.de
- Cc: wangxiao@musc.edu, seb@serialseb.com, raman@google.com, john.kemp@nokia.com, www-tag@w3.org, kidehen@openlinksw.com, tthibodeau@openlinksw.com
Note that I did not assert that Resources and Representations are
the same --- I followed up saying that Resource Identifiers were
important for using as identifiers.
Where I said "dont look too hard at the distinction" is in many
usages on the Web where the resource acts as an alias for the
most used representation. Phrased alternatively -- you said:
A) A resource is anything that has a URI
B) A representation is a tuple (bitstream, mimetype)
In Web usage you usually work with the triple
(resource, bitstream, mimetype) --- and rarely with just the
(bitstream,mimetype) --
Richard Cyganiak writes:
> Xiaoshu,
>
> On 8 Aug 2008, at 10:11, Xiaoshu Wang wrote:
> > The problem is there is no objective criteria that tells a
> > *resource* from *representation*.
>
> A resource is anything named by a URI.
>
> A representation is a <bitstream, MIME type> tuple.
>
> That's a simple and objective distinction. The interesting and
> subjective question is how to best model an application using those
> two modelling primitives.
>
> There are two schools of thought on this. One school maintains a
> distinction between “documents” and “things described in the
> documents” in their modelling; the other school says that this
> distinction is unnecessary.
>
> The former modelling has been elevated to an axiom of Web architecture
> by the httpRange-14 decision. It has many advantages over the latter
> (cleaner handling of metadata, enables grouping of many descriptions
> in a single document, ...), and it has some disadvantages (more
> complex, ...). These have been discussed endlessly and I have no
> interest in resurrecting that debate.
>
> > There are only two choices. (1) As T.V Raman said, don't make any
> > distinction between them.
>
> The distinction is made in the specs; and it's made by a large and
> significant part of the Web community (see REST). Raman might not
> consider it important, and that worries me a bit, but it doesn't
> diminish the importance of the distinction.
>
> > (2) As I have always proposed, to make an absolute distinction.
> > That is: to think every URI denotes a *resource*
>
> No one disagrees with this.
>
> > and what is dereferenced from the URI is the *representation* of
> > that resource.
>
> Not quite. A representation is what you get back when you do a GET on
> the resource, or what you send when you do a POST/PUT. Dereferencing
> is the process of “reaching through the network” in order to perform
> one of the supported operations on a resource.
>
> > To think whether something is *in* a document or not is just a form
> > of self-contradiction because the goal is to make the web *self-
> > descriptive*. Hence, a document (or resource) is both in and not in
> > itself.
>
> What do you mean when you say “something is in a document”? I can
> understand the phrase “something is described in a document”.
> Obviously a document can describe itself. I don't see the contradiction.
>
> [snip]
> >> some_resource
> >> |
> >> +--303--> description_of_some_resource
> >> |
> >> +--Content-Location-->
> >> description_of_some_resource.{html|rdf}
> >>
> >> That's the clean and proper way of combining the 303 approach with
> >> content negotiation!
> > It is *clean* only when the distinction of *resource* vs.
> > *representation/description* is unambiguous, which hardly is.
>
> Those who use the approach described here simply make a modelling
> distinction between documents and the things described in the
> documents. That distinction *is* unambiguous. (But it is subjective.)
> The described approach is “clean” in the sense of HTTP interactions.
> And it is “clean” in that it enables the modelling style described
> above.
>
> > In either case, i.e., the (1) and (2) solution mentioned above, 303
> > is unnecessary. Sure, it does no harm. But it does slow down the
> > web and our goal should be to make the web more efficient but less.
>
> That's why I keep insisting that you should use hash URIs, which do
> not exhibit this downside, instead of the 303 approach. The solutions
> mentioned above are for those who have decided to use 303s anyway,
> despite the well-known downsides.
>
> Best,
> Richard
>
>
>
>
>
>
>
> >
> >
> > Xiaoshu
> >
--
Best Regards,
--raman
Title: Research Scientist
Email: raman@google.com
WWW: http://emacspeak.sf.net/raman/
Google: tv+raman
GTalk: raman@google.com, tv.raman.tv@gmail.com
PGP: http://emacspeak.sf.net/raman/raman-almaden.asc
Received on Friday, 8 August 2008 15:03:22 UTC