What is the scope of a header?

The example in http://www.w3.org/TR/xhtml2/mod-structural.html#sec_8.5.
shows headers matched 1:1 with a following block element.

Are the semantics defined if this pattern is not followed?  For
instance, does the following header cover all three paragraphs, or
only the first one?

<body>
<h>This is a top level heading</h>
<p>....</p>
<p>...</p>
<p>...</p>
</body>

If this is intentionally undefined, then please say so.

If it covers only the first, that will surprise people.

If it covers all three, then it effectively creates an anonymous div
around the three paragraphs -- and I think that the header should
really be a *child* of that div, rather than a sibling.  We only want
it as a sibling because the default presentation of "float it out
ahead" is so strong.  In other words, the semantics really should be
written

<body>
<section><h>This is the sole heading for this section</h>
    <p>....</p>
    <p>...</p>
    <p>...</p>
</section>
</body>

I assume the implicit div would end at the first of (1)  the end of
the container or (2) the next header of at least equal strength (and
separators are too weak to end it), but ... maybe it would be better
to just require the sectioning explicitly.

-jJ

Received on Thursday, 2 February 2006 19:03:47 UTC