W3C home > Mailing lists > Public > www-style@w3.org > July 2008

Re: [CSS21] [css3-selectors] case-sensitivity of :lang()

From: fantasai <fantasai.lists@inkedblade.net>
Date: Sat, 05 Jul 2008 11:29:56 -0700
Message-ID: <486FBDA4.6070200@inkedblade.net>
To: Bert Bos <bert@w3.org>
CC: www-style@w3.org

Bert Bos wrote:
> 
> fantasai wrote:
>>
>> Currently :lang() is defined as doing |= match against the
>> language string (normalized to RFC 3066 format per [1]).
>>
>> It's not clear whether this match is case-sensitive or
>> case-insensitive. Since language codes are case-insensitive,
>> I believe this match should be case-insensitive. I've tested
>> Opera, Safari, and Firefox, and they agree.
>>
>> Proposed that in
>>   http://www.w3.org/TR/CSS21/selector.html#lang
>> and
>>   http://www.w3.org/TR/css3-selectors/#lang-pseudo
>> the phrase
>>   "in the same way as if performed by the '|=' operator."
>> be replaced by
>>   "in the same way as if performed by the '|=' operator
>>    except that in this case a case-insensitive match is
>>    performed."
> 
> It's only case-insensitive if the document is. That's covered already by 
> section 4.1.3, which says that text from the document is case-sensitive 
> iff the document says it is.
> 
> So the ':lang()' applied to an HTML document is indeed case-sensitive, 
> but there may be other documents for which it is different.

:lang() information can come from places other than the document.
Also it's not clear to me for XML whether the case-sensitivity of
xml:lang from from XML's case-sensitivity rules and the string-
matching concept (in which case it is case-sensitive) or from
RFC 3066/RFC 4646's rules being applied to this particular attribute
(in which case it is not).

~fantasai
Received on Saturday, 5 July 2008 18:30:39 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:55:10 GMT