- From: Zack Weinberg <zweinberg@mozilla.com>
- Date: Wed, 14 Jul 2010 11:29:54 -0700
- To: W3C Emailing list for WWW Style <www-style@w3.org>, fantasai <fantasai@inkedblade.net>, Boris Zbarsky <bzbarsky@mit.edu>
Section 4.1.3 says * All CSS syntax is case-insensitive within the ASCII range (i.e., [a-z] and [A-Z] are equivalent), except for parts that are not under the control of CSS. There are four other normative uses of the term "case-insensitive" within the standard: 5.10 ... Pseudo-element and pseudo-class names are case-insensitive. 5.11.4 ... The matching of C against the element's language value is performed case-insensitively. 7.3 ... Media type names are case-insensitive. 18.2 ... these [additional names for color properties] are case-insensitive ... None of these normative uses are qualified with "within the ASCII range". It is logical to assume that §4.1.3 defines the term, so Unicode-aware case normalization is not required anywhere within CSS, but conversely, one might argue that whenever not explicitly stated, ISO 10646 controls and Unicode-aware case normalization is required. It is easy to construct test cases where this matters: for instance, body { color: green } @MEDIA PRİNT { body { color: red } } where the third letter in the media type name is U+0130 CAPITAL LETTER I WITH DOT ABOVE. I propose that this be clarified by adding the sentence "Whenever the term 'case-insensitive' is used normatively in this standard, it means case-insensitivity within the ASCII range." immediately after what I quoted from 4.1.3. Alternatively, the four normative uses could be changed to read "ASCII case-insensitive" or "case-insensitive within ASCII". My own interpretation is that either of these options would be an editorial clarification, not a change to the standard; i.e. case-insensitivity is already restricted to ASCII throughout. zw
Received on Wednesday, 14 July 2010 18:30:28 UTC