I have a suggestion concerning production [28] in the XML specification
[28] doctypedecl ::= '<!DOCTYPE' S Name (S ExternalID)? S? ('['
(markupdecl | PEReference | S)* ']' S?)? '>'
Production [28] by itself would imply that "<!DOCTYPE doc" and "<!DOCTYPE
doc []>" are valid DOCTYPE
declarations. However, these possibilities are precluded by the text
The document type declaration can point to an external subset (a
special kind of external entity) containing
markup declarations, or can contain the markup declarations directly
in an internal subset, or can do both. The
DTD for a document consists of both subsets taken together.
preceding [28]. Would not
[28] doctypedecl ::= '<!DOCTYPE' S Name S?
( (S '[' (markupdecl | PEReference | S)+ ']') | ((S ExternalID) S? ('['
(markupdecl | PEReference | S)* ']') ) S? '>'
be a better restatement of [28] in that it reinforces this preceding text?
Donald Gignac "gignacda@nswccd.navy.mil" 301-227-3348