List content model improvements
Problem statement / use cases
- list semantics are unnecessarily complicated for authors in that minor differences in type warrant completely different list elements which mostly exist due to a presentational heritage
- definition lists provide insufficient structure for easy styling
- authors cannot mix definition list items with non definition list items a the same hierarchical level
- lists are inherently ordered and in static HTML necessarily so
XHTML2 has proposed a DI to structure the DT and DD elements in a definition list. However, a definition item really presents the same semantics of an existing element: the LI (list item) element. HTML5 should simply expand the LI content model to “either flow content or one DT followed by one DD element”. In this way the list elements can be streamlined, simplified and at the same time made more flexible. In many ways authors could get by with only the OL using LI and alternately DT and DD or flow content within the LI.
LiveDOMViewer shows proper DOM construction for the following:
The parsing for this already works in most current browsers:
- ¿IE? [still need to check]
Adding a type attribute to lists
By adding a type attribute to lists, the semantics of a list could be further expressed. For example a list could be typed as a bibliographic list, a term list, navigation list or some other list type.
Other attributes could indicate the ordering of the list or whether the order is important.