If the purpose of HTML is to provide structure to documents, then why is there no clear-cut way to denote the title, subtitle and author(s). Most people use the various <hn> elements, but is this correct? The answer is both yes and no.
No, technical it is incorrect to use the <hn> elements to provide markup for the title, subtitle and / or author(s) of a document. According to the HTML 4.01 specification:
A heading element briefly describes the topic of the section it introduces. Heading information may be used by user agents, for example, to construct a table of contents for a document automatically.
This means that the defined purpose of a heading element is to serve as a the marker of a new section and the description thereof. The title, subtitle and name(s) of author(s) of a document do not fall in this definition, as they do not introduce any sections within the document, but the document itself.
Furthermore, by using <hn> elements, the second part of the specification is confused when an user agent (UA) tries to parse the HTML for structure to build a table of contents. We would then get something like:
- Page Titles, Subtitles & Bylines
- Correct HTML Markup
- Robert I. Sadler
- The Situation
- Right or Wrong?
- The Solution
- Robert I. Sadler
- Correct HTML Markup
Our markup did not correctly convey the structure of the document to the UA.
Yes, it is correct to use <hn>, coupled with <address> as markup for the title, subtitle and author(s) of a document, simply because the HTML specification does not offer us a viable alternative. And the search engines are not helping.
A good solution would be if the HTML 5 specification includes these new tags:
<title>- The title of the document; block-level element.
<subtitle>- The subtitle of the document; block-level element.
<byline>- Block-level element for the name(s) of the author(s)
<author>- Inline element for the name of an author, with attributes for contact details.
<abstract>- An abstract of the document; block-level element
