Re: Hierarchy support in HTML [Was: Tables: what can go in a cell]

Dave Raggett (
Mon, 27 Feb 95 12:53:36 EST

James Mason makes a good case for the benefits of hierarchically structured
documents, and I thought it worthwhile to explain the current position taken
in the HTML 3.0 proposal.

HTML 3.0 is designed to be backwards compatible with HTML 2.0 and as such
supports the existing H1 to H6 headers. These by themselves don't act as
containers other than for the header text itself. We could insist that
headers come at the start of corresponding divisions, i.e. a DIV1 element
would start with an H1 element, and a DIV2 element would start with an H2
element etc. You can then argue as to whether or not to require a DIV3 to
be enclosed within a DIV2 and in turn within a DIV1 element.

Instead, it seems worth exploring the benefits of a simple DIV element
that can be subclassed to distinguish chapters, sections, subsections,
etc. using the CLASS attributed suggested by Steve DeRose and Eric Severson.
The HTML 3.0 proposal doesn't require headers to come at the start of
a DIV element, but it seems to me that it would be a straightforward
exercise to write a DTD that enforces a more rigourous model as a subset
of HTML 3.0. This way, information providers with tightly defined models
of how documents are structured can use appropriately defined DTD's which
none-the-less still conform to HTML 3.0.

If we changed to a more rigidly structured DTD for HTML 3.0, we would
be likely to see problems for people trying to convert from equally rigid
DTDs, which however, disagree as to how documents should be structured.

The same approach can be taken to restrict the content model for HTML 3.0
tables and to benefit from associated stylesheets for rich control of

-- Dave Raggett <> tel: +44 117 922 8046 fax: +44 117 922 8924
Hewlett Packard Laboratories, Filton Road, Bristol BS12 6QZ, United Kingdom