- From: Jeffrey Mogul <mogul@pa.dec.com>
- Date: Thu, 06 Jun 96 14:32:29 MDT
- To: http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com
- Cc: jg@w3.org
These edits reflect my understanding and recollection of the consenus developed during today's editorial teleconference. Anyone who wishes to comment on them should do so immediately, since the deadline for the next I-D submission is less than 24 hours from now. The intention of these changes is to make the specification of no-transform more precise, and to prevent undetected loss of information when (possibly lossy) transforms are applied. 13.4.2 Non-modifiable Headers Current (draft-04) wording: A cache or non-caching proxy MUST NOT modify any of the following fields in a request or response, nor may it add any of these fields if not already present: . Content-Encoding . Content-Length . Content-Location . Content-Range . Content-Type . Expires . Last-Modified New wording A cache or non-caching proxy MUST NOT modify any of the following fields in a request or response, nor may it add any of these fields if not already present: . Content-Location . Expires . Last-Modified A cache or non-caching proxy MUST NOT modify or add any of the following fields in a response that contains the no-transform Cache-Control directive, or in any request: . Content-Encoding . Content-Length . Content-Range . Content-Type A cache or non-caching proxy MAY modify or add these fields in a response that does not include no-transform, but if it does so, it MUST add a Warning 14 (Transformation applied) if one does not already appear in the response. 14.9.5 No-Transform Directive New wording (mostly based on Jim Gettys' message of 06 Jun 96 12:50:43 EDT) Intermediate caches (proxies) have found it useful to convert the media type of certain entity bodies. A proxy might, for example, convert between image formats in order to save cache space or to reduce the amount of traffic on a slow link. HTTP has to date been silent on these transformations. Serious operational problems have already occured, however, when these transformations have been applied to entity bodies intended for certain kinds of applications. For example, applications for medical imaging, scientific data analysis and those using end-to-end authentication, all require that the original entity-body be reproduced exactly bit for bit. Therefore, if a response includes the no-transform directive, an intermediate cache or proxy MUST NOT change those headers that are listed in section 13.4.2 as being subject to the no-transform directive. This implies that the cache or proxy must not change any aspect of the entity-body that is specified by these headers. 14.45 Warning Change: Any server or cache may add Warning headers to a response. New Warning headers should be added after any existing Warning headers. A cache MUST NOT delete any Warning header that it received with a response. However, if a cache successfully validates a cache entry, it SHOULD remove any Warning headers previously attached to that entry. It MUST then add any Warning headers received in the validating response. In other words, Warning headers are those that would be attached to the most recent relevant response. To Any server or cache may add Warning headers to a response. New Warning headers should be added after any existing Warning headers. A cache MUST NOT delete any Warning header that it received with a response. However, if a cache successfully validates a cache entry, it SHOULD remove any Warning headers previously attached to that entry + except as specified for specific Warning codes. It MUST then add any Warning headers received in the validating response. In other words, Warning headers are those that would be attached to the most recent relevant response. Add to the list of Warning codes (between 13 and 99) 14 Transformation applied MUST be added by an intermediate cache or proxy if it applies any transformation changing the content-coding (as specified in the Content-Encoding header) or media-type (as specified in the Content-Type header) of the response, unless this Warning code already appears in the response. MUST NOT be deleted from a response even after revalidation. -Jeff
Received on Thursday, 6 June 1996 14:48:04 UTC