- From: Jukka K. Korpela <jkorpela@cs.tut.fi>
- Date: Tue, 4 Sep 2007 09:09:59 +0300 (EEST)
- To: Andreas Prilop <Prilop2007@trashmail.net>
- cc: www-validator-css@w3.org, www-style@w3.org
On Mon, 3 Sep 2007, Andreas Prilop wrote: > When I have no Accept-Language header or when I have only > languages specified that are not available at jigsaw.w3.org, > then http://jigsaw.w3.org/css-validator/ defaults to English. > Fine. I'd say it's fine in the absense of an Accept-Language header - but not in the other case. The absence of Accept-Language header is, by the HTTP protocol, quite different from a header specifying a single language. The former means that "the server SHOULD assume that all languages are equally acceptable". The latter means that _only_ the specified language is acceptable. This might not be useful on practical grounds, since few users know how to set their language settings, and browsers aren't very helpful in this, but the same might be said about language negotiation in general. Language negotiation is optional in HTTP, but it seems to me that _if_ it is used, it is intended to result in an error condition (normally, 406 Not Accepted) when no language is acceptable. Of course the error message page can be in English (it has to be in some language, and "the server SHOULD include an entity containing an explanation of the error situation", i.e. error message page, when sending an error code. But the page should not be a normal response page with a 200 (or other 2xx) response code. > However, > http://jigsaw.w3.org/css-validator/about.html > http://jigsaw.w3.org/css-validator/documentation.html > http://jigsaw.w3.org/css-validator/Email.html > do not default to English. Instead, they offer me some > cryptic choice of available languages. I get the English version for them, whether I omit Accept-Language or use Accept-Language: fi. Tested on Firefox 2 and Lynx. > For example, the page > http://jigsaw.w3.org/css-validator/about.html > displays as: > > > * about.html.de Q= 1.0 > * about.html.en Q= 1.0 > * about.html.es Q= 1.0 > * about.html.fr Q= 1.0 > * about.html.it Q= 1.0 > * about.html.ja Q= 1.0 > * about.html.pl-PL Q= 1.0 > * about.html.zh-cn Q= 1.0 If you get something like that with error code 406 and in response to a request with an Accept-Language header containing only language codes outside the list that can be inferred, then I'd say that the response is correct by the HTTP protocol. It might not be user-friendly, but that's a different issue. A good 406 message would say, normally in English (the de facto lingua franca of the Internet), that the document is not available in any of the languages specified in the reequest as acceptable and would list the available options rather more readably than as a list like the above. But again, this is a quality issue. The primary question is what kind of response is sent, and I don't seem to get the same responses as you. -- Jukka "Yucca" Korpela, http://www.cs.tut.fi/~jkorpela/
Received on Tuesday, 4 September 2007 06:10:19 UTC