- From: Mike Smith <mksmith@aus.edsr.eds.com>
- Date: Mon, 21 Jun 1999 15:29:44 -0500
- To: xml-editor@w3.org
Very clean document. It took me a little while to adjust to the
conflation of lexical and syntactic processing, which makes the
grammar a little harder to follow, but I assume this is a legacy from
SGML.
A few nits.
1. Neither of the non-terminals, NMTOKENS and NAMES, are used.
2. Note that productions 30 and 79 are identical.
[30] extSubset ::= TextDecl? extSubsetDecl
[79] extPE ::= TextDecl? extSubsetDecl
Is there some semantic content I am missing here?
The text notes that "An external parameter entity is well-formed if it
matches the production labeled extPE." But nothing clear is said
about extSubset.
Perhaps the 3rd errata for section 2.8 is trying to accomplish this,
but I didn't guite get it.
3. You introduce a special notation (A - B) for "any string that
matches A but does not match B". But you then use it primarily in
constructs of the form:
(X* - (X* STR X*))
It would seem simpler to define A - B to be "any string that matches A
and does not contain B". In which case the preceding would be
X* - STR
Most of the current uses of your '-' operator would becomes simpler,
going from:
[14] CharData ::= [^<&]* - ([^<&]* ']]>' [^<&]*)
[20] CData ::= (Char* - (Char* ']]>' Char*))
[65] Ignore ::= Char* - (Char* ('<![' | ']]>') Char*)
[15] Comment ::= '<!--' ((Char - '-') | ('-' (Char - '-')))* '-->'
[16] PI ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>'
[17] PITarget ::= Name - (('X' | 'x') ('M' | 'm') ('L' | 'l'))
[12] PubidLiteral ::= '"' PubidChar* '"' | "'" (PubidChar - "'")* "'"
to:
[14] CharData ::= [^<&]* - ']]>'
[20] CData ::= Char* - ']]>'
[65] Ignore ::= Char* - ('<![' | ']]>')
[15] Comment ::= '<!--' (Char* - '--') '-->'
[16] PI ::= '<?' PITarget (S (Char* - '?>'))? '?>'
[17] PITarget ::= Name - ([Xx][Mm][Ll])
[12] PubidLiteral ::= '"' PubidChar* '"' | "'" (PubidChar - "'")* "'"
I know, 17 is a gratuitious change, but it seems a little easier to read.
- Mike Smith
Michael K. Smith mksmith@cio2000.eds.com
EDS CIO Services 512 404-6683
98 San Jacinto Blvd. Suite 500 512 404-6655 (fax)
Austin, TX 78701
Received on Monday, 21 June 1999 16:30:24 UTC