Re: THEAD, TFOOT, TBODY

eva wrote:
> 
>  After a closer look at this section I found it very unclear.
> 
> <!ELEMENT THEAD - O (TR+)>
> <!ELEMENT TFOOT - O (TR+)>
> <!ELEMENT TBODY O O (TR+)>
> 
> The above is not quite true as the minimization depends on occurrences of
> those elements and should rather say.
> 
> <!ELEMENT THEAD - O (TR+)             -- when a TFOOT or TBODY start tag
> follows -->
> <!ELEMENT TFOOT - O (TR+)>           -- when a THEAD or TBODY start tag
> follows -->
> <!ELEMENT TBODY O O (TR+)          -- when only one TBODY occurs and THEAD
> and TBODY are absent-->
> 
> Which is not quite true either. The comment in line two of the above snippet
> contradicts with the following:
> <!ELEMENT TABLE - - (CAPTION?, (COL*|COLGROUP*), THAED?, TFOOT?, TBODY+)>

The spec contains the following section which should clarify what
minizations are possible
(http://www.w3.org/TR/WD-html40/struct/tables.html#h-7.5.1.3.1):

Optional row group tags 

      When a table contains only one body and no head or foot sections,
the TBODY start and end tags may be omitted. 
      When a table block contains a head, the start tag of the THEAD
element is required. The end tag may be omitted
      when a TFOOT or TBODY start tag follows. 
      When a table block contains a foot, the start tag of the TFOOT
element is required. The end tag may be omitted
      when a THEAD or TBODY start tag follows. 

> Also, "Each row group is divided into three sections, head, body and foot."
> suggests that there may be more than one head or foot -- foot/head for
> *each* section. This also contradicts with the above declaration

This section of the public draft is clearly wrong, the DTD is correct.
-- 
Arnaud

Received on Tuesday, 9 September 1997 08:19:36 UTC