Re: [css3-syntax] CORRECTION: Parseable at-rules

Christian Roth wrote:

>(1)  @import {;}
>(2)  @mysum (a+ (b-c;
>(3)  @punctuationchars [.-,;:_?!];
>(4)  @validchars [?*./(){a-z0-9}@_ ];
>
>Am I correct in my interpretation of the spec [1] that only (3) will
>generate a fatal parsing error (with (4) actually being parsed as two at-
>rules)?

Answering my own post: No, I am not correct. I haven't observed [2] which
defines strict rules on how an at-rule may be built (->"any"). Therefore,
only (1) and actually (3) in my original post will parse without a fatal
error.

I noted that in the "any" production [2]:

any : [ IDENT | NUMBER | PERCENTAGE | DIMENSION | STRING | DELIM | URI |
HASH | UNICODE-RANGE | INCLUDES | FUNCTION S* any* ')' | DASHMATCH | '('
S* any* ')' | '[' S* any* ']' ] S*; 

the DELIM token is nowhere defined in [css3-syntax]. There is a note in
[3] that DELIM has been folded into CHAR. Should the "any" production
have DELIM replaced by CHAR?

Christian

[1] <http://www.w3.org/TR/2003/WD-css3-syntax-20030813/#at-rules>
[2] <http://www.w3.org/TR/2003/WD-css3-syntax-20030813/#style>
[3] <http://www.w3.org/TR/2003/WD-css3-syntax-20030813/#changes>

Received on Thursday, 16 September 2004 15:01:20 UTC