3. The XHTML 1.1 Document Type

This section is normative.

The XHTML 1.1 document type is a fully functional document type with rich semantics. It is not, however, as varied in functionality as the XHTML 1.0 Transitional or Frameset document types. These document types defined many presentational components that are better handled through style sheets or other similar mechanisms. Moreover, since the XHTML 1.1 document type is based exclusively upon the facilities defined in the XHTML modules [XHTMLMOD], it does not contain any of the deprecated functionality of XHTML 1.0 nor of HTML 4. Despite these exceptions, or perhaps because of them, the XHTML 1.1 document type is a solid basis for future document types that are targeted at varied user agent environments.

The XHTML 1.1 document type is made up of the following XHTML modules. The elements, attributes, and minimal content models associated with these modules are defined in "XHTML Modularization" [XHTMLMOD]). The elements are listed here for information purposes, but the definitions in "XHTML Modularization" should be considered definitive. In the on-line version of this document, the module names in the list below link into the definitions of the modules within the current version of "XHTML Modularization".

Structure Module
body, head, html, title
Text Module
abbr, acronym, address, blockquote, br, cite, code, dfn, div, em, h1, h2, h3, h4, h5, h6, kbd, p, pre, q, samp, span, strong, var
Hypertext Module
List Module
dl, dt, dd, ol, ul, li
Object Module
object, param
Presentation Module
b, big, hr, i, small, sub, sup, tt
Edit Module
del, ins
Bidirectional Text Module
Forms Module
button, fieldset, form, input, label, legend, select, optgroup, option, textarea
Tables Module
caption, col, colgroup, table, tbody, td, tfoot, th, thead, tr
Image Module
Client-side Image Map Module
area, map
Server-side Image Map Module
Attribute ismap on img
Intrinsic Events Module
Events attributes
Metainformation Module
Scripting Module
noscript, script
Style Sheet Module
style element
Style Attribute Module Deprecated
style attribute
Link Module
Base Module

XHTML 1.1 also uses the Ruby Annotation module as defined in [RUBY]:

Ruby Annotation Module
ruby, rbc, rtc, rb, rt, rp

This specification also adds the lang attribute to the I18N attribute collection as defined in [XHTMLMOD]. The lang attribute is defined in [HTML4]. When this attribute and the xml:lang attribute are specified on the same element, the xml:lang attribute takes precedence. When both lang and xml:lang are specified on the same element, they SHOULD have the same value.

There are no additional definitions required by this document type. An implementation of this document type as an XML Schema is defined in Appendix D, and as an XML DTD is defined in Appendix C. If there is any discrepancy between the language as defined in this section and the implementations in the appendices, the definition in this section MUST take precedence.