Re: PROPOSAL - i109: Clarify entity / representation / variant terminology

On Feb 6, 2009, at 4:40 AM, Jonathan Rees wrote:
> On Jul 28, 2008, at 9:49 AM, Mark Nottingham wrote:
>> I saw a number of +1's to this rough plan, and only Brian offering  
>> another path, which didn't seem to get much support.
>>
>> Let's try doing this (i.e., getting rid of variant -- remembering  
>> that there's a separate issue for 'requested variant' -- and  
>> change the definition of representation to be the same as that of  
>> entity, giving editors discretion to adjust instances of each as  
>> appropriate). We can revisit if necessary.
>
> (I'm sorry I'm coming late to this conversation and perhaps you  
> have discussed the following, but...)
>
> Yes, I could never understand the difference between 'variant' and  
> 'representation'.
>
> But I don't think making 'entity' and 'representation' synonyms  
> makes much sense. There are a couple of reasons.
>
> First, if they are synonyms, there is no reason to use both.
>
> Second, W3C (e.g. its web architecture recommendation, but the  
> usage has spread) reserves 'representation' to mean specifically an  
> entity in a 200 response. Thus an entity in a 404 response, or in a  
> PUT or POST request, would not be called a representation, but  
> other entities wouldn't. There is no reason to redefine  
> 'representation' unnecessarily introducing confusion with other  
> specifications.

Sorry, that is not true.  There are many resources involved in HTTP,  
only
one of which is identified by the requested URI.  Each of those  
resources
may have representations, and the meaning of the payload in a  
response message
is defined by the status code.  A 404 response is going to contain a
representation of a resource on the server that describes that error.
A 200 response is going to contain a representation of the resource that
was identified as the request target.

> Webarch goes further and says that a 'representation' is 'of' the  
> resource, meaning that there is a special relationship between the  
> entity and the resource -- it carries the information associated  
> with the resource's current state (in the REST sense), or something  
> like that (a different story for services). This relationship  
> doesn't hold for requests or non-200 responses. This sort of makes  
> sense because in the English language a representation always  
> represents something (is a representation of something).  I'm not  
> saying there is a reason for HTTPbis to make such a commitment -  
> that could be considered 'application layer', and any theory of  
> 'representation' could be left out of the protocol.

I am not aware of any such conclusions in webarch, at least in the  
one that
I approved for publication.

....Roy

Received on Friday, 6 February 2009 19:04:04 UTC