Re: Summary of opinions on Negotiate header

>>So why do you need Vary: Negotiate at all? (suggestions on
>><negotiable> later).
>
>Here is an example.  Suppose I have variants in the languages `en' and
>`nl', and that I get
>
> Accept-Language: dk, *;q=0.5
>
>from a user agent.  Now, if the user agent is capable of transparent
>negotiation, I will send a list response (300 response), so that the
>user agent can choose the best variant itself (it may have more
>language preference information than it is sending).  If the user
>agent cannot do transparent negotiation, I will send the `en' variant
>(my `en' variant has a link to the `nl' variant in it anyway).  So in
>this case, just sending
>
> Vary: Accept-Language
>
>is not enough: the response also varies on the header which expresses
>if the user agent can negotiate.

To expand on this, suppose I make

Negotiate: dan

which says "select the best variant by adding the q values" (as opposed to
multiplying the q values like in tcn).  Even though all the Accept,
Accept-langue q's, etc, are the same, the algorithm used to select the
variant has changed, so the response does vary on Negotiate:

It's not just the data, it's the algorithm.

-----
Daniel DuBois, Traveling Coderman         
http://www.spyglass.com/~ddubois/

Received on Monday, 30 September 1996 13:42:03 UTC