W3C home > Mailing lists > Public > xml-editor@w3.org > April to June 2004

Invalid grammar productions

From: Vurlix <vurlix@slipgatesoftware.com>
Date: Tue, 1 Jun 2004 16:49:46 -0400 (EDT)
To: xml-editor@w3.org
Message-id: <40BCEB90.7000507@slipgatesoftware.com>




There are some invalid grammar productions described in the latest xml11 
specification.

"Using" sections denote proposed corrected productions.

 Broken.
  [1] document            ::=        (prolog element Misc*) - (Char* 
RestrictedChar Char*)
 Using:
  [1] document            ::=        prolog element Misc*
Rationale:
The production
   (Char* RestrictedChar Char*) matches the entire input, therefore the 
first part of the production is never matched.

Broken.
 [14] CharData        ::=        [^<&]* - ([^<&]* ']]>' [^<&]*)
Using:
 [14] CharData        ::=        ([^<&] - ']]>')*
Rationale:
The exclusion portion [^<&]* matches zero or more occurences of [^<&], 
which include the characters ]]>>. This means that it will match beyond 
the intented ending sequence.

Broken.
 [16] PI                ::=        '<?' PITarget (S (Char* - (Char* '?>' 
Char*)))? '?>'
Using:
 [16] PI                ::=        '<?' PITarget (S (Char - '?>')*)? '?>'
Rationale:
 See [2]

Broken.
 [20] CData            ::=        (Char* - (Char* ']]>' Char*))
Using:
 [20] CData            ::=        (Char - ']]>')*
Rationale:
 See [2]

Broken.
 [78] extParsedEnt    ::=        TextDecl? content - Char* 
RestrictedChar Char*
Using:
 [78] extParsedEnt    ::=        TextDecl? content
Rationale:
 See [1]
Notes:
 Errata entry E02 added parentheses around the relevant portions of the 
'document' production due to the operator precedence ambiguity, but that 
correction has been omitted here.

That's all for now... more in depth analysis underway.
Received on Wednesday, 9 June 2004 08:08:19 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 5 February 2014 07:15:55 UTC