- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Fri, 01 Aug 2008 21:05:04 +0200
- To: Felix Sasaki <fsasaki@w3.org>
- CC: ietf-http-wg@w3.org
Julian Reschke wrote: > > Felix Sasaki wrote: >> ... >> RFC 4647 defines a basic language range in sec. 2.1 which is the same >> as the language range of sec. 14.4 of RFC 2616. Note also the >> information in sec. 2.1 of RFC 4647: >> "Note that >> the ABNF [RFC4234] in [RFC2616] is incorrect, since it disallows the >> use of digits anywhere in the 'language-range' (see [RFC2616errata])." >> So you could just refer to basic language ranges of RFC 4647 and be fine. >> ... > > Indeed, thanks for pointing this out. I missed the fact that RFC 4647 > defines basic ranges. Will make a concrete proposal later on. Proposed text: -- snip -- 6.4. Accept-Language The Accept-Language request-header field is similar to Accept, but restricts the set of natural languages that are preferred as a response to the request. Language tags are defined in Section 3.5. Accept-Language = "Accept-Language" ":" 1#( language-range [ ";" "q" "=" qvalue ] ) language-range = <language-range, defined in [RFC4647], Section 2.1> Each language-range MAY be given an associated quality value which represents an estimate of the user's preference for the languages specified by that range. The quality value defaults to "q=1". For example, Accept-Language: da, en-gb;q=0.8, en;q=0.7 would mean: "I prefer Danish, but will accept British English and other types of English." For matching, the "Basic Filtering" matching scheme, defined in Section 3.3.1 of [RFC4647], is used: A language range matches a particular language tag if, in a case- insensitive comparison, it exactly equals the tag, or if it exactly equals a prefix of the tag such that the first character following the prefix is "-". The special range "*", if present in the Accept-Language field, matches every tag not matched by any other range present in the Accept-Language field. -- snip -- This 1) delegates the definition of language-range to RFC4647, Section 2.1, and 2) delegates the definition of the matching function to RFC4647, Section 3.3.1 ("Basic Filtering"). Note that the proposed text *repeats* the definition (it's just one sentence, so I'm trying to do the reader a favor by not actually having to loop up the text). I also note that "Basic Filtering" is case-insensitive, which it wasn't in RFC2616. This is intentional (right?); so should it noted in the "Changes from RFC2616" section? BR, Julian
Received on Friday, 1 August 2008 19:05:47 UTC