From Hypertext Transfer Protocol -- HTTP/1.1 ( 1999-06-15) The mechanism for selecting the appropriate representation when servicing a request, as described in section 12. The representation of entities in any response can be negotiated (including error responses).
The mechanism for selecting the appropriate HTTP representation when servicing a request. The HTTP representation of entities in any response can be negotiated (including error responses). This term was developed from that in Hypertext Transfer Protocol -- HTTP/1.1.
Requests by a browser client for a preferred language (or locale) and a character set to be sent from a web server. The server may respond with the closest combination available and alert the browser with MIME types like charset="iso-8859-1" language="fr-CA."
The negotiation of file format or language between client and server. Clients and servers can rank formats and languages in order of preference, then negotiate for the version that is most appropriate for the client.
A handshaking procedure carried out between a web server and a web browser in order to determine the best format for a given piece of data. In the context of images, a server might have PNG, JPEG, GIF, and TIFF versions of the same image; content negotiation between the server and client determines which of the four formats is sent to the browser.
From Composite Capability/Preference Profiles (CC/PP): Structure and Vocabularies 1.0 ( 2004-01-15) The mechanism for selecting the appropriate representation when servicing a request. The representation of entities in any response can be negotiated (including error responses).
Content negotiation is a mechanism defined in the HTTP specification that makes it possible to serve different versions of a document (or more generally, a resource) at the same URL, so that user agents can choose which version fit their capabilities the best. One of the most classical uses of this mechanism is to serve an image as both GIF and PNG, so that a browser that doesn't understand PNG can still display the GIF version. To summarize how this works, it's enough to say that user agents are supposed to send an HTTP header (Accept) with the various MIME types they understand and with indications of how well they understand it.