I just got a copy of Microstar's Near&Far graphical DTD developer,
which they have generously let me use to produce structure diagrams of
DTDs, especially HTML for the book, and TEI for a project we have
here.
I haven't quite got the hang of it, but there's the result of
displaying the current HTML 2.0 DTD with the FORMS element expanded in
ftp://www.ucc.ie/pub/html/htmlform.eps
and it indeed shows OPTION and TEXTAREA as being #PCDATA, which
implies they can themselves include another FORM.
I think the fix is:
<!ELEMENT Option - o (#PCDATA) -(FORM|INPUT|TEXTAREA|SELECT)>
<!ELEMENT TextArea - - (#PCDATA) -(FORM|INPUT|TEXTAREA|SELECT)>
but a quick test in psgml shows that to disallow _all_ elements inside
an OPTION, which can't be right (should allow %flow; minus #pcdata,
right?).
///Peter