private DTDElementDeclaration ReadElementDecl ()
{
DTDElementDeclaration decl = new DTDElementDeclaration (DTD);
decl.IsInternalSubset = this.processingInternalSubset;
if (!SkipWhitespace ())
throw NotWFError ("Whitespace is required between '<!ELEMENT' and name in DTD element declaration.");
TryExpandPERef ();
decl.Name = ReadName ();
if (!SkipWhitespace ())
throw NotWFError ("Whitespace is required between name and content in DTD element declaration.");
TryExpandPERef ();
ReadContentSpec (decl);
SkipWhitespace ();
// This expanding is only allowed as a non-validating parser.
TryExpandPERef ();
Expect ('>');
return decl;
}