Re: FORM content in DTD (Again)

Stan Newton (newtonjs@vnet.net)
Thu, 27 Oct 94 09:22:36 EDT

(Retransmission to include working group)

>>the special FORM
>>tags like SELECT and INPUT are not valid inside ordinary containers
>>like P.
>
>Ah! Here is where your confusion lies.
>
>SELECT and INPUT are allowed inside FORM by way of a nifty hack called
>inclusion exceptions.
^^^^^^^^^^^^^^^^^^^^
>This means that they are allowed inside FORM,
>and inside any element contained in FORM.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Say it ain't so, Dan! This means that the HTML DTD Reference sections of the
HTML 2.0 spec are misleading, doesn't it? The DTD Reference, which has been
so helpful at one level, does not take these 'inclusion exceptions' into
account. The section for the P tag does not include the form control tags
like INPUT (not even in a footnote) and the FORM tag does not indicate that
form control tags like INPUT can be used inside tags like P (WHEN INSIDE OF
AN OPEN FORM TAG!!). In other words, the inclusion exception radically
alters the content rules, it seems to me. The DTD Reference is written as if
a particular tag sets content rules until such time as another valid tag is
encountered. Then, the rules for the new tag take over. This FORM stuff now
seems to say that that is *not true*. Some tags (like FORM apparently) have
rules that carry over to all tags allowed within their start and end tags,
i.e. nested rules.

Which lines of code in the DTD itself are supposed to tell me this? Are
there any other exceptions besides FORM? Or, am I really lost and everything
works differently than I understood?

Historical note:
I am working on my first project in this HTML area and I have relied heavily
on the draft of the HTML 2.0 specification to help me understand how this is
all supposed to work. And I have made a lot of progress because overall I
think it is quite good.
Please take my areas of confusion (FORM tag content and #PCDATA content) as
feedback about assumptions that are apparently being made about what readers
understand about SGML. I will take your suggestion and expand my study scope
and will try the validation testing service. I appreciate your taking the
time to clarify these points for me.

Stan Newton
Newton Computing Solutions