Re: Proposal for an Outlining Markup Scheme for HTML 3.0

Chris Tilbury (C.J.Tilbury@estate.warwick.ac.uk)
Thu, 13 Jul 1995 11:27:44 BST


On Wed, 12 Jul 1995 lee@sq.com wrote:
> HTML 3 can do this already using DIVn and Hn; what is the
> motivation for an alternative markup?

Can it? Looking at the proposal again ...

* An outline-display mechanism similar to that provided by most word
* processors would be useful for HTML browsers. It would allow the
* display of large information spaces in an easy to navigate, compact
* form. It would also provide the user with control over which
* information is displayed and when. A typical use would be to display
* a table of contents for online documentation. It is intended to
* provide a self-contained outline for navigating a "book" or
* information space. Although an entire book could be represented as
* an outline and transmitted at once using the notation we describe,
* this is not the notation's primary intent.

I think the key here to appreciate is that whilst the last example
given here, that of transmitting the entire book in one go, can be
handled by HTML 3 already and is merely a browser
display/functionality issue, the notion of transmitting only the
"table of contents" in an outline form cannot be sensibly handled
by Hn and DIV.

You could certainly do

<DIV class="outline">
<H1>This is the 1st heading in outline level 1</H1>
<DIV class="outline">
<H2>This is the 1st heading in outline level 2</H2>
</DIV>
<DIV class="outline">
<H2>This is the 2nd heading in outline level 2</H2>
</DIV>
</DIV>
<DIV class="outline">
<H1>This is the 2nd heading in outline level 1</H1>
</DIV>

- This is the 1st heading in outline level 1
o This is the 1st heading in outline level 2
o This is the 2nd heading in outline level 2
- This is the 2nd heading in outline level 1

However, this doesn't work that well. Why?

If you attempt to use Hn is a sensible fashion, (H1 is top level, H2
is second level, etc) you're limited to approximately 6 levels of
outline. Whilst you may think this is enough, I can guarantee that
there will be an application where it's not. The obvious way out of
this is to use <P> as the container for the outline elements; viz

<DIV class="outline.entry.2">
<P>This is the second outline level</P>
</DIV>

Later on Wed, 12 Jul 1995, brian@organic.com, continued
> I think there were presentational issues they wanted to control - to
> which I would reply this is a stylesheet issue, not an HTML issue.

I think I'd be inclined to agree with Brian here. We already have a
mechanism for creating lists, ordered or otherwise, and for creating
entries within these lists, and encapsulating further lists within
these entries. I'd prefer to see (this is assuming %html.recommended)
something like

<OL class="outline">
<LI><P class="outline.header">This is Level 1, Heading 1<P></LI>
<LI>
<OL class="outline">
<LI><P class="outline.header">This is Level 2, Heading 1</P></LI>
<LI>
<P class="outline.header">This is Level 2, Heading 2</P>
<P class="outline.text">This is the text underneath L2H2</P>
</LI>
</OL>
</LI>
<LI><P class="outline.header">This is Level 1, Heading 2</P></LI>
</OL>

We already have three list metaphor elements within the DTD, <OL>,
<UL>, and <DL>. Another would be unnecessary, IMHO.

Regards,

Chris

--
Chris Tilbury, Estates Office, University of Warwick, UK, CV4 7AL
Tel: +44 1203 523523 x2665                   Fax: +44 1203 524444
MIME mail welcomed      mailto:Chris.Tilbury@estate.warwick.ac.uk