[Next][Index][Thread]

Re: Accept-Charset support



Martin J. Duerst:
[...]
> This results from the fact that there is no
>specification about relative priority of Accept headers, or
>how to combine them.

The HTTP/1.1 specification does not define `dimension X always takes
priority over Y', but it *does* allow such priorities to be expressed if
they exist for a user agent.

Using quality factors, a user agent can express which consideration takes
priority.  For example, with

Accept-Language: en;q=1.0, he;q=0.2
Accept-Charset: <latin-1>;q=0.9, <latin-5>;q=1.0

getting the english language would have priority over getting <latin-5>.
Another user agent could give priority to getting <latin-5> by sending

Accept-Language: en;q=1.0, he;q=0.9
Accept-Charset: <latin-1>;q=0.2, <latin-5>;q=1.0 .

Note that, both historically and in the upcoming transparent content
negotiation specification, quality factors are combined by multiplying them.

[...]
>This does not work with your example, but assume
>you specify Polish and Czech and ISO-8859-2, and the server
>has the document in Russian and Hungarian, you might get the
>document in Hungarian (because it is ISO-8859-2) even if you
>will understand more in Russian.

Note that under transparent content negotiation, you will *never* get a
Hungarian document if you specify Polish and Czech and ISO-8859-2.  You will
get a list of available documents instead.  Under plain HTTP/1.x, you might
indeed get the Hungarian version.

>Regards,	Martin.

Koen.


References: