W3C home > Mailing lists > Public > www-style@w3.org > October 2012

Re: [css3-fonts][css-variables][css-counter-styles-3][css3-values] Case sensitivity of user-defined identifiers

From: John Daggett <jdaggett@mozilla.com>
Date: Tue, 2 Oct 2012 19:10:51 -0700 (PDT)
To: www-style@w3.org
Message-ID: <1246307769.1610225.1349230251945.JavaMail.root@mozilla.com>
Jonathan Kew wrote:

> On 1/10/12 15:44, fantasai wrote:
>  > On 09/30/2012 07:59 PM, John Daggett wrote:
>  >> Tab Atkins wrote:
>  >>> However, it's very limited - if you write an ident in a language
>  >>> other than English, you may very well run up against casing issues
>  >>> that should be "obvious" to solve.
>  >>
>  >> I don't understand what this sentence implies.  The existing rule for
>  >> CSS is
>  >> case-sensitive matching outside the ASCII range.  What are the "casing
>  >> issues"
>  >> here?  Yes, it's simple and crude and by no means ideal but it is what
>  >> it is,
>  >> I'm not sure I see "issues" here.
>  >
>  > It means that Håkon will match HåKoN but not HÅKON.
>  > Similarly César will match césar and CéSaR, but not CÉSAR.
>  > However John will match john, JoHn, and JOHN.
>  > This is, imo, undisputably weird to a user,
> 
> +1. Weird indeed, and non-English-speaking users might (reasonably) feel 
> they're being treated as second-class citizens.
> 
>  > even though it seems
>  > straightforward to anyone familiar with character encoding history.
> 
> Are we comfortable saddling authors with this ASCII-centric
> weirdness forever just because of an accident of encoding history?
> 
> IMO, identifiers should either be case-sensitive for everyone (thus
> avoiding the issue, as per XML), or they should use simple (1:1)
> locale-independent Unicode case folding. Yes, it's not perfect -
> e.g. for the Turks and Lithuanians - but it's simple, predictable,
> and vastly better and more inclusive than the ASCII-case-insensitive
> anachronism.

It is weird but it's existing behavior.  There's already a mish-mash
of case-sensitive *and* ASCII case-insensitive rules in use across
HTML/CSS and in the Javascript interfaces used to interact with these.
Defining CSS identifiers to be case-insensitive using simple case
folding may seem locally optimal but I think it's not globally optimal
since it effectively introduces a third rule for case sensitivity.

I don't think it makes sense to use a different kind of case
sensitivity just for identifiers in CSS.

Regards,

John Daggett
Received on Wednesday, 3 October 2012 02:11:20 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:21:01 GMT