Re: #428 Accept-Language ordering for identical qvalues

On 2013/01/25 22:55, Julian Reschke wrote:
> On 2013-01-25 14:02, Julian Reschke wrote:
>> On 2013-01-25 07:16, Julian Reschke wrote:
>>> On 2013-01-25 06:31, "Martin J. Dürst" wrote:

>> This removes the new text about ordering, and adds the note below:
>>
>> > Note: Some recipients treat language tags that have the same
>> > quality values (including when they are missing) to be listed in
>> > descending order of priority. However, this behavior cannot be
>> > relied upon, and if their relative priority is important -- such
>> > as for consistent results for a sequence of requests -- it ought
>> > to be communicated by using different quality values.
>>
>> Feedback appreciated, Julian
>
> In the meantime, Roy resolved this in
> <http://trac.tools.ietf.org/wg/httpbis/trac/changeset/2163>, which works
> for me as well:
>
> "Note that some recipients treat the order in which language tags are
> listed as an indication of descending priority, particularly for tags
> that are assigned equal quality values (no value is the same as q=1).
> However, this behavior cannot be relied upon. For consistency and to
> maximize interoperability, many user agents assign each language tag a
> unique quality value while also listing them in order of decreasing
> quality. Additional discussion of language priority lists can be found
> in Section 2.3 of [RFC4647]."

Sorry, but I'm not yet happy with this. It doesn't mention the random 
return problem at all, and puts all responsibility on the client.

So I propose adding the following:

Note that it would be allowed for servers to return a version at random 
if they receive language tags with equal quality values. However, this 
can be very confusing for human users. A more deterministic behavior, 
e.g. treating the order in which language tags are listed as an 
indication of descending priority for tags that are assigned equal 
quality values, is preferable.

Regards,   Martin.

Received on Monday, 28 January 2013 02:51:36 UTC