The Author Online Book Forums are Moving

The Author Online Book Forums will soon redirect to Manning's liveBook and liveVideo. All book forum content will migrate to liveBook's discussion forum and all video forum content will migrate to liveVideo. Log in to liveBook or liveVideo with your Manning credentials to join the discussion!

Thank you for your engagement in the AoF over the years! We look forward to offering you a more enhanced forum experience.

lmhaskins (8) [Avatar] Offline
(v10 MEAP) In going through section 1.2.2, it was hard for me to grasp what the "HTML5 outlining algorithm" was. Your descriptions were:

p8: "HTML5 formalizes this implicit structure with the outlining algorithm. In this section you will learn about this algorithm as well how it interacts with the two new heading elements <header> and <hgroup>."


p10: "The outlining algorithm is new to HTML5. It is the outlining algorithm which gives a semantic definition to the implicit outlining generated by heading elements. It should automatically generate a table of contents for your entire document based on the section and heading markup you've used."

For me that was pretty dry (my eyes glazed over at "semantic definition," which is fairly abstract for a book with cartoons, imho), and I still have no idea what the outlining algorithm is or when it's used, and why I should otherwise care, so I went out to the web to figure out what it is, since "formalizing this implicit structure" and "gives a semantic definition" didn't do it for me.

I would have liked the explanation of what the outlining algorithm was, say, in its own paragraph probably the first one of 1.2.2, instead of being on both p.8 and p.10. Like perhaps

1.2.2 Headings, headers, and the outlining algorithm

New to HTML5 is the outlining algorithm. This algorithm is used by agents (browsers, etc.) to create an outline structure of the current document for accessibility, ...

// then go with your first paragraph

Heading elements provide an implicit structure for documents that is used by the outlining algorithm to automatically generate the table of contents....
robert.crowther (59) [Avatar] Offline
Re: The HTML5 outlining algorithm

Hi lmhaskins, thanks for your feedback

I agree that the purpose of the outlining algorithm could be more clear but I think how I've described it is technically accurate. There's actually nothing in the HTML5 spec that declares what it's for, only an algorithm for creating the 'document outline' (or as I've described it 'table of contents', or as you've described it 'outline structure').

The only specified requirement for it that I'm aware of is in the W3C's User Agent Accessibility Guidelines (Implementing Guideline 1.10 - Provide alternative views). I think you're right that I should mention this, I'll see if an update can be made there.