[css3-page] odd grammar for @page rules

The editor's draft at
http://dev.w3.org/csswg/css3-page/#syntax-page-selector describes a
grammar for @page rules that doesn't seem to match any of the other
wording in the specification.  In particular, it has the following
two productions:

  # media : 
  #      MEDIA_SYM S* medium [ COMMA S* medium ]* LBRACE S* [ page | ruleset ]* '}' S*
  #      ;
  # 
  # page :
  #      PAGE_SYM S* IDENT? S* pseudo_page? S* 
  #      '{' S* [ margin_box | ruleset ]? [ ';' S* [ margin_box | ruleset ]? ]* '}' S*
  #      ;

I believe every use of 'ruleset' in these two productions is
incorrect, since http://www.w3.org/TR/CSS21/grammar.html defines it
as:

  # ruleset
  #   : selector [ ',' S* selector ]*
  #     '{' S* declaration? [ ';' S* declaration? ]* '}' S*
  #   ;

Nothing else in css3-page leads me to believe that selectors or a
pair of braces are expected where the above productions have
'ruleset'.

-David

-- 
𝄞   L. David Baron                         http://dbaron.org/   𝄂
𝄢   Mozilla                           http://www.mozilla.org/   𝄂

Received on Tuesday, 6 December 2011 22:11:54 UTC