3. The XHTML 1.2 Document Type

This section is normative.

The XHTML 1.2 document type is a fully functional document type with rich semantics. It builds upon the definitions of XHTML 1.1 [XHTML11] and XHTML Basic 1.1 [XHTMLBASIC]. Consequently, it is a true superset of those earlier languages. It also adds in some features that have been recently completed, but are nonetheless immediately useful in modern user agents.

The XHTML 1.2 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
Table Module
caption, col, colgroup, table, tbody, td, tfoot, th, thead, tr
Image Module
Server-side Image Map Module
Attribute ismap on img
Intrinsic Events Module
Events attributes
Metainformation Module
Scripting Module
noscript, script
Stylesheet Module
style element
Style Attribute Module Deprecated
style attribute
Link Module
Base Module
Target Attribute Module
target attribute


  1. The target attribute is designed to be a general hook for binding to an external environment (such as Frames, multiple windows, browser-tabbed windows); when there is no such external environment bound to the user agent, the user agent can ignore the target attribute. When there is an external environment bound, the conformance requirements for the target attribute are defined in each environment.
  2. The content author needs to be aware that the user agent behavior for the target attribute depends on multiple factors such as the existence of an environment binding, restrictions of available resources, existence of other applications and user preferences (such as pop-up blockers), and implemententation-dependent design decisions. When there is no external environmental conformance, it is recommended that authors do not depend on use of the target attribute.
  3. It should be noted that any implementation-dependent use of the target attribute might impede interoperability.

XHTML 1.2 incorporates the following locally defined modules:

Client-side Image Map Module
area, map
Implements Attribute Module
implements attribute for script element

XHTML 1.2 also uses the following modules defined in other W3C Recommendations:

Ruby Annotation module as defined in [RUBY]:

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

XHTML Access module as defined in [ACCESS]:

XHTML Access Module

XHTML Role module as defined in [ROLE]:

XHTML Role Module
role attribute

XHTML Metainformation Attributes module as defined in [RDFa]:

XHTML Metainformation Attributes Module
about, content, datatype, typeof, property, rel, resource, rev

XHTML inputmode Attribute Module as defined in [XHTMLBASIC].

XHTML inputmode Attribute Module
inputmode attribute is added to the input and textarea elements of the XHTML Forms Module.

WAI-ARIA Attribute Module as defined in [WAIARIA].

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.