>> You need to
>> place a <COLGROUP> before the first <COL> element. This is an
>> unfortunate consequence of how the SGML spec is defined. It is
>> very restrictive for when you can omit the start tag of elements.
> While not disagreeing with your general observation (tell me about it)
> I note that the modular DTD allows colgroup to be omitted in this
The DTD in http://www.w3.org/pub/WWW/MarkUp/html-pubtext/ didn't match
the Internet Draft/Working Draft. Some how a spurious col* had crept into
the content model for TABLE. I have now corrected it.
The line in error was:
<!ELEMENT table - - (caption?, col*, colgroup*, thead?, tfoot?, tbody+)>
This allows mixing up levels and is not clean. If we want to allow the
outer column group element to be omitted, then I would suggest:
<!ELEMENT table - - (caption?, (col*|colgroup*), thead?, tfoot?, tbody+)>
This keeps things clean, as you can have either a list of columns or a
list of column groups (which in turn can have a list of columns), but you
can't mix up the levels.
-- Dave Raggett <[log in to unmask]> tel: +1 (617) 258 5741 fax: +1 (617) 258 8682
World Wide Web Consortium, 545 Technology Square, Cambridge, MA 02139
url = http://www.w3.org/hypertext/WWW/People/Raggett