Roger Johansson posted an interesting entry on his site entitled, “Elements and Attributes in HTML 5.” In his entry he lists some new elements that are being considered for inclusion in HTML 5 (the next major version of HTML).
- A section of a page that consists of a composition that forms an independent part of a document, page, or site.
- A section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content.
- A conversation.
- The footer for the section it applies to.
- The header of a section.
- A section of a page that links to other pages or to parts within the page: a section with navigation links.
- A generic document or application section. A section, in this context, is a thematic grouping of content, typically with a header, possibly with a footer.
I’m not sure how I feel about these new elements. I really like the idea of providing more semantic structure to HTML, but it seems like adding attributes, instead of elements, would be the best route. For example, I prefer sticking with block elements like DIVs and adding the attribute of rel=”article” inside the DIV element. The newly proposed elements seem relevant to where the Internet is today, but could easily become irrelevant in the future as devices and the way we communicate via browsers (or different types of software) change. Attributes are the most flexible and provide the least impact than the addition of new elements.
A good example of providing semantic structure without having to add new elements is with microformats. Microformats utilize common elements, like DIVs and SPANs, and simply define class elements. For example, to create an address/contact card or vcard, microformats have you add class=”vcard” to an element and then they specify an HTML structure for related content within that element. The result isn’t beautiful, but it works and it can be read well by computers.
It will be interesting to see how this develops. You can keep track of the current proposed elements at the HTML5 Elements and Attributes page.