Paged Media Grammar Error?

The CSS3 paged media grammar specifies this:

  page :
       PAGE_SYM S* IDENT? pseudo_page? S*
       '{' S* [ declaration | margin ]? [ ';' S* [ declaration | margin ]? ]* '}' S*
       ;

If I'm reading this correctly, then the following example that appears later is incorrect:

  @page :first {
    color: green;

    @top-left {
      content: "foo";
      color: blue;
    }
    @top-right {
      content: "bar";
    }
  }

The grammar indicates at a semicolon must follow either a declaration or a margin, meaning that a semicolon should be inserted in this example just before @top-right.

Is this an error in the grammar or the example?

-Nicholas

______________________________________________
Commander Lock: "Dammit Morpheus, not everyone believes what you believe!"
Morpheus: "My beliefs do not require them to."

Received on Friday, 17 December 2010 23:48:15 UTC