- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Mon, 06 Oct 2008 16:17:06 +0200
- To: "A. Rothman" <amichai2@amichais.net>
- CC: ietf-http-wg@w3.org
Ok, so the choices seem to be: (1) in <http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p5-range-04.html#rfc.section.6.2>, change "A response to a request for a single range MUST NOT be sent using the multipart/byteranges media type. A response to a request for multiple ranges, whose result is a single range, MAY be sent as a multipart/byteranges media type with one part. ... to "A response to a request for a single range MUST NOT be sent using the multipart/byteranges media type. Furthermore, a response to a request for multiple ranges, whose result is a single range, MUST NOT be sent using the multipart/byteranges media type. ..." or (2) in <http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p5-range-04.html#rfc.section.A>, change "The multipart/byteranges media type includes two or more parts, each with its own Content-Type and Content-Range fields." to "The multipart/byteranges media type includes one or more parts, each with its own Content-Type and Content-Range fields." Note that RFC 2046 says (<http://tools.ietf.org/html/rfc2046#section-5.1.1>): "The use of the "multipart" media type with only a single body part may be useful in certain contexts, and is explicitly permitted." Observation: this is an edge case a client can easily avoid, by not construction a request with overlapping ranges. Therefore my recommendation would be to make the minimal change that fixes, the inconsistency, which IMHO is the second option. BR, Julian Julian Reschke wrote: > > A. Rothman wrote: >> Hi! >> >> The spec contradicts itself regarding the minimum number of parts in a >> multipart/byteranges response: On the one hand, "A response to a >> request for multiple ranges, whose result is a single range, MAY be >> sent as a multipart/byteranges media type with one part", while on the >> other hand, "The multipart/byteranges media type includes two or more >> parts". If a multipart/byteranges media type indeed must include two >> or more parts, the first statement makes for an illegal response. And >> if a one-part response is valid, then the second statement is incorrect. >> >> Since the spec also mandates that a client requesting a single range >> must never receive a multipart/byteranges response, it seems like the >> intention was to make it possible for a client to support partial >> retrieval without having to implement multipart support at all, in >> which case it would have been more straightforward if the spec simply >> required all single-range responses to use Content-Range and not >> multipart/byteranges. For backwards compatibility, it can >> encourage/require multipart/byteranges recipients to properly handle >> single-part messages as well, which is very likely the case in >> existing implementations. >> >> In any case, this contradiction should be fixed and the use cases >> clarified. >> ... > > Hi Amichai, > > I believe your analysis is correct, and I have opened issue > <http://trac.tools.ietf.org/wg/httpbis/trac/ticket/133> accordingly. > > BR, Julian > >
Received on Monday, 6 October 2008 14:17:48 UTC