Re: Proposal: 205 Bodies [#88]

Makes sense, esp. since AFAIK it's not widely used.

By 'terminology is cleaned up', are you refering to the entity/ 
representation/variant issue specifically (in which case I'll note  
this in that issue), or just general terminology?



On 08/06/2009, at 8:30 PM, Roy T. Fielding wrote:

> On Jun 8, 2009, at 12:16 PM, Mark Nottingham wrote:
>
>> <http://trac.tools.ietf.org/wg/httpbis/trac/ticket/88>
>>> RFC2616 Section 4.3 "Message Body" enumerates those messages that  
>>> don't include a message-body;
>>>
>>> All 1xx (informational), 204 (no content), and 304 (not modified)  
>>> responses MUST NOT include a message-body. All other responses do  
>>> include a message-body, although it MAY be of zero length.
>>>
>>> However, it does not list 205 (section 10.2.6).
>>>
>>> Also if you look at the texts for 204, 304 and 205 responses, you  
>>> see that 204 and 304 say "MUST NOT include a message-body",  
>>> whereas 205 says "MUST NOT include an entity". 204 and 304 go on  
>>> to say that the message is terminated at the first empty line, but  
>>> 205 does not say that.
>>>
>>
>>
>> Proposal:
>>
>> - Add 205 to p1 sections 4.3 and 4.4 (which is where 2616's 4.3  
>> ended up), and
>> - Revise the language in p2 8.2.6 (the definition of 205 Reset  
>> Content) to use the "MUST NOT include a message-body".
>>
>> The only argument I can see against this is that someone might  
>> include entity headers in a 205 response, in the belief that that  
>> response updates a cache. This could be fixed by adding the phrase  
>> "or entity headers" to the MUST NOT requirement above. However, I  
>> would note that 204 doesn't have any such language, and this  
>> confusion hasn't come up before, so I don't think it's really  
>> necessary.
>>
>> I think this is *almost* editorial -- any objection?
>
> Big objection.  205 was added late in the process of 2068 and
> could not be grandfathered into the message parsing algorithm
> as yet another (bad) exception.  The requirement that 205 not
> include an entity means that the message-body MUST be of zero size
> (i.e., Content-Length must be supplied with a value of 0
> or Transfer-Encoding chunked is used with a zero-length chunk).
>
> Hence, it is correct as specified, albeit confusing.  It will
> be less confusing when the terminology is cleaned up.
>
> ....Roy


--
Mark Nottingham     http://www.mnot.net/

Received on Monday, 8 June 2009 10:35:32 UTC