The underscore


   As recently discussed here, we got a new errata item [1] for CSS
Level 2:

Section 4.1.1 Tokenization

[2001-04-03] The underscore character ("_") should be allowed in
identifiers. The definitions of the lexical macros "nmstart" and
"nmchar" should include it and become, respectively: 

nmstart  [a-zA-Z_]|{nonascii}|{escape} 
nmchar   [a-zA-Z0-9-_]|{nonascii}|{escape}

(Same change in appendix D, see below.) 

I want to re-discuss this and therefore I waited a while until some oil
is poured on the troubled waters.

This item is currently in the "Known Errors" section of the errata
document. I thing this is a mistake. There is no indication in the whole
specification that the underscore should be allowed, nor does the
grammar make no sense without the underscore. As this errata item
affects all CSS parsers very seriously (i.e. they can't parse a
document blessed by the errata "properly"), I suggest to move it into
the "Changes" section. This would be consistent to what some (IIRC) WG
people said, the change was made to be compatible to XML.

Changing the status of this errata item wouldn't "break" existing CSS
parsers, since "[...]changes have "working draft" status and may not be
considered definitive unless incorporated into a revised

There are by the way many "Known errors" that would better fit under

[1] -
Björn Höhrmann { }
am Badedeich 7 } Telefon: +49(0)4667/981028 {
25899 Dagebüll { PGP Pub. KeyID: 0xA4357E78 }

Received on Thursday, 24 May 2001 20:15:02 UTC