Re: [css3-syntax] Error handling within known at-rules

Christian Roth wrote to <mailto:www-style@w3.org>  on 11 October 2004 
in "Re: [css3-syntax] Error handling within known at-rules" 
(<mid:20041011104807.31277@mail.visualclick.de>):

> Where is defined in the spec what ill-formed, invalid,
> ignorable inter-rule junk is?

It's not defined, but, as I will demonstrate, neither is any particular 
error handling routine for this case.

>  CSS21 4.1.4 [1] states:
>
> "A CSS style sheet, for any version of CSS, consists of a list of
> statements (see the grammar above). There are two kinds of statements:
> at-rules and rule sets."
>
> Stylesheets (note the "any version" clause) consist of two types of
> rules: at-rules and rule sets.

Fair enough. But what is a Cascading Style Sheet?

Section 4.1.1, "Tokenization" of the CSS 2.1 specification 
(<http://www.w3.org/TR/CSS21/syndata.html#tokenization>):

"All levels of CSS — level 1, level 2, and any future levels — use the 
same core syntax."

The core syntax is then defined, and it does not allow a semicolon in 
selectors. The sequence of characters in question is not, 
syntactically, a Cascading Style Sheet. So what is a conforming user 
agent to do?

Again, section 4.1.1:

"The meaning of input that cannot be tokenized or parsed is undefined 
in CSS 2.1."

Oh. So it will be the job of the syntax module of CSS3 to define the 
meaning and handling for this case.

-- 
Etan Wexler.

Received on Wednesday, 27 October 2004 13:24:13 UTC