HTTP format negotiation

Joe English (
Thu, 15 Sep 1994 21:05:50 +0200

Two questions regarding HTTP format negotiation:
(I remember this being asked before, but don't recall
the answer.)

1) How should a server respond to a GET request
for an object which it cannot supply in any
of the formats listed in the Accept: request
header? E.g., suppose the server can provide
/pictures/foo as image/tiff and image/jpeg,
what should it do with

GET /pictures/foo HTTP/1.0
Accept: image/gif

2) Is there any way for a client to find out what
content types are available for a given URL?
E.g., is there a header field that works like
Available-Formats: in the following:

HEAD /pictures/foo HTTP/1.0

HTTP/1.0 200 OK
Server: hypothetical/1.0
image/jpeg; length=45530; q=0.8,
image/tiff; length=120132; q=1.0
Last-Modified: Thursday, 08-Sep-94 12:00:00 GMT

3) Do any existing clients or servers actually implement
format negotiation as described in the HTTP spec?

The gopher+ protocol handles format negotiation nicely.
This is an area where HTTP seems lacking.

--Joe English