html5/spec-author-view/multipage Overview.html,NONE,1.1 acknowledgements.html,NONE,1.1 browsers.html,NONE,1.1 comms.html,NONE,1.1 dom.html,NONE,1.1 editing.html,NONE,1.1 embedded-content-0.html,NONE,1.1 forms.html,NONE,1.1 fragment-links.js,NONE,1.1 history.html,NONE,1.1 iana-considerations.html,NONE,1.1 index.html,NONE,1.1 infrastructure.html,NONE,1.1 interactive-elements.html,NONE,1.1 introduction.html,NONE,1.1 microdata.html,NONE,1.1 named-character-references.html,NONE,1.1 no.html,NONE,1.1 obsolete.html,NONE,1.1 offline.html,NONE,1.1 references.html,NONE,1.1 semantics.html,NONE,1.1 spec.html,NONE,1.1 syntax.html,NONE,1.1 tabular-data.html,NONE,1.1 text-level-semantics.html,NONE,1.1 the-canvas-element.html,NONE,1.1 the-xhtml-syntax.html,NONE,1.1 video.html,NONE,1.1

Update of /sources/public/html5/spec-author-view/multipage
In directory hutz:/tmp/cvs-serv11544

Added Files:
	Overview.html acknowledgements.html browsers.html comms.html 
	dom.html editing.html embedded-content-0.html forms.html 
	fragment-links.js history.html iana-considerations.html 
	index.html infrastructure.html interactive-elements.html 
	introduction.html microdata.html 
	named-character-references.html no.html obsolete.html 
	offline.html references.html semantics.html spec.html 
	syntax.html tabular-data.html text-level-semantics.html 
	the-canvas-element.html the-xhtml-syntax.html video.html 
Log Message:
sharing

--- NEW FILE: infrastructure.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>2 Common infrastructure &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...1142 lines suppressed...]
   <li value="7"><dfn id="no_modification_allowed_err"><code>NO_MODIFICATION_ALLOWED_ERR</code></dfn></li>
   <li value="8"><dfn id="not_found_err"><code>NOT_FOUND_ERR</code></dfn></li>
   <li value="9"><dfn id="not_supported_err"><code>NOT_SUPPORTED_ERR</code></dfn></li>
   <li value="10"><dfn id="inuse_attribute_err"><code>INUSE_ATTRIBUTE_ERR</code></dfn></li>
   <li value="11"><dfn id="invalid_state_err"><code>INVALID_STATE_ERR</code></dfn></li>
   <li value="12"><dfn id="syntax_err"><code>SYNTAX_ERR</code></dfn></li>
   <li value="13"><dfn id="invalid_modification_err"><code>INVALID_MODIFICATION_ERR</code></dfn></li>
   <li value="14"><dfn id="namespace_err"><code>NAMESPACE_ERR</code></dfn></li>
   <li value="15"><dfn id="invalid_access_err"><code>INVALID_ACCESS_ERR</code></dfn></li>
   <li value="16"><dfn id="validation_err"><code>VALIDATION_ERR</code></dfn></li>
   <li value="17"><dfn id="type_mismatch_err"><code>TYPE_MISMATCH_ERR</code></dfn></li>
   <li value="18"><dfn id="security_err"><code>SECURITY_ERR</code></dfn></li> <!-- actually in XHR for now -->
   <li value="19"><dfn id="network_err"><code>NETWORK_ERR</code></dfn></li> <!-- actually in XHR for now -->
   <li value="20"><dfn id="abort_err"><code>ABORT_ERR</code></dfn></li> <!-- actually in XHR for now -->
   <li value="21"><dfn id="url_mismatch_err"><code>URL_MISMATCH_ERR</code></dfn></li> <!-- actually in workers for now -->
   <li value="22"><dfn id="quota_exceeded_err"><code>QUOTA_EXCEEDED_ERR</code></dfn></li> <!-- actually defined right here for now -->
<!--v2DATAGRID   <li value="23"><dfn><code>DATAGRID_MODEL_ERR</code></dfn></li> --> <!-- actually defined right here for now -->
   <li value="81"><dfn id="parse_err"><code>PARSE_ERR</code></dfn></li> <!-- actually defined in dom3ls -->
   <li value="82"><dfn id="serialize_err"><code>SERIALIZE_ERR</code></dfn></li> <!-- actually defined in dom3ls -->
  </ol></body></html>
--- NEW FILE: text-level-semantics.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4.6 Text-level semantics &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...3403 lines suppressed...]
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of an <code><a href="#the-object-element">object</a></code> element, before any <a href="dom.html#flow-content">flow content</a>.</dd>
   <dt>Content model:</dt>
   <dd>Empty.</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dd><code title="attr-param-name"><a href="#attr-param-name">name</a></code></dd>
   <dd><code title="attr-param-value"><a href="#attr-param-value">value</a></code></dd>
   <dt>DOM interface:</dt>
   <dd>
<pre class="idl">interface <dfn id="htmlparamelement">HTMLParamElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {
           attribute DOMString <a href="#dom-param-name" title="dom-param-name">name</a>;
           attribute DOMString <a href="#dom-param-value" title="dom-param-value">value</a>;
};</pre>
   </dd>
  </dl><p>The <code><a href="#the-param-element">param</a></code> element defines parameters for plugins
  invoked by <code><a href="#the-object-element">object</a></code> elements. It does not <a href="#represents" title="represents">represent</a> anything on its own.</p><p>The <dfn id="attr-param-name" title="attr-param-name"><code>name</code></dfn>
  attribute gives the name of the parameter.</p><p>The <dfn id="attr-param-value" title="attr-param-value"><code>value</code></dfn>
  attribute gives the value of the parameter.</p><p>Both attributes must be present. They may have any value.</p></body></html>
--- NEW FILE: history.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>6.8 Session history and navigation &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...974 lines suppressed...]

     <dd>The keyword has received wide peer review and it has been
     found to have significant problems. Pages must not use the
     keyword. When a keyword has this status, the "Effect
     on... <code><a href="semantics.html#the-link-element">link</a></code>" and "Effect on... <code><a href="text-level-semantics.html#the-a-element">a</a></code> and
     <code><a href="the-canvas-element.html#the-area-element">area</a></code>" information should be set to "not
     allowed".</dd>

    </dl><p>If a keyword is added with the "proposal" status and found to
    be redundant with existing values, it should be removed and listed
    as a synonym for the existing value. If a keyword is added with
    the "proposal" status and found to be harmful, then it should be
    changed to "rejected" status, and its "Effect on..." information
    should be changed accordingly.</p>

   </dd>

  </dl><p>This specification does not define how new values will get
  approved. It is expected that the Wiki will have a community that
  addresses this.</p></body></html>
--- NEW FILE: tabular-data.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4.9 Tabular data &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="the-canvas-element.html" title="4.8.11 The canvas element" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="forms.html" title="4.10 Forms" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="the-canvas-element.html">&#8592; 4.8.11 The canvas element</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="forms.html">4.10 Forms &#8594;</a>
  </div>

  <h3 id="tabular-data"><span class="secno">4.9 </span>Tabular data</h3><p class="XXX annotation"><b>Status: </b><i>Last call for comments. </i><span><a href="http://www.w3.org/html/wg/tracker/issues/32">ISSUE-32</a> (table-summary) blocks progress to Last Call</span></p><h4 id="the-table-element"><span class="secno">4.9.1 </span>The <dfn><code>table</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><dl class="element"><dt>Categories</dt>
   <dd><a href="dom.html#flow-content">Flow content</a>.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>Where <a href="dom.html#flow-content">flow content</a> is expected.</dd>
   <dt>Content model:</dt>
   <dd>In this order: optionally a <code><a href="#the-caption-element">caption</a></code> element,
   followed by either zero or more <code><a href="#the-colgroup-element">colgroup</a></code> elements,
   followed optionally by a <code><a href="#the-thead-element">thead</a></code> element, followed
   optionally by a <code><a href="#the-tfoot-element">tfoot</a></code> element, followed by either zero
   or more <code><a href="#the-tbody-element">tbody</a></code> elements <em>or</em> one or more
   <code><a href="#the-tr-element">tr</a></code> elements, followed optionally by a
   <code><a href="#the-tfoot-element">tfoot</a></code> element (but there can only be one
   <code><a href="#the-tfoot-element">tfoot</a></code> element child in total).</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dd><code title="attr-table-summary"><a href="#attr-table-summary">summary</a></code> (but see prose)</dd>
   <dt>DOM interface:</dt>
   <dd>
<pre class="idl">interface <dfn id="htmltableelement">HTMLTableElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {
           attribute <a href="#htmltablecaptionelement">HTMLTableCaptionElement</a> <a href="#dom-table-caption" title="dom-table-caption">caption</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-table-createcaption" title="dom-table-createCaption">createCaption</a>();
  void <a href="#dom-table-deletecaption" title="dom-table-deleteCaption">deleteCaption</a>();
           attribute <a href="#htmltablesectionelement">HTMLTableSectionElement</a> <a href="#dom-table-thead" title="dom-table-tHead">tHead</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-table-createthead" title="dom-table-createTHead">createTHead</a>();
  void <a href="#dom-table-deletethead" title="dom-table-deleteTHead">deleteTHead</a>();
           attribute <a href="#htmltablesectionelement">HTMLTableSectionElement</a> <a href="#dom-table-tfoot" title="dom-table-tFoot">tFoot</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-table-createtfoot" title="dom-table-createTFoot">createTFoot</a>();
  void <a href="#dom-table-deletetfoot" title="dom-table-deleteTFoot">deleteTFoot</a>();
  readonly attribute <a href="infrastructure.html#htmlcollection">HTMLCollection</a> <a href="#dom-table-tbodies" title="dom-table-tBodies">tBodies</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-table-createtbody" title="dom-table-createTBody">createTBody</a>();
  readonly attribute <a href="infrastructure.html#htmlcollection">HTMLCollection</a> <a href="#dom-table-rows" title="dom-table-rows">rows</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-table-insertrow" title="dom-table-insertRow">insertRow</a>(optional in long index);
  void <a href="#dom-table-deleterow" title="dom-table-deleteRow">deleteRow</a>(in long index);
};</pre>
   </dd>
  </dl><p>The <code><a href="#the-table-element">table</a></code> element <a href="#represents">represents</a> data with
  more than one dimension, in the form of a <a href="#concept-table" title="concept-table">table</a>.</p><p>Tables must not be used as layout aids. Historically, some Web
  authors have misused tables in HTML as a way to control their page
  layout. This usage is non-conforming, because tools attempting to
  extract tabular data from such documents would obtain very confusing
  results. In particular, users of accessibility tools like screen
  readers are likely to find it very difficult to navigate pages with
  tables used for layout.</p><p class="note">There are a variety of alternatives to using HTML
  tables for layout, primarily using CSS positioning and the CSS table
  model.</p><p>Tables have rows and columns given by their descendants. A table
  must not have an empty row or column, as
  described in the description of the <!-- conformance criteria for detecting this
  are in the table model section --></p><p id="table-descriptions">For tables that consist of more than just
  a grid of cells with headers in the first row and headers in the
  first column, and for any table in general where the reader might
  have difficulty understanding the content, authors should include
  explanatory information introducing the table. This information is
  useful for all users, but is especially useful for users who cannot
  see the table, e.g. users of screen readers.</p><p>Such explanatory information should introduce the purpose of the
  table, outline its basic cell structure, highlight any trends or
  patterns, and generally teach the user how to use the table.</p><div class="example">

   <p>For instance, the following table:</p>

   <table><caption>Characteristics with positive and negative sides</caption>
    <thead><tr><th id="n"> Negative
      </th><th> Characteristic
      </th><th> Positive
    </th></tr></thead><tbody><tr><td headers="n r1"> Sad
      </td><th id="r1"> Mood
      </th><td> Happy
     </td></tr><tr><td headers="n r2"> Failing
      </td><th id="r2"> Grade
      </th><td> Passing
   </td></tr></tbody></table><p>...might benefit from a description explaining to the way the
   table is laid out, something like "Characteristics are given in the
   second column, with the negative side in the left column and the
   positive side in the right column".</p>

  </div><p>There are a variety of ways to include this information, such as:</p><dl><dt>In prose, surrounding the table</dt>

   <dd>
    <div class="example"><pre>&lt;p&gt;In the following table, characteristics are given in the second
column, with the negative side in the left column and the positive
side in the right column.&lt;/p&gt;
&lt;table&gt;
 &lt;caption&gt;Characteristics with positive and negative sides&lt;/caption&gt;
 &lt;thead&gt;
  &lt;tr&gt;
   &lt;th id="n"&gt; Negative
   &lt;th&gt; Characteristic
   &lt;th&gt; Positive
 &lt;tbody&gt;
  &lt;tr&gt;
   &lt;td headers="n r1"&gt; Sad
   &lt;th id="r1"&gt; Mood
   &lt;td&gt; Happy
  &lt;tr&gt;
   &lt;td headers="n r2"&gt; Failing
   &lt;th id="r2"&gt; Grade
   &lt;td&gt; Passing
&lt;/table&gt;</pre></div>
   </dd>

   <dt>In the table's <code><a href="#the-caption-element">caption</a></code></dt>

   <dd>
    <div class="example"><pre>&lt;table&gt;
 &lt;caption&gt;
  &lt;strong&gt;Characteristics with positive and negative sides.&lt;/strong&gt;
  &lt;p&gt;Characteristics are given in the second column, with the
  negative side in the left column and the positive side in the right
  column.&lt;/p&gt;
 &lt;/caption&gt;
 &lt;thead&gt;
  &lt;tr&gt;
   &lt;th id="n"&gt; Negative
   &lt;th&gt; Characteristic
   &lt;th&gt; Positive
 &lt;tbody&gt;
  &lt;tr&gt;
   &lt;td headers="n r1"&gt; Sad
   &lt;th id="r1"&gt; Mood
   &lt;td&gt; Happy
  &lt;tr&gt;
   &lt;td headers="n r2"&gt; Failing
   &lt;th id="r2"&gt; Grade
   &lt;td&gt; Passing
&lt;/table&gt;</pre></div>
   </dd>

   <dt>In the table's <code><a href="#the-caption-element">caption</a></code>, in a <code><a href="interactive-elements.html#the-details-element">details</a></code> element</dt>

   <dd>
    <div class="example"><pre>&lt;table&gt;
 &lt;caption&gt;
  &lt;strong&gt;Characteristics with positive and negative sides.&lt;/strong&gt;
  &lt;details&gt;
   &lt;legend&gt;Help&lt;/legend&gt;
   &lt;p&gt;Characteristics are given in the second column, with the
   negative side in the left column and the positive side in the right
   column.&lt;/p&gt;
  &lt;/details&gt;
 &lt;/caption&gt;
 &lt;thead&gt;
  &lt;tr&gt;
   &lt;th id="n"&gt; Negative
   &lt;th&gt; Characteristic
   &lt;th&gt; Positive
 &lt;tbody&gt;
  &lt;tr&gt;
   &lt;td headers="n r1"&gt; Sad
   &lt;th id="r1"&gt; Mood
   &lt;td&gt; Happy
  &lt;tr&gt;
   &lt;td headers="n r2"&gt; Failing
   &lt;th id="r2"&gt; Grade
   &lt;td&gt; Passing
&lt;/table&gt;</pre></div>
   </dd>

   <dt>Next to the table, in the same <code><a href="text-level-semantics.html#the-figure-element">figure</a></code></dt>

   <dd>
    <div class="example"><pre>&lt;figure&gt;
 &lt;legend&gt;Characteristics with positive and negative sides&lt;/legend&gt;
 &lt;p&gt;Characteristics are given in the second
 column, with the negative side in the left column and the positive
 side in the right column.&lt;/p&gt;
 &lt;table&gt;
  &lt;thead&gt;
   &lt;tr&gt;
    &lt;th id="n"&gt; Negative
    &lt;th&gt; Characteristic
    &lt;th&gt; Positive
  &lt;tbody&gt;
   &lt;tr&gt;
    &lt;td headers="n r1"&gt; Sad
    &lt;th id="r1"&gt; Mood
    &lt;td&gt; Happy
   &lt;tr&gt;
    &lt;td headers="n r2"&gt; Failing
    &lt;th id="r2"&gt; Grade
    &lt;td&gt; Passing
 &lt;/table&gt;
&lt;figure&gt;
</pre></div>
   </dd>

   <dt>Next to the table, in a <code><a href="text-level-semantics.html#the-figure-element">figure</a></code>'s <code><a href="interactive-elements.html#the-legend-element">legend</a></code></dt>

   <dd>
    <div class="example"><pre>&lt;figure&gt;
 &lt;legend&gt;
  &lt;strong&gt;Characteristics with positive and negative sides&lt;/strong&gt;
  &lt;p&gt;Characteristics are given in the second
  column, with the negative side in the left column and the positive
  side in the right column.&lt;/p&gt;
 &lt;/legend&gt;
 &lt;table&gt;
  &lt;thead&gt;
   &lt;tr&gt;
    &lt;th id="n"&gt; Negative
    &lt;th&gt; Characteristic
    &lt;th&gt; Positive
  &lt;tbody&gt;
   &lt;tr&gt;
    &lt;td headers="n r1"&gt; Sad
    &lt;th id="r1"&gt; Mood
    &lt;td&gt; Happy
   &lt;tr&gt;
    &lt;td headers="n r2"&gt; Failing
    &lt;th id="r2"&gt; Grade
    &lt;td&gt; Passing
 &lt;/table&gt;
&lt;figure&gt;
</pre></div>
   </dd>

  </dl><p>Authors may also use other techniques, or combinations of the
  above techniques, as appropriate.</p><p>The <dfn id="attr-table-summary" title="attr-table-summary"><code>summary</code></dfn>
  attribute on <code><a href="#the-table-element">table</a></code> elements was suggested in earlier
  versions of the language as a technique for providing explanatory
  text for complex tables for users of screen readers. One of the <a href="#table-descriptions">techniques</a> described <!--in the
  <code>table</code> section--> above should be used
  instead. <!--Authors should not specify the <code
  title="attr-table-summary">summary</code> attribute on
  <code>table</code> elements. --> <!-- 2.65% pages --></p><p class="note">In particular, authors are encouraged to consider
  whether their explanatory text for tables is likely to be useful to
  the visually impaired: if their text would not be useful, then it is
  best to not include a <code title="attr-table-summary"><a href="#attr-table-summary">summary</a></code> attribute. Similarly, if
  their explanatory text could help someone who is not visually
  impaired, e.g. someone who is seeing the table for the first time,
  then the text would be more useful before the table or in the
  <code><a href="#the-caption-element">caption</a></code>. For example, describing the conclusions of the
  data in a table is useful to everyone; explaining how to read the
  table, if not obvious from the headers alone, is useful to everyone;
  describing the structure of the table, if it is easy to grasp
  visually, may not be useful to everyone, but it might also not be
  useful to users who can quickly navigate the table with an
  accessibility tool.</p><!--
  <p class="note">Use of the <code
  title="attr-table-summary">summary</code> attribute is discouraged
  because in practice it is poorly understood. Because the attribute
  is not exposed in visual user agents, authors who have included it
  have typically not been able to test it, and have therefore set the
  attribute to values that are of no use to users of accessibility
  tools. This has lead to accessibility tools introducing heuristics
  to try to avoid exposing such usage of the attribute to users. Even
  the few authors who have made the best use of the attribute have
  often misused it, for example by including text that would in fact
  be useful for all users, or that is redundant with other information
  on the page separate from the table.</p>
  --><dl class="domintro"><dt><var title="">table</var> . <code title="dom-table-caption"><a href="#dom-table-caption">caption</a></code> [ = <var title="">value</var> ]</dt>
   <dd>
    <p>Returns the table's <code><a href="#the-caption-element">caption</a></code> element.</p>
    <p>Can be set, to replace the <code><a href="#the-caption-element">caption</a></code> element. If the
    new value is not a <code><a href="#the-caption-element">caption</a></code> element, throws a
    <code><a href="infrastructure.html#hierarchy_request_err">HIERARCHY_REQUEST_ERR</a></code> exception.</p>
   <dd>

   </dd></dd><dt><var title="">caption</var> = <var title="">table</var> . <code title="dom-table-createCaption"><a href="#dom-table-createcaption">createCaption</a></code>()</dt>
   <dd>
    <p>Ensures the table has a <code><a href="#the-caption-element">caption</a></code> element, and returns it.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-deleteCaption"><a href="#dom-table-deletecaption">deleteCaption</a></code>()</dt>
   <dd>
    <p>Ensures the table does not have a <code><a href="#the-caption-element">caption</a></code> element.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-tHead"><a href="#dom-table-thead">tHead</a></code> [ = <var title="">value</var> ]</dt>
   <dd>
    <p>Returns the table's <code><a href="#the-thead-element">thead</a></code> element.</p>
    <p>Can be set, to replace the <code><a href="#the-thead-element">thead</a></code> element. If the
    new value is not a <code><a href="#the-thead-element">thead</a></code> element, throws a
    <code><a href="infrastructure.html#hierarchy_request_err">HIERARCHY_REQUEST_ERR</a></code> exception.</p>
   <dd>

   </dd></dd><dt><var title="">thead</var> = <var title="">table</var> . <code title="dom-table-createTHead"><a href="#dom-table-createthead">createTHead</a></code>()</dt>
   <dd>
    <p>Ensures the table has a <code><a href="#the-thead-element">thead</a></code> element, and returns it.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-deleteTHead"><a href="#dom-table-deletethead">deleteTHead</a></code>()</dt>
   <dd>
    <p>Ensures the table does not have a <code><a href="#the-thead-element">thead</a></code> element.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-tFoot"><a href="#dom-table-tfoot">tFoot</a></code> [ = <var title="">value</var> ]</dt>
   <dd>
    <p>Returns the table's <code><a href="#the-tfoot-element">tfoot</a></code> element.</p>
    <p>Can be set, to replace the <code><a href="#the-tfoot-element">tfoot</a></code> element. If the
    new value is not a <code><a href="#the-tfoot-element">tfoot</a></code> element, throws a
    <code><a href="infrastructure.html#hierarchy_request_err">HIERARCHY_REQUEST_ERR</a></code> exception.</p>
   <dd>

   </dd></dd><dt><var title="">tfoot</var> = <var title="">table</var> . <code title="dom-table-createTFoot"><a href="#dom-table-createtfoot">createTFoot</a></code>()</dt>
   <dd>
    <p>Ensures the table has a <code><a href="#the-tfoot-element">tfoot</a></code> element, and returns it.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-deleteTFoot"><a href="#dom-table-deletetfoot">deleteTFoot</a></code>()</dt>
   <dd>
    <p>Ensures the table does not have a <code><a href="#the-tfoot-element">tfoot</a></code> element.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-tBodies"><a href="#dom-table-tbodies">tBodies</a></code></dt>
   <dd>
    <p>Returns an <code><a href="infrastructure.html#htmlcollection">HTMLCollection</a></code> of the <code><a href="#the-tbody-element">tbody</a></code> elements of the table.</p>
   <dd>

   </dd></dd><dt><var title="">tbody</var> = <var title="">table</var> . <code title="dom-table-createTBody"><a href="#dom-table-createtbody">createTBody</a></code>()</dt>
   <dd>
    <p>Creates a <code><a href="#the-tbody-element">tbody</a></code> element, inserts it into the table, and returns it.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-rows"><a href="#dom-table-rows">rows</a></code></dt>
   <dd>
    <p>Returns an <code><a href="infrastructure.html#htmlcollection">HTMLCollection</a></code> of the <code><a href="#the-tr-element">tr</a></code> elements of the table.</p>
   <dd>

   </dd></dd><dt><var title="">tr</var> = <var title="">table</var> . <code title="dom-table-insertRow"><a href="#dom-table-insertrow">insertRow</a></code>(<var title="">index</var>)</dt>
   <dd>
    <p>Creates a <code><a href="#the-tr-element">tr</a></code> element, along with a <code><a href="#the-tbody-element">tbody</a></code> if required, inserts them into the table at the position given by the argument, and returns the <code><a href="#the-tr-element">tr</a></code>.</p>
    <p>The position is relative to the rows in the table. The index &#8722;1 is equivalent to inserting at the end of the table.</p>
    <p>If the given position is less than &#8722;1 or greater than the number of rows, throws an <code><a href="infrastructure.html#index_size_err">INDEX_SIZE_ERR</a></code> exception.</p>
   <dd>

   </dd></dd><dt><var title="">table</var> . <code title="dom-table-deleteRow"><a href="#dom-table-deleterow">deleteRow</a></code>(<var title="">index</var>)</dt>
   <dd>
    <p>Removes the <code><a href="#the-tr-element">tr</a></code> element with the given position in the table.</p>
    <p>The position is relative to the rows in the table. The index &#8722;1 is equivalent to deleting the last row of the table.</p>
    <p>If the given position is less than &#8722;1 or greater than the index of the last row, or if there are no rows, throws an <code><a href="infrastructure.html#index_size_err">INDEX_SIZE_ERR</a></code> exception.</p>
   <dd>

  </dd></dd></dl><h4 id="the-caption-element"><span class="secno">4.9.2 </span>The <dfn><code>caption</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As the first element child of a <code><a href="#the-table-element">table</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd><a href="dom.html#flow-content">Flow content</a>, but with no descendant <code><a href="#the-table-element">table</a></code> elements.</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dt>DOM interface:</dt>
   <dd>
<pre class="idl">interface <dfn id="htmltablecaptionelement">HTMLTableCaptionElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {};</pre>
   </dd>
  </dl><p>The <code><a href="#the-caption-element">caption</a></code> element <a href="#represents">represents</a> the title of the
  <code><a href="#the-table-element">table</a></code> that is its parent, if it has a parent and that
  is a <code><a href="#the-table-element">table</a></code> element.</p><p>When a <code><a href="#the-table-element">table</a></code> element is in a <code><a href="text-level-semantics.html#the-figure-element">figure</a></code>
  element alone but for the <code><a href="text-level-semantics.html#the-figure-element">figure</a></code>'s <code><a href="interactive-elements.html#the-legend-element">legend</a></code>,
  the <code><a href="#the-caption-element">caption</a></code> element should be omitted in favor of the
  <code><a href="interactive-elements.html#the-legend-element">legend</a></code>.</p><p>A caption can introduce context for a table, making it
  significantly easier to understand.</p><div class="example">

   <p>Consider, for instance, the following table:</p>

   <table class="dice-example"><tr><th>   </th><th> 1 </th><th> 2 </th><th> 3 </th><th> 4 </th><th> 5 </th><th> 6
    </th></tr><tr><th> 1 </th><td> 2 </td><td> 3 </td><td> 4 </td><td> 5 </td><td> 6 </td><td> 7
    </td></tr><tr><th> 2 </th><td> 3 </td><td> 4 </td><td> 5 </td><td> 6 </td><td> 7 </td><td> 8
    </td></tr><tr><th> 3 </th><td> 4 </td><td> 5 </td><td> 6 </td><td> 7 </td><td> 8 </td><td> 9
    </td></tr><tr><th> 4 </th><td> 5 </td><td> 6 </td><td> 7 </td><td> 8 </td><td> 9 </td><td> 10
    </td></tr><tr><th> 5 </th><td> 6 </td><td> 7 </td><td> 8 </td><td> 9 </td><td> 10 </td><td> 11
    </td></tr><tr><th> 6 </th><td> 7 </td><td> 8 </td><td> 9 </td><td> 10 </td><td> 11 </td><td> 12
   </td></tr></table><p>In the abstract, this table is not clear. However, with a
   caption giving the table's number (for reference in the main prose)
   and explaining its use, it makes more sense:</p>

   <pre>&lt;caption&gt;
&lt;p&gt;Table 1.
&lt;p&gt;This table shows the total score obtained from rolling two
six-sided dice. The first row represents the value of the first die,
the first column the value of the second die. The total is given in
the cell that corresponds to the values of the two dice.
&lt;/caption&gt;</pre>

   <p>This provides the user with more context:</p>

   <table class="dice-example"><caption>
     <p>Table 1.
     </p><p>This table shows the total score obtained from rolling two
     six-sided dice. The first row represents the value of the first
     die, the first column the value of the second die. The total is
     given in the cell that corresponds to the values of the two dice.
    </p></caption>
    <tr><th>   </th><th> 1 </th><th> 2 </th><th> 3 </th><th> 4 </th><th> 5 </th><th> 6
    </th></tr><tr><th> 1 </th><td> 2 </td><td> 3 </td><td> 4 </td><td> 5 </td><td> 6 </td><td> 7
    </td></tr><tr><th> 2 </th><td> 3 </td><td> 4 </td><td> 5 </td><td> 6 </td><td> 7 </td><td> 8
    </td></tr><tr><th> 3 </th><td> 4 </td><td> 5 </td><td> 6 </td><td> 7 </td><td> 8 </td><td> 9
    </td></tr><tr><th> 4 </th><td> 5 </td><td> 6 </td><td> 7 </td><td> 8 </td><td> 9 </td><td> 10
    </td></tr><tr><th> 5 </th><td> 6 </td><td> 7 </td><td> 8 </td><td> 9 </td><td> 10 </td><td> 11
    </td></tr><tr><th> 6 </th><td> 7 </td><td> 8 </td><td> 9 </td><td> 10 </td><td> 11 </td><td> 12
   </td></tr></table></div><h4 id="the-colgroup-element"><span class="secno">4.9.3 </span>The <dfn><code>colgroup</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-table-element">table</a></code> element, after any
   <code><a href="#the-caption-element">caption</a></code> elements and before any <code><a href="#the-thead-element">thead</a></code>,
   <code><a href="#the-tbody-element">tbody</a></code>, <code><a href="#the-tfoot-element">tfoot</a></code>, and <code><a href="#the-tr-element">tr</a></code>
   elements.</dd>
   <dt>Content model:</dt>
   <dd>Zero or more <code><a href="#the-col-element">col</a></code> elements.</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dd><code title="attr-colgroup-span"><a href="#attr-colgroup-span">span</a></code></dd>
   <dt>DOM interface:</dt>
   <dd>
<pre class="idl">interface <dfn id="htmltablecolelement">HTMLTableColElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {
           attribute unsigned long <a href="#dom-colgroup-span" title="dom-colgroup-span">span</a>;
};</pre>
   </dd>
  </dl><p>The <code><a href="#the-colgroup-element">colgroup</a></code> element <a href="#represents">represents</a> a <a href="#concept-column-group" title="concept-column-group">group</a> of one or more <a href="#concept-column" title="concept-column">columns</a> in the <code><a href="#the-table-element">table</a></code> that
  is its parent, if it has a parent and that is a <code><a href="#the-table-element">table</a></code>
  element.</p><p>If the <code><a href="#the-colgroup-element">colgroup</a></code> element contains no <code><a href="#the-col-element">col</a></code>
  elements, then the element may have a <dfn id="attr-colgroup-span" title="attr-colgroup-span"><code>span</code></dfn> content attribute
  specified, whose value must be a <a href="infrastructure.html#valid-non-negative-integer">valid non-negative
  integer</a> greater than zero.</p><h4 id="the-col-element"><span class="secno">4.9.4 </span>The <dfn><code>col</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-colgroup-element">colgroup</a></code> element that doesn't have
   a <code title="attr-col-span"><a href="#attr-col-span">span</a></code> attribute.</dd>
   <dt>Content model:</dt>
   <dd>Empty.</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dd><code title="attr-col-span"><a href="#attr-col-span">span</a></code></dd>
   <!-- v2: char, to specify the decimal character used in numeric data cells in the column (not header cells) -->
   <dt>DOM interface:</dt>
   <dd>
    <p><code><a href="#htmltablecolelement">HTMLTableColElement</a></code>, same as for
    <code><a href="#the-colgroup-element">colgroup</a></code> elements. This interface defines one member,
    <code title="dom-col-span"><a href="#dom-col-span">span</a></code>.</p>
   </dd>
  </dl><p>If a <code><a href="#the-col-element">col</a></code> element has a parent and that is a
  <code><a href="#the-colgroup-element">colgroup</a></code> element that itself has a parent that is a
  <code><a href="#the-table-element">table</a></code> element, then the <code><a href="#the-col-element">col</a></code> element
  <a href="#represents">represents</a> one or more <a href="#concept-column" title="concept-column">columns</a> in the <a href="#concept-column-group" title="concept-column-group">column group</a> represented by that
  <code><a href="#the-colgroup-element">colgroup</a></code>.</p><p>The element may have a <dfn id="attr-col-span" title="attr-col-span"><code>span</code></dfn> content attribute
  specified, whose value must be a <a href="infrastructure.html#valid-non-negative-integer">valid non-negative
  integer</a> greater than zero.</p><h4 id="the-tbody-element"><span class="secno">4.9.5 </span>The <dfn><code>tbody</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-table-element">table</a></code> element, after any
   <code><a href="#the-caption-element">caption</a></code>, <code><a href="#the-colgroup-element">colgroup</a></code>, and
   <code><a href="#the-thead-element">thead</a></code> elements, but only if there are no
   <code><a href="#the-tr-element">tr</a></code> elements that are children of the
   <code><a href="#the-table-element">table</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd>Zero or more <code><a href="#the-tr-element">tr</a></code> elements</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dt>DOM interface:</dt>
   <dd>
    <pre class="idl">interface <dfn id="htmltablesectionelement">HTMLTableSectionElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {
  readonly attribute <a href="infrastructure.html#htmlcollection">HTMLCollection</a> <a href="#dom-tbody-rows" title="dom-tbody-rows">rows</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-tbody-insertrow" title="dom-tbody-insertRow">insertRow</a>(optional in long index);
  void <a href="#dom-tbody-deleterow" title="dom-tbody-deleteRow">deleteRow</a>(in long index);
};</pre>
    <p>The <code><a href="#htmltablesectionelement">HTMLTableSectionElement</a></code> interface is also
    used for <code><a href="#the-thead-element">thead</a></code> and <code><a href="#the-tfoot-element">tfoot</a></code> elements.</p>
   </dd>
  </dl><p>The <code><a href="#the-tbody-element">tbody</a></code> element <a href="#represents">represents</a> a <a href="#concept-row-group" title="concept-row-group">block</a> of <a href="#concept-row" title="concept-row">rows</a> that consist of a body of data for
  the parent <code><a href="#the-table-element">table</a></code> element, if the <code><a href="#the-tbody-element">tbody</a></code>
  element has a parent and it is a <code><a href="#the-table-element">table</a></code>.</p><dl class="domintro"><dt><var title="">tbody</var> . <code title="dom-tbody-rows"><a href="#dom-tbody-rows">rows</a></code></dt>
   <dd>
    <p>Returns an <code><a href="infrastructure.html#htmlcollection">HTMLCollection</a></code> of the <code><a href="#the-tr-element">tr</a></code> elements of the table section.</p>
   <dd>

   </dd></dd><dt><var title="">tr</var> = <var title="">tbody</var> . <code title="dom-tbody-insertRow"><a href="#dom-tbody-insertrow">insertRow</a></code>( [ <var title="">index</var> ] )</dt>
   <dd>
    <p>Creates a <code><a href="#the-tr-element">tr</a></code> element, inserts it into the table section at the position given by the argument, and returns the <code><a href="#the-tr-element">tr</a></code>.</p>
    <p>The position is relative to the rows in the table section. The index &#8722;1, which is the default if the argument is omitted, is equivalent to inserting at the end of the table section.</p>
    <p>If the given position is less than &#8722;1 or greater than the number of rows, throws an <code><a href="infrastructure.html#index_size_err">INDEX_SIZE_ERR</a></code> exception.</p>
   <dd>

   </dd></dd><dt><var title="">tbody</var> . <code title="dom-tbody-deleteRow"><a href="#dom-tbody-deleterow">deleteRow</a></code>(<var title="">index</var>)</dt>
   <dd>
    <p>Removes the <code><a href="#the-tr-element">tr</a></code> element with the given position in the table section.</p>
    <p>The position is relative to the rows in the table section. The index &#8722;1 is equivalent to deleting the last row of the table section.</p>
    <p>If the given position is less than &#8722;1 or greater than the index of the last row, or if there are no rows, throws an <code><a href="infrastructure.html#index_size_err">INDEX_SIZE_ERR</a></code> exception.</p>
   <dd>

  </dd></dd></dl><h4 id="the-thead-element"><span class="secno">4.9.6 </span>The <dfn><code>thead</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-table-element">table</a></code> element, after any
   <code><a href="#the-caption-element">caption</a></code>, and <code><a href="#the-colgroup-element">colgroup</a></code>
   elements and before any <code><a href="#the-tbody-element">tbody</a></code>, <code><a href="#the-tfoot-element">tfoot</a></code>, and
   <code><a href="#the-tr-element">tr</a></code> elements, but only if there are no other
   <code><a href="#the-thead-element">thead</a></code> elements that are children of the
   <code><a href="#the-table-element">table</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd>Zero or more <code><a href="#the-tr-element">tr</a></code> elements</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dt>DOM interface:</dt>
   <dd><code><a href="#htmltablesectionelement">HTMLTableSectionElement</a></code>, as defined for
   <code><a href="#the-tbody-element">tbody</a></code> elements.</dd>
  </dl><p>The <code><a href="#the-thead-element">thead</a></code> element <a href="#represents">represents</a> the <a href="#concept-row-group" title="concept-row-group">block</a> of <a href="#concept-row" title="concept-row">rows</a> that consist of the column labels
  (headers) for the parent <code><a href="#the-table-element">table</a></code> element, if the
  <code><a href="#the-thead-element">thead</a></code> element has a parent and it is a
  <code><a href="#the-table-element">table</a></code>.</p><h4 id="the-tfoot-element"><span class="secno">4.9.7 </span>The <dfn><code>tfoot</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-table-element">table</a></code> element, after any
   <code><a href="#the-caption-element">caption</a></code>, <code><a href="#the-colgroup-element">colgroup</a></code>, and <code><a href="#the-thead-element">thead</a></code>
   elements and before any <code><a href="#the-tbody-element">tbody</a></code> and <code><a href="#the-tr-element">tr</a></code>
   elements, but only if there are no other <code><a href="#the-tfoot-element">tfoot</a></code>
   elements that are children of the <code><a href="#the-table-element">table</a></code> element.</dd>
   <dd>As a child of a <code><a href="#the-table-element">table</a></code> element, after any
   <code><a href="#the-caption-element">caption</a></code>, <code><a href="#the-colgroup-element">colgroup</a></code>, <code><a href="#the-thead-element">thead</a></code>,
   <code><a href="#the-tbody-element">tbody</a></code>, and <code><a href="#the-tr-element">tr</a></code> elements, but only if there
   are no other <code><a href="#the-tfoot-element">tfoot</a></code> elements that are children of the
   <code><a href="#the-table-element">table</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd>Zero or more <code><a href="#the-tr-element">tr</a></code> elements</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dt>DOM interface:</dt>
   <dd><code><a href="#htmltablesectionelement">HTMLTableSectionElement</a></code>, as defined for
   <code><a href="#the-tbody-element">tbody</a></code> elements.</dd>
  </dl><p>The <code><a href="#the-tfoot-element">tfoot</a></code> element <a href="#represents">represents</a> the <a href="#concept-row-group" title="concept-row-group">block</a> of <a href="#concept-row" title="concept-row">rows</a> that consist of the column summaries
  (footers) for the parent <code><a href="#the-table-element">table</a></code> element, if the
  <code><a href="#the-tfoot-element">tfoot</a></code> element has a parent and it is a
  <code><a href="#the-table-element">table</a></code>.</p><h4 id="the-tr-element"><span class="secno">4.9.8 </span>The <dfn><code>tr</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-thead-element">thead</a></code> element.</dd>
   <dd>As a child of a <code><a href="#the-tbody-element">tbody</a></code> element.</dd>
   <dd>As a child of a <code><a href="#the-tfoot-element">tfoot</a></code> element.</dd>
   <dd>As a child of a <code><a href="#the-table-element">table</a></code> element, after any
   <code><a href="#the-caption-element">caption</a></code>, <code><a href="#the-colgroup-element">colgroup</a></code>, and <code><a href="#the-thead-element">thead</a></code>
   elements, but only if there are no <code><a href="#the-tbody-element">tbody</a></code> elements that
   are children of the <code><a href="#the-table-element">table</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd>When the parent node is a <code><a href="#the-thead-element">thead</a></code> element: Zero or more <code><a href="#the-th-element">th</a></code> elements</dd>
   <dd>Otherwise: Zero or more <code><a href="#the-td-element">td</a></code> or <code><a href="#the-th-element">th</a></code> elements</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dt>DOM interface:</dt>
   <dd>
    <pre class="idl">interface <dfn id="htmltablerowelement">HTMLTableRowElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {
  readonly attribute long <a href="#dom-tr-rowindex" title="dom-tr-rowIndex">rowIndex</a>;
  readonly attribute long <a href="#dom-tr-sectionrowindex" title="dom-tr-sectionRowIndex">sectionRowIndex</a>;
  readonly attribute <a href="infrastructure.html#htmlcollection">HTMLCollection</a> <a href="#dom-tr-cells" title="dom-tr-cells">cells</a>;
  <a href="dom.html#htmlelement">HTMLElement</a> <a href="#dom-tr-insertcell" title="dom-tr-insertCell">insertCell</a>(optional in long index);
  void <a href="#dom-tr-deletecell" title="dom-tr-deleteCell">deleteCell</a>(in long index);
};</pre>
   </dd>
  </dl><p>The <code><a href="#the-tr-element">tr</a></code> element <a href="#represents">represents</a> a <a href="#concept-row" title="concept-row">row</a> of <a href="#concept-cell" title="concept-cell">cells</a> in a <a href="#concept-table" title="concept-table">table</a>.</p><dl class="domintro"><dt><var title="">tr</var> . <code title="dom-tr-rowIndex"><a href="#dom-tr-rowindex">rowIndex</a></code></dt>

   <dd>

    <p>Returns the position of the row in the table's <code title="dom-table-rows"><a href="#dom-table-rows">rows</a></code> list.</p>

    <p>Returns &#8722;1 if the element isn't in a table.</p>

   </dd>

   <dt><var title="">tr</var> . <code title="dom-tr-sectionRowIndex"><a href="#dom-tr-sectionrowindex">sectionRowIndex</a></code></dt>

   <dd>

    <p>Returns the position of the row in the table section's <code title="dom-tbody-rows"><a href="#dom-tbody-rows">rows</a></code> list.</p>

    <p>Returns &#8722;1 if the element isn't in a table section.</p>

   </dd>

   <dt><var title="">tr</var> . <code title="dom-tr-cells"><a href="#dom-tr-cells">cells</a></code></dt>
   <dd>

    <p>Returns an <code><a href="infrastructure.html#htmlcollection">HTMLCollection</a></code> of the <code><a href="#the-td-element">td</a></code> and <code><a href="#the-th-element">th</a></code> elements of the row.</p>

   <dd>

   </dd></dd><dt><var title="">cell</var> = <var title="">tr</var> . <code title="dom-tr-insertCell"><a href="#dom-tr-insertcell">insertCell</a></code>( [ <var title="">index</var> ] )</dt>

   <dd>

    <p>Creates a <code><a href="#the-td-element">td</a></code> element, inserts it into the table
    row at the position given by the argument, and returns the
    <code><a href="#the-td-element">td</a></code>.</p>

    <p>The position is relative to the cells in the row. The
    index &#8722;1, which is the default if the argument is omitted,
    is equivalent to inserting at the end of the row.</p>

    <p>If the given position is less than &#8722;1 or greater than
    the number of cells, throws an <code><a href="infrastructure.html#index_size_err">INDEX_SIZE_ERR</a></code>
    exception.</p>

   </dd>

   <dt><var title="">tr</var> . <code title="dom-tr-deleteCell"><a href="#dom-tr-deletecell">deleteCell</a></code>(<var title="">index</var>)</dt>
   <dd>

    <p>Removes the <code><a href="#the-td-element">td</a></code> or <code><a href="#the-th-element">th</a></code> element with the
    given position in the row.</p>

    <p>The position is relative to the cells in the row. The index
    &#8722;1 is equivalent to deleting the last cell of the row.</p>

    <p>If the given position is less than &#8722;1 or greater than
    the index of the last cell, or if there are no cells, throws an
    <code><a href="infrastructure.html#index_size_err">INDEX_SIZE_ERR</a></code> exception.</p>

   <dd>

  </dd></dd></dl><h4 id="the-td-element"><span class="secno">4.9.9 </span>The <dfn><code>td</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd><a href="semantics.html#sectioning-root">Sectioning root</a>.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-tr-element">tr</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd><a href="dom.html#flow-content">Flow content</a>.</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dd><code title="attr-tdth-colspan"><a href="#attr-tdth-colspan">colspan</a></code></dd>
   <dd><code title="attr-tdth-rowspan"><a href="#attr-tdth-rowspan">rowspan</a></code></dd>
   <dd><code title="attr-tdth-headers"><a href="#attr-tdth-headers">headers</a></code></dd>
   <!-- v2 char, to specify the decimal character used in numeric cells -->
   <dt>DOM interface:</dt>
   <dd>
    <pre class="idl">interface <dfn id="htmltabledatacellelement">HTMLTableDataCellElement</dfn> : <a href="#htmltablecellelement">HTMLTableCellElement</a> {};</pre>
   </dd>
  </dl><p>The <code><a href="#the-td-element">td</a></code> element <a href="#represents">represents</a> a data <a href="#concept-cell" title="concept-cell">cell</a> in a table.</p><h4 id="the-th-element"><span class="secno">4.9.10 </span>The <dfn><code>th</code></dfn> element</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><dl class="element"><dt>Categories</dt>
   <dd>None.</dd>
   <dt>Contexts in which this element may be used:</dt>
   <dd>As a child of a <code><a href="#the-tr-element">tr</a></code> element.</dd>
   <dt>Content model:</dt>
   <dd><a href="dom.html#phrasing-content">Phrasing content</a>.</dd>
   <dt>Content attributes:</dt>
   <dd><a href="dom.html#global-attributes">Global attributes</a></dd>
   <dd><code title="attr-tdth-colspan"><a href="#attr-tdth-colspan">colspan</a></code></dd>
   <dd><code title="attr-tdth-rowspan"><a href="#attr-tdth-rowspan">rowspan</a></code></dd>
   <dd><code title="attr-tdth-headers"><a href="#attr-tdth-headers">headers</a></code></dd>
   <dd><code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code></dd>
   <dt>DOM interface:</dt>
   <dd>
    <pre class="idl">interface <dfn id="htmltableheadercellelement">HTMLTableHeaderCellElement</dfn> : <a href="#htmltablecellelement">HTMLTableCellElement</a> {
           attribute DOMString <a href="#dom-th-scope" title="dom-th-scope">scope</a>;
};</pre>
   </dd>
  </dl><p>The <code><a href="#the-th-element">th</a></code> element <a href="#represents">represents</a> a header <a href="#concept-cell" title="concept-cell">cell</a> in a table.</p><p>The <code><a href="#the-th-element">th</a></code> element may have a <dfn id="attr-th-scope" title="attr-th-scope"><code>scope</code></dfn> content attribute
  specified. The <code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code> attribute is
  an <a href="infrastructure.html#enumerated-attribute">enumerated attribute</a> with five states, four of which
  have explicit keywords:</p><dl><dt>The <dfn id="attr-th-scope-row" title="attr-th-scope-row"><code>row</code></dfn>
   keyword, which maps to the <i>row</i> state</dt>

   <dd>The <i>row</i> state means the header cell applies to some of
   the subsequent cells in the same row(s).</dd>

   <dt>The <dfn id="attr-th-scope-col" title="attr-th-scope-col"><code>col</code></dfn>
   keyword, which maps to the <i>column</i> state</dt>

   <dd>The <i>column</i> state means the header cell applies to some
   of the subsequent cells in the same column(s).</dd>

   <dt>The <dfn id="attr-th-scope-rowgroup" title="attr-th-scope-rowgroup"><code>rowgroup</code></dfn> keyword,
   which maps to the <i>row group</i> state</dt>

   <dd>The <i>row group</i> state means the header cell applies to all
   the remaining cells in the row group. A <code><a href="#the-th-element">th</a></code> element's
   <code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code> attribute must not be in
   the <a href="#attr-th-scope-rowgroup" title="attr-th-scope-rowgroup">row group</a> state if
   the element is not anchored in a <a href="#concept-row-group" title="concept-row-group">row group</a>.</dd>

   <dt>The <dfn id="attr-th-scope-colgroup" title="attr-th-scope-colgroup"><code>colgroup</code></dfn> keyword,
   which maps to the <i>column group</i> state</dt>

   <dd>The <i>column group</i> state means the header cell applies to
   all the remaining cells in the column group. A <code><a href="#the-th-element">th</a></code>
   element's <code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code> attribute must
   not be in the <a href="#attr-th-scope-colgroup" title="attr-th-scope-colgroup">column
   group</a> state if the element is not anchored in a <a href="#concept-column-group" title="concept-column-group">column group</a>.</dd>

   <dt>The <dfn id="attr-th-scope-auto" title="attr-th-scope-auto">auto</dfn> state</dt>

   <dd>The <i>auto</i> state makes the header cell apply to a set of
   cells selected based on context.</dd>

  </dl><p>The <code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code> attribute's
  <i>missing value default</i> is the <i>auto</i> state.</p><div class="example">

   <p>The following example shows how the <code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code> attribute's <code title="attr-th-scope-rowgroup"><a href="#attr-th-scope-rowgroup">rowgroup</a></code> value affects which
   data cells a header cell applies to.</p>

   <p>Here is a markup fragment showing a table:</p>

   <pre>&lt;table&gt;
 &lt;thead&gt;
  &lt;tr&gt; &lt;th&gt; ID &lt;th&gt; Measurement &lt;th&gt; Average &lt;th&gt; Maximum
 &lt;tbody&gt;
  &lt;tr&gt; &lt;td&gt; &lt;th scope=rowgroup&gt; Cats &lt;td&gt; &lt;td&gt;
  &lt;tr&gt; &lt;td&gt; 93 &lt;td&gt; Legs &lt;td&gt; 3.5 &lt;td&gt; 4
  &lt;tr&gt; &lt;td&gt; 10 &lt;td&gt; Tails &lt;td&gt; 1 &lt;td&gt; 1
 &lt;tbody&gt;
  &lt;tr&gt; &lt;td&gt; &lt;th scope=rowgroup&gt; English speakers &lt;td&gt; &lt;td&gt;
  &lt;tr&gt; &lt;td&gt; 32 &lt;td&gt; Legs &lt;td&gt; 2.67 &lt;td&gt; 4
  &lt;tr&gt; &lt;td&gt; 35 &lt;td&gt; Tails &lt;td&gt; 0.33 &lt;td&gt; 1
&lt;/table&gt;</pre>

   <p>This would result in the following table:</p>

   <table><thead><tr><th> ID </th><th> Measurement </th><th> Average </th><th> Maximum
    </th></tr></thead><tbody><tr><td> </td><th scope="rowgroup"> Cats </th><td> </td><td>
     </td></tr><tr><td> 93 </td><th> Legs </th><td> 3.5 </td><td> 4
     </td></tr><tr><td> 10 </td><th> Tails </th><td> 1 </td><td> 1
    </td></tr></tbody><tbody><tr><td> </td><th scope="rowgroup"> English speakers </th><td> </td><td>
     </td></tr><tr><td> 32 </td><th> Legs </th><td> 2.67 </td><td> 4
     </td></tr><tr><td> 35 </td><th> Tails </th><td> 0.33 </td><td> 1
   </td></tr></tbody></table><p>The headers in the first row all apply directly down to the rows
   in their column.</p>

   <p>The headers with the explicit <code title="attr-th-scope"><a href="#attr-th-scope">scope</a></code> attributes apply to all the
   cells in their row group other than the cells in the first column.</p>

   <p>The remaining headers apply just to the cells to the right of
   them.</p>

   <!-- image source: http://software.hixie.ch/utilities/js/live-dom-viewer/saved/151 -->
   <img alt="" src="images/table-scope-diagram.png"><!-- (alt is empty because the diagram is completely described by the previous paragraphs) --></div><h4 id="attributes-common-to-td-and-th-elements"><span class="secno">4.9.11 </span>Attributes common to <code><a href="#the-td-element">td</a></code> and <code><a href="#the-th-element">th</a></code> elements</h4><p>The <code><a href="#the-td-element">td</a></code> and <code><a href="#the-th-element">th</a></code> elements may have a <dfn id="attr-tdth-colspan" title="attr-tdth-colspan"><code>colspan</code></dfn> content
  attribute specified, whose value must be a <a href="infrastructure.html#valid-non-negative-integer">valid non-negative
  integer</a> greater than zero.</p><p>The <code><a href="#the-td-element">td</a></code> and <code><a href="#the-th-element">th</a></code> elements may also have a
  <dfn id="attr-tdth-rowspan" title="attr-tdth-rowspan"><code>rowspan</code></dfn> content
  attribute specified, whose value must be a <a href="infrastructure.html#valid-non-negative-integer">valid non-negative
  integer</a>.</p><p>These attributes give the number of columns and rows respectively
  that the cell is to span. These attributes must not be used to
  overlap cells, as described in the description of
  the </p><!-- conformance criteria
  for determining when this is violated are given in the processing
  model --><hr><p>The <code><a href="#the-td-element">td</a></code> and <code><a href="#the-th-element">th</a></code> element may have a <dfn id="attr-tdth-headers" title="attr-tdth-headers"><code>headers</code></dfn> content
  attribute specified. The <code title="attr-tdth-headers"><a href="#attr-tdth-headers">headers</a></code> attribute, if specified,
  must contain a string consisting of an <a href="infrastructure.html#unordered-set-of-unique-space-separated-tokens">unordered set of unique
  space-separated tokens</a>, each of which must have the value of
  an ID of a <code><a href="#the-th-element">th</a></code> element taking part in the same <a href="#concept-table" title="concept-table">table</a> as the <code><a href="#the-td-element">td</a></code> or
  <code><a href="#the-th-element">th</a></code> element.</p><p>A <code><a href="#the-th-element">th</a></code> element with ID <var title="">id</var> is said
  to be <i>directly targeted</i> by all <code><a href="#the-td-element">td</a></code> and
  <code><a href="#the-th-element">th</a></code> elements in the same <a href="#concept-table" title="concept-table">table</a> that have <code title="attr-tdth-headers"><a href="#attr-tdth-headers">headers</a></code> attributes whose values
  include as one of their tokens the ID <var title="">id</var>. A
  <code><a href="#the-th-element">th</a></code> element <var title="">A</var> is said to be
  <i>targeted</i> by a <code><a href="#the-th-element">th</a></code> or <code><a href="#the-td-element">td</a></code> element
  <var title="">B</var> if either <var title="">A</var> is <i>directly
  targeted</i> by <var title="">B</var> or if there exists an element
  <var title="">C</var> that is itself <i>targeted</i> by the element
  <var title="">B</var> and <var title="">A</var> is <i>directly
  targeted</i> by <var title="">C</var>.</p><p>A <code><a href="#the-th-element">th</a></code> element must not be <i>targeted</i> by
  itself.</p><hr><p>The <code><a href="#the-td-element">td</a></code> and <code><a href="#the-th-element">th</a></code> elements implement
  interfaces that inherit from the <code><a href="#htmltablecellelement">HTMLTableCellElement</a></code>
  interface:</p><pre class="idl">interface <dfn id="htmltablecellelement">HTMLTableCellElement</dfn> : <a href="dom.html#htmlelement">HTMLElement</a> {
           attribute unsigned long <a href="#dom-tdth-colspan" title="dom-tdth-colSpan">colSpan</a>;
           attribute unsigned long <a href="#dom-tdth-rowspan" title="dom-tdth-rowSpan">rowSpan</a>;
           attribute DOMString <a href="#dom-tdth-headers" title="dom-tdth-headers">headers</a>;
  readonly attribute long <a href="#dom-tdth-cellindex" title="dom-tdth-cellIndex">cellIndex</a>;
};</pre><dl class="domintro"><dt><var title="">cell</var> . <code title="dom-tdth-cellIndex"><a href="#dom-tdth-cellindex">cellIndex</a></code></dt>

   <dd>

    <p>Returns the position of the cell in the row's <code title="dom-tr-cells"><a href="#dom-tr-cells">cells</a></code> list.</p>

    <p>Returns 0 if the element isn't in a row.</p>

   </dd>

  </dl></body></html>
--- NEW FILE: microdata.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>5 Microdata &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...2610 lines suppressed...]

   <p>This example shows an embedded image entitiled <cite>My
   Pond</cite>, licensed under the Creative Commons Attribution-Share
   Alike 3.0 United States License and the MIT license
   simultaneously.</p>

   <pre>&lt;figure <strong>item="work"</strong>&gt;
 &lt;img <strong>itemprop="about"</strong> src="mypond.jpeg"&gt;
 &lt;legend&gt;
  &lt;p&gt;&lt;cite <strong>itemprop="title"</strong>&gt;My Pond&lt;/cite&gt;&lt;/p&gt;
  &lt;p&gt;&lt;small&gt;Licensed under the &lt;a <strong>itemprop="license"</strong>
  href="http://creativecommons.org/licenses/by-sa/3.0/us/"&gt;Creative
  Commons Attribution-Share Alike 3.0 United States License&lt;/a&gt;
  and the &lt;a <strong>itemprop="license"</strong>
  href="http://www.opensource.org/licenses/mit-license.php"&gt;MIT
  license&lt;/a&gt;.&lt;/small&gt;
 &lt;/legend&gt;
&lt;/figure&gt;</pre>

  </div></body></html>
--- NEW FILE: Overview.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --></head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   <!--ZZZ:-->
   <h2 class="no-num no-toc" id="w3c-working-draft-25-august-2009">W3C Working Draft 25 August 2009</h2>
   <!--<h2 class="no-num no-toc">Editor's Draft 25 August 2009</h2>-->
   <!--:ZZZ-->
   <dl><!-- ZZZ: update the month/day (twice), (un)comment out--><dt>This Version:</dt>
    <dd><a href="http://www.w3.org/TR/2009/WD-html5-20090825/">http://www.w3.org/TR/2009/WD-html5-20090825/</a></dd>
<!-- :ZZZ -->
    <dt>Latest Published Version:</dt>
    <dd><a href="http://www.w3.org/TR/html5/">http://www.w3.org/TR/html5/</a></dd>
    <dt>Latest Editor's Draft:</dt>
    <dd><a href="http://www.w3.org/html/wg/html5/">http://www.w3.org/html/wg/html5/</a></dd>
<!-- ZZZ: add the new version after it has shipped -->
    <dt>Previous Versions:</dt>
    <dd><a href="http://www.w3.org/TR/2009/WD-html5-20090423/">http://www.w3.org/TR/2009/WD-html5-20090423/</a></dd>
    <dd><a href="http://www.w3.org/TR/2009/WD-html5-20090212/">http://www.w3.org/TR/2009/WD-html5-20090212/</a></dd>
    <dd><a href="http://www.w3.org/TR/2008/WD-html5-20080610/">http://www.w3.org/TR/2008/WD-html5-20080610/</a></dd>
    <dd><a href="http://www.w3.org/TR/2008/WD-html5-20080122/">http://www.w3.org/TR/2008/WD-html5-20080122/</a></dd>
<!-- :ZZZ -->
    <dt>Editors:</dt>
    <dd><a href="mailto:ian@hixie.ch">Ian Hickson</a>, Google, Inc.</dd>
    <dd>David Hyatt, Apple, Inc.</dd>
   </dl><p>This specification is available in the following formats: 
    <a href="Overview.html">single page HTML</a>,
    <a href="spec.html">multipage HTML</a>.
    This is $Revision: 1.1 $.
   </p>
   <p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a>
   &#169; 2009 <a href="http://www.w3.org/"><abbr title="World Wide
   Web Consortium">W3C</abbr></a><sup>&#174;</sup> (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts
   Institute of Technology">MIT</abbr></a>, <a href="http://www.ercim.org/"><abbr title="European Research
   Consortium for Informatics and Mathematics">ERCIM</abbr></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
   <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
   <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>
   and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document
   use</a> rules apply.</p>
  </div><hr class="top"><h2 class="no-num no-toc" id="abstract">Abstract</h2><p>This specification defines the 5th major revision of the core
  language of the World Wide Web: the Hypertext Markup Language
  (HTML). In this version, new features are introduced to help Web
  application authors, new elements are introduced based on research
  into prevailing authoring practices, and special attention has been
  given to defining clear conformance criteria for user agents in an
  effort to improve interoperability.</p><h2 class="no-num no-toc" id="status-of-this-document">Status of this document</h2><!-- intro boilerplate (required) --><p><em>This section describes the status of this document at the
  time of its publication. Other documents may supersede this
  document. A list of current W3C publications and the most recently
  formally published revision of this technical report can be found in
  the <a href="http://www.w3.org/TR/">W3C technical reports index</a>
  at http://www.w3.org/TR/.</em></p><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- XXX this section will be moved back to just below the copyright
  notice in the header by October 2009 unless the spec as a whole has
  been transitioned to a more permissive license by that time. --><!-- XXX when moving this text, add: class="alt copyright" --><p>The <a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/">WHATWG
  version</a> of this specification is available under a license that
  permits reuse of the specification text.</p><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- where to send feedback (required) --><p>If you wish to make comments regarding this document, please send
  them to <a href="mailto:public-html-comments@w3.org">public-html-comments@w3.org</a>
  (<a href="mailto:public-html-comments-request@w3.org?subject=subscribe">subscribe</a>,
  <a href="http://lists.w3.org/Archives/Public/public-html-comments/">archives</a>)

  <!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING SENTENCE TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST -->  
  or <a href="mailto:whatwg@whatwg.org">whatwg@whatwg.org</a> (<a href="http://lists.whatwg.org/listinfo.cgi/whatwg-whatwg.org">subscribe</a>,
  <a href="http://lists.whatwg.org/pipermail/whatwg-whatwg.org/">archives</a>),
  <!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING SENTENCE TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST -->

  or submit them using <a href="http://www.w3.org/Bugs/Public/enter_bug.cgi?product=HTML%20WG">our
  public bug database</a>.

  All feedback is welcome.</p><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><p>We maintain <a href="http://www.whatwg.org/issues/">a list of all
  e-mails that have not yet been considered</a> and <a href="http://www.w3.org/Bugs/Public/buglist.cgi?component=Spec%20bugs&amp;component=Spec%20proposals&amp;product=HTML%20WG&amp;resolution=NEEDSINFO&amp;resolution=LATER&amp;resolution=REMIND&amp;resolution=---&amp;order=bugs.resolution%2Cbugs.priority%2C%20bugs.bug_severity">a
  list of all bug reports that have not yet been resolved</a>.</p><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- stability (required) --><p>Implementors should be aware that this specification is not
  stable. <strong>Implementors who are not taking part in the
  discussions are likely to find the specification changing out from
  under them in incompatible ways.</strong> Vendors interested in
  implementing this specification before it eventually reaches the
  Candidate Recommendation stage should join the aforementioned
  mailing lists and take part in the discussions.</p><!-- not everyone agrees with html5 (requested before fpwd) --><p>The publication of this document by the W3C as a W3C Working
  Draft does not imply that all of the participants in the W3C HTML
  working group endorse the contents of the specification. Indeed, for
  any section of the specification, one can usually find many members
  of the working group or of the W3C as a whole who object strongly to
  the current text, the existence of the section at all, or the idea
  that the working group should even spend time discussing the concept
  of that section.</p><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- version history or list of changes (required) --><p>The latest stable version of the editor's draft of this
  specification is always available on <a href="http://dev.w3.org/html5/spec/Overview.html">the
  W3C CVS server</a> and in the <a href="http://svn.whatwg.org/webapps/">WHATWG Subversion
  repository</a>. The <a href="http://www.whatwg.org/specs/web-apps/current-work/">latest
  editor's working copy</a> (which may contain unfinished text in
  the process of being prepared) is also available.</p><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING LIST TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><p>There are various ways to follow the change history for the
  specification:</p><dl><dt>E-mail notifications of changes</dt>
   <dd>HTML-Diffs mailing list (diff-marked HTML versions for each change): <a href="http://lists.w3.org/Archives/Public/public-html-diffs/latest">http://lists.w3.org/Archives/Public/public-html-diffs/latest</a></dd>
   <dd>Commit-Watchers mailing list (complete source diffs): <a href="http://lists.whatwg.org/listinfo.cgi/commit-watchers-whatwg.org">http://lists.whatwg.org/listinfo.cgi/commit-watchers-whatwg.org</a></dd>
   <dt>Real-time notifications of changes:</dt>
   <dd>Generated diff-marked HTML versions for each change: <a href="http://twitter.com/HTML5">http://twitter.com/HTML5</a></dd>
   <dd>All (non-editorial) changes to the spec source: <a href="http://twitter.com/WHATWG">http://twitter.com/WHATWG</a></dd>
   <dt>Browsable version-control record of all changes:</dt>
   <dd>CVSWeb interface with side-by-side diffs: <a href="http://dev.w3.org/cvsweb/html5/spec/Overview.html">http://dev.w3.org/cvsweb/html5/spec/Overview.html</a></dd>
   <dd>Annotated summary with unified diffs: <a href="http://html5.org/tools/web-apps-tracker">http://html5.org/tools/web-apps-tracker</a></dd>
   <dd>Raw Subversion interface: <code>svn checkout http://svn.whatwg.org/webapps/</code></dd>
  </dl><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING LIST TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- status of document, group responsible (required) --><p>The W3C <a href="http://www.w3.org/html/wg/">HTML Working
  Group</a> is the W3C working group responsible for this
  specification's progress along the W3C Recommendation
  track.
  <!--ZZZ:-->
  This specification is the 25 August 2009 Working Draft.
  <!--This specification is the 25 August 2009 Editor's Draft.-->
  <!--:ZZZ-->
  </p><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- relationship to other work (required) --><p>This specification is also being produced by the <a href="http://www.whatwg.org/">WHATWG</a>. The two specifications are
  identical from the table of contents onwards.</p><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- UNDER NO CIRCUMSTANCES IS THE PRECEDING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- context and rationale (required) --><p>This specification is intended to replace (be a new version of)
  what was previously the HTML4, XHTML 1.0, and DOM2 HTML
  specifications.</p><!-- UNDER NO CIRCUMSTANCES IS THE FOLLOWING PARAGRAPH TO BE REMOVED OR EDITED WITHOUT TALKING TO IAN FIRST --><!-- required patent boilerplate --><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5
  February 2004 W3C Patent Policy</a>. W3C maintains a <a href="http://www.w3.org/2004/01/pp-impl/40318/status" rel="disclosure">public list of
  any patent disclosures</a> made in connection with the deliverables
  of the group; that page also includes instructions for disclosing a
  patent. An individual who has actual knowledge of a patent which the
  individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential
  Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section
  6 of the W3C Patent Policy</a>.</p><h3 class="no-num no-toc" id="stability-0">Stability</h3><p>Different parts of this specification are at different levels of
  maturity.</p><div id="stability"></div><h2 class="no-num no-toc" id="contents">Table of contents</h2>
<!--begin-toc-->
<ol class="toc"><li><a href="introduction.html#introduction"><span class="secno">1 </span>Introduction</a>
  <ol><li><a href="introduction.html#background"><span class="secno">1.1 </span>Background</a></li>
   <li><a href="introduction.html#audience"><span class="secno">1.2 </span>Audience</a></li>
   <li><a href="introduction.html#scope"><span class="secno">1.3 </span>Scope</a></li>
   <li><a href="introduction.html#history-1"><span class="secno">1.4 </span>History</a></li>
   <li><a href="introduction.html#design-notes"><span class="secno">1.5 </span>Design notes</a>
    <ol><li><a href="introduction.html#serializability-of-script-execution"><span class="secno">1.5.1 </span>Serializability of script execution</a></li>
     <li><a href="introduction.html#compliance-with-other-specifications"><span class="secno">1.5.2 </span>Compliance with other specifications</a></li></ol></li>
   <li><a href="introduction.html#relationships-to-other-specifications"><span class="secno">1.6 </span>Relationships to other specifications</a>
    <ol><li><a href="introduction.html#relationship-to-html-4.01-and-dom2-html"><span class="secno">1.6.1 </span>Relationship to HTML&#160;4.01 and DOM2 HTML</a></li>
     <li><a href="introduction.html#relationship-to-xhtml-1.x"><span class="secno">1.6.2 </span>Relationship to XHTML 1.x</a></li></ol></li>
   <li><a href="introduction.html#html-vs-xhtml"><span class="secno">1.7 </span>HTML vs XHTML</a></li>
   <li><a href="introduction.html#structure-of-this-specification"><span class="secno">1.8 </span>Structure of this specification</a>
    <ol><li><a href="introduction.html#how-to-read-this-specification"><span class="secno">1.8.1 </span>How to read this specification</a></li>
     <li><a href="introduction.html#typographic-conventions"><span class="secno">1.8.2 </span>Typographic conventions</a></li></ol></li>
   <li><a href="introduction.html#a-quick-introduction-to-html"><span class="secno">1.9 </span>A quick introduction to HTML</a></li></ol></li>
 <li><a href="infrastructure.html#infrastructure"><span class="secno">2 </span>Common infrastructure</a>
  <ol><li><a href="infrastructure.html#terminology"><span class="secno">2.1 </span>Terminology</a>
    <ol><li><a href="infrastructure.html#resources"><span class="secno">2.1.1 </span>Resources</a></li>
     <li><a href="infrastructure.html#xml"><span class="secno">2.1.2 </span>XML</a></li>
     <li><a href="infrastructure.html#dom-trees"><span class="secno">2.1.3 </span>DOM trees</a></li>
     <li><a href="infrastructure.html#scripting-0"><span class="secno">2.1.4 </span>Scripting</a></li>
     <li><a href="infrastructure.html#plugins"><span class="secno">2.1.5 </span>Plugins</a></li>
     <li><a href="infrastructure.html#character-encodings"><span class="secno">2.1.6 </span>Character encodings</a></li></ol></li>
   <li><a href="infrastructure.html#conformance-requirements"><span class="secno">2.2 </span>Conformance requirements</a></li>
   <li><a href="infrastructure.html#case-sensitivity-and-string-comparison"><span class="secno">2.3 </span>Case-sensitivity and string comparison</a></li>
   <li><a href="infrastructure.html#common-microsyntaxes"><span class="secno">2.4 </span>Common microsyntaxes</a>
    <ol><li><a href="infrastructure.html#boolean-attributes"><span class="secno">2.4.1 </span>Boolean attributes</a></li>
     <li><a href="infrastructure.html#keywords-and-enumerated-attributes"><span class="secno">2.4.2 </span>Keywords and enumerated attributes</a></li>
     <li><a href="infrastructure.html#numbers"><span class="secno">2.4.3 </span>Numbers</a>
      <ol><li><a href="infrastructure.html#non-negative-integers"><span class="secno">2.4.3.1 </span>Non-negative integers</a></li>
       <li><a href="infrastructure.html#signed-integers"><span class="secno">2.4.3.2 </span>Signed integers</a></li>
       <li><a href="infrastructure.html#real-numbers"><span class="secno">2.4.3.3 </span>Real numbers</a></li>
       <li><a href="infrastructure.html#ratios"><span class="secno">2.4.3.4 </span>Ratios</a></li>
       <li><a href="infrastructure.html#lists-of-integers"><span class="secno">2.4.3.5 </span>Lists of integers</a></li></ol></li>
     <li><a href="infrastructure.html#dates-and-times"><span class="secno">2.4.4 </span>Dates and times</a>
      <ol><li><a href="infrastructure.html#months"><span class="secno">2.4.4.1 </span>Months</a></li>
       <li><a href="infrastructure.html#dates"><span class="secno">2.4.4.2 </span>Dates</a></li>
       <li><a href="infrastructure.html#times"><span class="secno">2.4.4.3 </span>Times</a></li>
       <li><a href="infrastructure.html#local-dates-and-times"><span class="secno">2.4.4.4 </span>Local dates and times</a></li>
       <li><a href="infrastructure.html#global-dates-and-times"><span class="secno">2.4.4.5 </span>Global dates and times</a></li>
       <li><a href="infrastructure.html#weeks"><span class="secno">2.4.4.6 </span>Weeks</a></li>
       <li><a href="infrastructure.html#vaguer-moments-in-time"><span class="secno">2.4.4.7 </span>Vaguer moments in time</a></li></ol></li>
     <li><a href="infrastructure.html#colors"><span class="secno">2.4.5 </span>Colors</a></li>
     <li><a href="infrastructure.html#space-separated-tokens"><span class="secno">2.4.6 </span>Space-separated tokens</a></li>
     <li><a href="infrastructure.html#comma-separated-tokens"><span class="secno">2.4.7 </span>Comma-separated tokens</a></li>
     <li><a href="infrastructure.html#reversed-dns-identifiers"><span class="secno">2.4.8 </span>Reversed DNS identifiers</a></li>
     <li><a href="infrastructure.html#syntax-references"><span class="secno">2.4.9 </span>References</a></li></ol></li>
   <li><a href="infrastructure.html#urls"><span class="secno">2.5 </span>URLs</a>
    <ol><li><a href="infrastructure.html#terminology-0"><span class="secno">2.5.1 </span>Terminology</a></li>
     <li><a href="infrastructure.html#interfaces-for-url-manipulation"><span class="secno">2.5.2 </span>Interfaces for URL manipulation</a></li></ol></li>
   <li><a href="infrastructure.html#common-dom-interfaces"><span class="secno">2.6 </span>Common DOM interfaces</a>
    <ol><li><a href="infrastructure.html#reflecting-content-attributes-in-dom-attributes"><span class="secno">2.6.1 </span>Reflecting content attributes in DOM attributes</a></li>
     <li><a href="infrastructure.html#collections-0"><span class="secno">2.6.2 </span>Collections</a>
      <ol><li><a href="infrastructure.html#htmlcollection-0"><span class="secno">2.6.2.1 </span>HTMLCollection</a></li>
       <li><a href="infrastructure.html#htmlallcollection-0"><span class="secno">2.6.2.2 </span>HTMLAllCollection</a></li>
       <li><a href="infrastructure.html#htmlformcontrolscollection-0"><span class="secno">2.6.2.3 </span>HTMLFormControlsCollection</a></li>
       <li><a href="infrastructure.html#htmloptionscollection-0"><span class="secno">2.6.2.4 </span>HTMLOptionsCollection</a></li>
       <li><a href="infrastructure.html#htmlpropertycollection-0"><span class="secno">2.6.2.5 </span>HTMLPropertyCollection</a></li></ol></li>
     <li><a href="infrastructure.html#domtokenlist-0"><span class="secno">2.6.3 </span>DOMTokenList</a></li>
     <li><a href="infrastructure.html#domsettabletokenlist-0"><span class="secno">2.6.4 </span>DOMSettableTokenList</a></li>
     <li><a href="infrastructure.html#domstringmap-0"><span class="secno">2.6.5 </span>DOMStringMap</a></li>
     <li><a href="infrastructure.html#dom-feature-strings"><span class="secno">2.6.6 </span>DOM feature strings</a></li>
     <li><a href="infrastructure.html#exceptions"><span class="secno">2.6.7 </span>Exceptions</a></li></ol></li></ol></li>
 <li><a href="dom.html#dom"><span class="secno">3 </span>Semantics, structure, and APIs of HTML documents</a>
  <ol><li><a href="dom.html#documents"><span class="secno">3.1 </span>Documents</a>
    <ol><li><a href="dom.html#documents-in-the-dom"><span class="secno">3.1.1 </span>Documents in the DOM</a></li>
     <li><a href="dom.html#security"><span class="secno">3.1.2 </span>Security</a></li>
     <li><a href="dom.html#resource-metadata-management"><span class="secno">3.1.3 </span>Resource metadata management</a></li>
     <li><a href="dom.html#dom-tree-accessors"><span class="secno">3.1.4 </span>DOM tree accessors</a></li></ol></li>
   <li><a href="dom.html#elements"><span class="secno">3.2 </span>Elements</a>
    <ol><li><a href="dom.html#semantics-0"><span class="secno">3.2.1 </span>Semantics</a></li>
     <li><a href="dom.html#elements-in-the-dom"><span class="secno">3.2.2 </span>Elements in the DOM</a></li>
     <li><a href="dom.html#global-attributes"><span class="secno">3.2.3 </span>Global attributes</a>
      <ol><li><a href="dom.html#the-id-attribute"><span class="secno">3.2.3.1 </span>The <code>id</code> attribute</a></li>
       <li><a href="dom.html#the-title-attribute"><span class="secno">3.2.3.2 </span>The <code>title</code> attribute</a></li>
       <li><a href="dom.html#the-lang-and-xml:lang-attributes"><span class="secno">3.2.3.3 </span>The <code title="attr-lang">lang</code> and <code title="attr-xml-lang">xml:lang</code> attributes</a></li>
       <li><a href="dom.html#the-xml:base-attribute-xml-only"><span class="secno">3.2.3.4 </span>The <code>xml:base</code>
  attribute (XML only)</a></li>
       <li><a href="dom.html#the-dir-attribute"><span class="secno">3.2.3.5 </span>The <code>dir</code> attribute</a></li>
       <li><a href="dom.html#classes"><span class="secno">3.2.3.6 </span>The <code>class</code> attribute</a></li>
       <li><a href="dom.html#the-style-attribute"><span class="secno">3.2.3.7 </span>The <code>style</code> attribute</a></li>
       <li><a href="dom.html#embedding-custom-non-visible-data"><span class="secno">3.2.3.8 </span>Embedding custom non-visible data</a></li></ol></li>
     <li><a href="dom.html#element-definitions"><span class="secno">3.2.4 </span>Element definitions</a></li>
     <li><a href="dom.html#content-models"><span class="secno">3.2.5 </span>Content models</a>
      <ol><li><a href="dom.html#kinds-of-content"><span class="secno">3.2.5.1 </span>Kinds of content</a>
        <ol><li><a href="dom.html#metadata-content-0"><span class="secno">3.2.5.1.1 </span>Metadata content</a></li>
         <li><a href="dom.html#flow-content-0"><span class="secno">3.2.5.1.2 </span>Flow content</a></li>
         <li><a href="dom.html#sectioning-content-0"><span class="secno">3.2.5.1.3 </span>Sectioning content</a></li>
         <li><a href="dom.html#heading-content-0"><span class="secno">3.2.5.1.4 </span>Heading content</a></li>
         <li><a href="dom.html#phrasing-content-0"><span class="secno">3.2.5.1.5 </span>Phrasing content</a></li>
         <li><a href="embedded-content-0.html#embedded-content-0"><span class="secno">3.2.5.1.6 </span>Embedded content</a></li>
         <li><a href="embedded-content-0.html#interactive-content-0"><span class="secno">3.2.5.1.7 </span>Interactive content</a></li></ol></li>
       <li><a href="embedded-content-0.html#transparent-content-models"><span class="secno">3.2.5.2 </span>Transparent content models</a></li>
       <li><a href="embedded-content-0.html#paragraphs"><span class="secno">3.2.5.3 </span>Paragraphs</a></li></ol></li>
     <li><a href="embedded-content-0.html#annotations-for-assistive-technology-products"><span class="secno">3.2.6 </span>Annotations for assistive technology products</a></li></ol></li>
   <li><a href="embedded-content-0.html#apis-in-html-documents"><span class="secno">3.3 </span>APIs in HTML documents</a></li>
   <li><a href="embedded-content-0.html#dynamic-markup-insertion"><span class="secno">3.4 </span>Dynamic markup insertion</a>
    <ol><li><a href="embedded-content-0.html#controlling-the-input-stream"><span class="secno">3.4.1 </span>Controlling the input stream</a></li>
     <li><a href="embedded-content-0.html#document.write"><span class="secno">3.4.2 </span><code title="dom-document-write">document.write()</code></a></li>
     <li><a href="embedded-content-0.html#document.writeln"><span class="secno">3.4.3 </span><code title="dom-document-writeln">document.writeln()</code></a></li>
     <li><a href="embedded-content-0.html#innerhtml"><span class="secno">3.4.4 </span><code title="dom-innerHTML">innerHTML</code></a></li>
     <li><a href="embedded-content-0.html#outerhtml"><span class="secno">3.4.5 </span><code title="dom-outerHTML">outerHTML</code></a></li>
     <li><a href="embedded-content-0.html#insertadjacenthtml"><span class="secno">3.4.6 </span><code title="dom-insertAdjacentHTML">insertAdjacentHTML()</code></a></li></ol></li></ol></li>
 <li><a href="semantics.html#semantics"><span class="secno">4 </span>The elements of HTML</a>
  <ol><li><a href="semantics.html#the-root-element"><span class="secno">4.1 </span>The root element</a>
    <ol><li><a href="semantics.html#the-html-element-0"><span class="secno">4.1.1 </span>The <code>html</code> element</a></li></ol></li>
   <li><a href="semantics.html#document-metadata"><span class="secno">4.2 </span>Document metadata</a>
    <ol><li><a href="semantics.html#the-head-element-0"><span class="secno">4.2.1 </span>The <code>head</code> element</a></li>
     <li><a href="semantics.html#the-title-element-0"><span class="secno">4.2.2 </span>The <code>title</code> element</a></li>
     <li><a href="semantics.html#the-base-element"><span class="secno">4.2.3 </span>The <code>base</code> element</a></li>
     <li><a href="semantics.html#the-link-element"><span class="secno">4.2.4 </span>The <code>link</code> element</a></li>
     <li><a href="semantics.html#meta"><span class="secno">4.2.5 </span>The <code>meta</code> element</a>
      <ol><li><a href="semantics.html#standard-metadata-names"><span class="secno">4.2.5.1 </span>Standard metadata names</a></li>
       <li><a href="semantics.html#other-metadata-names"><span class="secno">4.2.5.2 </span>Other metadata names</a></li>
       <li><a href="semantics.html#pragma-directives"><span class="secno">4.2.5.3 </span>Pragma directives</a></li>
       <li><a href="semantics.html#other-pragma-directives"><span class="secno">4.2.5.4 </span>Other pragma directives</a></li>
       <li><a href="semantics.html#charset"><span class="secno">4.2.5.5 </span>Specifying the document's character encoding</a></li></ol></li>
     <li><a href="semantics.html#the-style-element"><span class="secno">4.2.6 </span>The <code>style</code> element</a></li>
     <li><a href="semantics.html#styling"><span class="secno">4.2.7 </span>Styling</a></li></ol></li>
   <li><a href="semantics.html#scripting-1"><span class="secno">4.3 </span>Scripting</a>
    <ol><li><a href="semantics.html#script"><span class="secno">4.3.1 </span>The <code>script</code> element</a>
      <ol><li><a href="semantics.html#scriptingLanguages"><span class="secno">4.3.1.1 </span>Scripting languages</a></li>
       <li><a href="semantics.html#inline-documentation-for-external-scripts"><span class="secno">4.3.1.2 </span>Inline documentation for external scripts</a></li></ol></li>
     <li><a href="semantics.html#the-noscript-element"><span class="secno">4.3.2 </span>The <code>noscript</code> element</a></li></ol></li>
   <li><a href="semantics.html#sections"><span class="secno">4.4 </span>Sections</a>
    <ol><li><a href="semantics.html#the-body-element-0"><span class="secno">4.4.1 </span>The <code>body</code> element</a></li>
     <li><a href="semantics.html#the-section-element"><span class="secno">4.4.2 </span>The <code>section</code> element</a></li>
     <li><a href="semantics.html#the-nav-element"><span class="secno">4.4.3 </span>The <code>nav</code> element</a></li>
     <li><a href="semantics.html#the-article-element"><span class="secno">4.4.4 </span>The <code>article</code> element</a></li>
     <li><a href="semantics.html#the-aside-element"><span class="secno">4.4.5 </span>The <code>aside</code> element</a></li>
     <li><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements"><span class="secno">4.4.6 </span>The <code>h1</code>, <code>h2</code>,
  <code>h3</code>, <code>h4</code>,
  <code>h5</code>, and <code>h6</code>
  elements</a></li>
     <li><a href="semantics.html#the-hgroup-element"><span class="secno">4.4.7 </span>The <code>hgroup</code> element</a></li>
     <li><a href="semantics.html#the-header-element"><span class="secno">4.4.8 </span>The <code>header</code> element</a></li>
     <li><a href="semantics.html#the-footer-element"><span class="secno">4.4.9 </span>The <code>footer</code> element</a></li>
     <li><a href="semantics.html#the-address-element"><span class="secno">4.4.10 </span>The <code>address</code> element</a></li>
     <li><a href="semantics.html#headings-and-sections"><span class="secno">4.4.11 </span>Headings and sections</a>
      <ol><li><a href="semantics.html#outlines"><span class="secno">4.4.11.1 </span>Creating an outline</a></li>
       <li><a href="semantics.html#distinguishing-site-wide-headings-from-page-headings"><span class="secno">4.4.11.2 </span>Distinguishing site-wide headings from page headings</a></li></ol></li></ol></li>
   <li><a href="semantics.html#grouping-content"><span class="secno">4.5 </span>Grouping content</a>
    <ol><li><a href="semantics.html#the-p-element"><span class="secno">4.5.1 </span>The <code>p</code> element</a></li>
     <li><a href="semantics.html#the-hr-element"><span class="secno">4.5.2 </span>The <code>hr</code> element</a></li>
     <li><a href="semantics.html#the-br-element"><span class="secno">4.5.3 </span>The <code>br</code> element</a></li>
     <li><a href="semantics.html#the-pre-element"><span class="secno">4.5.4 </span>The <code>pre</code> element</a></li>
     <li><a href="semantics.html#the-dialog-element"><span class="secno">4.5.5 </span>The <code>dialog</code> element</a></li>
     <li><a href="semantics.html#the-blockquote-element"><span class="secno">4.5.6 </span>The <code>blockquote</code> element</a></li>
     <li><a href="semantics.html#the-ol-element"><span class="secno">4.5.7 </span>The <code>ol</code> element</a></li>
     <li><a href="semantics.html#the-ul-element"><span class="secno">4.5.8 </span>The <code>ul</code> element</a></li>
     <li><a href="semantics.html#the-li-element"><span class="secno">4.5.9 </span>The <code>li</code> element</a></li>
     <li><a href="semantics.html#the-dl-element"><span class="secno">4.5.10 </span>The <code>dl</code> element</a></li>
     <li><a href="semantics.html#the-dt-element"><span class="secno">4.5.11 </span>The <code>dt</code> element</a></li>
     <li><a href="semantics.html#the-dd-element"><span class="secno">4.5.12 </span>The <code>dd</code> element</a></li>
     <li><a href="semantics.html#common-grouping-idioms"><span class="secno">4.5.13 </span>Common grouping idioms</a>
      <ol><li><a href="semantics.html#tag-clouds"><span class="secno">4.5.13.1 </span>Tag clouds</a></li></ol></li></ol></li>
   <li><a href="text-level-semantics.html#text-level-semantics"><span class="secno">4.6 </span>Text-level semantics</a>
    <ol><li><a href="text-level-semantics.html#the-a-element"><span class="secno">4.6.1 </span>The <code>a</code> element</a></li>
     <li><a href="text-level-semantics.html#the-em-element"><span class="secno">4.6.2 </span>The <code>em</code> element</a></li>
     <li><a href="text-level-semantics.html#the-strong-element"><span class="secno">4.6.3 </span>The <code>strong</code> element</a></li>
     <li><a href="text-level-semantics.html#the-small-element"><span class="secno">4.6.4 </span>The <code>small</code> element</a></li>
     <li><a href="text-level-semantics.html#the-cite-element"><span class="secno">4.6.5 </span>The <code>cite</code> element</a></li>
     <li><a href="text-level-semantics.html#the-q-element"><span class="secno">4.6.6 </span>The <code>q</code> element</a></li>
     <li><a href="text-level-semantics.html#the-dfn-element"><span class="secno">4.6.7 </span>The <code>dfn</code> element</a></li>
     <li><a href="text-level-semantics.html#the-abbr-element"><span class="secno">4.6.8 </span>The <code>abbr</code> element</a></li>
     <li><a href="text-level-semantics.html#the-code-element"><span class="secno">4.6.9 </span>The <code>code</code> element</a></li>
     <li><a href="text-level-semantics.html#the-var-element"><span class="secno">4.6.10 </span>The <code>var</code> element</a></li>
     <li><a href="text-level-semantics.html#the-samp-element"><span class="secno">4.6.11 </span>The <code>samp</code> element</a></li>
     <li><a href="text-level-semantics.html#the-kbd-element"><span class="secno">4.6.12 </span>The <code>kbd</code> element</a></li>
     <li><a href="text-level-semantics.html#the-sub-and-sup-elements"><span class="secno">4.6.13 </span>The <code>sub</code> and <code>sup</code> elements</a></li>
     <li><a href="text-level-semantics.html#the-i-element"><span class="secno">4.6.14 </span>The <code>i</code> element</a></li>
     <li><a href="text-level-semantics.html#the-b-element"><span class="secno">4.6.15 </span>The <code>b</code> element</a></li>
     <li><a href="text-level-semantics.html#the-mark-element"><span class="secno">4.6.16 </span>The <code>mark</code> element</a></li>
     <li><a href="text-level-semantics.html#the-progress-element"><span class="secno">4.6.17 </span>The <code>progress</code> element</a></li>
     <li><a href="text-level-semantics.html#the-meter-element"><span class="secno">4.6.18 </span>The <code>meter</code> element</a></li>
     <li><a href="text-level-semantics.html#the-time-element"><span class="secno">4.6.19 </span>The <code>time</code> element</a></li>
     <li><a href="text-level-semantics.html#the-ruby-element"><span class="secno">4.6.20 </span>The <code>ruby</code> element</a></li>
     <li><a href="text-level-semantics.html#the-rt-element"><span class="secno">4.6.21 </span>The <code>rt</code> element</a></li>
     <li><a href="text-level-semantics.html#the-rp-element"><span class="secno">4.6.22 </span>The <code>rp</code> element</a></li>
     <li><a href="text-level-semantics.html#the-bdo-element"><span class="secno">4.6.23 </span>The <code>bdo</code> element</a></li>
     <li><a href="text-level-semantics.html#the-span-element"><span class="secno">4.6.24 </span>The <code>span</code> element</a></li>
     <li><a href="text-level-semantics.html#usage-summary"><span class="secno">4.6.25 </span>Usage summary</a></li>
     <li><a href="text-level-semantics.html#footnotes"><span class="secno">4.6.26 </span>Footnotes</a></li></ol></li>
   <li><a href="text-level-semantics.html#edits"><span class="secno">4.7 </span>Edits</a>
    <ol><li><a href="text-level-semantics.html#the-ins-element"><span class="secno">4.7.1 </span>The <code>ins</code> element</a></li>
     <li><a href="text-level-semantics.html#the-del-element"><span class="secno">4.7.2 </span>The <code>del</code> element</a></li>
     <li><a href="text-level-semantics.html#attributes-common-to-ins-and-del-elements"><span class="secno">4.7.3 </span>Attributes common to <code>ins</code> and <code>del</code> elements</a></li>
     <li><a href="text-level-semantics.html#edits-and-paragraphs"><span class="secno">4.7.4 </span>Edits and paragraphs</a></li>
     <li><a href="text-level-semantics.html#edits-and-lists"><span class="secno">4.7.5 </span>Edits and lists</a></li></ol></li>
   <li><a href="text-level-semantics.html#embedded-content-1"><span class="secno">4.8 </span>Embedded content</a>
    <ol><li><a href="text-level-semantics.html#the-figure-element"><span class="secno">4.8.1 </span>The <code>figure</code> element</a></li>
     <li><a href="text-level-semantics.html#the-img-element"><span class="secno">4.8.2 </span>The <code>img</code> element</a>
      <ol><li><a href="text-level-semantics.html#alt"><span class="secno">4.8.2.1 </span>Requirements for providing text to act as an alternative for images</a>
        <ol><li><a href="text-level-semantics.html#a-link-or-button-containing-nothing-but-the-image"><span class="secno">4.8.2.1.1 </span>A link or button containing nothing but the image</a></li>
         <li><a href="text-level-semantics.html#a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts-diagrams-graphs-maps-illustrations"><span class="secno">4.8.2.1.2 </span>A phrase or paragraph with an alternative graphical representation: charts, diagrams, graphs, maps, illustrations</a></li>
         <li><a href="text-level-semantics.html#a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons-logos"><span class="secno">4.8.2.1.3 </span>A short phrase or label with an alternative graphical representation: icons, logos</a></li>
         <li><a href="text-level-semantics.html#text-that-has-been-rendered-to-a-graphic-for-typographical-effect"><span class="secno">4.8.2.1.4 </span>Text that has been rendered to a graphic for typographical effect</a></li>
         <li><a href="text-level-semantics.html#a-graphical-representation-of-some-of-the-surrounding-text"><span class="secno">4.8.2.1.5 </span>A graphical representation of some of the surrounding text</a></li>
         <li><a href="text-level-semantics.html#a-purely-decorative-image-that-doesn-t-add-any-information"><span class="secno">4.8.2.1.6 </span>A purely decorative image that doesn't add any information</a></li>
         <li><a href="text-level-semantics.html#a-group-of-images-that-form-a-single-larger-picture-with-no-links"><span class="secno">4.8.2.1.7 </span>A group of images that form a single larger picture with no links</a></li>
         <li><a href="text-level-semantics.html#a-group-of-images-that-form-a-single-larger-picture-with-links"><span class="secno">4.8.2.1.8 </span>A group of images that form a single larger picture with links</a></li>
         <li><a href="text-level-semantics.html#a-key-part-of-the-content"><span class="secno">4.8.2.1.9 </span>A key part of the content</a></li>
         <li><a href="text-level-semantics.html#an-image-not-intended-for-the-user"><span class="secno">4.8.2.1.10 </span>An image not intended for the user</a></li>
         <li><a href="text-level-semantics.html#an-image-in-an-e-mail-or-private-document-intended-for-a-specific-person-who-is-known-to-be-able-to-view-images"><span class="secno">4.8.2.1.11 </span>An image in an e-mail or private document intended for a specific person who is known to be able to view images</a></li>
         <li><a href="text-level-semantics.html#general-guidelines"><span class="secno">4.8.2.1.12 </span>General guidelines</a></li></ol></li></ol></li>
     <li><a href="text-level-semantics.html#the-iframe-element"><span class="secno">4.8.3 </span>The <code>iframe</code> element</a></li>
     <li><a href="text-level-semantics.html#the-embed-element"><span class="secno">4.8.4 </span>The <code>embed</code> element</a></li>
     <li><a href="text-level-semantics.html#the-object-element"><span class="secno">4.8.5 </span>The <code>object</code> element</a></li>
     <li><a href="text-level-semantics.html#the-param-element"><span class="secno">4.8.6 </span>The <code>param</code> element</a></li>
     <li><a href="video.html#video"><span class="secno">4.8.7 </span>The <code>video</code> element</a></li>
     <li><a href="video.html#audio"><span class="secno">4.8.8 </span>The <code>audio</code> element</a></li>
     <li><a href="video.html#the-source-element"><span class="secno">4.8.9 </span>The <code>source</code> element</a></li>
     <li><a href="video.html#media-elements"><span class="secno">4.8.10 </span>Media elements</a>
      <ol><li><a href="video.html#error-codes"><span class="secno">4.8.10.1 </span>Error codes</a></li>
       <li><a href="video.html#location-of-the-media-resource"><span class="secno">4.8.10.2 </span>Location of the media resource</a></li>
       <li><a href="video.html#mime-types"><span class="secno">4.8.10.3 </span>MIME types</a></li>
       <li><a href="video.html#network-states"><span class="secno">4.8.10.4 </span>Network states</a></li>
       <li><a href="video.html#loading-the-media-resource"><span class="secno">4.8.10.5 </span>Loading the media resource</a></li>
       <li><a href="video.html#offsets-into-the-media-resource"><span class="secno">4.8.10.6 </span>Offsets into the media resource</a></li>
       <li><a href="video.html#the-ready-states"><span class="secno">4.8.10.7 </span>The ready states</a></li>
       <li><a href="video.html#playing-the-media-resource"><span class="secno">4.8.10.8 </span>Playing the media resource</a></li>
       <li><a href="video.html#seeking"><span class="secno">4.8.10.9 </span>Seeking</a></li>
       <li><a href="video.html#user-interface"><span class="secno">4.8.10.10 </span>User interface</a></li>
       <li><a href="video.html#time-ranges"><span class="secno">4.8.10.11 </span>Time ranges</a></li>
       <li><a href="video.html#mediaevents"><span class="secno">4.8.10.12 </span>Event summary</a></li></ol></li>
     <li><a href="the-canvas-element.html#the-canvas-element"><span class="secno">4.8.11 </span>The <code>canvas</code> element</a>
      <ol><li><a href="the-canvas-element.html#the-2d-context"><span class="secno">4.8.11.1 </span>The 2D context</a>
        <ol><li><a href="the-canvas-element.html#the-canvas-state"><span class="secno">4.8.11.1.1 </span>The canvas state</a></li>
         <li><a href="the-canvas-element.html#transformations"><span class="secno">4.8.11.1.2 </span>Transformations</a></li>
         <li><a href="the-canvas-element.html#compositing"><span class="secno">4.8.11.1.3 </span>Compositing</a></li>
         <li><a href="the-canvas-element.html#colors-and-styles"><span class="secno">4.8.11.1.4 </span>Colors and styles</a></li>
         <li><a href="the-canvas-element.html#line-styles"><span class="secno">4.8.11.1.5 </span>Line styles</a></li>
         <li><a href="the-canvas-element.html#shadows"><span class="secno">4.8.11.1.6 </span>Shadows</a></li>
         <li><a href="the-canvas-element.html#simple-shapes-rectangles"><span class="secno">4.8.11.1.7 </span>Simple shapes (rectangles)</a></li>
         <li><a href="the-canvas-element.html#complex-shapes-paths"><span class="secno">4.8.11.1.8 </span>Complex shapes (paths)</a></li>
         <li><a href="the-canvas-element.html#text"><span class="secno">4.8.11.1.9 </span>Text</a></li>
         <li><a href="the-canvas-element.html#images"><span class="secno">4.8.11.1.10 </span>Images</a></li>
         <li><a href="the-canvas-element.html#pixel-manipulation"><span class="secno">4.8.11.1.11 </span>Pixel manipulation</a></li></ol></li></ol></li>
     <li><a href="the-canvas-element.html#the-map-element"><span class="secno">4.8.12 </span>The <code>map</code> element</a></li>
     <li><a href="the-canvas-element.html#the-area-element"><span class="secno">4.8.13 </span>The <code>area</code> element</a></li>
     <li><a href="the-canvas-element.html#image-maps"><span class="secno">4.8.14 </span>Image maps</a></li>
     <li><a href="the-canvas-element.html#mathml"><span class="secno">4.8.15 </span>MathML</a></li>
     <li><a href="the-canvas-element.html#svg-0"><span class="secno">4.8.16 </span>SVG</a></li>
     <li><a href="the-canvas-element.html#dimension-attributes"><span class="secno">4.8.17 </span>Dimension attributes</a></li></ol></li>
   <li><a href="tabular-data.html#tabular-data"><span class="secno">4.9 </span>Tabular data</a>
    <ol><li><a href="tabular-data.html#the-table-element"><span class="secno">4.9.1 </span>The <code>table</code> element</a></li>
     <li><a href="tabular-data.html#the-caption-element"><span class="secno">4.9.2 </span>The <code>caption</code> element</a></li>
     <li><a href="tabular-data.html#the-colgroup-element"><span class="secno">4.9.3 </span>The <code>colgroup</code> element</a></li>
     <li><a href="tabular-data.html#the-col-element"><span class="secno">4.9.4 </span>The <code>col</code> element</a></li>
     <li><a href="tabular-data.html#the-tbody-element"><span class="secno">4.9.5 </span>The <code>tbody</code> element</a></li>
     <li><a href="tabular-data.html#the-thead-element"><span class="secno">4.9.6 </span>The <code>thead</code> element</a></li>
     <li><a href="tabular-data.html#the-tfoot-element"><span class="secno">4.9.7 </span>The <code>tfoot</code> element</a></li>
     <li><a href="tabular-data.html#the-tr-element"><span class="secno">4.9.8 </span>The <code>tr</code> element</a></li>
     <li><a href="tabular-data.html#the-td-element"><span class="secno">4.9.9 </span>The <code>td</code> element</a></li>
     <li><a href="tabular-data.html#the-th-element"><span class="secno">4.9.10 </span>The <code>th</code> element</a></li>
     <li><a href="tabular-data.html#attributes-common-to-td-and-th-elements"><span class="secno">4.9.11 </span>Attributes common to <code>td</code> and <code>th</code> elements</a></li></ol></li>
   <li><a href="forms.html#forms"><span class="secno">4.10 </span>Forms</a>
    <ol><li><a href="forms.html#the-form-element"><span class="secno">4.10.1 </span>The <code>form</code> element</a></li>
     <li><a href="forms.html#the-fieldset-element"><span class="secno">4.10.2 </span>The <code>fieldset</code> element</a></li>
     <li><a href="forms.html#the-label-element"><span class="secno">4.10.3 </span>The <code>label</code> element</a></li>
     <li><a href="forms.html#the-input-element"><span class="secno">4.10.4 </span>The <code>input</code> element</a>
      <ol><li><a href="forms.html#states-of-the-type-attribute"><span class="secno">4.10.4.1 </span>States of the <code title="attr-input-type">type</code> attribute</a>
        <ol><li><a href="forms.html#hidden-state"><span class="secno">4.10.4.1.1 </span>Hidden state</a></li>
         <li><a href="forms.html#text-state-and-search-state"><span class="secno">4.10.4.1.2 </span>Text state and Search state</a></li>
         <li><a href="forms.html#telephone-state"><span class="secno">4.10.4.1.3 </span>Telephone state</a></li>
         <li><a href="forms.html#url-state"><span class="secno">4.10.4.1.4 </span>URL state</a></li>
         <li><a href="forms.html#e-mail-state"><span class="secno">4.10.4.1.5 </span>E-mail state</a></li>
         <li><a href="forms.html#password-state"><span class="secno">4.10.4.1.6 </span>Password state</a></li>
         <li><a href="forms.html#date-and-time-state"><span class="secno">4.10.4.1.7 </span>Date and Time state</a></li>
         <li><a href="forms.html#date-state"><span class="secno">4.10.4.1.8 </span>Date state</a></li>
         <li><a href="forms.html#month-state"><span class="secno">4.10.4.1.9 </span>Month state</a></li>
         <li><a href="forms.html#week-state"><span class="secno">4.10.4.1.10 </span>Week state</a></li>
         <li><a href="forms.html#time-state"><span class="secno">4.10.4.1.11 </span>Time state</a></li>
         <li><a href="forms.html#local-date-and-time-state"><span class="secno">4.10.4.1.12 </span>Local Date and Time state</a></li>
         <li><a href="forms.html#number-state"><span class="secno">4.10.4.1.13 </span>Number state</a></li>
         <li><a href="forms.html#range-state"><span class="secno">4.10.4.1.14 </span>Range state</a></li>
         <li><a href="forms.html#color-state"><span class="secno">4.10.4.1.15 </span>Color state</a></li>
         <li><a href="forms.html#checkbox-state"><span class="secno">4.10.4.1.16 </span>Checkbox state</a></li>
         <li><a href="forms.html#radio-button-state"><span class="secno">4.10.4.1.17 </span>Radio Button state</a></li>
         <li><a href="forms.html#file-upload-state"><span class="secno">4.10.4.1.18 </span>File Upload state</a></li>
         <li><a href="forms.html#submit-button-state"><span class="secno">4.10.4.1.19 </span>Submit Button state</a></li>
         <li><a href="forms.html#image-button-state"><span class="secno">4.10.4.1.20 </span>Image Button state</a></li>
         <li><a href="forms.html#reset-button-state"><span class="secno">4.10.4.1.21 </span>Reset Button state</a></li>
         <li><a href="forms.html#button-state"><span class="secno">4.10.4.1.22 </span>Button state</a></li></ol></li>
       <li><a href="forms.html#common-input-element-attributes"><span class="secno">4.10.4.2 </span>Common <code>input</code> element attributes</a>
        <ol><li><a href="forms.html#the-autocomplete-attribute"><span class="secno">4.10.4.2.1 </span>The <code title="attr-input-autocomplete">autocomplete</code> attribute</a></li>
         <li><a href="forms.html#the-list-attribute"><span class="secno">4.10.4.2.2 </span>The <code title="attr-input-list">list</code> attribute</a></li>
         <li><a href="forms.html#the-readonly-attribute"><span class="secno">4.10.4.2.3 </span>The <code title="attr-input-readonly">readonly</code> attribute</a></li>
         <li><a href="forms.html#the-size-attribute"><span class="secno">4.10.4.2.4 </span>The <code title="attr-input-size">size</code> attribute</a></li>
         <li><a href="forms.html#the-required-attribute"><span class="secno">4.10.4.2.5 </span>The <code title="attr-input-required">required</code> attribute</a></li>
         <li><a href="forms.html#the-multiple-attribute"><span class="secno">4.10.4.2.6 </span>The <code title="attr-input-multiple">multiple</code> attribute</a></li>
         <li><a href="forms.html#the-maxlength-attribute"><span class="secno">4.10.4.2.7 </span>The <code title="attr-input-maxlength">maxlength</code> attribute</a></li>
         <li><a href="forms.html#the-pattern-attribute"><span class="secno">4.10.4.2.8 </span>The <code title="attr-input-pattern">pattern</code> attribute</a></li>
         <li><a href="forms.html#the-min-and-max-attributes"><span class="secno">4.10.4.2.9 </span>The <code title="attr-input-min">min</code> and <code title="attr-input-max">max</code> attributes</a></li>
         <li><a href="forms.html#the-step-attribute"><span class="secno">4.10.4.2.10 </span>The <code title="attr-input-step">step</code> attribute</a></li>
         <li><a href="forms.html#the-placeholder-attribute"><span class="secno">4.10.4.2.11 </span>The <code title="attr-input-placeholder">placeholder</code> attribute</a></li></ol></li>
       <li><a href="forms.html#common-input-element-apis"><span class="secno">4.10.4.3 </span>Common <code>input</code> element APIs</a></li></ol></li>
     <li><a href="forms.html#the-button-element"><span class="secno">4.10.5 </span>The <code>button</code> element</a></li>
     <li><a href="forms.html#the-select-element"><span class="secno">4.10.6 </span>The <code>select</code> element</a></li>
     <li><a href="forms.html#the-datalist-element"><span class="secno">4.10.7 </span>The <code>datalist</code> element</a></li>
     <li><a href="forms.html#the-optgroup-element"><span class="secno">4.10.8 </span>The <code>optgroup</code> element</a></li>
     <li><a href="forms.html#the-option-element"><span class="secno">4.10.9 </span>The <code>option</code> element</a></li>
     <li><a href="forms.html#the-textarea-element"><span class="secno">4.10.10 </span>The <code>textarea</code> element</a></li>
     <li><a href="forms.html#the-keygen-element"><span class="secno">4.10.11 </span>The <code>keygen</code> element</a></li>
     <li><a href="forms.html#the-output-element"><span class="secno">4.10.12 </span>The <code>output</code> element</a></li>
     <li><a href="forms.html#association-of-controls-and-forms"><span class="secno">4.10.13 </span>Association of controls and forms</a></li>
     <li><a href="forms.html#attributes-common-to-form-controls"><span class="secno">4.10.14 </span>Attributes common to form controls</a>
      <ol><li><a href="forms.html#naming-form-controls"><span class="secno">4.10.14.1 </span>Naming form controls</a></li>
       <li><a href="forms.html#enabling-and-disabling-form-controls"><span class="secno">4.10.14.2 </span>Enabling and disabling form controls</a></li>
       <li><a href="forms.html#autofocusing-a-form-control"><span class="secno">4.10.14.3 </span>Autofocusing a form control</a></li>
       <li><a href="forms.html#limiting-user-input-length"><span class="secno">4.10.14.4 </span>Limiting user input length</a></li>
       <li><a href="forms.html#form-submission-0"><span class="secno">4.10.14.5 </span>Form submission</a></li></ol></li>
     <li><a href="forms.html#constraints"><span class="secno">4.10.15 </span>Constraints</a>
      <ol><li><a href="forms.html#definitions"><span class="secno">4.10.15.1 </span>Definitions</a></li>
       <li><a href="forms.html#the-constraint-validation-api"><span class="secno">4.10.15.2 </span>The constraint validation API</a></li></ol></li>
     <li><a href="forms.html#form-submission"><span class="secno">4.10.16 </span>Form submission</a></li></ol></li>
   <li><a href="interactive-elements.html#interactive-elements"><span class="secno">4.11 </span>Interactive elements</a>
    <ol><li><a href="interactive-elements.html#the-details-element"><span class="secno">4.11.1 </span>The <code>details</code> element</a></li>
     <li><a href="interactive-elements.html#the-command"><span class="secno">4.11.2 </span>The <code>command</code> element</a></li>
     <li><a href="interactive-elements.html#menus"><span class="secno">4.11.3 </span>The <code>menu</code> element</a>
      <ol><li><a href="interactive-elements.html#menus-intro"><span class="secno">4.11.3.1 </span>Introduction</a></li>
       <li><a href="interactive-elements.html#context-menus"><span class="secno">4.11.3.2 </span>Context menus</a></li></ol></li>
     <li><a href="interactive-elements.html#commands"><span class="secno">4.11.4 </span>Commands</a></li></ol></li>
   <li><a href="interactive-elements.html#miscellaneous-elements"><span class="secno">4.12 </span>Miscellaneous elements</a>
    <ol><li><a href="interactive-elements.html#the-legend-element"><span class="secno">4.12.1 </span>The <code>legend</code> element</a></li>
     <li><a href="interactive-elements.html#the-div-element"><span class="secno">4.12.2 </span>The <code>div</code> element</a></li></ol></li></ol></li>
 <li><a href="microdata.html#microdata"><span class="secno">5 </span>Microdata</a>
  <ol><li><a href="microdata.html#introduction-1"><span class="secno">5.1 </span>Introduction</a>
    <ol><li><a href="microdata.html#overview"><span class="secno">5.1.1 </span>Overview</a></li>
     <li><a href="microdata.html#the-basic-syntax"><span class="secno">5.1.2 </span>The basic syntax</a></li>
     <li><a href="microdata.html#typed-items"><span class="secno">5.1.3 </span>Typed items</a></li>
     <li><a href="microdata.html#selecting-names-when-defining-vocabularies"><span class="secno">5.1.4 </span>Selecting names when defining vocabularies</a></li>
     <li><a href="microdata.html#predefined-vocabularies"><span class="secno">5.1.5 </span>Predefined vocabularies</a></li>
     <li><a href="microdata.html#using-the-microdata-dom-api"><span class="secno">5.1.6 </span>Using the microdata DOM API</a></li></ol></li>
   <li><a href="microdata.html#encoding-microdata"><span class="secno">5.2 </span>Encoding microdata</a>
    <ol><li><a href="microdata.html#the-microdata-model"><span class="secno">5.2.1 </span>The microdata model</a></li>
     <li><a href="microdata.html#items:-the-item-attribute"><span class="secno">5.2.2 </span>Items: the <code>item</code> attribute</a></li>
     <li><a href="microdata.html#associating-names-with-items"><span class="secno">5.2.3 </span>Associating names with items</a></li>
     <li><a href="microdata.html#names:-the-itemprop-attribute"><span class="secno">5.2.4 </span>Names: the <code>itemprop</code> attribute</a></li>
     <li><a href="microdata.html#values"><span class="secno">5.2.5 </span>Values</a></li></ol></li>
   <li><a href="microdata.html#microdata-dom-api"><span class="secno">5.3 </span>Microdata DOM API</a></li>
   <li><a href="microdata.html#predefined-vocabularies-0"><span class="secno">5.4 </span>Predefined vocabularies</a>
    <ol><li><a href="microdata.html#general"><span class="secno">5.4.1 </span>General</a></li>
     <li><a href="microdata.html#vcard"><span class="secno">5.4.2 </span>vCard</a>
      <ol><li><a href="microdata.html#examples"><span class="secno">5.4.2.1 </span>Examples</a></li></ol></li>
     <li><a href="microdata.html#vevent"><span class="secno">5.4.3 </span>vEvent</a>
      <ol><li><a href="microdata.html#examples-0"><span class="secno">5.4.3.1 </span>Examples</a></li></ol></li>
     <li><a href="microdata.html#licensing-works"><span class="secno">5.4.4 </span>Licensing works</a>
      <ol><li><a href="microdata.html#examples-1"><span class="secno">5.4.4.1 </span>Examples</a></li></ol></li></ol></li></ol></li>
 <li><a href="browsers.html#browsers"><span class="secno">6 </span>Web browsers</a>
  <ol><li><a href="browsers.html#windows"><span class="secno">6.1 </span>Browsing contexts</a>
    <ol><li><a href="browsers.html#nested-browsing-contexts"><span class="secno">6.1.1 </span>Nested browsing contexts</a>
      <ol><li><a href="browsers.html#navigating-nested-browsing-contexts-in-the-dom"><span class="secno">6.1.1.1 </span>Navigating nested browsing contexts in the DOM</a></li></ol></li>
     <li><a href="browsers.html#auxiliary-browsing-contexts"><span class="secno">6.1.2 </span>Auxiliary browsing contexts</a>
      <ol><li><a href="browsers.html#navigating-auxiliary-browsing-contexts-in-the-dom"><span class="secno">6.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</a></li></ol></li>
     <li><a href="browsers.html#secondary-browsing-contexts"><span class="secno">6.1.3 </span>Secondary browsing contexts</a></li>
     <li><a href="browsers.html#browsing-context-names"><span class="secno">6.1.4 </span>Browsing context names</a></li></ol></li>
   <li><a href="browsers.html#the-window-object"><span class="secno">6.2 </span>The <code>Window</code> object</a>
    <ol><li><a href="browsers.html#apis-for-creating-and-navigating-browsing-contexts-by-name"><span class="secno">6.2.1 </span>APIs for creating and navigating browsing contexts by name</a></li>
     <li><a href="browsers.html#accessing-other-browsing-contexts"><span class="secno">6.2.2 </span>Accessing other browsing contexts</a></li>
     <li><a href="browsers.html#named-access-on-the-window-object"><span class="secno">6.2.3 </span>Named access on the <code>Window</code> object</a></li>
     <li><a href="browsers.html#browser-interface-elements"><span class="secno">6.2.4 </span>Browser interface elements</a></li>
     <li><a href="browsers.html#relaxing-the-same-origin-restriction"><span class="secno">6.2.5 </span>Relaxing the same-origin restriction</a></li></ol></li>
   <li><a href="browsers.html#scripting"><span class="secno">6.3 </span>Scripting</a>
    <ol><li><a href="browsers.html#introduction-2"><span class="secno">6.3.1 </span>Introduction</a></li>
     <li><a href="browsers.html#events"><span class="secno">6.3.2 </span>Events</a></li></ol></li>
   <li><a href="browsers.html#timers"><span class="secno">6.4 </span>Timers</a></li>
   <li><a href="browsers.html#user-prompts"><span class="secno">6.5 </span>User prompts</a>
    <ol><li><a href="browsers.html#simple-dialogs"><span class="secno">6.5.1 </span>Simple dialogs</a></li>
     <li><a href="browsers.html#printing"><span class="secno">6.5.2 </span>Printing</a></li>
     <li><a href="browsers.html#dialogs-implemented-using-separate-documents"><span class="secno">6.5.3 </span>Dialogs implemented using separate documents</a></li></ol></li>
   <li><a href="browsers.html#system-state-and-capabilities"><span class="secno">6.6 </span>System state and capabilities</a>
    <ol><li><a href="browsers.html#client-identification"><span class="secno">6.6.1 </span>Client identification</a></li>
     <li><a href="browsers.html#custom-handlers"><span class="secno">6.6.2 </span>Custom scheme and content handlers</a></li>
     <li><a href="browsers.html#manually-releasing-the-storage-mutex"><span class="secno">6.6.3 </span>Manually releasing the storage mutex</a></li></ol></li>
   <li><a href="offline.html#offline"><span class="secno">6.7 </span>Offline Web applications</a>
    <ol><li><a href="offline.html#introduction-3"><span class="secno">6.7.1 </span>Introduction</a>
      <ol><li><a href="offline.html#event-summary"><span class="secno">6.7.1.1 </span>Event summary</a></li></ol></li>
     <li><a href="offline.html#manifests"><span class="secno">6.7.2 </span>The cache manifest syntax</a>
      <ol><li><a href="offline.html#a-sample-manifest"><span class="secno">6.7.2.1 </span>A sample manifest</a></li>
       <li><a href="offline.html#writing-cache-manifests"><span class="secno">6.7.2.2 </span>Writing cache manifests</a></li></ol></li>
     <li><a href="offline.html#expiring-application-caches"><span class="secno">6.7.3 </span>Expiring application caches</a></li>
     <li><a href="offline.html#application-cache-api"><span class="secno">6.7.4 </span>Application cache API</a></li>
     <li><a href="offline.html#browser-state"><span class="secno">6.7.5 </span>Browser state</a></li></ol></li>
   <li><a href="history.html#history"><span class="secno">6.8 </span>Session history and navigation</a>
    <ol><li><a href="history.html#the-session-history-of-browsing-contexts"><span class="secno">6.8.1 </span>The session history of browsing contexts</a></li>
     <li><a href="history.html#the-history-interface"><span class="secno">6.8.2 </span>The <code>History</code> interface</a></li>
     <li><a href="history.html#activating-state-object-entries"><span class="secno">6.8.3 </span>Activating state object entries</a></li>
     <li><a href="history.html#the-location-interface"><span class="secno">6.8.4 </span>The <code>Location</code> interface</a></li></ol></li>
   <li><a href="history.html#browsing-the-web"><span class="secno">6.9 </span>Browsing the Web</a>
    <ol><li><a href="history.html#unloading-documents"><span class="secno">6.9.1 </span>Unloading documents</a></li></ol></li>
   <li><a href="history.html#links"><span class="secno">6.10 </span>Links</a>
    <ol><li><a href="history.html#hyperlink-elements"><span class="secno">6.10.1 </span>Hyperlink elements</a></li>
     <li><a href="history.html#linkTypes"><span class="secno">6.10.2 </span>Link types</a>
      <ol><li><a href="history.html#link-type-alternate"><span class="secno">6.10.2.1 </span>Link type "<code>alternate</code>"</a></li>
       <li><a href="history.html#link-type-archives"><span class="secno">6.10.2.2 </span>Link type "<code>archives</code>"</a></li>
       <li><a href="history.html#link-type-author"><span class="secno">6.10.2.3 </span>Link type "<code>author</code>"</a></li>
       <li><a href="history.html#link-type-bookmark"><span class="secno">6.10.2.4 </span>Link type "<code>bookmark</code>"</a></li>
       <li><a href="history.html#link-type-external"><span class="secno">6.10.2.5 </span>Link type "<code>external</code>"</a></li>
       <li><a href="history.html#link-type-feed"><span class="secno">6.10.2.6 </span>Link type "<code>feed</code>"</a></li>
       <li><a href="history.html#link-type-help"><span class="secno">6.10.2.7 </span>Link type "<code>help</code>"</a></li>
       <li><a href="history.html#rel-icon"><span class="secno">6.10.2.8 </span>Link type "<code>icon</code>"</a></li>
       <li><a href="history.html#link-type-license"><span class="secno">6.10.2.9 </span>Link type "<code>license</code>"</a></li>
       <li><a href="history.html#link-type-nofollow"><span class="secno">6.10.2.10 </span>Link type "<code>nofollow</code>"</a></li>
       <li><a href="history.html#link-type-noreferrer"><span class="secno">6.10.2.11 </span>Link type "<code>noreferrer</code>"</a></li>
       <li><a href="history.html#link-type-pingback"><span class="secno">6.10.2.12 </span>Link type "<code>pingback</code>"</a></li>
       <li><a href="history.html#link-type-prefetch"><span class="secno">6.10.2.13 </span>Link type "<code>prefetch</code>"</a></li>
       <li><a href="history.html#link-type-search"><span class="secno">6.10.2.14 </span>Link type "<code>search</code>"</a></li>
       <li><a href="history.html#link-type-stylesheet"><span class="secno">6.10.2.15 </span>Link type "<code>stylesheet</code>"</a></li>
       <li><a href="history.html#link-type-sidebar"><span class="secno">6.10.2.16 </span>Link type "<code>sidebar</code>"</a></li>
       <li><a href="history.html#link-type-tag"><span class="secno">6.10.2.17 </span>Link type "<code>tag</code>"</a></li>
       <li><a href="history.html#hierarchical-link-types"><span class="secno">6.10.2.18 </span>Hierarchical link types</a>
        <ol><li><a href="history.html#link-type-index"><span class="secno">6.10.2.18.1 </span>Link type "<code>index</code>"</a></li>
         <li><a href="history.html#link-type-up"><span class="secno">6.10.2.18.2 </span>Link type "<code>up</code>"</a></li></ol></li>
       <li><a href="history.html#sequential-link-types"><span class="secno">6.10.2.19 </span>Sequential link types</a>
        <ol><li><a href="history.html#link-type-first"><span class="secno">6.10.2.19.1 </span>Link type "<code>first</code>"</a></li>
         <li><a href="history.html#link-type-last"><span class="secno">6.10.2.19.2 </span>Link type "<code>last</code>"</a></li>
         <li><a href="history.html#link-type-next"><span class="secno">6.10.2.19.3 </span>Link type "<code>next</code>"</a></li>
         <li><a href="history.html#link-type-prev"><span class="secno">6.10.2.19.4 </span>Link type "<code>prev</code>"</a></li></ol></li>
       <li><a href="history.html#other-link-types"><span class="secno">6.10.2.20 </span>Other link types</a></li></ol></li></ol></li></ol></li>
 <li><a href="editing.html#editing"><span class="secno">7 </span>User Interaction</a>
  <ol><li><a href="editing.html#the-hidden-attribute"><span class="secno">7.1 </span>The <code>hidden</code> attribute</a></li>
   <li><a href="editing.html#activation"><span class="secno">7.2 </span>Activation</a></li>
   <li><a href="editing.html#scrolling-elements-into-view"><span class="secno">7.3 </span>Scrolling elements into view</a></li>
   <li><a href="editing.html#focus"><span class="secno">7.4 </span>Focus</a>
    <ol><li><a href="editing.html#sequential-focus-navigation"><span class="secno">7.4.1 </span>Sequential focus navigation</a></li>
     <li><a href="editing.html#document-level-focus-apis"><span class="secno">7.4.2 </span>Document-level focus APIs</a></li>
     <li><a href="editing.html#element-level-focus-apis"><span class="secno">7.4.3 </span>Element-level focus APIs</a></li></ol></li>
   <li><a href="editing.html#the-accesskey-attribute"><span class="secno">7.5 </span>The <code>accesskey</code> attribute</a></li>
   <li><a href="editing.html#selection"><span class="secno">7.6 </span>The text selection APIs</a>
    <ol><li><a href="editing.html#documentSelection"><span class="secno">7.6.1 </span>APIs for the browsing context selection</a></li>
     <li><a href="editing.html#textFieldSelection"><span class="secno">7.6.2 </span>APIs for the text field selections</a></li></ol></li>
   <li><a href="editing.html#contenteditable"><span class="secno">7.7 </span>The <code title="attr-contenteditable">contenteditable</code> attribute</a>
    <ol><li><a href="editing.html#making-entire-documents-editable"><span class="secno">7.7.1 </span>Making entire documents editable</a></li></ol></li>
   <li><a href="editing.html#spelling-and-grammar-checking"><span class="secno">7.8 </span>Spelling and grammar checking</a></li>
   <li><a href="editing.html#dnd"><span class="secno">7.9 </span>Drag and drop</a>
    <ol><li><a href="editing.html#introduction-4"><span class="secno">7.9.1 </span>Introduction</a></li>
     <li><a href="editing.html#the-dragevent-and-datatransfer-interfaces"><span class="secno">7.9.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
     <li><a href="editing.html#events-fired-during-a-drag-and-drop-action"><span class="secno">7.9.3 </span>Events fired during a drag-and-drop action</a></li>
     <li><a href="editing.html#the-draggable-attribute"><span class="secno">7.9.4 </span>The <code>draggable</code> attribute</a></li>
     <li><a href="editing.html#copy-and-paste"><span class="secno">7.9.5 </span>Copy and paste</a></li></ol></li>
   <li><a href="editing.html#undo"><span class="secno">7.10 </span>Undo history</a>
    <ol><li><a href="editing.html#introduction-5"><span class="secno">7.10.1 </span>Introduction</a></li>
     <li><a href="editing.html#the-undomanager-interface"><span class="secno">7.10.2 </span>The <code>UndoManager</code> interface</a></li>
     <li><a href="editing.html#the-undomanagerevent-interface-and-the-undo-and-redo-events"><span class="secno">7.10.3 </span>The <code>UndoManagerEvent</code> interface and the <code title="event-undo">undo</code> and <code title="event-redo">redo</code> events</a></li></ol></li>
   <li><a href="editing.html#editing-apis"><span class="secno">7.11 </span>Editing APIs</a></li></ol></li>
 <li><a href="comms.html#comms"><span class="secno">8 </span>Communication</a>
  <ol><li><a href="comms.html#event-definitions"><span class="secno">8.1 </span>Event definitions</a></li>
   <li><a href="comms.html#crossDocumentMessages"><span class="secno">8.2 </span>Cross-document messaging</a>
    <ol><li><a href="comms.html#introduction-6"><span class="secno">8.2.1 </span>Introduction</a></li>
     <li><a href="comms.html#security-4"><span class="secno">8.2.2 </span>Security</a></li>
     <li><a href="comms.html#posting-messages"><span class="secno">8.2.3 </span>Posting messages</a></li></ol></li>
   <li><a href="comms.html#channel-messaging"><span class="secno">8.3 </span>Channel messaging</a>
    <ol><li><a href="comms.html#introduction-7"><span class="secno">8.3.1 </span>Introduction</a></li>
     <li><a href="comms.html#message-channels"><span class="secno">8.3.2 </span>Message channels</a></li>
     <li><a href="comms.html#message-ports"><span class="secno">8.3.3 </span>Message ports</a>
      <ol><li><a href="comms.html#ports-and-garbage-collection"><span class="secno">8.3.3.1 </span>Ports and garbage collection</a></li></ol></li></ol></li></ol></li>
 <li><a href="syntax.html#syntax"><span class="secno">9 </span>The HTML syntax</a>
  <ol><li><a href="syntax.html#writing"><span class="secno">9.1 </span>Writing HTML documents</a>
    <ol><li><a href="syntax.html#the-doctype"><span class="secno">9.1.1 </span>The DOCTYPE</a></li>
     <li><a href="syntax.html#elements-0"><span class="secno">9.1.2 </span>Elements</a>
      <ol><li><a href="syntax.html#start-tags"><span class="secno">9.1.2.1 </span>Start tags</a></li>
       <li><a href="syntax.html#end-tags"><span class="secno">9.1.2.2 </span>End tags</a></li>
       <li><a href="syntax.html#attributes"><span class="secno">9.1.2.3 </span>Attributes</a></li>
       <li><a href="syntax.html#optional-tags"><span class="secno">9.1.2.4 </span>Optional tags</a></li>
       <li><a href="syntax.html#element-restrictions"><span class="secno">9.1.2.5 </span>Restrictions on content models</a></li>
       <li><a href="syntax.html#cdata-rcdata-restrictions"><span class="secno">9.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</a></li></ol></li>
     <li><a href="syntax.html#text-0"><span class="secno">9.1.3 </span>Text</a>
      <ol><li><a href="syntax.html#newlines"><span class="secno">9.1.3.1 </span>Newlines</a></li></ol></li>
     <li><a href="syntax.html#character-references"><span class="secno">9.1.4 </span>Character references</a></li>
     <li><a href="syntax.html#cdata-sections"><span class="secno">9.1.5 </span>CDATA sections</a></li>
     <li><a href="syntax.html#comments"><span class="secno">9.1.6 </span>Comments</a></li></ol></li>
   <li><a href="named-character-references.html#named-character-references"><span class="secno">9.2 </span>Named character references</a></li></ol></li>
 <li><a href="the-xhtml-syntax.html#the-xhtml-syntax"><span class="secno">10 </span>The XHTML syntax</a>
  <ol><li><a href="the-xhtml-syntax.html#selectors"><span class="secno">10.1 </span>Selectors</a></li></ol></li>
 <li><a href="obsolete.html#obsolete"><span class="secno">11 </span>Obsolete features</a>
  <ol><li><a href="obsolete.html#obsolete-but-conforming-features"><span class="secno">11.1 </span>Obsolete but conforming features</a></li>
   <li><a href="obsolete.html#non-conforming-features"><span class="secno">11.2 </span>Non-conforming features</a></li></ol></li>
 <li><a href="no.html#no"><span class="secno">12 </span>Things that you can't do with this specification because
  they are better handled using other technologies that are further
  described herein</a>
  <ol><li><a href="no.html#localization"><span class="secno">12.1 </span>Localization</a></li>
   <li><a href="no.html#declarative-3d-scenes"><span class="secno">12.2 </span>Declarative 3D scenes</a></li></ol></li>
 <li><a class="no-num" href="iana-considerations.html#iana-considerations">IANA considerations</a>
  <ol><li><a href="iana-considerations.html#text-html"><span class="secno">12.1 </span><code>text/html</code></a></li>
   <li><a href="iana-considerations.html#application-xhtml-xml"><span class="secno">12.2 </span><code>application/xhtml+xml</code></a></li>
   <li><a href="iana-considerations.html#text-cache-manifest"><span class="secno">12.3 </span><code>text/cache-manifest</code></a></li>
   <li><a href="iana-considerations.html#text-ping"><span class="secno">12.4 </span><code>text/ping</code></a></li>
   <li><a href="iana-considerations.html#application-microdata-json"><span class="secno">12.5 </span><code>application/microdata+json</code></a></li></ol></li>
 <li><a class="no-num" href="index.html#index">Index</a></li>
 <li><a class="no-num" href="references.html#references">References</a></li>
 <li><a class="no-num" href="acknowledgements.html#acknowledgements">Acknowledgements</a></li></ol><!--end-toc--></body></html>
--- NEW FILE: embedded-content-0.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>3.2.5.1.6 Embedded content &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="dom.html" title="3 Semantics, structure, and APIs of HTML documents" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="semantics.html" title="4 The elements of HTML" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="dom.html">&#8592; 3 Semantics, structure, and APIs of HTML documents</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="semantics.html">4 The elements of HTML &#8594;</a>
  </div>

  <h6 id="embedded-content-0"><span class="secno">3.2.5.1.6 </span>Embedded content</h6><p><dfn id="embedded-content">Embedded content</dfn> is content that imports another
  resource into the document, or content from another vocabulary that
  is inserted into the document.</p><ul class="brief category-list"><li><code><a href="video.html#audio">audio</a></code></li>
   <li><code><a href="the-canvas-element.html#the-canvas-element">canvas</a></code></li>
   <li><code><a href="text-level-semantics.html#the-embed-element">embed</a></code></li>
   <li><code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code></li>
   <li><code><a href="text-level-semantics.html#the-img-element">img</a></code></li>
   <li><code><a href="the-canvas-element.html#math">math</a></code></li>
   <li><code><a href="text-level-semantics.html#the-object-element">object</a></code></li>
   <li><code><a href="the-canvas-element.html#svg">svg</a></code></li>
   <li><code><a href="video.html#video">video</a></code></li>
  </ul><p>Elements that are from namespaces other than the <a href="#html-namespace-0">HTML
  namespace</a> and that convey content but not metadata, are
  <a href="#embedded-content">embedded content</a> for the purposes of the content models
  defined in this specification. (For example, MathML, or SVG.)</p><p>Some embedded content elements can have <dfn id="fallback-content">fallback
  content</dfn>: content that is to be used when the external resource
  cannot be used (e.g. because it is of an unsupported format). The
  element definitions state what the fallback is, if any.</p><h6 id="interactive-content-0"><span class="secno">3.2.5.1.7 </span>Interactive content</h6><!--
TESTS:
http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0A%3Cp%20tabindex%3D1%3Etest%20%3Ca%20href%3D%22%22%3E%20%3Cem%3Etest%3C/em%3E%20%3C/a%3E%0A%3Cscript%3E%0A%20function%20test%20%28e%29%20%7B%20w%28e.type%20+%20%27%20on%20%27%20+%20e.target.tagName%20+%20%27%20through%20%27%20+%20e.currentTarget.tagName%29%3B%20%7D%0A%20document.getElementsByTagName%28%27a%27%29%5B0%5D.addEventListener%28%27click%27%2C%20test%2C%20false%29%3B%0A%20document.getElementsByTagName%28%27a%27%29%5B0%5D.addEventListener%28%27DOMActivate%27%2C%20test%2C%20false%29%3B%0A%20document.getElementsByTagName%28%27p%27%29%5B0%5D.addEventListener%28%27click%27%2C%20test%2C%20false%29%3B%0A%20document.getElementsByTagName%28%27p%27%29%5B0%5D.addEventListener%28%27DOMActivate%27%2C%20test%2C%20false%29%3B%0A%3C/script%3E%0A
http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20HTML%3E%0A%3Ca%20href%3Dhttp%3A//google.com/%20target%3Da%3EA%3C/a%3E%3Ca%20href%3Dhttp%3A//yahoo.com/%20target%3Db%3EB%3C/a%3E%3Cbr%3E%0A%3Ciframe%20name%3Da%3E%3C/iframe%3E%3Ciframe%20name%3Db%3E%3C/iframe%3E%0A%3Cscript%3E%0A%20var%20a%20%3D%20document.getElementsByTagName%28%27a%27%29%5B0%5D%3B%0A%20var%20b%20%3D%20document.getElementsByTagName%28%27a%27%29%5B1%5D%3B%0A%20a.appendChild%28b%29%3B%0A%3C/script%3E
http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20HTML%3E%0A%3Cform%20action%3D%22http%3A//google.com/%22%20onsubmit%3D%22w%28%27onsubmit%27%29%22%3E%3Cem%3EA%3C/em%3E%3C/form%3E%0A%3Cscript%3E%0Adocument.getElementsByTagName%28%27form%27%29%5B0%5D.attachEvent%28%27onsubmit%27%2C%20function%20%28%29%20%7B%20w%28%27submit%20fired%27%29%20%7D%29%3B%0Adocument.getElementsByTagName%28%27form%27%29%5B0%5D.fireEvent%28%27onsubmit%27%29%3B%0A%3C/script%3E
http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20HTML%3E%0A%3Cform%20action%3D%22http%3A//google.com/%22%3EX%3C/form%3E%0A%3Cscript%3E%0Avar%20evt%20%3D%20document.createEvent%28%22Events%22%29%3B%0Aevt.initEvent%28%22submit%22%2C%20true%2C%20true%29%3B%0Adocument.getElementsByTagName%28%27form%27%29%5B0%5D.dispatchEvent%28evt%29%3B%0A%3C/script%3E
--><p><dfn id="interactive-content">Interactive content</dfn> is content that is specifically
  intended for user interaction.</p><ul class="brief category-list"><li><code><a href="text-level-semantics.html#the-a-element">a</a></code></li>
   <li><code><a href="video.html#audio">audio</a></code> (if the <code title="attr-media-controls"><a href="video.html#attr-media-controls">controls</a></code> attribute is present)</li>
   <li><code><a href="forms.html#the-button-element">button</a></code></li>
<!-- v2DATAGRID   <li><code>datagrid</code></li> -->
   <li><code><a href="interactive-elements.html#the-details-element">details</a></code></li>
   <li><code><a href="text-level-semantics.html#the-embed-element">embed</a></code></li>
   <li><code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code></li>
   <li><code><a href="text-level-semantics.html#the-img-element">img</a></code> (if the <code title="attr-hyperlink-usemap"><a href="the-canvas-element.html#attr-hyperlink-usemap">usemap</a></code> attribute is present)</li>
   <li><code><a href="forms.html#the-input-element">input</a></code> (if the <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute is <em>not</em> in the <a href="forms.html#hidden-state" title="attr-input-type-hidden">Hidden</a> state)</li>
   <li><code><a href="forms.html#the-keygen-element">keygen</a></code></li>
   <li><code><a href="forms.html#the-label-element">label</a></code></li>
   <li><code><a href="interactive-elements.html#menus">menu</a></code> (if the <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute is in the <a href="interactive-elements.html#tool-bar-state" title="tool bar state">tool bar</a> state)</li>
   <li><code><a href="text-level-semantics.html#the-object-element">object</a></code> (if the <code title="attr-hyperlink-usemap"><a href="the-canvas-element.html#attr-hyperlink-usemap">usemap</a></code> attribute is present)<!-- see also comment in <object> section --></li>
   <li><code><a href="forms.html#the-select-element">select</a></code></li>
   <li><code><a href="forms.html#the-textarea-element">textarea</a></code></li>
   <li><code><a href="video.html#video">video</a></code> (if the <code title="attr-media-controls"><a href="video.html#attr-media-controls">controls</a></code> attribute is present)</li>
  </ul><p>Certain elements in HTML have an <a href="#activation-behavior">activation
  behavior</a>, which means that the user can activate them. This
  triggers a sequence of events dependent on the activation mechanism,
  and normally culminating in a <code title="event-click">click</code>
  event followed by a <code title="event-DOMActivate">DOMActivate</code> event.</p><h5 id="transparent-content-models"><span class="secno">3.2.5.2 </span>Transparent content models</h5><p>Some elements are described as <dfn id="transparent">transparent</dfn>; they have
  "transparent" in the description of their content model.</p><p>When a content model includes a part that is "transparent", those
  parts must not contain content that would not be conformant if all
  transparent elements in the tree were replaced, in their parent
  element, by the children in the "transparent" part of their content
  model, retaining order.</p><p>When a transparent element has no parent, then the part of its
  content model that is "transparent" must instead be treated as
  accepting any <a href="dom.html#flow-content">flow content</a>.</p><h5 id="paragraphs"><span class="secno">3.2.5.3 </span>Paragraphs</h5><p class="note">The term <a href="#paragraph">paragraph</a> as defined in this
  section is distinct from (though related to) the <code><a href="semantics.html#the-p-element">p</a></code>
  element defined later. The <a href="#paragraph">paragraph</a> concept defined
  here is used to describe how to interpret documents.</p><p>A <dfn id="paragraph">paragraph</dfn> is typically a run of <a href="dom.html#phrasing-content">phrasing
  content</a> that forms a block of text with one or more sentences
  that discuss a particular topic, as in typography, but can also be
  used for more general thematic grouping. For instance, an address is
  also a paragraph, as is a part of a form, a byline, or a stanza in a
  poem.</p><div class="example">

   <p>In the following example, there are two paragraphs in a
   section. There is also a heading, which contains phrasing content
   that is not a paragraph. Note how the comments and
   <a href="dom.html#inter-element-whitespace">inter-element whitespace</a> do not form paragraphs.</p>

   <pre>&lt;section&gt;
  &lt;h1&gt;Example of paragraphs&lt;/h1&gt;
  This is the &lt;em&gt;first&lt;/em&gt; paragraph in this example.
  &lt;p&gt;This is the second.&lt;/p&gt;
  &lt;!-- This is not a paragraph. --&gt;
&lt;/section&gt;</pre>

  </div><p>Paragraphs in <a href="dom.html#flow-content">flow content</a> are defined relative to
  what the document looks like without the <code><a href="text-level-semantics.html#the-a-element">a</a></code>,
  <code><a href="text-level-semantics.html#the-ins-element">ins</a></code>, <code><a href="text-level-semantics.html#the-del-element">del</a></code>, and <code><a href="the-canvas-element.html#the-map-element">map</a></code> elements
  complicating matters, since those elements, with their hybrid
  content models, can straddle paragraph boundaries, as shown in the
  first two examples below.</p><p class="note">Generally, having elements straddle paragraph
  boundaries is best avoided. Maintaining such markup can be
  difficult.</p><div class="example">

   <p>The following example takes the markup from the earlier example
   and puts <code><a href="text-level-semantics.html#the-ins-element">ins</a></code> and <code><a href="text-level-semantics.html#the-del-element">del</a></code> elements around some
   of the markup to show that the text was changed (though in this
   case, the changes admittedly don't make much sense). Notice how
   this example has exactly the same paragraphs as the previous one,
   despite the <code><a href="text-level-semantics.html#the-ins-element">ins</a></code> and <code><a href="text-level-semantics.html#the-del-element">del</a></code> elements &#8212;
   the <code><a href="text-level-semantics.html#the-ins-element">ins</a></code> element straddles the heading and the first
   paragraph, and the <code><a href="text-level-semantics.html#the-del-element">del</a></code> element straddles the boundary
   between the two paragraphs.</p>

   <pre>&lt;section&gt;
  &lt;ins&gt;&lt;h1&gt;Example of paragraphs&lt;/h1&gt;
  This is the &lt;em&gt;first&lt;/em&gt; paragraph in&lt;/ins&gt; this example&lt;del&gt;.
  &lt;p&gt;This is the second.&lt;/p&gt;&lt;/del&gt;
  &lt;!-- This is not a paragraph. --&gt;
&lt;/section&gt;</pre>

  </div><p>A <a href="#paragraph">paragraph</a> is also formed explicitly by
  <code><a href="semantics.html#the-p-element">p</a></code> elements.</p><p class="note">The <code><a href="semantics.html#the-p-element">p</a></code> element can be used to wrap
  individual paragraphs when there would otherwise not be any content
  other than phrasing content to separate the paragraphs from each
  other.</p><div class="example">

   <p>In the following example, the link spans half of the first
   paragraph, all of the heading separating the two paragraphs, and
   half of the second paragraph. It straddles the paragraphs and the
   heading.</p>

   <pre>&lt;aside&gt;
 Welcome!
 &lt;a href="about.html"&gt;
  This is home of...
  &lt;h1&gt;The Falcons!&lt;/h1&gt;
  The Lockheed Martin multirole jet fighter aircraft!
 &lt;/a&gt;
 This page discusses the F-16 Fighting Falcon's innermost secrets.
&lt;/aside&gt;</pre>

   <p>Here is another way of marking this up, this time showing the
   paragraphs explicitly, and splitting the one link element into
   three:</p>

   <pre>&lt;aside&gt;
 &lt;p&gt;Welcome! &lt;a href="about.html"&gt;This is home of...&lt;/a&gt;&lt;/p&gt;
 &lt;h1&gt;&lt;a href="about.html"&gt;The Falcons!&lt;/a&gt;&lt;/h1&gt;
 &lt;p&gt;&lt;a href="about.html"&gt;The Lockheed Martin multirole jet
 fighter aircraft!&lt;/a&gt; This page discusses the F-16 Fighting
 Falcon's innermost secrets.&lt;/p&gt;
&lt;/aside&gt;</pre>

  </div><div class="example">

   <!-- I don't know if there's a better way to deal with this, but if
   there is, let me know... -->

   <p>It is possible for paragraphs to overlap when using certain
   elements that define fallback content. For example, in the
   following section:</p>

   <pre>&lt;section&gt;
 &lt;h1&gt;My Cats&lt;/h1&gt;
 You can play with my cat simulator.
 &lt;object data="cats.sim"&gt;
  To see the cat simulator, use one of the following links:
  &lt;ul&gt;
   &lt;li&gt;&lt;a href="cats.sim"&gt;Download simulator file&lt;/a&gt;
   &lt;li&gt;&lt;a href="http://sims.example.com/watch?v=LYds5xY4INU"&gt;Use online simulator&lt;/a&gt;
  &lt;/ul&gt;
  Alternatively, upgrade to the Mellblom Browser.
 &lt;/object&gt;
 I'm quite proud of it.
&lt;/section&gt;</pre>

   <p>There are five paragraphs:</p>

   <ol class="brief"><li>The paragraph that says "You can play with my cat
    simulator. <i title="">object</i> I'm quite proud of it.", where
    <i title="">object</i> is the <code><a href="text-level-semantics.html#the-object-element">object</a></code> element.</li>

    <li>The paragraph that says "To see the cat simulator, use one of
    the following links:".</li>

    <li>The paragraph that says "Download simulator file".</li>

    <li>The paragraph that says "Use online simulator".</li>

    <li>The paragraph that says "Alternatively, upgrade to the Mellblom Browser.".</li>

   </ol><p>The first paragraph is overlapped by the other four. A user
   agent that supports the "cats.sim" resource will only show the
   first one, but a user agent that shows the fallback will
   confusingly show the first sentence of the first paragraph as
   if it was in the same paragraph as the second one, and will show
   the last paragraph as if it was at the start of the second sentence
   of the first paragraph.</p>

   <p>To avoid this confusion, explicit <code><a href="semantics.html#the-p-element">p</a></code> elements can be
   used.</p>

  </div><h4 id="annotations-for-assistive-technology-products"><span class="secno">3.2.6 </span><dfn>Annotations for assistive technology products</dfn></h4><p class="XXX annotation"><b>Status: </b><i>First draft. </i><span><a href="http://www.w3.org/html/wg/tracker/issues/35">ISSUE-35</a> (aria-processing) and <a href="http://www.w3.org/html/wg/tracker/issues/14">ISSUE-14</a> (aria-role) block progress to Last Call</span></p><p>Authors may use the ARIA <code title="attr-aria-role">role</code>
  and <code title="attr-aria-*">aria-*</code> attributes on <a href="infrastructure.html#html-elements">HTML
  elements</a>, in accordance with the requirements described in
  the ARIA specifications, except where these conflict with the
  <span>strong native semantics</span> described below. These
  exceptions are intended to prevent authors from making assistive
  technology products report nonsensical states that do not represent
  the actual state of the document. <a href="references.html#refsARIA">[ARIA]</a></p><p>The following table defines the <span>strong native
  semantics</span>  that apply to <a href="infrastructure.html#html-elements">HTML
  elements</a>. Each language feature (element or attribute) in a
  cell in the first column implies the ARIA semantics (role, states,
  and/or properties) given in the cell in the second column of the
  same row. Authors must not set the ARIA <code title="attr-aria-role">role</code> and <code title="attr-aria-*">aria-*</code> attributes in a manner that
  conflicts with the semantics described in the following table. </p><table><thead><tr><th>Language feature
     </th><th>Strong native semantics and implied ARIA semantics</th></tr></thead><tbody><tr><td><code><a href="text-level-semantics.html#the-a-element">a</a></code> element that represents a <a href="history.html#hyperlink">hyperlink</a>
     </td><td><code title="attr-aria-role-link">link</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-address-element">address</a></code> element
     </td><td><code title="attr-aria-role-contentinfo">contentinfo</code> role

    </td></tr><tr><td><code><a href="the-canvas-element.html#the-area-element">area</a></code> element that represents a <a href="history.html#hyperlink">hyperlink</a>
     </td><td><code title="attr-aria-role-link">link</code> role

    </td></tr><tr><td><code><a href="forms.html#the-button-element">button</a></code> element
     </td><td><code title="attr-aria-role-button">button</code> role

    </td></tr><tr><td><code><a href="forms.html#the-datalist-element">datalist</a></code> element
     </td><td><code title="attr-aria-role-listbox">listbox</code> role, with the <code title="attr-aria-multiselectable">aria-multiselectable</code> property set to "false"

    </td></tr><tr><td><code><a href="semantics.html#the-footer-element">footer</a></code> element
     </td><td><code title="attr-aria-role-contentinfo">contentinfo</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code> element that does not have an <code><a href="semantics.html#the-hgroup-element">hgroup</a></code> ancestor
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h2</a></code> element that does not have an <code><a href="semantics.html#the-hgroup-element">hgroup</a></code> ancestor
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h3</a></code> element that does not have an <code><a href="semantics.html#the-hgroup-element">hgroup</a></code> ancestor
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h4</a></code> element that does not have an <code><a href="semantics.html#the-hgroup-element">hgroup</a></code> ancestor
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h5</a></code> element that does not have an <code><a href="semantics.html#the-hgroup-element">hgroup</a></code> ancestor
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h6</a></code> element that does not have an <code><a href="semantics.html#the-hgroup-element">hgroup</a></code> ancestor
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-header-element">header</a></code> element
     </td><td><code title="attr-aria-role-banner">banner</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-hgroup-element">hgroup</a></code> element
     </td><td><code title="attr-aria-role-heading">heading</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-hr-element">hr</a></code> element
     </td><td><code title="attr-aria-role-separator">separator</code> role

    </td></tr><tr><td><code><a href="text-level-semantics.html#the-img-element">img</a></code> element whose <code title="attr-img-alt"><a href="text-level-semantics.html#attr-img-alt">alt</a></code> attribute's value is empty
     </td><td><code title="attr-aria-role-presentation">presentation</code> role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#button-state" title="attr-input-type-button">Button</a> state
     </td><td><code title="attr-aria-role-button">button</code> role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#checkbox-state" title="attr-input-type-checkbox">Checkbox</a> state
     </td><td><code title="attr-aria-role-checkbox">checkbox</code> role, with the <code title="attr-aria-checked">aria-checked</code> state set to "mixed" if the element's <code title="dom-input-indeterminate"><a href="#dom-input-indeterminate">indeterminate</a></code> DOM attribute is true, or "true" if the element's <a href="#concept-fe-checked" title="concept-fe-checked">checkedness</a> is true, or "false" otherwise

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#color-state" title="attr-input-type-color">Color</a> state
     </td><td>No role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#date-state" title="attr-input-type-date">Date</a> state
     </td><td>No role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#date-and-time-state" title="attr-input-type-datetime">Date and Time</a> state
     </td><td>No role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#local-date-and-time-state" title="attr-input-type-datetime-local">Local Date and Time</a> state
     </td><td>No role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#e-mail-state" title="attr-input-type-email">E-mail</a> state with no <a href="#concept-input-list" title="concept-input-list">suggestions source element</a>
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#file-upload-state" title="attr-input-type-file">File Upload</a> state
     </td><td><code title="attr-aria-role-button">button</code> role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#hidden-state" title="attr-input-type-hidden">Hidden</a> state
     </td><td>No role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#image-button-state" title="attr-input-type-image">Image Button</a> state
     </td><td><code title="attr-aria-role-button">button</code> role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#month-state" title="attr-input-type-month">Month</a> state
     </td><td>No role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#number-state" title="attr-input-type-number">Number</a> state
     </td><td><code title="attr-aria-role-spinbutton">spinbutton</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute, the <code title="attr-aria-valuemax">aria-valuemax</code> property set to the element's <a href="#concept-input-max" title="concept-input-max">maximum</a>, the <code title="attr-aria-valuemin">aria-valuemin</code> property set to the element's <a href="#concept-input-min" title="concept-input-min">minimum</a>, and, if the result of applying the <a href="#rules-for-parsing-floating-point-number-values">rules for parsing floating point number values</a> to the element's <a href="#concept-fe-value" title="concept-fe-value">value</a> is a number, with the <code title="attr-aria-valuenow">aria-valuenow</code> property set to that number

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#password-state" title="attr-input-type-password">Password</a> state
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#radio-button-state" title="attr-input-type-radio">Radio Button</a> state
     </td><td><code title="attr-aria-role-radio">radio</code> role, with the <code title="attr-aria-checked">aria-checked</code> state set to "true" if the element's <a href="#concept-fe-checked" title="concept-fe-checked">checkedness</a> is true, or "false" otherwise

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#range-state" title="attr-input-type-range">Range</a> state
     </td><td><code title="attr-aria-role-slider">slider</code> role, with the <code title="attr-aria-valuemax">aria-valuemax</code> property set to the element's <a href="#concept-input-max" title="concept-input-max">maximum</a>, the <code title="attr-aria-valuemin">aria-valuemin</code> property set to the element's <a href="#concept-input-min" title="concept-input-min">minimum</a>, and the <code title="attr-aria-valuenow">aria-valuenow</code> property set to the result of applying the <a href="#rules-for-parsing-floating-point-number-values">rules for parsing floating point number values</a> to the element's <a href="#concept-fe-value" title="concept-fe-value">value</a>, if that that results in a number, or the <a href="forms.html#concept-input-value-default-range" title="concept-input-value-default-range">default value</a> otherwise

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#reset-button-state" title="attr-input-type-reset">Reset Button</a> state
     </td><td><code title="attr-aria-role-button">button</code> role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#text-state-and-search-state" title="attr-input-type-search">Search</a> state with no <a href="#concept-input-list" title="concept-input-list">suggestions source element</a>
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#submit-button-state" title="attr-input-type-submit">Submit Button</a> state
     </td><td><code title="attr-aria-role-button">button</code> role

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#telephone-state" title="attr-input-type-tel">Telephone</a> state with no <a href="#concept-input-list" title="concept-input-list">suggestions source element</a>
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#text-state-and-search-state" title="attr-input-type-text">Text</a> state with no <a href="#concept-input-list" title="concept-input-list">suggestions source element</a>
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#text-state-and-search-state" title="attr-input-type-text">Text</a>, <a href="forms.html#text-state-and-search-state" title="attr-input-type-search">Search</a>, <a href="forms.html#telephone-state" title="attr-input-type-tel">Telephone</a>, <a href="forms.html#url-state" title="attr-input-type-url">URL</a>, or <a href="forms.html#e-mail-state" title="attr-input-type-email">E-mail</a> states with a <a href="#concept-input-list" title="concept-input-list">suggestions source element</a>
     </td><td><code title="attr-aria-role-combobox">combobox</code> role, with the <code title="attr-aria-owns">aria-owns</code> property set to the same value as the <code title="attr-input-list"><a href="forms.html#attr-input-list">list</a></code> attribute, and the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#time-state" title="attr-input-type-time">Time</a> state
     </td><td>No role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#url-state" title="attr-input-type-url">URL</a> state with no <a href="#concept-input-list" title="concept-input-list">suggestions source element</a>
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="forms.html#the-input-element">input</a></code> element with a <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute in the <a href="forms.html#week-state" title="attr-input-type-week">Week</a> state
     </td><td>No role, with the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-input-readonly"><a href="forms.html#attr-input-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="semantics.html#the-link-element">link</a></code> element that represents a <a href="history.html#hyperlink">hyperlink</a>
     </td><td><code title="attr-aria-role-link">link</code> role

    </td></tr><tr><td><code><a href="interactive-elements.html#menus">menu</a></code> element with a <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute in the <a href="interactive-elements.html#context-menu-state" title="context menu state">context menu</a> state
     </td><td>No role

    </td></tr><tr><td><code><a href="interactive-elements.html#menus">menu</a></code> element with a <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute in the <a href="interactive-elements.html#list-state" title="list state">list</a> state
     </td><td><code title="attr-aria-role-menu">menu</code> role

    </td></tr><tr><td><code><a href="interactive-elements.html#menus">menu</a></code> element with a <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute in the <a href="interactive-elements.html#tool-bar-state" title="tool bar state">tool bar</a> state
     </td><td><code title="attr-aria-role-toolbar">toolbar</code> role

    </td></tr><tr><td><code><a href="semantics.html#the-nav-element">nav</a></code> element
     </td><td><code title="attr-aria-role-navigation">navigation</code> role

    </td></tr><tr><td><code><a href="forms.html#the-option-element">option</a></code> element that is in a <a href="forms.html#concept-select-option-list" title="concept-select-option-list">list of options</a> or that represents a suggestion in a <code><a href="forms.html#the-datalist-element">datalist</a></code> element
     </td><td><code title="attr-aria-role-option">option</code> role, with the <code title="attr-aria-selected">aria-selected</code> state set to "true" if the element's <a href="#concept-option-selectedness" title="concept-option-selectedness">selectedness</a> is true, or "false" otherwise.

    </td></tr><tr><td><code><a href="text-level-semantics.html#the-progress-element">progress</a></code> element
     </td><td><code title="attr-aria-role-progressbar">progressbar</code> role, with, if the progress bar is determinate, the <code title="attr-aria-valuemax">aria-valuemax</code> property set to the maximum value of the progress bar, the <code title="attr-aria-valuemin">aria-valuemin</code> property set to zero, and the <code title="attr-aria-valuenow">aria-valuenow</code> property set to the current value of the progress bar

    </td></tr><tr><td><code><a href="forms.html#the-select-element">select</a></code> element with a <code title="attr-select-multiple"><a href="forms.html#attr-select-multiple">multiple</a></code> attribute
     </td><td><code title="attr-aria-role-listbox">listbox</code> role, with the <code title="attr-aria-multiselectable">aria-multiselectable</code> property set to "true"

    </td></tr><tr><td><code><a href="forms.html#the-select-element">select</a></code> element with no <code title="attr-select-multiple"><a href="forms.html#attr-select-multiple">multiple</a></code> attribute
     </td><td><code title="attr-aria-role-listbox">listbox</code> role, with the <code title="attr-aria-multiselectable">aria-multiselectable</code> property set to "false"

    </td></tr><tr><td><code><a href="tabular-data.html#the-td-element">td</a></code> element
     </td><td><code title="attr-aria-role-gridcell">gridcell</code> role, with the <code title="attr-aria-labelledby">aria-labelledby</code> property set to the value of the <code title="attr-tdth-headers"><a href="tabular-data.html#attr-tdth-headers">headers</a></code> attribute, if any

    </td></tr><tr><td><code><a href="forms.html#the-textarea-element">textarea</a></code> element
     </td><td><code title="attr-aria-role-textbox">textbox</code> role, with the <code title="attr-aria-multiline">aria-multiline</code> property set to "true", and the <code title="title-aria-readonly">aria-readonly</code> state set to "true" if the element has a <code title="attr-textarea-readonly"><a href="forms.html#attr-textarea-readonly">readonly</a></code> attribute

    </td></tr><tr><td><code><a href="tabular-data.html#the-th-element">th</a></code> elemen that is neither a <a href="#column-header">column header</a> nor a <a href="#row-header">row header</a>
     </td><td><code title="attr-aria-role-gridcell">gridcell</code> role, with the <code title="attr-aria-labelledby">aria-labelledby</code> property set to the value of the <code title="attr-tdth-headers"><a href="tabular-data.html#attr-tdth-headers">headers</a></code> attribute, if any

    </td></tr><tr><td><code><a href="tabular-data.html#the-th-element">th</a></code> element that is a <a href="#column-header">column header</a>
     </td><td><code title="attr-aria-role-columnheader">columnheader</code> role, with the <code title="attr-aria-labelledby">aria-labelledby</code> property set to the value of the <code title="attr-tdth-headers"><a href="tabular-data.html#attr-tdth-headers">headers</a></code> attribute, if any

    </td></tr><tr><td><code><a href="tabular-data.html#the-th-element">th</a></code> element that is a <a href="#row-header">row header</a>
     </td><td><code title="attr-aria-role-rowheader">rowheader</code> role, with the <code title="attr-aria-labelledby">aria-labelledby</code> property set to the value of the <code title="attr-tdth-headers"><a href="tabular-data.html#attr-tdth-headers">headers</a></code> attribute, if any

    </td></tr><tr><td><code><a href="tabular-data.html#the-tr-element">tr</a></code> element
     </td><td><code title="attr-aria-role-row">row</code> role

    </td></tr><tr><td>An element that <a href="interactive-elements.html#concept-command" title="concept-command">defines a command</a>, whose <a href="interactive-elements.html#command-facet-type" title="command-facet-type">Type</a> facet is "checkbox", and that is a descendant of a <code><a href="interactive-elements.html#menus">menu</a></code> element whose <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute in the <a href="interactive-elements.html#list-state" title="list state">list</a> state
     </td><td><code title="attr-aria-role-menuitemcheckbox">menuitemcheckbox</code> role, with the <code title="attr-aria-checked">aria-checked</code> state set to "true" if the command's <a href="interactive-elements.html#command-facet-checkedstate" title="command-facet-checkedstate">Checked State</a> facet is true, and "false" otherwise

    </td></tr><tr><td>An element that <a href="interactive-elements.html#concept-command" title="concept-command">defines a command</a>, whose <a href="interactive-elements.html#command-facet-type" title="command-facet-type">Type</a> facet is "command", and that is a descendant of a <code><a href="interactive-elements.html#menus">menu</a></code> element whose <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute in the <a href="interactive-elements.html#list-state" title="list state">list</a> state
     </td><td><code title="attr-aria-role-menuitem">menuitem</code> role

    </td></tr><tr><td>An element that <a href="interactive-elements.html#concept-command" title="concept-command">defines a command</a>, whose <a href="interactive-elements.html#command-facet-type" title="command-facet-type">Type</a> facet is "radio", and that is a descendant of a <code><a href="interactive-elements.html#menus">menu</a></code> element whose <code title="attr-menu-type"><a href="interactive-elements.html#attr-menu-type">type</a></code> attribute in the <a href="interactive-elements.html#list-state" title="list state">list</a> state
     </td><td><code title="attr-aria-role-menuitemradio">menuitemradio</code> role, with the <code title="attr-aria-checked">aria-checked</code> state set to "true" if the command's <a href="interactive-elements.html#command-facet-checkedstate" title="command-facet-checkedstate">Checked State</a> facet is true, and "false" otherwise

    </td></tr><tr><td>Elements that are <a href="forms.html#concept-fe-disabled" title="concept-fe-disabled">disabled</a>
     </td><td>The <code title="title-aria-disabled">aria-disabled</code> state set to "true"

    </td></tr><tr><td>Elements that are <a href="forms.html#concept-input-required" title="concept-input-required">required</a>
     </td><td>The <code title="title-aria-required">aria-required</code> state set to "true"

  </td></tr></tbody></table><p>Some <a href="infrastructure.html#html-elements">HTML elements</a> have native semantics that can be
  overridden. The following table lists these elements,
  along with the restrictions that apply to those elements. Each
  language feature (element or attribute) in a cell in the first
  column implies, unless otherwise overriden, the ARIA semantic (role,
  state, or property) given in the cell in the second column of the
  same row, but this semantic may be overridden under the conditions
  listed in the cell in the third column of that row.</p><table><thead><tr><th>Language feature
     </th><th>Default implied ARIA semantic
     </th><th>Restrictions

   </th></tr></thead><tbody><tr><td><code><a href="semantics.html#the-article-element">article</a></code> element
     </td><td><code title="attr-aria-role-article">article</code> role
     </td><td>Role must be either <code title="attr-aria-role-article">article</code>, <code title="attr-aria-role-document">document</code>, <code title="attr-aria-role-application">application</code>, or <code title="attr-aria-role-main">main</code>

    </td></tr><tr><td><code><a href="semantics.html#the-aside-element">aside</a></code> element
     </td><td><code title="attr-aria-role-note">note</code> role
     </td><td>Role must be either <code title="attr-aria-role-note">note</code>, <code title="attr-aria-role-complementary">complementary</code>, or <code title="attr-aria-role-search">search</code>

    </td></tr><tr><td><code><a href="semantics.html#the-html-element-0">html</a></code> element
     </td><td><code title="attr-aria-role-document">document</code> role
     </td><td>Role must be either <code title="attr-aria-role-document">document</code> or <code title="attr-aria-role-application">application</code>

    </td></tr><tr><td><code><a href="semantics.html#the-li-element">li</a></code> element whose parent is an <code><a href="semantics.html#the-ol-element">ol</a></code> or <code><a href="semantics.html#the-ul-element">ul</a></code> element
     </td><td><code title="attr-aria-role-listitem">listitem</code> role
     </td><td>Role must be either <code title="attr-aria-role-listitem">listitem</code> or <code title="attr-aria-role-treeitem">treeitem</code>

    </td></tr><tr><td><code><a href="semantics.html#the-ol-element">ol</a></code> element
     </td><td><code title="attr-aria-role-list">list</code> role
     </td><td>Role must be either <code title="attr-aria-role-list">list</code>, <code title="attr-aria-role-tree">tree</code>, or <code title="attr-aria-role-directory">directory</code>

    </td></tr><tr><td><code><a href="forms.html#the-output-element">output</a></code> element
     </td><td><code title="attr-aria-role-status">status</code> role
     </td><td>No restrictions

    </td></tr><tr><td><code><a href="semantics.html#the-section-element">section</a></code> element
     </td><td><code title="attr-aria-role-region">region</code> role
     </td><td>Role must be either <code title="attr-aria-role-region">region</code>, <code title="attr-aria-role-document">document</code>, <code title="attr-aria-role-application">application</code>, <code title="attr-aria-role-contentinfo">contentinfo</code>, <code title="attr-aria-role-main">main</code>, <code title="attr-aria-role-search">search</code>, <code title="attr-aria-role-alert">alert</code>, <code title="attr-aria-role-dialog">dialog</code>, <code title="attr-aria-role-alertdialog">alertdialog</code>, <code title="attr-aria-role-status">status</code>, or <code title="attr-aria-role-log">log</code>

    </td></tr><tr><td><code><a href="tabular-data.html#the-table-element">table</a></code> element
     </td><td><code title="attr-aria-role-grid">grid</code> role
     </td><td>Role must be either <code title="attr-aria-role-grid">grid</code> or <code title="attr-aria-role-treegrid">treegrid</code>

    </td></tr><tr><td><code><a href="semantics.html#the-ul-element">ul</a></code> element
     </td><td><code title="attr-aria-role-list">list</code> role
     </td><td>Role must be either <code title="attr-aria-role-list">list</code> or <code title="attr-aria-role-tree">tree</code>, or <code title="attr-aria-role-directory">directory</code>

  </td></tr></tbody></table><h3 id="apis-in-html-documents"><span class="secno">3.3 </span>APIs in HTML documents</h3><p class="XXX annotation"><b>Status: </b><i>Awaiting implementation feedback</i></p><p>For <a href="dom.html#html-documents">HTML documents</a>, and for <a href="infrastructure.html#html-elements">HTML
  elements</a> in <a href="dom.html#html-documents">HTML documents</a>, certain APIs defined
  in DOM Core become case-insensitive or case-changing, as sometimes
  defined in DOM Core, and as summarized  below. <a href="references.html#refsDOMCORE">[DOMCORE]</a>.</p><p>This does not apply to <a href="dom.html#xml-documents">XML documents</a> or to elements
  that are not in the <a href="#html-namespace-0">HTML namespace</a> despite being in
  <a href="dom.html#html-documents">HTML documents</a>.</p><dl><dt><code title="">Element.tagName</code> and <code title="">Node.nodeName</code></dt>

   <dd>

    <p>These attributes must<a href="#converted-to-ascii-uppercase">converted to ASCII uppercase</a>, regardless of the case
    with which they were created.</p>

   </dd>


   <dt><code title="">Document.createElement()</code></dt>

   <dd>

    <p>The canonical form of HTML markup is all-lowercase; thus, this
    method will <a href="#converted-to-ascii-lowercase" title="converted to ASCII lowercase">lowercase</a>
    the argument before creating the requisite element. .</p>

    <p class="note">This doesn't apply to <code title="">Document.createElementNS()</code>. Thus, it is possible,
    by passing this last method a tag name in the wrong case, to
    create an element that claims to have the tag name of an element
    defined in this specification, but doesn't support its interfaces,
    because it really has another tag name not accessible from the DOM
    APIs.</p>

   </dd>


   <dt><code title="">Element.setAttribute()</code></dt>
   <dt><code title="">Element.setAttributeNode()</code></dt>

   <dd>

    <p>Attribute names are <a href="#converted-to-ascii-lowercase">converted to ASCII lowercase</a>.</p>

    

    <p class="note">This doesn't apply to <code title="">Document.setAttributeNS()</code> and <code title="">Document.setAttributeNodeNS()</code>.</p>

   </dd>


   <dt><code title="">Element.getAttribute()</code></dt>
   <dt><code title="">Element.getAttributeNode()</code></dt>

   <dd>

    <p>Attribute names are <a href="#converted-to-ascii-lowercase">converted to ASCII lowercase</a>.</p>

    

    <p class="note">This doesn't apply to <code title="">Document.getAttributeNS()</code> and <code title="">Document.getAttributeNodeNS()</code>.</p>

   </dd>


   <dt><code title="">Document.getElementsByTagName()</code></dt>
   <dt><code title="">Element.getElementsByTagName()</code></dt>

   <dd>

    <p>HTML elements match by lower-casing the argument before
    comparison, elements from other namespaces are treated as in XML
    (case-sensitively).</p>

    

    <p class="note">Thus, in an <a href="dom.html#html-documents" title="HTML documents">HTML
    document</a> with nodes in multiple namespaces, these methods
    will effectively be both case-sensitive and case-insensitive at
    the same time.</p>

   </dd>


  </dl><h3 id="dynamic-markup-insertion"><span class="secno">3.4 </span><dfn>Dynamic markup insertion</dfn></h3><p class="note">APIs for dynamically inserting markup into the
  document interact with the parser, and thus their behavior, varies
  depending on whether they are used with <a href="dom.html#html-documents">HTML documents</a>
  (and the <a href="#html-parser">HTML parser</a>) or XHTML in <a href="dom.html#xml-documents">XML
  documents</a> (and the <a href="#xml-parser">XML parser</a>).</p><h4 id="controlling-the-input-stream"><span class="secno">3.4.1 </span>Controlling the input stream</h4><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><p>The <dfn id="dom-document-open" title="dom-document-open"><code>open()</code></dfn>
  method comes in several variants with different numbers of
  arguments.</p><dl class="domintro"><dt><var title="">document</var> = <var title="">document</var> . <code title="dom-document-open"><a href="#dom-document-open">open</a></code>( [ <var title="">type</var> [, <var title="">replace</var> ] ] )</dt>

   <dd>

    <p>Causes the <code>Document</code> to be replaced in-place, as if
    it was a new <code>Document</code> object, but reusing the
    previous object, which is then returned.</p>

    <p>If the <var title="">type</var> argument is omitted or has the
    value "<code><a href="iana-considerations.html#text-html">text/html</a></code>", then the resulting
    <code>Document</code> has an HTML parser associated with it, which
    can be given data to parse using <code title="dom-document-write"><a href="#dom-document-write">document.write()</a></code>. Otherwise, all
    content passed to <code title="dom-document-write"><a href="#dom-document-write">document.write()</a></code> will be parsed
    as plain text.</p>

    <p>If the <var title="">replace</var> argument is absent or false,
    a new entry is added to the session history to represent this
    entry, and the previous entries for this <code>Document</code> are
    all collapsed into one entry with a new <code>Document</code>
    object.</p>

    <p>The method has no effect if the <code>Document</code> is still
    being parsed.</p>

   </dd>

   <dt><var title="">window</var> = <var title="">document</var> . <code title="dom-document-open"><a href="#dom-document-open">open</a></code>( <var title="">url</var>, <var title="">name</var>, <var title="">features</var> [, <var title="">replace</var> ] )</dt>

   <dd>

    <p>Works like the <code title="dom-open"><a href="#dom-open">window.open()</a></code>
    method.</p>

   </dd>

   <dt><var title="">document</var> . <code title="dom-document-close"><a href="#dom-document-close">close</a></code>()</dt>

   <dd>

    <p>Closes the input stream that was opened by the <code title="dom-document-open"><a href="#dom-document-open">document.open()</a></code> method.</p>

   </dd>

  </dl><h4 id="document.write"><span class="secno">3.4.2 </span><code title="dom-document-write"><a href="#dom-document-write">document.write()</a></code></h4><dl class="domintro"><dt><var title="">document</var> . <code title="dom-document-write"><a href="#dom-document-write">write</a></code>(<var title="">text</var>...)</dt>

   <dd>

    <p>Adds the given string(s) to the <code>Document</code>'s input
    stream. If necessary, calls the <code title="dom-document-open"><a href="#dom-document-open">open()</a></code> method implicitly
    first.</p>

    <p>This method throws an <code><a href="infrastructure.html#invalid_access_err">INVALID_ACCESS_ERR</a></code> exception
    when invoked on <a href="dom.html#xml-documents">XML documents</a>.</p>

   </dd>

  </dl><h4 id="document.writeln"><span class="secno">3.4.3 </span><code title="dom-document-writeln"><a href="#dom-document-writeln">document.writeln()</a></code></h4><dl class="domintro"><dt><var title="">document</var> . <code title="dom-document-writeln"><a href="#dom-document-writeln">writeln</a></code>(<var title="">text</var>...)</dt>

   <dd>

    <p>Adds the given string(s) to the <code>Document</code>'s input
    stream, followed by a newline character. If necessary, calls the
    <code title="dom-document-open"><a href="#dom-document-open">open()</a></code> method implicitly
    first.</p>

    <p>This method throws an <code><a href="infrastructure.html#invalid_access_err">INVALID_ACCESS_ERR</a></code> exception
    when invoked on <a href="dom.html#xml-documents">XML documents</a>.</p>

   </dd>

  </dl><h4 id="innerhtml"><span class="secno">3.4.4 </span><code title="dom-innerHTML"><a href="#dom-innerhtml">innerHTML</a></code></h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><p>The <dfn id="dom-innerhtml" title="dom-innerHTML"><code>innerHTML</code></dfn> DOM
  attribute represents the markup of the node's contents.</p><dl class="domintro"><dt><var title="">document</var> . <code title="dom-innerHTML"><a href="#dom-innerhtml">innerHTML</a></code> [ = <var title="">value</var> ]</dt>

   <dd>

    <p>Returns a fragment of HTML or XML that represents the
    <code>Document</code>.</p>

    <p>Can be set, to replace the <code>Document</code>'s contents
    with the result of parsing the given string.</p>

    <p>In the case of <a href="dom.html#xml-documents">XML documents</a>, will throw a
    <code><a href="infrastructure.html#syntax_err">SYNTAX_ERR</a></code> if the <code>Document</code> cannot be
    serialized to XML, or if the given string is not well-formed.</p>

   </dd>

   <dt><var title="">element</var> . <code title="dom-innerHTML"><a href="#dom-innerhtml">innerHTML</a></code> [ = <var title="">value</var> ]</dt>

   <dd>

    <p>Returns a fragment of HTML or XML that represents the element's
    contents.</p>

    <p>Can be set, to replace the contents of the element with nodes
    parsed from the given string.</p>

    <p>In the case of <a href="dom.html#xml-documents">XML documents</a>, will throw a
    <code><a href="infrastructure.html#syntax_err">SYNTAX_ERR</a></code> if the element cannot be serialized to
    XML, or if the given string is not well-formed.</p>

   </dd>

  </dl><h4 id="outerhtml"><span class="secno">3.4.5 </span><code title="dom-outerHTML"><a href="#dom-outerhtml">outerHTML</a></code></h4><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><p>The <dfn id="dom-outerhtml" title="dom-outerHTML"><code>outerHTML</code></dfn> DOM
  attribute represents the markup of the element and its contents.</p><dl class="domintro"><dt><var title="">element</var> . <code title="dom-outerHTML"><a href="#dom-outerhtml">outerHTML</a></code> [ = <var title="">value</var> ]</dt>

   <dd>

    <p>Returns a fragment of HTML or XML that represents the element
    and its contents.</p>

    <p>Can be set, to replace the element with nodes parsed from the
    given string.</p>

    <p>In the case of <a href="dom.html#xml-documents">XML documents</a>, will throw a
    <code><a href="infrastructure.html#syntax_err">SYNTAX_ERR</a></code> if the element cannot be serialized to
    XML, or if the given string is not well-formed.</p>

   </dd>

  </dl><h4 id="insertadjacenthtml"><span class="secno">3.4.6 </span><code title="dom-insertAdjacentHTML"><a href="#dom-insertadjacenthtml">insertAdjacentHTML()</a></code></h4><dl class="domintro"><dt><var title="">element</var> . <code title="dom-insertAdjacentHTML"><a href="#dom-insertadjacenthtml">insertAdjacentHTML</a></code>(<var title="">position</var>, <var title="">text</var>)</dt>

   <dd>

    <p>Parsed the given string <var title="">text</var> as HTML or XML
    and inserts the resulting nodes into the tree in the position
    given by the <var title="">position</var> argument, as
    follows:</p>

    <dl><dt>"beforebegin"</dt>
     <dd>Before the element itself.</dd>
     <dt>"afterbegin"</dt>
     <dd>Just inside the element, before its first child.</dd>
     <dt>"beforeend"</dt>
     <dd>Just inside the element, after its last child.</dd>
     <dt>"afterend"</dt>
     <dd>After the element itself.</dd>
    </dl><p>Throws a <code><a href="infrastructure.html#syntax_err">SYNTAX_ERR</a></code> exception the arguments have
    invalid values (e.g., in the case of <a href="dom.html#xml-documents">XML documents</a>,
    if the given string is not well-formed).</p>

    <p>Throws a <code><a href="infrastructure.html#no_modification_allowed_err">NO_MODIFICATION_ALLOWED_ERR</a></code> exception if
    the given position isn't possible (e.g. inserting elements after
    the root element of a <code>Document</code>).</p>

   </dd>

  </dl></body></html>
--- NEW FILE: dom.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>3 Semantics, structure, and APIs of HTML documents &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...1268 lines suppressed...]
   <li><code><a href="forms.html#the-textarea-element">textarea</a></code></li>
   <li><code><a href="text-level-semantics.html#the-time-element">time</a></code></li>
   <li><code><a href="text-level-semantics.html#the-var-element">var</a></code></li>
   <li><code><a href="video.html#video">video</a></code></li>
   <li><a href="#text-content" title="text content">Text</a></li>
  </ul><p>As a general rule, elements whose content model allows any
  <a href="#phrasing-content">phrasing content</a> should have either at least one
  descendant <a href="infrastructure.html#text-node">text node</a> that is not <a href="#inter-element-whitespace">inter-element
  whitespace</a>, or at least one descendant element node that is
  <a href="embedded-content-0.html#embedded-content">embedded content</a>. For the purposes of this requirement,
  nodes that are descendants of <code><a href="text-level-semantics.html#the-del-element">del</a></code> elements must not be
  counted as contributing to the ancestors of the <code><a href="text-level-semantics.html#the-del-element">del</a></code>
  element.</p><p class="note">Most elements that are categorized as phrasing
  content can only contain elements that are themselves categorized as
  phrasing content, not any flow content.</p><p><dfn id="text-content" title="text content">Text</dfn>, in the context of content
  models, means <a href="infrastructure.html#text-node" title="text node">text nodes</a>. <a href="#text-content" title="text content">Text</a> is sometimes used as a content
  model on its own, but is also <a href="#phrasing-content">phrasing content</a>, and can
  be <a href="#inter-element-whitespace">inter-element whitespace</a> (if the <a href="infrastructure.html#text-node" title="text
  node">text nodes</a> are empty or contain just <a href="#space-character" title="space
  character">space characters</a>).</p></body></html>
--- NEW FILE: acknowledgements.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>Acknowledgements &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="references.html" title="References" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="references.html">&#8592; References</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a>
  </div>

  <h2 class="no-num" id="acknowledgements">Acknowledgements</h2><p class="XXX annotation"><b>Status: </b><i>Being edited right now</i></p><!-- ACKS --><p>Thanks to

  Aankhen,
  Aaron Boodman,
  Aaron Leventhal,
  Adam Barth,
  Adam Roben,
  Addison Phillips,
  Adele Peterson,
  Adrian Bateman,
  Adrian Sutton,
  Agust&#237;n Fern&#225;ndez,
  Ajai Tirumali,
  Alan Plum,
  Alastair Campbell,
  Alex Bishop,
  Alex Nicolaou,
  Alex Rousskov,
  Alexander J. Vincent,
  Alexey Feldgendler,
  &#1040;&#1083;&#1077;&#1082;&#1089;&#1077;&#1081; &#1055;&#1088;&#1086;&#1089;&#1082;&#1091;&#1088;&#1103;&#1082;&#1086;&#1074; (Alexey Proskuryakov),
  Alexis Deveria,
  Allan Clements,
  Anders Carlsson,
  Andreas<!-- mqmq87 -->,
  Andrei Popescu,
  Andr&#233; E. Veltstra,
  Andrew Clover,
  Andrew Gove,
  Andrew Grieve,
  Andrew Oakley,
  Andrew Sidwell,
  Andrew Smith,
  Andrew W. Hagen,
  Andy Heydon,
  Andy Palay,
  Anne van Kesteren,
  Anthony Boyd,
  Anthony Bryan,
  Anthony Hickson,
  Anthony Ricaud,
  Antti Koivisto,
  Aron Spohr,
  Arphen Lin,
  Aryeh Gregor,
  Asbj&#248;rn Ulsberg,
  Ashley Sheridan,
  Aurelien Levy,
  Ave Wrigley,
  Ben Boyle,
  Ben Godfrey,
  Ben Leslie,
  Ben Meadowcroft,
  Ben Millard,
  Benjamin Hawkes-Lewis,
  Bert Bos,
  Bijan Parsia,
  Bil Corry,
  Bill Mason,
  Bill McCoy,
  Billy Wong,
  Bj&#246;rn H&#246;hrmann,
  Blake Frantz,
  Boris Zbarsky,
  Brad Fults,
  Brad Neuberg,
  Brady Eidson,
  Brendan Eich,
  Brenton Simpson,
  Brett Wilson,
  Brett Zamir,
  Brian Campbell,
  Brian Korver,
  Brian Ryner,
  Brian Smith,
  Brian Wilson,
  Bruce D'Arcus,
  Bruce Lawson,
  Bruce Miller,
  C. Williams,
  Cameron McCormack,
  Cao Yipeng,
  Carlos Perell&#243; Mar&#237;n,
  Chao Cai,
  &#50980;&#49437;&#52268; (Channy Yun),
  Charl van Niekerk,
  Charles Iliya Krempeaux,
  Charles McCathieNevile,
  Chris Cressman,
  Chris Morris,
  Chris Pearce,
  Christian Biesinger,
  Christian Johansen,
  Christian Schmidt,
  Christopher Aillon,
  Chriswa,
  Cole Robison,
  Colin Fine,
  Collin Jackson,
  Corprew Reed,
  Craig Cockburn,
  Csaba Gabor,
  Daniel Barclay,
  Daniel Bratell,
  Daniel Brooks,
  Daniel Brumbaugh Keeney,
  Daniel Davis,
  Daniel Glazman,
  Daniel Peng,
  Daniel Schattenkirchner,
  Daniel Sp&#229;ng,
  Daniel Steinberg,
  Danny Sullivan,
  Darin Adler,
  Darin Fisher,
  Darxus,
  Dave Camp,
  Dave Hodder,
  Dave Lampton,
  Dave Singer,
  Dave Townsend<!-- Mossop on moz irc -->,
  David Baron,
  David Bloom,
  David Carlisle,
  David E. Cleary,
  David Egan Evans,
  David Flanagan,
  David Gerard,
  David H&#229;s&#228;ther,
  David Hyatt,
  David I. Lehn,
  David Matja,
  David Remahl,
  David Smith,
  David Woolley,
  DeWitt Clinton,
  Dean Edridge,
  Dean Edwards,
  Debi Orton,
  Derek Featherstone,
  Dimitri Glazkov,
  Dimitry Golubovsky,
  dolphinling,
  Dominique Haza&#235;l-Massieux,
  Doron Rosenberg,
  Doug Kramer,
  Drew Wilson,
  Edmund Lai,
  Eduard Pascual,
  Edward O'Connor,
  Edward Welbourne,
  Edward Z. Yang,
  Eira Monstad,
  Elliotte Harold,
  Eric Carlson,
  Eric Law,
  Eric Rescorla,
  Erik Arvidsson,
  Evan Martin,
  Evan Prodromou,
  fantasai,
  Felix Sasaki,
  Francesco Schwarz,
  Franck 'Shift' Qu&#233;lain,
  Frank Barchard,
  &#40284;&#39164;&#25991;&#25935; (Fumitoshi Ukai),
  Garrett Smith,
  Geoffrey Garen,
  Geoffrey Sneddon,
  George Lund,
  Giovanni Campagna,
  Greg Botten,
  Greg Houston,
  Gregg Tavares,
  Grey,
  Gytis Jakutonis,
  H&#229;kon Wium Lie,
  Hallvord Reiar Michaelsen Steen,
  Hans S. T&#248;mmerhalt,
  Henri Sivonen,
  Henrik Lied,
  Henry Mason,
  Hugh Winkler,
  Ian Bicking,
  Ian Davis,
  Ignacio Javier,
  Ivan Enderlin,
  Ivo Emanuel Gon&#231;alves,
  J. King,
  Jacques Distler,
  James Craig,
  James Graham,
  James Justin Harrell,
  James M Snell,
  James Perrett,
  James Robinson,
  Jan-Klaas Kollhof,
  Jason Kersey,
  Jason Lustig,
  Jason White,
  Jasper Bryant-Greene,
  Jed Hartman,
  Jeff Balogh,
  Jeff Cutsinger,
  Jeff Schiller,
  Jeff Walden,
  &#32993;&#24935;&#37586; (Jennifer Braithwaite),
  Jens Bannmann,
  Jens Fendler,
  Jens Lindstr&#246;m,
  Jens Meiert,
  Jeremy Orlow,
  Jeroen van der Meer,
  Jian Li,
  Jim Jewett,
  Jim Ley,
  Jim Meehan,
  Jjgod Jiang,
  Jo&#227;o Eiras,
  Joe Clark,
  Joe Gregorio,
  Joel Spolsky,
  Johan Herland,
  John Boyer,
  John Bussjaeger,
  John Carpenter,
  John Fallows,
  John Foliot,
  John Harding,
  John Keiser,
  John-Mark Bell,
  Johnny Stenback,
  Jon Ferraiolo,
  Jon Gibbins,
  Jon Perlow,
  Jonas Sicking,
  Jonathan Worent,
  Jonny Axelsson,
  Jorgen Horstink,
  Jorunn Danielsen Newth,
  Joseph Kesselman,
  Josh Aas,
  Josh Levenberg,
  Joshua Randall,
  Jukka K. Korpela,
  Jules Cl&#233;ment-Ripoche,
  Julian Reschke,
  Justin Sinclair,
  Kai Hendry,
  Kartikaya Gupta,
  Kelly Norton,
  Kevin Benson,
  Korn&#233;l P&#225;l,
  Kristof Zelechovski,
  &#40658;&#28580;&#21083;&#24535; (KUROSAWA Takeshi),
  Kyle Hofmann<!-- Ozob -->,
  L&#233;onard Bouchet,
  Lachlan Hunt,
  Larry Masinter,
  Larry Page,
  Lars Gunther<!-- Keryx Web -->,
  Lars Solberg,
  Laura L. Carlson,
  Laura Wisewell,
  Laurens Holst,
  Lee Kowalkowski,
  Leif Halvard Silli,
  Lenny Domnitser,
  Leons Petrazickis,
  Logan<!-- on moz irc -->,
  Loune,
  Luke Kenneth Casson Leighton,
  Maciej Stachowiak,
  Magnus Kristiansen<!-- Dashiva -->,
  Maik Merten,
  Malcolm Rowe,
  Mark Birbeck,
  Mark Miller,
  Mark Nottingham,
  Mark Rowe<!--bdash-->,
  Mark Schenk,
  Mark Wilton-Jones,
  Martijn Wargers,
  Martin Atkins,
  Martin D&#252;rst,
  Martin Honnen,
  Martin Kutschker,
  Masataka Yakura,
  Mathieu Henri,
  Matt Schmidt,
  Matt Wright,
  Matthew Gregan,
  Matthew Mastracci,
  Matthew Raymond,
  Matthew Thomas,
  Mattias Waldau,
  Max Romantschuk,
  Menno van Slooten,
  Micah Dubinko,
  Michael 'Ratt' Iannarelli,
  Michael A. Nachbaur,
  Michael A. Puls II<!--Shadow2531-->,
  Michael Carter,
  Michael Daskalov,
  Michael Enright,
  Michael Gratton,
  Michael Nordman,
  Michael Powers,
  Michael(tm) Smith,
  Michel Fortin,
  Michelangelo De Simone,
  Michiel van der Blonk,
  Mihai &#350;ucan<!-- from ROBO Design -->,
  Mike Brown,
  Mike Dierken<!-- S. Mike Dierken -->,
  Mike Dixon,
  Mike Schinkel,
  Mike Shaver,
  Mikko Rantalainen,
  Mohamed Zergaoui<!-- Innovimax SARL -->,
  Ms2ger,
  Neil Deakin,
  Neil Rashbrook,
  Neil Soiffer,
  Nicholas Shanks,
  Nicolas Gallagher,
  Noah Mendelsohn,
  Noah Slater,
  Ojan Vafai,
  Olaf Hoffmann,
  Olav Junker Kj&#230;r,
  Old&#345;ich Vete&#353;n&#237;k,
  Oliver Hunt,
  Oliver Rigby,
  Olivier Gendrin,
  Olli Pettay,
  Patrick H. Lauke,
  Paul Norman,
  Peter Karlsson,
  Peter Kasting,
  Peter Stark,
  Peter-Paul Koch,
  Philip J&#228;genstedt,
  Philip Taylor,
  Philip TAYLOR<!-- a different one -->,
  Prateek Rungta,
  Rachid Finge,
  Rajas Moonka,
  Ralf Stoltze,
  Ralph Giles,
  Raphael Champeimont,
  Remco,
  Remy Sharp,
  Rene Saarsoo,
  Rene Stach,
  Rich Doughty,
  Richard Ishida,
  Rigo Wenning,
  Rikkert Koppes,
  Rimantas Liubertas,
  Robert Blaut,
  Robert Collins,
  Robert O'Callahan,
  Robert Sayre,
  Robin Berjon,
  Roland Steiner,
  Roman Ivanov,
  Ryan King,
  S. Mike Dierken,
  Sam Dutton,
  Sam Kuper,
  Sam Ruby,
  Sam Weinig,
  Sander van Lambalgen,
  Sarven Capadisli,
  Scott Hess,
  Sean Fraser,
  Sean Hogan,
  Sean Knapp,
  Sebastian Markb&#229;ge,
  Sebastian Schnitzenbaumer,
  Seth Call,
  Shanti Rao,
  Shaun Inman,
  Shiki Okasaka,
  Sierk Bornemann,
  Sigbj&#248;rn Vik,
  Silvia Pfeiffer,
  Simon Montagu,
  Simon Pieters,
  Simon Spiegel,
  skeww, <!-- on reddit -->
  Stefan Haustein,
  Stefan Santesson,
  Steffen Meschkat,
  Stephen Ma,
  Steve Faulkner,
  Steve Runyon,
  Steven Bennett,
  Steven Garrity,
  Stewart Brodie,
  Stuart Ballard,
  Stuart Parmenter,
  Subramanian Peruvemba,
  Sunava Dutta,
  Susan Borgrink,
  Susan <!--G.--> Lesch,
  Sylvain Pasche,
  <span lang="tr" title="">Tantek &#199;elik</span>,
  &#30000;&#26449;&#20581;&#20154; (TAMURA Kent),
  Ted Mielczarek,
  Terrence Wood,
  Thomas Broyer,
  Thomas O'Connor,
  Tim Altman,
  Tim Johansson,
  Toby Inkster,
  Todd Moody,
  Tom Pike,
  Tommy Thorsen,
  Travis Leithead,
  Tyler Close,
  Vladimir Vuki&#263;evi&#263;,
  voracity,
  Wakaba,
  Wayne Pollock,
  Wellington Fernando de Macedo,
  Will Levine,
  William Swanson,
  Wladimir Palant,
  Wojciech Mach,
  Wolfram Kriesing,
  Yi-An Huang,
  Yngve Nysaeter Pettersen,
  Zhenbin Xu,
  and
  &#216;istein E. Andersen,

  for their useful comments, both large and small, that have led to
  changes to this specification over the years.</p><p>Thanks also to everyone who has ever posted about HTML&#160;5 to
  their blogs, public mailing lists, or forums, including the <a href="http://lists.w3.org/Archives/Public/public-html/">W3C
  public-html list</a> and the <a href="http://www.whatwg.org/mailing-list">various WHATWG lists</a>.

  </p><p>Special thanks to Richard Williamson for creating the first
  implementation of <code><a href="the-canvas-element.html#the-canvas-element">canvas</a></code> in Safari, from which the
  canvas feature was designed.</p><p>Special thanks also to the Microsoft employees who first
  implemented the event-based drag-and-drop mechanism, <code title="attr-contenteditable"><a href="editing.html#attr-contenteditable">contenteditable</a></code>, and other
  features first widely deployed by the Windows Internet Explorer
  browser.</p><p>Thanks to the many sources that provided inspiration for the
  examples used in the specification.</p><p>Thanks also to the Microsoft blogging community for some ideas,
  to the attendees of the W3C Workshop on Web Applications and
  Compound Documents for inspiration, to the #mrt crew, the #mrt.no
  crew, and the #whatwg crew, and to Pillar and Hedral for their ideas
  and support.</p><!-- Hopefully Kam won't notice he's covered by these
  acknowledgements three times! --><!--
TODO (or delay):
 XXX * we should fix The Great Key Problem
 XXX * library of resources:
        var library = new ZipFile("data.zip");
        library.onload = function() {
          var sound1 = library.getAudio("sound1.wav"); // returns an Audio object
          var image1 = library.getImage("image1.png"); // returns an HTMLImageElement
          var doc1 = library.getXMLDocument("doc1.xml"); // returns a Document
          var doc2 = library.getHTMLDocument("doc1.html"); // returns an HTMLDocument
        }
       or:
        var library = new ResourceLoader("data.zip");
        library.add("moredata.zip");
        library.onload = function() { ... }
        library.onloading = function() {
          reportLoadProgress(library.progress); // 0.0 .. 1.0
        }
       or:
        var library = new AudioZip("sounds.zip");
        library.onload = function() {
          var sound1 = library["sound1.wav"];
          sound.play();
        }
 XXX * ability for a web app to save a file to the local disk:
         var file = window.openFile(); // throws up UI
         file.read();
         var file = window.saveAsFile(); // throws up UI
         file.write();
       ...or something? (<input type=file>?)
 XXX * http://lxr.mozilla.org/mozilla/source/dom/public/idl/html/nsIDOMNSHTMLDocument.idl
 XXX * define how to handle APNGs that have out-of-order aDATs and other
       errors in image formats, since pav and vlad refuse to define it for APNG:
         <Hixie> vlad: you should define what the UA should do with out-of-order aDATs
         <pav> its an error
         <pav> pretty sure we say that somewhere
         <Hixie> yes i know it's an error
         <Hixie> but that doesn't say what the UA should do
         <pav> error == image is invalid
         <vlad> yep
         <vlad> either broken image icon
         <vlad> or display first frame (fall back to normal PNG)
         <vlad> up to the UA
         <Hixie> right
         <Hixie> you should say which one
         <pav> its up to the UA
         <Hixie> why?
         <vlad> "SHOULD display the first frame, but MAY display broken image icon if that's not convenient", in rfc parlance
         <vlad> because it's not useful to specify that, IMO
         <Hixie> up to the UA means one UA will implement something, it'll become a popular UA, then all the others will have to copy it.
         <vlad> how a UA wants to handle image errors is up to the UA
         <pav> we're designing an image format, not the html image tag
         <pav> the html spec should say what to do with it
 XXX * <title site="" publisher="" author="">Page Title</title> ?
 XXX * [onclick] should make element focusable; enter should send onclick ?
 XXX * should have some text talking about the fact that it's ok if your
       page passes through a period of non-conformance while script is
       running, but that in between scripts it should be compliant.
 XXX * mousedown's default action is focus, so canceling mousedown stops
       focus transference. http://www.mozilla.org/editor/midasdemo/
 XXX * <select><option><hr> support?
 XXX * need explanation of when to use undo/redo, and when to use
       back/forward
 XXX * need to become consistent about whether or not to quote keyword
       ("<code title="">foo</code>" vs <code>foo</code>)
 XXX * need to properly xref events throughout
 XXX * onclick="" only fires if it is a MouseEvent ?
 XXX * hsivonen makes the following suggestions:
       > To make document conformance a more useful concept for the purpose of catching
       > author errors, I suggest that the following attributes be made required:
       > href and rel on link
       > href on base
       > name and content on meta (other than the encoding decl)
       > src on img
       > code, height and width on applet
       > name and value on param
 XXX * DOM0 quirks that Mozilla knows about:
       http://lxr.mozilla.org/seamonkey/source/dom/src/base/nsDOMClassInfo.cpp
 XXX * make the spec consistent about whether the word "algorithm" is part of
       an algorithm's name or not ("</dfn> algorithm", "</span> algorithm")
 XXX * make a consistent decision of which of the following formats to use:
         U+1234 FOO BAR character ("foo")
         U+1234 FOO BAR character ('foo')
         U+1234 FOO BAR character (foo)
         U+1234 FOO BAR ("foo") character
         U+1234 FOO BAR ('foo') character
         U+1234 FOO BAR (foo) character
         U+1234 FOO BAR character ("<code title="">foo</code>")
         U+1234 FOO BAR character ('<code title="">foo</code>')
         U+1234 FOO BAR character (<code title="">foo</code>)
         U+1234 FOO BAR ("<code title="">foo</code>") character
         U+1234 FOO BAR ('<code title="">foo</code>') character
         U+1234 FOO BAR (<code title="">foo</code>) character
       ...and make these match:
         0x12 (ASCII FOO)
         0x12 (ASCII "foo")
         0x12 (ASCII 'foo')
         0x12 ("foo")
         0x12 ('foo')
         0x12 (ASCII "<code title="">foo</code>")
         0x12 (ASCII '<code title="">foo</code>')
         0x12 ("<code title="">foo</code>")
         0x12 ('<code title="">foo</code>')
 XXX * check case of hex characters in the ASCII cases.
 XXX * trim function in JS for strings to remove spaces
 XXX * date checking functions in JS (.isValidDate?)
 XXX * a fairly common situation for web authors is to have two lists, where
       the contents of the second depends on the value of the first. Is there
       any way we could extend the current model to include this functionality?
       (e.g. bugzilla product/component ui)
 XXX * quick-searchable select
 XXX * fallback that will only appear in non-webforms clients (e.g. for
       formats for date fields)
 XXX * include/exclude selectors (two multi-select columns with arrows to
       move selected items) and that sort of thing.
       http://slashdot.org/comments.pl?sid=110240&cid=9357022
 XXX * Oh, and forms need a standardized Help widget/icon. I know I can
       turn my cursor into a question mark, but I'm looking for something
       simple and pervasive. Maybe you can wrap fields in a help tag, just
       as you do for fieldsets. And in that help tag, attributes are
       available that allow for a nice, formatted, clean, full help text
       popup/area/thing.
       http://slashdot.org/comments.pl?sid=110240&cid=9359006
 XXX * Validating only part of a form. - Anja Lehmann
 XXX * Reminder to add a way to expose access keys in buttons, i.e.
       Sub&mit where & signifies the m is the access key to use. Possibly
       automatic? <input accesskey="m" value="Submit"> browser would be
       smart enough to underline the first instance of the access key if
       it exists (case insensitive)? - kerz
       [or deprecate the lot (->web apps)]
 XXX * option.text should do the same as option.textContent
 XXX * need an attribute that says "the children of this element are in
       their own tabbing universe, tabindex should be relative to each
       other, not to the document"
       -> web apps?
 XXX * make select widgets have multiple columns
       or ->web apps with list view
 XXX * required as a group (one of the following must be available):
       + i propose something like the following:
           <input type="text" group="contact" name="voicephone"> Voice phone
           <input type="text" group="contact" name="fax"> Fax
           <input type="text" group="contact" name="mobile"> Mobile phone
           <input type="text" group="contact" name="email"> E-mail
         if the user fills out none of the form fields in the "contact"
         group, an error message is shown and the form is not submitted.
         - Peter-Paul Koch
 XXX * use the sample widgets:
          <li><img alt="A text field with editable sections for each
          value, with a button to pop up a dialog showing a calendar or
          clock." src="sample-datetime-ui-2"></li>
          <li><img alt="A calendar grid with a clock in the upper right
          hand corner." src="sample-datetime-ui-3"></li>
 XXX * formatting of number fields, text fields, etc, so that when the
       field is not focused, the value is displayed differently. Seems
       like this would also be useful e.g. for <output> or something so
       you can display localised dates, etc.
 XXX * password and confirm password: can we have a way to do client-side
       validation of this?
 XXX * <input type="search">
       http://weblogs.mozillazine.org/hyatt/archives/2004_07.html#005890
 XXX * would be nice to say how to handle duplicate IDs once and for all
       instead of spreading it all over the spec.
 XXX * being able to select date range (from day x to day y)
 XXX * ways of visualizing a linefeed in a <textarea> so it looks different
       from wrapping text
 XXX * all login systems have
         1. enter username and password
         2. create new account
         3. lost password
       some way of integrating this into one system, since it's so common
 XXX * way of identifying different sorts of mailadresses
         a) mailing-list
         b) person
         c) department in a company ("support", "marketing" and such)
         d) general mail (like "info", "mail", "contact" and such)
         e) other sorts of groupings
       (or ->web apps; this is talking about in mailto: links, I think)
 XXX * hotswapping login identities like in windows xp
         you are logged in on operamail.com, and you want to check the mail
         of another user. somehow, combined with the wand or whatever,
         the browser will remember the login page, and it can re-submit it
         without having to load the initial page (saving time)
 XXX * provide different measuring systems, like having the html indicate
       fluid in both fluid ounces and liters, and the browser can display
       one or the other based on regional settings in the browser or ui,
       display conversions in a tooltip, or let the user decide which
       format to display.
 XXX * indicate "x days ago" or "y days into the future" rather than date
 XXX * input control for anniversaries
 XXX * only submit fields that have changed, or a way to include in the
       submission a list of which form controls were changed from their
       default value
 XXX * have a way of marking the first option of a <select> as the default
       but have it not satisfy a new required="" attribute on <select> so
       that you can have selects that require a valid value.
 XXX * Dave Raggett inadvertently suggested there should be a way to submit
       canvas elements.
 XXX * type="time" value="now"
 XXX * should "mixed fractional number" be used instead of "fractional"?
 XXX * terse BNF to define the allowed values of the various attributes
       instead of, or in addition to, the prose. [or not, it wouldn't be terse]
 XXX * add something to type="number" to support basic currency and unit
       formatting of input
 XXX * <fieldset enabled-if-checked="myCheckboxOrRadioButton">
       ...to allow sections to only be enabled if a radio button makes it
       relevant, for instance.
 XXX * Yan Morin proposed a multi-column dropdown <select> or <datalist>:
         _________________
        |_New_York______|V|_________________  <- input  with a table link and a down arrow
        |_City__________|_State_|_Country_|_| <- header of the table
        | Montreal      |  QC   | Canada  |A| <- top arrow of the scroll
        |>New York     <|  NY   | US      | | <- selected row
        | Washington    |  DC   | US      |X| <- cursor scroll
        | San Francisco |  CA   | US      | |
        |_Toronto_______|__ON___|_Canada__|V| <- bottom arrow of the scroll

 XXX * add for="" attribute to <input type="password"> so that you can
       link usernames and passwords. (Jonas Sicking)
 XXX * value for unchecked checkbox?
 XXX * A way to specify the default button - Michael Gratton
 XXX * <fieldset readonly>?
 XXX * action="" should be defined as not being relative to base URI
       see https://bugzilla.mozilla.org/show_bug.cgi?id=297761
 XXX * rephrase things so that an enumerated attribute puts the _element_ into
       various states, instead of the attribute
 XXX * dolphinling suggests having a way to mark certain parts of a
       form as being dependent on another (mutually exclusive parts of
       a form)
 XXX * make the spec more consistent about its use of "hexadecimal"
       and "base-sixteen", the order that 0-9 A-Z a-z is mentioned,
       and the detail to which the spec explains how to interpret a
       string as a hexadecimal number.
 XXX * expose the form data set, either as an object (on which one can
       invoke the JSON serialiser), or in the form of a method on
       HTMLFormElement that returns the form data set serialised
       according to a particular encoding (defaulting to the form's
       enctype="" one, probably). This would allow forms to be used
       with XHR-like systems without having to manually construct the
       form data set the way that is done today.
 XXX * become more consistent about what markup we use to mark up
       productions (nothing? <i>? <code>?)
 XXX * should check all cases of 'active document' and change the
       relevant ones to 'fully active document'.
 XXX * use <code>Document</code> consistently instead of 'document'.
 XXX * s/raise/throw/g
 XXX * be clearer about arrays/lists/collections being zero-based
       despite using the term "/index/th".
--></body></html>
--- NEW FILE: the-canvas-element.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4.8.11 The canvas element &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...1406 lines suppressed...]
  resolution that differs from the CSS pixel resolution. (On screens,
  CSS pixels have a resolution of 96ppi, but in general the CSS pixel
  resolution depends on the reading distance.) If both attributes are
  specified, then one of the following statements must be true:</p><ul><li><span title=""><var title="">specified width</var> - 0.5 &#8804;
             <var title="">specified height</var> * <var title="">target ratio</var> &#8804;
             <var title="">specified width</var> + 0.5</span></li>

   <li><span title=""><var title="">specified height</var> - 0.5 &#8804;
             <var title="">specified width</var> / <var title="">target ratio</var> &#8804;
             <var title="">specified height</var> + 0.5</span></li>

   <li><span title=""><var title="">specified height</var> = <var title="">specified width</var> = 0</span></li>

  </ul><p>The <var title="">target ratio</var> is the ratio of the
  intrinsic width to the intrinsic height in the resource. The <var title="">specified width</var> and <var title="">specified
  height</var> are the values of the <code title="attr-dim-width"><a href="#attr-dim-width">width</a></code> and <code title="attr-dim-height"><a href="#attr-dim-height">height</a></code> attributes respectively.</p><p>The two attributes must be omitted if the resource in question
  does not have both an intrinsic width and an intrinsic height.</p><p>If the two attributes are both zero, it indicates that the
  element is not intended for the user (e.g. it might be a part of a
  service to count page views).</p><p class="note">The dimension attributes are not intended to be used
  to stretch the image.</p></body></html>
--- NEW FILE: iana-considerations.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>IANA considerations &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="no.html" title="12 Things that you can't do with this specification because they are better handled using other technologies that are further described herein" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="index.html" title="Index" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="no.html">&#8592; 12 Things that you can't do with this specification because they are better handled using other technologies that are further described herein</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="index.html">Index &#8594;</a>
  </div>

  <h2 class="no-num" id="iana-considerations">IANA considerations</h2><p class="XXX annotation"><b>Status: </b><i>First draft</i></p><!-- http://www.w3.org/2002/06/registering-mediatype.html --><p>This registration is for community review and will be submitted
  to the IESG for review, approval, and registration with IANA.</p><h3 id="text-html"><span class="secno">12.1 </span><dfn><code>text/html</code></dfn></h3><!--
   To: ietf-types@iana.org
   Subject: Registration of media type text/html
  --><!--
    Obsoletes:
    http://www.ietf.org/rfc/rfc2854
   --><dl><dt>Type name:</dt>
   <dd>text</dd>
   <dt>Subtype name:</dt>
   <dd>html</dd>
   <dt>Required parameters:</dt>
   <dd>No required parameters</dd>
   <dt>Optional parameters:</dt>
   <dd>
    <dl><dt><code title="">charset</code></dt>
     <dd>
      <p>The <code title="">charset</code> parameter may be provided
      to definitively specify the <a href="#document-s-character-encoding">document's character
      encoding</a>, overriding any <a href="semantics.html#character-encoding-declaration" title="character encoding
      declaration">character encoding declarations</a> in the
      document. The parameter's value must be the name of the
      character encoding used to serialize the file, must be a valid
      character encoding name, and must be the preferred name for that
      encoding. <a href="references.html#refsIANACHARSET">[IANACHARSET]</a></p>
     </dd>
    </dl></dd>
   <dt>Encoding considerations:</dt>
   <dd>See the section on <a href="semantics.html#character-encoding-declaration" title="character encoding
   declaration">character encoding declarations</a>.</dd>
   <dt>Security considerations:</dt>
   <dd>

    <p>Entire novels have been written about the security
    considerations that apply to HTML documents. Many are listed in
    this document, to which the reader is referred for more
    details. Some general concerns bear mentioning here, however:</p>

    <p>HTML is scripted language, and has a large number of APIs (some
    of which are described in this document). Script can expose the
    user to potential risks of information leakage, credential
    leakage, cross-site scripting attacks, cross-site request
    forgeries, and a host of other problems. While the designs in this
    specification are intended to be safe if implemented correctly, a
    full implementation is a massive undertaking and, as with any
    software, user agents are likely to have security bugs.</p>

    <p>Even without scripting, there are specific features in HTML
    which, for historical reasons, are required for broad
    compatibility with legacy content but that expose the user to
    unfortunate security problems. In particular, the <code><a href="text-level-semantics.html#the-img-element">img</a></code>
    element can be used in conjunction with some other features as a
    way to effect a port scan from the user's location on the
    Internet. This can expose local network topologies that the
    attacker would otherwise not be able to determine.</p>

   </dd>
   <dt>Interoperability considerations:</dt>
   <dd>
    Rules for processing both conforming and non-conforming content
    are defined in this specification.
   </dd>
   <dt>Published specification:</dt>
   <dd>
    This document is the relevant specification. Labeling a resource
    with the <code><a href="#text-html">text/html</a></code> type asserts that the resource is
    an <a href="dom.html#html-documents" title="HTML documents">HTML document</a> using
    <a href="syntax.html#syntax">the HTML syntax</a>.
   </dd>
   <dt>Applications that use this media type:</dt>
   <dd>
    Web browsers, tools for processing Web content, HTML authoring
    tools, search engines, validators.
   </dd>
   <dt>Additional information:</dt>
   <dd>
    <dl><dt>Magic number(s):</dt>
     <dd>No sequence of bytes can uniquely identify an HTML
     document. More information on detecting HTML documents is
     available in the Content-Type Processing Model specification. <a href="references.html#refsMIMESNIFF">[MIMESNIFF]</a></dd>
     <dt>File extension(s):</dt>
     <dd>"<code title="">html</code>" and "<code title="">htm</code>"
     are commonly, but certainly not exclusively, used as the
     extension for HTML documents.</dd>
     <dt>Macintosh file type code(s):</dt>
     <dd><code title="">TEXT</code></dd>
    </dl></dd>
   <dt>Person &amp; email address to contact for further information:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Intended usage:</dt>
   <dd>Common</dd>
   <dt>Restrictions on usage:</dt>
   <dd>No restrictions apply.</dd>
   <dt>Author:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Change controller:</dt>
   <dd>W3C and WHATWG</dd>
  </dl><p>Fragment identifiers used with <code><a href="#text-html">text/html</a></code> resources
  refer to <a href="#the-indicated-part-of-the-document">the indicated part of the document</a>.</p><h3 id="application-xhtml-xml"><span class="secno">12.2 </span><dfn><code>application/xhtml+xml</code></dfn></h3><!--
   To: ietf-types@iana.org
   Subject: Registration of media type application/xhtml+xml
  --><!--
    Obsoletes:
    http://www.ietf.org/rfc/rfc3236.txt
   --><dl><dt>Type name:</dt>
   <dd>application</dd>
   <dt>Subtype name:</dt>
   <dd>xhtml+xml</dd>
   <dt>Required parameters:</dt>
   <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
   <dt>Optional parameters:</dt>
   <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
   <dt>Encoding considerations:</dt>
   <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
   <dt>Security considerations:</dt>
   <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
   <dt>Interoperability considerations:</dt>
   <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
   <dt>Published specification:</dt>
   <dd>
    Labeling a resource with the <code><a href="#application-xhtml-xml">application/xhtml+xml</a></code>
    type asserts that the resource is an XML document that likely has
    a root element from the <a href="#html-namespace-0">HTML namespace</a>. As such, the
    relevant specifications are the XML specification, the Namespaces
    in XML specification, and this specification. <a href="references.html#refsXML">[XML]</a> <a href="references.html#refsXMLNS">[XMLNS]</a>
   </dd>
   <dt>Applications that use this media type:</dt>
   <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
   <dt>Additional information:</dt>
   <dd>
    <dl><dt>Magic number(s):</dt>
     <dd>Same as for <code>application/xml</code> <a href="references.html#refsRFC3023">[RFC3023]</a></dd>
     <dt>File extension(s):</dt>
     <dd>"<code title="">xhtml</code>" and "<code title="">xht</code>"
     are sometimes used as extensions for XML resources that have a
     root element from the <a href="#html-namespace-0">HTML namespace</a>.</dd>
     <dt>Macintosh file type code(s):</dt>
     <dd><code title="">TEXT</code></dd>
    </dl></dd>
   <dt>Person &amp; email address to contact for further information:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Intended usage:</dt>
   <dd>Common</dd>
   <dt>Restrictions on usage:</dt>
   <dd>No restrictions apply.</dd>
   <dt>Author:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Change controller:</dt>
   <dd>W3C and WHATWG</dd>
  </dl><p>Fragment identifiers used with <code><a href="#application-xhtml-xml">application/xhtml+xml</a></code>
  resources have the same semantics as with any <a href="infrastructure.html#xml-mime-type">XML MIME
  type</a>. <a href="references.html#refsRFC3023">[RFC3023]</a></p><h3 id="text-cache-manifest"><span class="secno">12.3 </span><dfn><code>text/cache-manifest</code></dfn></h3><!--
   To: ietf-types@iana.org
   Subject: Registration of media type text/cache-manifest
  --><dl><dt>Type name:</dt>
   <dd>text</dd>
   <dt>Subtype name:</dt>
   <dd>cache-manifest</dd>
   <dt>Required parameters:</dt>
   <dd>No parameters</dd>
   <dt>Optional parameters:</dt>
   <dd>No parameters</dd>
   <dt>Encoding considerations:</dt>
   <dd>Always UTF-8.</dd>
   <dt>Security considerations:</dt>
   <dd>
    <p>Cache manifests themselves pose no immediate risk unless
    sensitive information is included within the
    manifest. Implementations, however, are required to follow
    specific rules when populating a cache based on a cache manifest,
    to ensure that certain origin-based restrictions are
    honored. Failure to correctly implement these rules can result in
    information leakage, cross-site scripting attacks, and the
    like.</p>
   </dd>
   <dt>Interoperability considerations:</dt>
   <dd>
    Rules for processing both conforming and non-conforming content
    are defined in this specification.
   </dd>
   <dt>Published specification:</dt>
   <dd>
    This document is the relevant specification.
   </dd>
   <dt>Applications that use this media type:</dt>
   <dd>
    Web browsers.
   </dd>
   <dt>Additional information:</dt>
   <dd>
    <dl><dt>Magic number(s):</dt>
     <dd>Cache manifests begin with the string "<code title="">CACHE
     MANIFEST</code>", followed by either a U+0020 SPACE character, a
     U+0009 CHARACTER TABULATION (tab) character, a U+000A LINE FEED
     (LF) character, or a U+000D CARRIAGE RETURN (CR) character.</dd>
     <dt>File extension(s):</dt>
     <dd>"<code title="">manifest</code>"</dd>
     <dt>Macintosh file type code(s):</dt>
     <dd>No specific Macintosh file type codes are recommended for this type.</dd>
    </dl></dd>
   <dt>Person &amp; email address to contact for further information:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Intended usage:</dt>
   <dd>Common</dd>
   <dt>Restrictions on usage:</dt>
   <dd>No restrictions apply.</dd>
   <dt>Author:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Change controller:</dt>
   <dd>W3C and WHATWG</dd>
  </dl><p>Fragment identifiers have no meaning with
  <code><a href="#text-cache-manifest">text/cache-manifest</a></code> resources.</p><h3 id="text-ping"><span class="secno">12.4 </span><dfn><code>text/ping</code></dfn></h3><!--
   To: ietf-types@iana.org
   Subject: Registration of media type text/ping
  --><dl><dt>Type name:</dt>
   <dd>text</dd>
   <dt>Subtype name:</dt>
   <dd>ping</dd>
   <dt>Required parameters:</dt>
   <dd>No parameters</dd>
   <dt>Optional parameters:</dt>
   <dd>No parameters</dd>
   <dt>Encoding considerations:</dt>
   <dd>Not applicable.</dd>
   <dt>Security considerations:</dt>
   <dd>
    <p>If used exclusively in the fashion described in the context of
    <a href="#hyperlink-auditing">hyperlink auditing</a>, this type introduces no new
    security concerns.</p>
   </dd>
   <dt>Interoperability considerations:</dt>
   <dd>
    Rules applicable to this type are defined in this specification.
   </dd>
   <dt>Published specification:</dt>
   <dd>
    This document is the relevant specification.
   </dd>
   <dt>Applications that use this media type:</dt>
   <dd>
    Web browsers.
   </dd>
   <dt>Additional information:</dt>
   <dd>
    <dl><dt>Magic number(s):</dt>
     <dd><code><a href="#text-ping">text/ping</a></code> resources always consist of the four
     bytes 0x50 0x49 0x4E 0x47 (ASCII "PING").</dd>
     <dt>File extension(s):</dt>
     <dd>No specific file extension is recommended for this type.</dd>
     <dt>Macintosh file type code(s):</dt>
     <dd>No specific Macintosh file type codes are recommended for this type.</dd>
    </dl></dd>
   <dt>Person &amp; email address to contact for further information:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Intended usage:</dt>
   <dd>Common</dd>
   <dt>Restrictions on usage:</dt>
   <dd>Only intended for use with HTTP POST requests generated as part
   of a Web browser's processing of the <code title="attr-hyperlink-ping"><a href="history.html#ping">ping</a></code> attribute.</dd>
   <dt>Author:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Change controller:</dt>
   <dd>W3C and WHATWG</dd>
  </dl><p>Fragment identifiers have no meaning with
  <code><a href="#text-ping">text/ping</a></code> resources.</p><h3 id="application-microdata-json"><span class="secno">12.5 </span><dfn><code>application/microdata+json</code></dfn></h3><!--
   To: ietf-types@iana.org
   Subject: Registration of media type application/microdata+json
  --><dl><dt>Type name:</dt>
   <dd>application</dd>
   <dt>Subtype name:</dt>
   <dd>microdata+json</dd>
   <dt>Required parameters:</dt>
   <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
   <dt>Optional parameters:</dt>
   <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
   <dt>Encoding considerations:</dt>
   <dd>Always UTF-8.</dd>
   <dt>Security considerations:</dt>
   <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
   <dt>Interoperability considerations:</dt>
   <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
   <dt>Published specification:</dt>
   <dd>

    Labeling a resource with the
    <code><a href="#application-microdata-json">application/microdata+json</a></code> type asserts that the
    resource is a JSON text that consists of an object with a single
    entry called "<code title="">items</code>" consisting of an array
    of entries, each of which consists of an object with two entries,
    one called "<code title="">type</code>" whose value is an array of
    strings, and one called "<code title="">properties</code>" whose
    value is an object whose entries each have a value consisting of
    an array of either objects or strings, the objects being of the
    same form as the objects in the aforementioned "<code title="">items</code>" entry. As such, the relevant specifications
    are the JSON specification and this specification. <a href="references.html#refsJSON">[JSON]</a>

   </dd>
   <dt>Applications that use this media type:</dt>
   <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
   <dt>Additional information:</dt>
   <dd>
    <dl><dt>Magic number(s):</dt>
     <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
     <dt>File extension(s):</dt>
     <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
     <dt>Macintosh file type code(s):</dt>
     <dd>Same as for <code>application/json</code> <a href="references.html#refsJSON">[JSON]</a></dd>
    </dl></dd>
   <dt>Person &amp; email address to contact for further information:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Intended usage:</dt>
   <dd>Common</dd>
   <dt>Restrictions on usage:</dt>
   <dd>No restrictions apply.</dd>
   <dt>Author:</dt>
   <dd>Ian Hickson &lt;ian@hixie.ch&gt;</dd>
   <dt>Change controller:</dt>
   <dd>W3C and WHATWG</dd>
  </dl><p>Fragment identifiers used with
  <code><a href="#application-microdata-json">application/microdata+json</a></code> resources have the same
  semantics as when used with <code>application/json</code>. <a href="references.html#refsJSON">[JSON]</a></p></body></html>
--- NEW FILE: forms.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4.10 Forms &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...3021 lines suppressed...]
 &lt;input type=text name=t&gt;
 &lt;input type=search name=q&gt;
 &lt;input type=submit&gt;
&lt;/form&gt;</pre><p>If the user types in "cats" in the first field and "fur" in the
  second, and then hits the submit button, then the user agent will
  load <code title="">.../find.cgi?t=cats&amp;q=fur</code>.</p><p>On the other hand, consider this form:</p><pre>&lt;form action="/find.cgi" method=post enctype="multipart/form-data"&gt;
 &lt;input type=text name=t&gt;
 &lt;input type=search name=q&gt;
 &lt;input type=submit&gt;
&lt;/form&gt;</pre><p>Given the same user input, the result on submission is quite
  different: the user agent instead does an HTTP POST to the given
  URL, with as the entity body something like the following text:</p><pre>------kYFrd4jNJEgCervE
Content-Disposition: form-data; name="t"

cats
------kYFrd4jNJEgCervE
Content-Disposition: form-data; name="q"

fur
------kYFrd4jNJEgCervE--</pre></body></html>
--- NEW FILE: interactive-elements.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4.11 Interactive elements &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...3206 lines suppressed...]
   on the two paragraph elements separately:</p>

   <pre>&lt;article lang="en-US"&gt;
 &lt;h1&gt;My use of language and my cats&lt;/h1&gt;
 &lt;p&gt;My cat's behavior hasn't changed much since her absence, except
 that she plays her new physique to the neighbors regularly, in an
 attempt to get pets.&lt;/p&gt;
 &lt;div lang="en-GB"&gt;
  &lt;p&gt;My other cat, coloured black and white, is a sweetie. He followed
  us to the pool today, walking down the pavement with us. Yesterday
  he apparently visited our neighbours. I wonder if he recognises that
  their flat is a mirror image of ours.&lt;/p&gt;
  &lt;p&gt;Hm, I just noticed that in the last paragraph I used British
  English. But I'm supposed to write in American English. So I
  shouldn't say "pavement" or "flat" or "colour"...&lt;/p&gt;
 &lt;/div&gt;
 &lt;p&gt;I should say "sidewalk" and "apartment" and "color"!&lt;/p&gt;
&lt;/article&gt;</pre>

  </div></body></html>
--- NEW FILE: editing.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>7 User Interaction &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...1294 lines suppressed...]

   
   
   
   
   
   

   
   
   
   
   
   

  </dl><!--
XXX Once we resolve the style="" issue, address these:
 "forecolor", "hilitecolor", "fontname", "fontsize", "justifyleft",
 "justifycenter", "justifyright", "justifyfull", "indent", "outdent"
--></body></html>
--- NEW FILE: video.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4.8.7 The video element &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...1213 lines suppressed...]
     </td><td>The <a href="#current-playback-position">current playback position</a> changed as part of normal playback or in an especially interesting way, for example discontinuously.
     </td><td>
    </td></tr><tr><td><dfn id="event-ended" title="event-ended"><code>ended</code></dfn>
     </td><td><code>Event</code>
     </td><td>Playback has stopped because the end of the <a href="#media-resource">media resource</a> was reached.
     </td><td><code title="dom-media-currentTime"><a href="#dom-media-currenttime">currentTime</a></code> equals the end of the <a href="#media-resource">media resource</a>; <code title="dom-media-ended"><a href="#dom-media-ended">ended</a></code> is true.

   </td></tr></tbody><tbody><tr><td><dfn id="event-ratechange" title="event-ratechange"><code>ratechange</code></dfn>
     </td><td><code>Event</code>
     </td><td>Either the <code title="dom-media-defaultPlaybackRate"><a href="#dom-media-defaultplaybackrate">defaultPlaybackRate</a></code> or the <code title="dom-media-playbackRate"><a href="#dom-media-playbackrate">playbackRate</a></code> attribute has just been updated.
     </td><td>
    </td></tr><tr><td><dfn id="event-durationchange" title="event-durationchange"><code>durationchange</code></dfn>
     </td><td><code>Event</code>
     </td><td>The <code title="dom-media-duration"><a href="#dom-media-duration">duration</a></code> attribute has just been updated.
     </td><td>
    </td></tr><tr><td><dfn id="event-volumechange" title="event-volumechange"><code>volumechange</code></dfn>
     </td><td><code>Event</code>
     </td><td>Either the <code title="dom-media-volume"><a href="#dom-media-volume">volume</a></code> attribute or the <code title="dom-media-muted"><a href="#dom-media-muted">muted</a></code> attribute has changed. Fired after the relevant attribute's setter has returned.
     </td><td>
  </td></tr></tbody></table></body></html>
--- NEW FILE: browsers.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>6 Web browsers &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="microdata.html" title="5 Microdata" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="offline.html" title="6.7 Offline Web applications" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="microdata.html">&#8592; 5 Microdata</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="offline.html">6.7 Offline Web applications &#8594;</a>
  </div>

  <h2 id="browsers"><span class="secno">6 </span>Web browsers</h2><h3 id="windows"><span class="secno">6.1 </span>Browsing contexts</h3><p>A <dfn id="browsing-context">browsing context</dfn> is an environment in which
  <code>Document</code> objects are presented to the user.</p><p class="note">A tab or window in a Web browser typically contains
  a <a href="#browsing-context">browsing context</a>, as does an <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code>.</p><p>Each <a href="#browsing-context">browsing context</a> has a corresponding
  <code><a href="#windowproxy">WindowProxy</a></code> object.</p><p>The collection of <code>Document</code>s is the <a href="#browsing-context">browsing
  context</a>'s <a href="history.html#session-history">session history</a>. At any time, one
  <code>Document</code> in each <a href="#browsing-context">browsing context</a> is
  designated the <dfn id="active-document">active document</dfn>.</p><p>Each <code>Document</code> has a collection of one or more <a href="#view" title="view">views</a>.</p><p>A <dfn id="view">view</dfn> is a user agent interface tied to a particular
  media used for the presentation of a particular
  <code>Document</code> object in some media. A view may be
  interactive. Each view is represented by an
  <code>AbstractView</code> object. <a href="references.html#refsDOMVIEWS">[DOMVIEWS]</a></p><p>The main <a href="#view">view</a> through which a user primarily
  interacts with a user agent is the <dfn id="default-view">default view</dfn>. The
  <code>AbstractView</code> object that represents this view  is referred to as the <code>Document</code>'s
  <code><a href="#window">Window</a></code> object. <code><a href="#windowproxy">WindowProxy</a></code> objects forward
  everything to the <a href="#active-document">active document</a>'s <a href="#default-view">default
  view</a>'s <code><a href="#window">Window</a></code> object.</p><p class="note">The <code title="dom-document">document</code>
  attribute of an <code>AbstractView</code> object representing a
  <a href="#view">view</a> gives the view's corresponding
  <code>Document</code> object. <a href="references.html#refsDOMVIEWS">[DOMVIEWS]</a></p><p class="note">In general, there is a 1-to-1 mapping from the
  <code><a href="#window">Window</a></code> object to the <code>Document</code> object. In
  one particular case, a set of <a href="#view" title="view">views</a> can be
  reused for the presentation of a second <code>Document</code> in the
  same <a href="#browsing-context">browsing context</a>, such that the mapping is then
  2:1. This occurs when a <a href="#browsing-context">browsing context</a> is <a href="#navigate" title="navigate">navigated</a> from the initial
  <code><a href="#about:blank">about:blank</a></code> <code>Document</code> to another, with
  <a href="#replacement-enabled">replacement enabled</a>.</p><p class="note">A typical Web browser has one obvious
  <a href="#view">view</a> per <code>Document</code>: the browser's window
  (screen media). This is typically the <a href="#default-view">default view</a>. If
  a page is printed, however, a second view becomes evident, that of
  the print media. The two views always share the same underlying
  <code>Document</code> object, but they have a different presentation
  of that object. A speech browser might have a different
  <a href="#default-view">default view</a>, using the speech media.</p><p class="note">A <code>Document</code> does not necessarily have a
  <a href="#browsing-context">browsing context</a> associated with it. In particular,
  data mining tools are likely to never instantiate browsing
  contexts.</p><hr><p>A <a href="#browsing-context">browsing context</a> can have a <dfn id="creator-browsing-context">creator browsing
  context</dfn>, the <a href="#browsing-context">browsing context</a> that was
  responsible for its creation. </p><p>If a <a href="#browsing-context">browsing context</a> <var title="">A</var> has a
  <a href="#creator-browsing-context">creator browsing context</a>, then the
  <code>Document</code> that was the <a href="#active-document">active document</a> of
  that <a href="#creator-browsing-context">creator browsing context</a> at the time <var title="">A</var> was created is the <dfn id="creator-document">creator
  <code>Document</code></dfn>.</p><h4 id="nested-browsing-contexts"><span class="secno">6.1.1 </span>Nested browsing contexts</h4><p>Certain elements (for example, <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements) can
  instantiate further <a href="#browsing-context" title="browsing context">browsing
  contexts</a>. These are called <dfn id="nested-browsing-context" title="nested browsing
  context">nested browsing contexts</dfn>. If a browsing context <var title="">P</var> has an element <var title="">E</var> in one of its
  <code>Document</code>s <var title="">D</var> that nests another
  browsing context <var title="">C</var> inside it, then <var title="">P</var> is said to be the <dfn id="parent-browsing-context">parent browsing
  context</dfn> of <var title="">C</var>, <var title="">C</var> is
  said to be a <dfn id="child-browsing-context">child browsing context</dfn> of <var title="">P</var>, <var title="">C</var> is said to be <dfn id="browsing-context-nested-through" title="browsing context nested through">nested through</dfn> <var title="">D</var>, and <var title="">E</var> is said to be the
  <dfn id="browsing-context-container">browsing context container</dfn> of <var title="">C</var>.</p><p>A browsing context <var title="">A</var> is said to be an
  ancestor of a browsing context <var title="">B</var> if there exists
  a browsing context <var title="">A'</var> that is a <a href="#child-browsing-context">child
  browsing context</a> of <var title="">A</var> and that is itself
  an ancestor of <var title="">B</var>, or if there is a browsing
  context <var title="">P</var> that is a <a href="#child-browsing-context">child browsing
  context</a> of <var title="">A</var> and that is the <a href="#parent-browsing-context">parent
  browsing context</a> of <var title="">B</var>.</p><p>The browsing context with no <a href="#parent-browsing-context">parent browsing context</a>
  is the <dfn id="top-level-browsing-context">top-level browsing context</dfn> of all the browsing
  contexts <a href="#nested-browsing-context" title="nested browsing context">nested</a> within
  it (either directly or indirectly through other nested browsing
  contexts).</p><p>The transitive closure of <a href="#parent-browsing-context" title="parent browsing
  context">parent browsing contexts</a> for a <a href="#nested-browsing-context">nested browsing
  context</a> gives the list of <dfn id="ancestor-browsing-context" title="ancestor browsing
  context">ancestor browsing contexts</dfn>.</p><p>A <code>Document</code> is said to be <dfn id="fully-active">fully active</dfn>
  when it is the <a href="#active-document">active document</a> of its <a href="#browsing-context">browsing
  context</a>, and either its browsing context is a <a href="#top-level-browsing-context">top-level
  browsing context</a>, or the <code>Document</code> <a href="#browsing-context-nested-through" title="browsing context nested through">through which</a> that
  browsing context is <a href="#nested-browsing-context" title="nested browsing
  context">nested</a> is itself <a href="#fully-active">fully active</a>.</p><p>Because they are nested through an element, <a href="#child-browsing-context" title="child
  browsing context">child browsing contexts</a> are always tied to
  a specific <code>Document</code> in their <a href="#parent-browsing-context">parent browsing
  context</a>. User agents must not allow the user to interact with
  <a href="#child-browsing-context" title="child browsing context">child browsing contexts</a>
  of elements that are in <code>Document</code>s that are not
  themselves <a href="#fully-active">fully active</a>.</p><p>A <a href="#nested-browsing-context">nested browsing context</a> can have a <a href="#seamless-browsing-context-flag">seamless
  browsing context flag</a> set, if it is embedded through an
  <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> element with a <code title="attr-iframe-seamless"><a href="text-level-semantics.html#attr-iframe-seamless">seamless</a></code> attribute.</p><h5 id="navigating-nested-browsing-contexts-in-the-dom"><span class="secno">6.1.1.1 </span>Navigating nested browsing contexts in the DOM</h5><dl class="domintro"><dt><var title="">window</var> . <code title="dom-top"><a href="#dom-top">top</a></code></dt>

   <dd>

    <p>Returns the <code><a href="#windowproxy">WindowProxy</a></code> for the <a href="#top-level-browsing-context">top-level browsing context</a>.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-parent"><a href="#dom-parent">parent</a></code></dt>

   <dd>

    <p>Returns the <code><a href="#windowproxy">WindowProxy</a></code> for the <a href="#parent-browsing-context">parent browsing context</a>.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-frameElement"><a href="#dom-frameelement">frameElement</a></code></dt>

   <dd>

    <p>Returns the <code>Element</code> for the <a href="#browsing-context-container">browsing context container</a>.</p>

    <p>Returns null if there isn't one.</p>

    <p>Throws a <code><a href="infrastructure.html#security_err">SECURITY_ERR</a></code> exception in cross-origin situations.</p>

   </dd>

  </dl><h4 id="auxiliary-browsing-contexts"><span class="secno">6.1.2 </span>Auxiliary browsing contexts</h4><p>It is possible to create new browsing contexts that are related
  to a <span>top level browsing context</span> without being nested
  through an element. Such browsing contexts are called <dfn id="auxiliary-browsing-context" title="auxiliary browsing context">auxiliary browsing
  contexts</dfn>. Auxiliary browsing contexts are always <a href="#top-level-browsing-context" title="top-level browsing context">top-level browsing
  contexts</a>.</p><p>An <a href="#auxiliary-browsing-context">auxiliary browsing context</a> has an <dfn id="opener-browsing-context">opener
  browsing context</dfn>, which is the <a href="#browsing-context">browsing context</a>
  from which the <a href="#auxiliary-browsing-context">auxiliary browsing context</a> was created,
  and it has a <dfn id="furthest-ancestor-browsing-context">furthest ancestor browsing context</dfn>, which is
  the <a href="#top-level-browsing-context">top-level browsing context</a> of the <a href="#opener-browsing-context">opener
  browsing context</a> when the <a href="#auxiliary-browsing-context">auxiliary browsing
  context</a> was created.</p><h5 id="navigating-auxiliary-browsing-contexts-in-the-dom"><span class="secno">6.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</h5><p>The <dfn id="dom-opener" title="dom-opener"><code>opener</code></dfn> DOM
  attribute on the <code><a href="#window">Window</a></code> object must return the
  <code><a href="#windowproxy">WindowProxy</a></code> object of the <a href="#browsing-context">browsing context</a>
  from which the current <a href="#browsing-context">browsing context</a> was created
  (its <a href="#opener-browsing-context">opener browsing context</a>), if there is one and it
  is still available.</p><h4 id="secondary-browsing-contexts"><span class="secno">6.1.3 </span>Secondary browsing contexts</h4><p>User agents may support <dfn id="secondary-browsing-context" title="secondary browsing
  context">secondary browsing contexts</dfn>, which are <a href="#browsing-context" title="browsing context">browsing contexts</a> that form part of
  the user agent's interface, apart from the main content area.</p><h4 id="browsing-context-names"><span class="secno">6.1.4 </span>Browsing context names</h4><p>Browsing contexts can have a <dfn id="browsing-context-name">browsing context name</dfn>. By
  default, a browsing context has no name (its name is not set).</p><p>A <dfn id="valid-browsing-context-name">valid browsing context name</dfn> is any string with at
  least one character that does not start with a U+005F LOW LINE
  character. (Names starting with an underscore are reserved for
  special keywords.)</p><p>A <dfn id="valid-browsing-context-name-or-keyword">valid browsing context name or keyword</dfn> is any string
  that is either a <a href="#valid-browsing-context-name">valid browsing context name</a> or that is
  an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for one of: <code title="">_blank</code>, <code title="">_self</code>, <code title="">_parent</code>, or <code title="">_top</code>.</p><h3 id="the-window-object"><span class="secno">6.2 </span>The <code><a href="#window">Window</a></code> object</h3><pre class="idl">[OverrideBuiltins]
interface <dfn id="window">Window</dfn> {
  // the current browsing context
  readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-window" title="dom-window">window</a>;
  readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-self" title="dom-self">self</a>;
           attribute DOMString <a href="#dom-name" title="dom-name">name</a>;
  [PutForwards=href] readonly attribute <a href="history.html#location">Location</a> <a href="#dom-location" title="dom-location">location</a>;
  readonly attribute <a href="history.html#history-0">History</a> <a href="#dom-history" title="dom-history">history</a>;
  readonly attribute <a href="editing.html#undomanager">UndoManager</a> <a href="#dom-undomanager" title="dom-undoManager">undoManager</a>;
  <a href="editing.html#selection-0">Selection</a> <a href="#dom-getselection" title="dom-getSelection">getSelection</a>();
  [Replaceable] readonly attribute <a href="#barprop">BarProp</a> <a href="#dom-window-locationbar" title="dom-window-locationbar">locationbar</a>;
  [Replaceable] readonly attribute <a href="#barprop">BarProp</a> <a href="#dom-window-menubar" title="dom-window-menubar">menubar</a>;
  [Replaceable] readonly attribute <a href="#barprop">BarProp</a> <a href="#dom-window-personalbar" title="dom-window-personalbar">personalbar</a>;
  [Replaceable] readonly attribute <a href="#barprop">BarProp</a> <a href="#dom-window-scrollbars" title="dom-window-scrollbars">scrollbars</a>;
  [Replaceable] readonly attribute <a href="#barprop">BarProp</a> <a href="#dom-window-statusbar" title="dom-window-statusbar">statusbar</a>;
  [Replaceable] readonly attribute <a href="#barprop">BarProp</a> <a href="#dom-window-toolbar" title="dom-window-toolbar">toolbar</a>;<!--
  [Replaceable] readonly attribute <span>BarProp</span> <span title="dom-window-directories">directories</span>; // legacy (Gecko-only) -->
  void <a href="#dom-window-close" title="dom-window-close">close</a>();
  void <a href="#dom-window-focus" title="dom-window-focus">focus</a>();
  void <a href="#dom-window-blur" title="dom-window-blur">blur</a>();

  // other browsing contexts
  readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-frames" title="dom-frames">frames</a>;
  readonly attribute unsigned long <a href="#dom-length" title="dom-length">length</a>;
  readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-top" title="dom-top">top</a>;
  [Replaceable] readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-opener" title="dom-opener">opener</a>;
  readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-parent" title="dom-parent">parent</a>;
  readonly attribute <span>Element</span> <a href="#dom-frameelement" title="dom-frameElement">frameElement</a>;
  <a href="#windowproxy">WindowProxy</a> <a href="#dom-open" title="dom-open">open</a>(optional in DOMString url, optional in DOMString target, optional in DOMString features, optional in DOMString replace);
  <a href="#dom-window-item" title="dom-window-item">getter</a> <a href="#windowproxy">WindowProxy</a> (in unsigned long index);
  <a href="#dom-window-nameditem" title="dom-window-namedItem">getter</a> <a href="#windowproxy">WindowProxy</a> (in DOMString name);

  // the user agent
  readonly attribute <a href="#navigator">Navigator</a> <a href="#dom-navigator" title="dom-navigator">navigator</a>; <!-- IE also has window.clientInformation === window.navigator -->
  readonly attribute <a href="offline.html#applicationcache">ApplicationCache</a> <a href="#dom-applicationcache" title="dom-applicationCache">applicationCache</a>;

  // user prompts
  void <a href="#dom-alert" title="dom-alert">alert</a>(in DOMString message);
  boolean <a href="#dom-confirm" title="dom-confirm">confirm</a>(in DOMString message);
  DOMString <a href="#dom-prompt" title="dom-prompt">prompt</a>(in DOMString message, optional in DOMString default);
  void <a href="#dom-print" title="dom-print">print</a>();
  any <a href="#dom-showmodaldialog" title="dom-showModalDialog">showModalDialog</a>(in DOMString url, optional in any argument<!--, optional in DOMString features-->);

  // <a href="comms.html#crossDocumentMessages">cross-document messaging</a>
  void <a href="#dom-window-postmessage-2" title="dom-window-postMessage-2">postMessage</a>(in any message, in DOMString targetOrigin);
  void <a href="#dom-window-postmessage-3" title="dom-window-postMessage-3">postMessage</a>(in any message, in <a href="comms.html#messageportarray">MessagePortArray</a> ports, in DOMString targetOrigin);

  // <a href="#event-handler-dom-attributes">event handler DOM attributes</a>
           attribute <a href="#function">Function</a> <a href="#handler-onabort" title="handler-onabort">onabort</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onafterprint" title="handler-window-onafterprint">onafterprint</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onbeforeprint" title="handler-window-onbeforeprint">onbeforeprint</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onbeforeunload" title="handler-window-onbeforeunload">onbeforeunload</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onblur" title="handler-window-onblur">onblur</a>;
           attribute <a href="#function">Function</a> <a href="#handler-oncanplay" title="handler-oncanplay">oncanplay</a>;
           attribute <a href="#function">Function</a> <a href="#handler-oncanplaythrough" title="handler-oncanplaythrough">oncanplaythrough</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onchange" title="handler-onchange">onchange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onclick" title="handler-onclick">onclick</a>;
           attribute <a href="#function">Function</a> <a href="#handler-oncontextmenu" title="handler-oncontextmenu">oncontextmenu</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondblclick" title="handler-ondblclick">ondblclick</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondrag" title="handler-ondrag">ondrag</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondragend" title="handler-ondragend">ondragend</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondragenter" title="handler-ondragenter">ondragenter</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondragleave" title="handler-ondragleave">ondragleave</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondragover" title="handler-ondragover">ondragover</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondragstart" title="handler-ondragstart">ondragstart</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondrop" title="handler-ondrop">ondrop</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ondurationchange" title="handler-ondurationchange">ondurationchange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onemptied" title="handler-onemptied">onemptied</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onended" title="handler-onended">onended</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onerror" title="handler-window-onerror">onerror</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onfocus" title="handler-window-onfocus">onfocus</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onformchange" title="handler-onformchange">onformchange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onforminput" title="handler-onforminput">onforminput</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onhashchange" title="handler-window-onhashchange">onhashchange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-oninput" title="handler-oninput">oninput</a>;
           attribute <a href="#function">Function</a> <a href="#handler-oninvalid" title="handler-oninvalid">oninvalid</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onkeydown" title="handler-onkeydown">onkeydown</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onkeypress" title="handler-onkeypress">onkeypress</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onkeyup" title="handler-onkeyup">onkeyup</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onload" title="handler-window-onload">onload</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onloadeddata" title="handler-onloadeddata">onloadeddata</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onloadedmetadata" title="handler-onloadedmetadata">onloadedmetadata</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onloadstart" title="handler-onloadstart">onloadstart</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onmessage" title="handler-window-onmessage">onmessage</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onmousedown" title="handler-onmousedown">onmousedown</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onmousemove" title="handler-onmousemove">onmousemove</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onmouseout" title="handler-onmouseout">onmouseout</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onmouseover" title="handler-onmouseover">onmouseover</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onmouseup" title="handler-onmouseup">onmouseup</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onmousewheel" title="handler-onmousewheel">onmousewheel</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onoffline" title="handler-window-onoffline">onoffline</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-ononline" title="handler-window-ononline">ononline</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onpause" title="handler-onpause">onpause</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onplay" title="handler-onplay">onplay</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onplaying" title="handler-onplaying">onplaying</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onpopstate" title="handler-window-onpopstate">onpopstate</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onprogress" title="handler-onprogress">onprogress</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onratechange" title="handler-onratechange">onratechange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onreadystatechange" title="handler-onreadystatechange">onreadystatechange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onredo" title="handler-window-onredo">onredo</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onresize" title="handler-window-onresize">onresize</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onscroll" title="handler-onscroll">onscroll</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onseeked" title="handler-onseeked">onseeked</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onseeking" title="handler-onseeking">onseeking</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onselect" title="handler-onselect">onselect</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onshow" title="handler-onshow">onshow</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onstalled" title="handler-onstalled">onstalled</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onstorage" title="handler-window-onstorage">onstorage</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onsubmit" title="handler-onsubmit">onsubmit</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onsuspend" title="handler-onsuspend">onsuspend</a>;
           attribute <a href="#function">Function</a> <a href="#handler-ontimeupdate" title="handler-ontimeupdate">ontimeupdate</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onundo" title="handler-window-onundo">onundo</a>;
           attribute <a href="#function">Function</a> <a href="#handler-window-onunload" title="handler-window-onunload">onunload</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onvolumechange" title="handler-onvolumechange">onvolumechange</a>;
           attribute <a href="#function">Function</a> <a href="#handler-onwaiting" title="handler-onwaiting">onwaiting</a>;
};</pre><!-- for more features to add here, look here:
 http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_window.asp
 http://www.mozilla.org/docs/dom/domref/dom_window_ref.html
 http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindow.idl - scrollBy, etc
 http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindowInternal.idl - DOM level 0
--><dl class="domintro"><dt><var title="">window</var> . <code title="dom-window"><a href="#dom-window">window</a></code></dt>
   <dt><var title="">window</var> . <code title="dom-frames"><a href="#dom-frames">frames</a></code></dt>
   <dt><var title="">window</var> . <code title="dom-self"><a href="#dom-self">self</a></code></dt>

   <dd>

    <p>These attributes all return <var title="">window</var>.</p>

   </dd>

  </dl><h4 id="apis-for-creating-and-navigating-browsing-contexts-by-name"><span class="secno">6.2.1 </span>APIs for creating and navigating browsing contexts by name</h4><dl class="domintro"><dt><var title="">window</var> = <var title="">window</var> . <code title="dom-open"><a href="#dom-open">open</a></code>( [ <var title="">url</var> [, <var title="">target</var> [, <var title="">features</var> [, <var title="">replace</var> ] ] ] ] )</dt>

   <dd>

    <p>Opens a window to show <var title="">url</var> (defaults to
    <code><a href="#about:blank">about:blank</a></code>), and returns it. The <var title="">target</var> argument gives the name of the new
    window. If a window exists with that name already, it is
    reused. The <var title="">replace</var> attribute, if true, means
    that whatever page is currently open in that window will be
    removed from the window's session history. The <var title="">features</var> argument is ignored.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-name"><a href="#dom-name">name</a></code> [ = <var title="">value</var> ]</dt>

   <dd>

    <p>Returns the name of the window.</p>

    <p>Can be set, to change the name.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-close">close</code>()</dt>

   <dd>

    <p>Closes the window.</p>

   </dd>

  </dl><h4 id="accessing-other-browsing-contexts"><span class="secno">6.2.2 </span>Accessing other browsing contexts</h4><dl class="domintro"><dt><var title="">window</var> . <code title="dom-length"><a href="#dom-length">length</a></code></dt>

   <dd>

    <p>Returns the number of <a href="#child-browsing-context" title="child browsing
    context">child browsing contexts</a>.</p>

   </dd>

   <dt><var title="">window</var>[<var title="">index</var>]</dt>

   <dd>

    <p>Returns the indicated <a href="#child-browsing-context">child browsing context</a>.</p>

   </dd>

  </dl><h4 id="named-access-on-the-window-object"><span class="secno">6.2.3 </span>Named access on the <code><a href="#window">Window</a></code> object</h4><dl class="domintro"><dt><var title="">window</var>[<var title="">name</var>]</dt>

   <dd>

    <p>Returns the indicated <a href="#child-browsing-context">child browsing context</a>.</p>

   </dd>

  </dl><h4 id="browser-interface-elements"><span class="secno">6.2.4 </span>Browser interface elements</h4><p>To allow Web pages to integrate with Web browsers, certain Web
  browser interface elements are exposed in a limited way to scripts
  in Web pages.</p><p>Each interface element is represented by a <code><a href="#barprop">BarProp</a></code>
  object:</p><pre class="idl">interface <dfn id="barprop">BarProp</dfn> {
           attribute boolean <a href="#dom-barprop-visible" title="dom-BarProp-visible">visible</a>;
};</pre><dl class="domintro"><dt><var title="">window</var> . <code title="dom-window-locationbar"><a href="#dom-window-locationbar">locationbar</a></code> . <code title="dom-BarProp-visible"><a href="#dom-barprop-visible">visible</a></code></dt>
   <dd>
    <p>Returns true if the location bar is visible; otherwise, returns false.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-window-menubar"><a href="#dom-window-menubar">menubar</a></code> . <code title="dom-BarProp-visible"><a href="#dom-barprop-visible">visible</a></code></dt>
   <dd>
    <p>Returns true if the menu bar is visible; otherwise, returns false.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-window-personalbar"><a href="#dom-window-personalbar">personalbar</a></code> . <code title="dom-BarProp-visible"><a href="#dom-barprop-visible">visible</a></code></dt>
   <!--<dt><var title="">window</var> . <code title="dom-window-directories">directories</code> . <code title="dom-BarProp-visible">visible</code></dt>-->
   <dd>
    <p>Returns true if the personal bar is visible; otherwise, returns false.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-window-scrollbars"><a href="#dom-window-scrollbars">scrollbars</a></code> . <code title="dom-BarProp-visible"><a href="#dom-barprop-visible">visible</a></code></dt>
   <dd>
    <p>Returns true if the scroll bars are visible; otherwise, returns false.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-window-statusbar"><a href="#dom-window-statusbar">statusbar</a></code> . <code title="dom-BarProp-visible"><a href="#dom-barprop-visible">visible</a></code></dt>
   <dd>
    <p>Returns true if the status bar is visible; otherwise, returns false.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-window-toolbar"><a href="#dom-window-toolbar">toolbar</a></code> . <code title="dom-BarProp-visible"><a href="#dom-barprop-visible">visible</a></code></dt>
   <dd>
    <p>Returns true if the tool bar is visible; otherwise, returns false.</p>
   </dd>

  </dl><h4 id="relaxing-the-same-origin-restriction"><span class="secno">6.2.5 </span>Relaxing the same-origin restriction</h4><dl class="domintro"><dt><var title="">document</var> . <code title="dom-document-domain"><a href="#dom-document-domain">domain</a></code> [ = <var title="">domain</var> ]</dt>

   <dd>

    <p>Returns the current domain used for security checks.</p>

    <p>Can be set to a value that removes subdomains, to allow pages
    on other subdomains of the same domain (if they do the same thing)
    to access each other.</p>

   </dd>

  </dl><p class="note">The <code title="dom-document-domain"><a href="#dom-document-domain">domain</a></code>
  attribute is used to enable pages on different hosts of a domain to
  access each others' DOMs.</p><h3 id="scripting"><span class="secno">6.3 </span>Scripting</h3><h4 id="introduction-2"><span class="secno">6.3.1 </span>Introduction</h4><p>Various mechanisms can cause author-provided executable code to
  run in the context of a document. These mechanisms include, but are
  probably not limited to:</p><ul><li>Processing of <code><a href="semantics.html#script">script</a></code> elements.</li>

   <li>Processing of inline <code title="javascript
   protocol"><a href="#javascript-protocol">javascript:</a></code> URLs (e.g. the <code title="attr-img-src"><a href="text-level-semantics.html#attr-img-src">src</a></code> attribute of <code><a href="text-level-semantics.html#the-img-element">img</a></code>
   elements, or an <code title="">@import</code> rule in a CSS
   <code><a href="semantics.html#the-style-element">style</a></code> element block).</li>

   <li>Event handlers, whether registered through the DOM using <code title="">addEventListener()</code>, by explicit <a href="#event-handler-content-attributes">event handler
   content attributes</a>, by <a href="#event-handler-dom-attributes">event handler DOM
   attributes</a>, or otherwise.</li>

   <li>Processing of technologies like XBL or SVG that have their own
   scripting features.</li>

  </ul><h4 id="events"><span class="secno">6.3.2 </span>Events</h4><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><!--test: <a href="http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A...%3Cscript%3E%0Aw(a%3Ddocument.implementation.createDocument(null%2C%20null%2C%20null))%3B%0Aw(a.appendChild(a.createElementNS('http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml'%2C%20'html')))%3B%0Aw(b%3Da.firstChild.appendChild(a.createElementNS('http%3A%2F%2Fwww.w3.org%2F1999%2Fxhtml'%2C%20'body')))%3B%0Aw(b.test%20%3D%20w)%3B%0Aw(b.setAttribute('onclick'%2C%20'test(%22fire%3A%20%22%20%2B%20event)'))%3B%0Aw(b.onclick)%3B%0Aw(e%3Da.createEvent('Event'))%3B%0Aw(e.initEvent('click'%2C%20false%2C%20false))%3B%0Aw(b.dispatchEvent(e))%3B%0A%3C%2Fscript%3E">test</a>--><p>Many objects can have <dfn id="event-handler-attributes-0">event handler attributes</dfn>
  specified. These act as bubbling event listeners for the object on
  which they are specified.</p><p>An <a href="#event-handler-attributes-0" title="event handler attributes">event handler
  attribute</a>, unless otherwise specified, can either have the
  value null or be set to a <code><a href="#function">Function</a></code> object. </p><p>Event handler attributes are exposed in one or two ways.</p><p>The first way, common to all event handler attributes, is as an
  <a href="#event-handler-dom-attributes" title="event handler DOM attributes">event handler DOM
  attribute</a>.</p><p>The second way is as an <a href="#event-handler-content-attributes" title="event handler content
  attributes">event handler content attribute</a>. Event handlers on
  <a href="infrastructure.html#html-elements">HTML elements</a> and some of the event handlers on
  <code><a href="#window">Window</a></code> objects are exposed in this way.</p><p><dfn id="event-handler-content-attributes">Event handler content attributes</dfn>, when specified, must
  contain valid JavaScript code matching the <code title="">FunctionBody</code> production. <a href="references.html#refsECMA262">[ECMA262]</a></p><p class="note">When an <a href="#event-handler-content-attributes" title="event handler content
  attributes">event handler content attribute</a> is set on an
  element owned by a <code>Document</code> that is not in a
  <a href="#browsing-context">browsing context</a>, the corresponding event handler
  attribute is not changed.</p><p class="note">Removing an <a href="#event-handler-content-attributes" title="event handler content
  attributes">event handler content attribute</a> does not reset
  the corresponding <a href="#event-handler-attributes-0" title="event handler attributes">event
  handler attribute</a>.</p><!--
  http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A...%3Cbody%20onload%3D%22w(%27pass%27)%22%3E%0A%3Cscript%3Edocument.body.removeAttribute(%27onload%27)%3B%3C%2Fscript%3E
  --><!-- v2: we should probably support HTML4's Content-Script-Type header here. --><h3 id="timers"><span class="secno">6.4 </span>Timers</h3><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><p>The <code title="dom-windowtimers-setTimeout"><a href="#dom-windowtimers-settimeout">setTimeout()</a></code>
  and <code title="dom-windowtimers-setInterval"><a href="#dom-windowtimers-setinterval">setInterval()</a></code>
  methods allow authors to schedule timer-based callbacks.</p><pre class="idl">[Supplemental, NoInterfaceObject]
interface <dfn id="windowtimers">WindowTimers</dfn> {
  long <a href="#dom-windowtimers-settimeout" title="dom-windowtimers-setTimeout">setTimeout</a>(in any handler, optional in any timeout, in any... args);
  void <a href="#dom-windowtimers-cleartimeout" title="dom-windowtimers-clearTimeout">clearTimeout</a>(in long handle);
  long <a href="#dom-windowtimers-setinterval" title="dom-windowtimers-setInterval">setInterval</a>(in any handler, optional in any timeout, in any... args);
  void <a href="#dom-windowtimers-clearinterval" title="dom-windowtimers-clearInterval">clearInterval</a>(in long handle);
};
<a href="#window">Window</a> implements <a href="#windowtimers">WindowTimers</a>;</pre><dl class="domintro"><dt><var title="">handle</var> = <var title="">window</var> . <code title="dom-windowtimers-setTimeout"><a href="#dom-windowtimers-settimeout">setTimeout</a></code>( <var title="">handler</var> [, <var title="">timeout</var> [, <var title="">arguments</var> ] ] )</dt>

   <dd>

    <p>Schedules a timeout to run <var title="">handler</var> after
    <var title="">timeout</var> milliseconds. Any <var title="">arguments</var> are passed straight through to the <var title="">handler</var>.</p>

   </dd>

   <dt><var title="">handle</var> = <var title="">window</var> . <code title="dom-windowtimers-setTimeout"><a href="#dom-windowtimers-settimeout">setTimeout</a></code>( <var title="">code</var> [, <var title="">timeout</var> ] )</dt>

   <dd>

    <p>Schedules a timeout to compile and run <var title="">code</var>
    after <var title="">timeout</var> milliseconds.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-windowtimers-clearTimeout"><a href="#dom-windowtimers-cleartimeout">clearTimeout</a></code>( <var title="">handle</var> )</dt>

   <dd>

    <p>Cancels the timeout set with <code title="dom-windowtimers-setTimeout"><a href="#dom-windowtimers-settimeout">setTimeout()</a></code> identified by <var title="">handle</var>.</p>

   </dd>

   <dt><var title="">handle</var> = <var title="">window</var> . <code title="dom-windowtimers-setInterval"><a href="#dom-windowtimers-setinterval">setInterval</a></code>( <var title="">handler</var> [, <var title="">timeout</var> [, <var title="">arguments</var> ] ] )</dt>

   <dd>

    <p>Schedules a timeout to run <var title="">handler</var> every
    <var title="">timeout</var> milliseconds. Any <var title="">arguments</var> are passed straight through to the <var title="">handler</var>.</p>

   </dd>

   <dt><var title="">handle</var> = <var title="">window</var> . <code title="dom-windowtimers-setInterval"><a href="#dom-windowtimers-setinterval">setInterval</a></code>( <var title="">code</var> [, <var title="">timeout</var> ] )</dt>

   <dd>

    <p>Schedules a timeout to compile and run <var title="">code</var>
    every <var title="">timeout</var> milliseconds.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-windowtimers-clearInterval"><a href="#dom-windowtimers-clearinterval">clearInterval</a></code>( <var title="">handle</var> )</dt>

   <dd>

    <p>Cancels the timeout set with <code title="dom-windowtimers-setInterval"><a href="#dom-windowtimers-setinterval">setInterval()</a></code> identified by <var title="">handle</var>.</p>

   </dd>

  </dl><p class="note">This API does not guarantee that timers will fire
  exactly on schedule. Delays due to CPU load, other tasks, etc, are
  to be expected.</p><h3 id="user-prompts"><span class="secno">6.5 </span>User prompts</h3><!--
   v2 ideas:
    * in-window modal dialogs
       - escape/enter handling
       - dragging the window out of the tab
    * in-window non-modal palettes
       - with a solution for the mobile space
  --><h4 id="simple-dialogs"><span class="secno">6.5.1 </span>Simple dialogs</h4><dl class="domintro"><dt><var title="">window</var> . <code title="dom-alert"><a href="#dom-alert">alert</a></code>(<var title="">message</var>)</dt>
   <dd>

    <p>Displays a modal alert with the given message, and waits for the user to dismiss it.</p>

    <p>A call to the <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
    method is implied when this method is invoked.</p>

   </dd>

   <dt><var title="">result</var> = <var title="">window</var> . <code title="dom-confirm"><a href="#dom-confirm">confirm</a></code>(<var title="">message</var>)</dt>
   <dd>

    <p>Displays a modal OK/Cancel prompt with the given message, waits
    for the user to dismiss it, and returns true if the user clicks OK
    and false if the user clicks Cancel.</p>

    <p>A call to the <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
    method is implied when this method is invoked.</p>

   </dd>

   <dt><var title="">result</var> = <var title="">window</var> . <code title="dom-prompt"><a href="#dom-prompt">prompt</a></code>(<var title="">message</var> [, <var title="">default</var>] )</dt>
   <dd>

    <p>Displays a modal text field prompt with the given message,
    waits for the user to dismiss it, and returns the value that the
    user entered. If the user cancels the prompt, then returns null
    instead. If the second argument is present, then the given value
    is used as a default.</p>

    <p>A call to the <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
    method is implied when this method is invoked.</p>

   </dd>

  </dl><h4 id="printing"><span class="secno">6.5.2 </span>Printing</h4><p class="XXX annotation"><b>Status: </b><i>First draft</i></p><dl class="domintro"><dt><var title="">window</var> . <code title="dom-print"><a href="#dom-print">print</a></code>()</dt>

   <dd>

    <p>Prompts the user to print the page.</p>

    <p>A call to the <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
    method is implied when this method is invoked.</p>

   </dd>

  </dl><h4 id="dialogs-implemented-using-separate-documents"><span class="secno">6.5.3 </span>Dialogs implemented using separate documents</h4><dl class="domintro"><dt><var title="">result</var> = <var title="">window</var> . <code title="dom-showModalDialog"><a href="#dom-showmodaldialog">showModalDialog</a></code>(<var title="">url</var> [, <var title="">argument</var>] )</dt>

   <dd>

    <p>Prompts the user with the given page, waits for that page to
    close, and returns the return value.</p>

    <p>A call to the <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
    method is implied when this method is invoked.</p>

   </dd>

  </dl><pre class="idl">[Supplemental, NoInterfaceObject] interface <dfn id="windowmodal">WindowModal</dfn> {
  readonly attribute any <a href="#dom-windowmodal-dialogarguments" title="dom-WindowModal-dialogArguments">dialogArguments</a>;
           attribute DOMString <a href="#dom-windowmodal-returnvalue" title="dom-WindowModal-returnValue">returnValue</a>;
};
<a href="#window">Window</a> implements <a href="#windowmodal">WindowModal</a>; /* sometimes */</pre><dl class="domintro"><dt><var title="">window</var> . <code title="dom-WindowModal-dialogArguments"><a href="#dom-windowmodal-dialogarguments">dialogArguments</a></code></dt>

   <dd>

    <p>Returns the <var title="">argument</var> argument that was
    passed to the <code title="dom-showModalDialog"><a href="#dom-showmodaldialog">showModalDialog()</a></code> method.</p>

   </dd>

   <dt><var title="">window</var> . <code title="dom-WindowModal-returnValue"><a href="#dom-windowmodal-returnvalue">returnValue</a></code> [ = <var title="">value</var> ]</dt>

   <dd>

    <p>Returns the current return value for the window.</p>

    <p>Can be set, to change the value that will be returned by the
    <code title="dom-showModalDialog"><a href="#dom-showmodaldialog">showModalDialog()</a></code>
    method.</p>

   </dd>

  </dl><p class="note">The <code title="dom-window-close"><a href="#dom-window-close">window.close()</a></code> method can be used to
  close the browsing context.</p><h3 id="system-state-and-capabilities"><span class="secno">6.6 </span>System state and capabilities</h3><pre class="idl">interface <dfn id="navigator">Navigator</dfn> {
  // objects implementing this interface also implement the interfaces given below
};
<a href="#navigator">Navigator</a> implements <a href="#navigatorid">NavigatorID</a>;
<a href="#navigator">Navigator</a> implements <a href="#navigatoronline">NavigatorOnLine</a>;
<a href="#navigator">Navigator</a> implements <a href="#navigatorabilities">NavigatorAbilities</a>;

[Supplemental, NoInterfaceObject]
interface <dfn id="navigatorid">NavigatorID</dfn> {<!--
  readonly attribute DOMString <span title="dom-navigator-appCodeName">appCodeName</span>;-->
  readonly attribute DOMString <a href="#dom-navigator-appname" title="dom-navigator-appName">appName</a>;
  readonly attribute DOMString <a href="#dom-navigator-appversion" title="dom-navigator-appVersion">appVersion</a>;
  readonly attribute DOMString <a href="#dom-navigator-platform" title="dom-navigator-platform">platform</a>;
  readonly attribute DOMString <a href="#dom-navigator-useragent" title="dom-navigator-userAgent">userAgent</a>;
};

[Supplemental, NoInterfaceObject]
interface <dfn id="navigatoronline">NavigatorOnLine</dfn> {
  readonly attribute boolean <a href="#dom-navigator-online" title="dom-navigator-onLine">onLine</a>;
};

[Supplemental, NoInterfaceObject]
interface <dfn id="navigatorabilities">NavigatorAbilities</dfn> {
  // content handler registration
  void <a href="#dom-navigator-registerprotocolhandler" title="dom-navigator-registerProtocolHandler">registerProtocolHandler</a>(in DOMString scheme, in DOMString url, in DOMString title);
  void <a href="#dom-navigator-registercontenthandler" title="dom-navigator-registerContentHandler">registerContentHandler</a>(in DOMString mimeType, in DOMString url, in DOMString title);
  void <a href="#dom-navigator-getstorageupdates" title="dom-navigator-getStorageUpdates">getStorageUpdates</a>();
<!--  v2: cookieEnabled geolocator javaEnabled mozIsLocallyAvailable preference
  readonly attribute <span>MimeTypeArray</span> <span title="dom-navigator-mimeTypes">mimeTypes</span>;
  readonly attribute <span>PluginArray</span> <span title="dom-navigator-plugins">plugins</span>;
  (the latter is used in a <video> element demo now, so we might need to pull this forward from v2!)
-->};</pre><h4 id="client-identification"><span class="secno">6.6.1 </span>Client identification</h4><p>In certain cases, despite the best efforts of the entire
  industry, Web browsers have bugs and limitations that Web authors
  are forced to work around.</p><p>This section defines a collection of attributes that can be used
  to determine, from script, the kind of user agent in use, in order
  to work around these issues.</p><p>Client detection should always be limited to detecting known
  current versions; future versions and unknown versions should always
  be assumed to be fully compliant.</p><dl class="domintro"><dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-appName"><a href="#dom-navigator-appname">appName</a></code></dt>
   <dd>
    <p>Returns the name of the browser.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-appVersion"><a href="#dom-navigator-appversion">appVersion</a></code></dt>
   <dd>
    <p>Returns the version of the browser.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-platform"><a href="#dom-navigator-platform">platform</a></code></dt>
   <dd>
    <p>Returns the name of the platform.</p>
   </dd>

   <dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-userAgent"><a href="#dom-navigator-useragent">userAgent</a></code></dt>
   <dd>
    <p>Returns the complete User-Agent header.</p>
   </dd>

  </dl><h4 id="custom-handlers"><span class="secno">6.6.2 </span>Custom scheme and content handlers</h4><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><p>The <dfn id="dom-navigator-registerprotocolhandler" title="dom-navigator-registerProtocolHandler"><code>registerProtocolHandler()</code></dfn>
  method allows Web sites to register themselves as possible handlers
  for particular schemes. For example, an online fax service could
  register itself as a handler of the <code>fax:</code> scheme (<a href="references.html#refsRFC2806">[RFC2806]</a>), so that if the user clicks on
  such a link, he is given the opportunity to use that Web
  site. Analogously, the <dfn id="dom-navigator-registercontenthandler" title="dom-navigator-registerContentHandler"><code>registerContentHandler()</code></dfn>
  method allows Web sites to register themselves as possible handlers
  for content in a particular <a href="infrastructure.html#mime-type">MIME type</a>. For example, the same online
  fax service could register itself as a handler for
  <code>image/g3fax</code> files (<a href="references.html#refsRFC1494">[RFC1494]</a>), so that if the user has no
  native application capable of handling G3 Facsimile byte streams,
  his Web browser can instead suggest he use that site to view the
  image.</p><dl class="domintro"><dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-registerProtocolHandler"><a href="#dom-navigator-registerprotocolhandler">registerProtocolHandler</a></code>(<var title="">scheme</var>, <var title="">url</var>, <var title="">title</var>)</dt>
   <dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-registerContentHandler"><a href="#dom-navigator-registercontenthandler">registerContentHandler</a></code>(<var title="">mimeType</var>, <var title="">url</var>, <var title="">title</var>)</dt>

   <dd>

    <p>Registers a handler for the given scheme or content type, at
    the given URL, with the given title.</p>

    <p>The string "<code title="">%s</code>" in the URL is used as a
    placeholder for where to put the URL of the content to be
    handled.</p>

    <p>Throws a <code><a href="infrastructure.html#security_err">SECURITY_ERR</a></code> exception if the user agent
    blocks the registration (this might happen if trying to register
    as a handler for "http", for instance).</p>

    <p>Throws a <code><a href="infrastructure.html#syntax_err">SYNTAX_ERR</a></code> if the "<code title="">%s</code>" string is missing in the URL.</p>

   </dd>

  </dl><h4 id="manually-releasing-the-storage-mutex"><span class="secno">6.6.3 </span>Manually releasing the storage mutex</h4><dl class="domintro"><dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">getStorageUpdates</a></code>()</dt>

   <dd>

    <p>If a script uses the <code title="dom-document-cookie"><a href="#dom-document-cookie">document.cookie</a></code> API, or the
    <code title="dom-localStorage">localStorage</code> API, the
    browser will block other scripts from accessing cookies or storage
    until the first script finishes.</p>

    <p>Calling the <code title="dom-navigator-getStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
    method tells the user agent to unblock any other scripts that may
    be blocked, even though the script hasn't returned.</p>

    <p>Values of cookies and items in the <code>Storage</code> objects
    of <code title="dom-localStorage">localStorage</code> attributes
    can change after calling this method, whence its name.</p>

   </dd>

  </dl></body></html>
--- NEW FILE: the-xhtml-syntax.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>10 The XHTML syntax &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="named-character-references.html" title="9.2 Named character references" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="obsolete.html" title="11 Obsolete features" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="named-character-references.html">&#8592; 9.2 Named character references</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="obsolete.html">11 Obsolete features &#8594;</a>
  </div>

  <h2 id="the-xhtml-syntax"><span class="secno">10 </span><dfn id="xhtml">The XHTML syntax</dfn></h2><p class="note">This section only describes the rules for XML
  resources. Rules for <code><a href="iana-considerations.html#text-html">text/html</a></code> resources are discussed
  in the section above entitled "<a href="syntax.html#syntax">The HTML syntax</a>".</p><p>The syntax for using HTML with XML, whether in XHTML documents or
  embedded in other XML documents, is defined in the XML and
  Namespaces in XML specifications. <a href="references.html#refsXML">[XML]</a> <a href="references.html#refsXMLNS">[XMLNS]</a></p><p>This specification does not define any syntax-level requirements
  beyond those defined for XML proper.</p><p>XML documents may contain a <code>DOCTYPE</code> if desired, but
  this is not required to conform to this specification. This
  specification does not define a public or system identifier, nor
  provide a format DTD.</p><p class="note">According to the XML specification, XML processors
  are not guaranteed to process the external DTD subset referenced in
  the DOCTYPE. This means, for example, that using entity references
  for characters in XHTML documents is unsafe if they are defined in
  an external file (except for <code title="">&amp;lt;</code>, <code title="">&amp;gt;</code>, <code title="">&amp;amp;</code>, <code title="">&amp;quot;</code> and <code title="">&amp;apos;</code>).</p><h4 id="selectors"><span class="secno">10.1 </span>Selectors</h4><p>Attribute and element <em>names</em> of <a href="infrastructure.html#html-elements">HTML
  elements</a> in <a href="dom.html#html-documents">HTML documents</a> must be treated as
  <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a>.</p><p>Classes from the <code title="attr-class"><a href="dom.html#classes">class</a></code> attribute
  of <a href="infrastructure.html#html-elements">HTML elements</a> in documents that are in <a href="#quirks-mode">quirks
  mode</a> must be treated as <a href="infrastructure.html#ascii-case-insensitive">ASCII
  case-insensitive</a>.</p><p>Attribute selectors on an <a href="infrastructure.html#html-elements" title="HTML elements">HTML
  element</a> in an <a href="dom.html#html-documents" title="HTML documents">HTML
  document</a> must treat the <em>values</em> of attributes with
  the following names as <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a>:</p><!-- based on Mozilla's list, which was itself based on HTML4 --><!-- WebKit's was identical at the time of writing except as noted below --><ul class="brief"><li><code title="">accept</code>
   </li><li><code title="">accept-charset</code>
   </li><li><code title="">align</code>
   </li><li><code title="">alink</code>
   </li><li><code title="">axis</code>
   </li><li><code title="">bgcolor</code>
   </li><li><code title="">charset</code>
   </li><li><code title="">checked</code>
   </li><li><code title="">clear</code>
   </li><li><code title="">codetype</code>
   </li><li><code title="">color</code>
   </li><li><code title="">compact</code>
   </li><li><code title="">declare</code>
   </li><li><code title="">defer</code>
   </li><li><code title="">dir</code>
   </li><li><code title="">direction</code> <!-- not in webkit -->
   </li><li><code title="">disabled</code>
   </li><li><code title="">enctype</code>
   </li><li><code title="">face</code>
   </li><li><code title="">frame</code>
   </li><li><code title="">hreflang</code>
   </li><li><code title="">http-equiv</code>
   </li><li><code title="">lang</code>
   </li><li><code title="">language</code>
   </li><li><code title="">link</code>
   </li><li><code title="">media</code>
   </li><li><code title="">method</code>
   </li><li><code title="">multiple</code>
   </li><li><code title="">nohref</code>
   </li><li><code title="">noresize</code>
   </li><li><code title="">noshade</code>
   </li><li><code title="">nowrap</code>
   </li><li><code title="">readonly</code>
   </li><li><code title="">rel</code>
   </li><li><code title="">rev</code>
   </li><li><code title="">rules</code>
   </li><li><code title="">scope</code>
   </li><li><code title="">scrolling</code>
   </li><li><code title="">selected</code>
   </li><li><code title="">shape</code>
   </li><li><code title="">target</code>
   </li><li><code title="">text</code>
   </li><li><code title="">type</code>
   </li><li><code title="">valign</code>
   </li><li><code title="">valuetype</code>
   </li><li><code title="">vlink</code>
  </li></ul><p>All other <a href="infrastructure.html#html-elements">HTML elements</a> and all attribute names and
  values on <a href="infrastructure.html#html-elements">HTML elements</a> must be treated as
  <a href="infrastructure.html#case-sensitive">case-sensitive</a>.</p></body></html>
--- NEW FILE: offline.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>6.7 Offline Web applications &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="browsers.html" title="6 Web browsers" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="history.html" title="6.8 Session history and navigation" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="browsers.html">&#8592; 6 Web browsers</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="history.html">6.8 Session history and navigation &#8594;</a>
  </div>

  <h3 id="offline"><span class="secno">6.7 </span>Offline Web applications</h3><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><!-- v2 ideas for appcache:

     * A way to limit what gets download when the user agent is
       updating the application cache and it turns out the server has
       changed EVERY page because every page has a dynamic "site last
       modified" date on it.

       http://groups.google.com/group/gears-users/browse_thread/thread/efbd808325df607a/c73adb34f9b63cf7?hl=en&q=whatwg#c73adb34f9b63cf7


     * Multiuser appcaches.

       If the application code (HTML, JS, CSS) is all the same for two
       users, then appcache works for multiple users by just having
       the data for the users separate from the logic.

       This is the expected model for most apps. For example, your
       typical blog has just one set of CSS for all users.

       For systems where the user affects what HTML, JS, and CSS is
       served back, the spec as written pretty much requires that
       there be one app per user, and one generic "login" app that
       then redirects to one of those other apps - and where each app
       has a different base URL, separate manifest, etc.

       An alternative that we could explore in a future version is to
       have the manifest include a manifest name, and then have script
       that allows you to "activate" a particular manifest name for a
       given appcache.

       So each appcache group would be futher subdivided into named
       subgroups, and for a given manifest URL with such a group of
       subgroups, one subgroup would be the default one at a time. The
       inactive ones would just lie dormant, but and the active ones
       would act like now, but there'd be a scripted way to change the
       default (and maybe query what available variants exist for the
       current appcache), so that you could log back in as someone
       else by just making the script pick the other user's variant,
       and then reloading.

  --><h4 id="introduction-3"><span class="secno">6.7.1 </span>Introduction</h4><p><i>This section is non-normative.</i></p><p>In order to enable users to continue interacting with Web
  applications and documents even when their network connection is
  unavailable &#8212; for instance, because they are traveling outside
  of their ISP's coverage area &#8212; authors can provide a manifest
  which lists the files that are needed for the Web application to
  work offline and which causes the user's browser to keep a copy of
  the files for use offline.</p><p>To illustrate this, consider a simple clock applet consisting of
  an HTML page "<code title="">clock.html</code>", a CSS style sheet
  "<code title="">clock.css</code>", and a JavaScript script "<code title="">clock.js</code>".</p><p>Before adding the manifest, these three files might look like
  this:</p><pre>&lt;!-- clock.html --&gt;
&lt;!DOCTYPE HTML&gt;
&lt;html&gt;
 &lt;head&gt;
  &lt;title&gt;Clock&lt;/title&gt;
  &lt;script src="clock.js"&gt;&lt;/script&gt;
  &lt;link rel="stylesheet" href="clock.css"&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;p&gt;The time is: &lt;output id="clock"&gt;&lt;/output&gt;&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</pre><pre>/* clock.css */
output { font: 2em sans-serif; }</pre><pre>/* clock.js */
setTimeout(function () {
    document.getElementById('clock').value = new Date();
}, 1000);</pre><p>If the user tries to open the "<code title="">clock.html</code>"
  page while offline, though, the user agent (unless it happens to
  have it still in the local cache) will fail with an error.</p><p>The author can instead provide a manifest of the three files:</p><pre>CACHE MANIFEST
clock.html
clock.css
clock.js</pre><p>With a small change to the HTML file, the manifest (served as
  <code><a href="iana-considerations.html#text-cache-manifest">text/cache-manifest</a></code>) is linked to the application:</p><pre>&lt;!-- clock.html --&gt;
&lt;!DOCTYPE HTML&gt;
&lt;html manifest="clock.manifest"&gt;
 &lt;head&gt;
  &lt;title&gt;Clock&lt;/title&gt;
  &lt;script src="clock.js"&gt;&lt;/script&gt;
  &lt;link rel="stylesheet" href="clock.css"&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;p&gt;The time is: &lt;output id="clock"&gt;&lt;/output&gt;&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</pre><p>Now, if the user goes to the page, the browser will cache the
  files and make them available even when the user is offline.</p><h5 id="event-summary"><span class="secno">6.7.1.1 </span>Event summary</h5><p>When the user visits a page that declares a manifest, the browser
  will try to update the cache. It does this by fetching a copy of the
  manifest and, if the manifest has changed since the user agent last
  saw it, redownloading all the resources it mentions and caching them
  anew.</p><p>As this is going on, a number of events get fired to keep the
  script updated as to the state of the cache update, so that the user
  can be notified appropriately. The events are as follows:</p><table><thead><tr><th> Event name
     </th><th> Occasion
     </th><th> Next events
   </th></tr></thead><tbody><tr><td> <dfn id="event-appcache-checking" title="event-appcache-checking"><code>checking</code></dfn>
     </td><td> The user agent is checking for an update, or attempting to download the manifest for the first time.
     </td><td> <code title="event-appcache-noupdate"><a href="#event-appcache-noupdate">noupdate</a></code>, <code title="event-appcache-downloading"><a href="#event-appcache-downloading">downloading</a></code>, <code title="event-appcache-obsolete"><a href="#event-appcache-obsolete">obsolete</a></code>, <code title="event-appcache-error"><a href="#event-appcache-error">error</a></code>
    </td></tr><tr><td> <dfn id="event-appcache-noupdate" title="event-appcache-noupdate"><code>noupdate</code></dfn>
     </td><td> The manifest hadn't changed.
     </td><td> (Last event in sequence.)
    </td></tr><tr><td> <dfn id="event-appcache-downloading" title="event-appcache-downloading"><code>downloading</code></dfn>
     </td><td> The user agent has found an update and is fetching it, or is downloading the resources listed by the manifest for the first time.
     </td><td> <code title="event-appcache-progress"><a href="#event-appcache-progress">progress</a></code>, <code title="event-appcache-error"><a href="#event-appcache-error">error</a></code>, <code title="event-appcache-cached"><a href="#event-appcache-cached">cached</a></code>, <code title="event-appcache-updateready"><a href="#event-appcache-updateready">updateready</a></code>
    </td></tr><tr><td> <dfn id="event-appcache-progress" title="event-appcache-progress"><code>progress</code></dfn>
     </td><td> The user agent is downloading resources listed by the manifest.
     </td><td> <code title="event-appcache-progress"><a href="#event-appcache-progress">progress</a></code>, <code title="event-appcache-error"><a href="#event-appcache-error">error</a></code>, <code title="event-appcache-cached"><a href="#event-appcache-cached">cached</a></code>, <code title="event-appcache-updateready"><a href="#event-appcache-updateready">updateready</a></code>
    </td></tr><tr><td> <dfn id="event-appcache-cached" title="event-appcache-cached"><code>cached</code></dfn>
     </td><td> The resources listed in the manifest have been downloaded, and the application is now cached.
     </td><td> Last event in sequence.
    </td></tr><tr><td> <dfn id="event-appcache-updateready" title="event-appcache-updateready"><code>updateready</code></dfn>
     </td><td> The resources listed in the manifest have been newly redownloaded, and the script can use <code title="dom-appcache-swapCache"><a href="#dom-appcache-swapcache">swapCache()</a></code> to switch to the new cache.
     </td><td> Last event in sequence.
    </td></tr><tr><td> <dfn id="event-appcache-obsolete" title="event-appcache-obsolete"><code>obsolete</code></dfn>
     </td><td> The manifest was found to have become a 404 or 410 page, so the application cache is being deleted.
     </td><td> Last event in sequence.
    </td></tr><tr><td rowspan="4"> <dfn id="event-appcache-error" title="event-appcache-error"><code>error</code></dfn>
     </td><td> The manifest was a 404 or 410 page, so the attempt to cache the application has been aborted.
     </td><td rowspan="3"> Last event in sequence.
    </td></tr><tr><td> The manifest hadn't changed, but the page referencing the manifest failed to download properly.
    </td></tr><tr><td> A fatal error occurred while fetching the resources listed in the manifest.
    </td></tr><tr><td> The manifest changed while the update was being run.
     </td><td> The user agent will try fetching the files again momentarily.
  </td></tr></tbody></table><h4 id="manifests"><span class="secno">6.7.2 </span>The cache manifest syntax</h4><h5 id="a-sample-manifest"><span class="secno">6.7.2.1 </span>A sample manifest</h5><p><i>This section is non-normative.</i></p><p>This example manifest requires two images and a style sheet to be
  cached and whitelists a CGI script.</p><pre>CACHE MANIFEST
# the above line is required

# this is a comment
# there can be as many of these anywhere in the file
# they are all ignored
  # comments can have spaces before them
  # but must be alone on the line

# blank lines are ignored too

# these are files that need to be cached they can either be listed
# first, or a "CACHE:" header could be put before them, as is done
# lower down.
images/sound-icon.png
images/background.png
# note that each file has to be put on its own line

# here is a file for the online whitelist -- it isn't cached, and
# references to this file will bypass the cache, always hitting the
# network (or trying to, if the user is offline).
NETWORK:
comm.cgi

# here is another set of files to cache, this time just the CSS file.
CACHE:
style/default.css</pre><h5 id="writing-cache-manifests"><span class="secno">6.7.2.2 </span>Writing cache manifests</h5><p>Manifests must be served using the
  <code><a href="iana-considerations.html#text-cache-manifest">text/cache-manifest</a></code> <a href="infrastructure.html#mime-type">MIME type</a>. All
  resources served using the <code><a href="iana-considerations.html#text-cache-manifest">text/cache-manifest</a></code>
  <a href="infrastructure.html#mime-type">MIME type</a> must follow the syntax of application cache
  manifests, as described in this section.</p><p>An application cache manifest is a text file, whose text is
  encoded using UTF-8. Data in application cache manifests is
  line-based. Newlines must be represented by U+000A LINE FEED (LF)
  characters, U+000D CARRIAGE RETURN (CR) characters, or U+000D
  CARRIAGE RETURN (CR) U+000A LINE FEED (LF) pairs.</p><p class="note">This is a <a href="introduction.html#willful-violation" title="willful violation">willful
  double violation</a> of RFC 2046, which requires all <code title="">text/*</code> types to support an open-ended set of
  character encodings and only allows CRLF line breaks. These
  requirements, however, are outdated; UTF-8 is now widely used, such
  that supporting other encodings is no longer necessary, and use of
  CR, LF, and CRLF line breaks is commonly supported and indeed
  sometimes CRLF is <em>not</em> supported by text editors. <a href="references.html#refsRFC2046">[RFC2046]</a></p><!-- also RFC 2045 for charset
  --><p>The first line of an application cache manifest must consist of
  the string "CACHE", a single U+0020 SPACE character, the string
  "MANIFEST", and either a U+0020 SPACE character, a U+0009 CHARACTER
  TABULATION (tab) character, a U+000A LINE FEED (LF) character, or a
  U+000D CARRIAGE RETURN (CR) character. The first line may optionally
  be preceded by a U+FEFF BYTE ORDER MARK (BOM) character. If any
  other text is found on the first line, it is ignored.</p><p>Subsequent lines, if any, must all be one of the following:</p><dl><dt>A blank line
   </dt><dd>
    <p>Blank lines must consist of zero or more U+0020 SPACE and
    U+0009 CHARACTER TABULATION (tab) characters only.</p>

   </dd><dt>A comment
   </dt><dd>
    <p>Comment lines must consist of zero or more U+0020 SPACE and
    U+0009 CHARACTER TABULATION (tab) characters, followed by a single
    U+0023 NUMBER SIGN (#) character, followed by zero or more
    characters other than U+000A LINE FEED (LF) and U+000D CARRIAGE
    RETURN (CR) characters.</p>

    <p class="note">Comments must be on a line on their own. If they
    were to be included on a line with a URL, the "#" would be
    mistaken for part of a fragment identifier.</p>

   </dd><dt>A section header
   </dt><dd>
    <p>Section headers change the current section. There are three
    possible section headers:

    </p><dl><dt><code>CACHE:</code>
     </dt><dd>Switches to the explicit section.

     </dd><dt><code>FALLBACK:</code>
     </dt><dd>Switches to the fallback section.

     </dd><dt><code>NETWORK:</code>
     </dt><dd>Switches to the online whitelist section.

    </dd></dl><p>Section header lines must consist of zero or more U+0020 SPACE
    and U+0009 CHARACTER TABULATION (tab) characters, followed by one
    of the names above (including the U+003A COLON (:) character)
    followed by zero or more U+0020 SPACE and U+0009 CHARACTER
    TABULATION (tab) characters.</p>

    <p>Ironically, by default, the current section is the explicit
    section.</p>

   </dd><dt>Data for the current section
   </dt><dd>
    <p>The format that data lines must take depends on the current
    section.</p>

    <p>When the current section is the explicit section, data lines
    must consist of zero or more U+0020 SPACE and U+0009 CHARACTER
    TABULATION (tab) characters, a <a href="infrastructure.html#valid-url">valid URL</a> identifying
    a resource other than the manifest itself, and then zero or more
    U+0020 SPACE and U+0009 CHARACTER TABULATION (tab) characters.</p>

    <p>When the current section is the online whitelist section, data
    lines must consist of zero or more U+0020 SPACE and U+0009
    CHARACTER TABULATION (tab) characters, either a single U+002A
    ASTERISK character (*) <!--
    concept-appcache-onlinewhitelist-wildcard --> or a <a href="infrastructure.html#valid-url">valid
    URL</a> identifying a resource other than the manifest itself,
    and then zero or more U+0020 SPACE and U+0009 CHARACTER TABULATION
    (tab) characters.</p>

    <p>When the current section is the fallback section, data lines
    must consist of zero or more U+0020 SPACE and U+0009 CHARACTER
    TABULATION (tab) characters, a <a href="infrastructure.html#valid-url">valid URL</a> identifying
    a resource other than the manifest itself, one or more U+0020
    SPACE and U+0009 CHARACTER TABULATION (tab) characters, another
    <a href="infrastructure.html#valid-url">valid URL</a> identifying a resource other than the
    manifest itself, and then zero or more U+0020 SPACE and U+0009
    CHARACTER TABULATION (tab) characters.</p>

    <p class="note">The URLs in data lines can't be empty strings,
    since those would be relative URLs to the manifest itself. Such
    lines would be confused with blank or invalid lines, anyway.</p>

  </dd></dl><p>Manifests may contain sections more than once. Sections may be
  empty.</p><p>URLs that are to be fallback pages associated with <a href="#concept-appcache-fallback-ns" title="concept-appcache-fallback-ns">fallback namespaces</a>, and
  those namespaces themselves, must be given in fallback sections,
  with the namespace being the first URL of the data line, and the
  corresponding fallback page being the second URL. All the other
  pages to be cached must be listed in explicit sections.</p><p><a href="#concept-appcache-fallback-ns" title="concept-appcache-fallback-ns">Fallback
  namespaces</a> and <a href="#concept-appcache-fallback" title="concept-appcache-fallback">fallback entries</a> must have
  the <a href="#same-origin">same origin</a> as the manifest itself.</p><p>A <a href="#concept-appcache-fallback-ns" title="concept-appcache-fallback-ns">fallback
  namespace</a> must not be listed more than once.</p><p>URLs that the user agent is to put into the <a href="#concept-appcache-onlinewhitelist" title="concept-appcache-onlinewhitelist">online whitelist</a>
  must all be specified in online whitelist sections. (This is needed
  for any URL that the page is intending to use to communicate back to
  the server.) To specify that all URLs are automatically whitelisted
  in this way, a U+002A ASTERISK character (*) character may be
  specified as one of the URLs. <!--
  concept-appcache-onlinewhitelist-wildcard --></p><p>Relative URLs must be given relative to the manifest's own
  URL. All URLs in the manifest must have the same <a href="#url-scheme" title="url-scheme">&lt;scheme&gt;</a> as the manifest itself
  (either explicitly or implicitly, through the use of relative
  URLs).</p><p>URLs in manifests must not have fragment identifiers (i.e. the
  U+0023 NUMBER SIGN character isn't allowed in URLs in
  manifests).</p><h4 id="expiring-application-caches"><span class="secno">6.7.3 </span>Expiring application caches</h4><p>As a general rule, user agents should not expire application
  caches, except on request from the user, or after having been left
  unused for an extended period of time.</p><p>Implementors are encouraged to expose application caches in a
  manner related to HTTP cookies, allowing caches to be expired
  together with cookies and other origin-specific data. Application
  caches and cookies have similar implications with respect to privacy
  (e.g. if the site can identify the user when providing the cache, it
  can store data in the cache that can be used for cookie
  resurrection).</p><h4 id="application-cache-api"><span class="secno">6.7.4 </span>Application cache API</h4><pre class="idl">interface <dfn id="applicationcache">ApplicationCache</dfn> {

  // <a href="#concept-appcache-status" title="concept-appcache-status">update status</a>
  const unsigned short <a href="#dom-appcache-uncached" title="dom-appcache-UNCACHED">UNCACHED</a> = 0;
  const unsigned short <a href="#dom-appcache-idle" title="dom-appcache-IDLE">IDLE</a> = 1;
  const unsigned short <a href="#dom-appcache-checking" title="dom-appcache-CHECKING">CHECKING</a> = 2;
  const unsigned short <a href="#dom-appcache-downloading" title="dom-appcache-DOWNLOADING">DOWNLOADING</a> = 3;
  const unsigned short <a href="#dom-appcache-updateready" title="dom-appcache-UPDATEREADY">UPDATEREADY</a> = 4;
  const unsigned short <a href="#dom-appcache-obsolete" title="dom-appcache-OBSOLETE">OBSOLETE</a> = 5;
  readonly attribute unsigned short <a href="#dom-appcache-status" title="dom-appcache-status">status</a>;

  // updates
  void <a href="#dom-appcache-update" title="dom-appcache-update">update</a>();
  void <a href="#dom-appcache-swapcache" title="dom-appcache-swapCache">swapCache</a>();

  // events
           attribute <a href="#function">Function</a> <a href="#handler-appcache-onchecking" title="handler-appcache-onchecking">onchecking</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-onerror" title="handler-appcache-onerror">onerror</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-onnoupdate" title="handler-appcache-onnoupdate">onnoupdate</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-ondownloading" title="handler-appcache-ondownloading">ondownloading</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-onprogress" title="handler-appcache-onprogress">onprogress</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-onupdateready" title="handler-appcache-onupdateready">onupdateready</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-oncached" title="handler-appcache-oncached">oncached</a>;
           attribute <a href="#function">Function</a> <a href="#handler-appcache-onobsolete" title="handler-appcache-onobsolete">onobsolete</a>;
};</pre><dl class="domintro"><dt><var title="">cache</var> = <var title="">window</var> . <code title="dom-applicationCache"><a href="#dom-applicationcache">applicationCache</a></code></dt>
   <dd>

    <p>(In a window.) Returns the <code><a href="#applicationcache">ApplicationCache</a></code> object that applies to the <a href="browsers.html#active-document">active document</a> of that <code><a href="browsers.html#window">Window</a></code>.</p>

   </dd>

   <dt><var title="">cache</var> = <var title="">self</var> . <code title="dom-applicationCache"><a href="#dom-applicationcache">applicationCache</a></code></dt>
   <dd>

    <p>(In a shared worker.) Returns the <code><a href="#applicationcache">ApplicationCache</a></code> object that applies to the current shared worker.</p>

   </dd>

   <dt><var title="">cache</var> . <code title="dom-appcache-status"><a href="#dom-appcache-status">status</a></code></dt>
   <dd>

    <p>Returns the current status of the application cache, as given by the constants defined below.</p>

   </dd>

   <dt><var title="">cache</var> . <code title="dom-appcache-update"><a href="#dom-appcache-update">update</a></code>()</dt>
   <dd>

    <p>Invokes the application cache update process.</p>

    <p>Throws an <code><a href="infrastructure.html#invalid_access_err">INVALID_ACCESS_ERR</a></code> exception if there is no application cache to update.</p>

   </dd>

   <dt><var title="">cache</var> . <code title="dom-appcache-swapCache"><a href="#dom-appcache-swapcache">swapCache</a></code>()</dt>
   <dd>

    <p>Switches to the most recent application cache, if there is a newer one. If there isn't, throws an <code><a href="infrastructure.html#invalid_access_err">INVALID_ACCESS_ERR</a></code> exception.</p>

   </dd>

  </dl><dl><dt><dfn id="dom-appcache-uncached" title="dom-appcache-UNCACHED"><code>UNCACHED</code></dfn>
   (numeric value 0)</dt>

   <dd><p>The <code><a href="#applicationcache">ApplicationCache</a></code> object's <a href="#cache-host">cache
   host</a> is not associated with an <a href="#application-cache">application
   cache</a> at this time.</p></dd>

   <dt><dfn id="dom-appcache-idle" title="dom-appcache-IDLE"><code>IDLE</code></dfn>
   (numeric value 1)</dt>

   <dd><p>The <code><a href="#applicationcache">ApplicationCache</a></code> object's <a href="#cache-host">cache
   host</a> is associated with an <a href="#application-cache">application cache</a>
   whose <a href="#application-cache-group">application cache group</a>'s <a href="#concept-appcache-status" title="concept-appcache-status">update status</a> is
   <i>idle</i>, and that <a href="#application-cache">application cache</a> is the <a href="#concept-appcache-newer" title="concept-appcache-newer">newest</a> cache in its
   <a href="#application-cache-group">application cache group</a>, and the <a href="#application-cache-group">application
   cache group</a> is not marked as <a href="#concept-appcache-obsolete" title="concept-appcache-obsolete">obsolete</a>.</p></dd>

   <dt><dfn id="dom-appcache-checking" title="dom-appcache-CHECKING"><code>CHECKING</code></dfn>
   (numeric value 2)</dt>

   <dd><p>The <code><a href="#applicationcache">ApplicationCache</a></code> object's <a href="#cache-host">cache
   host</a> is associated with an <a href="#application-cache">application cache</a>
   whose <a href="#application-cache-group">application cache group</a>'s <a href="#concept-appcache-status" title="concept-appcache-status">update status</a> is
   <i>checking</i>.</p></dd>

   <dt><dfn id="dom-appcache-downloading" title="dom-appcache-DOWNLOADING"><code>DOWNLOADING</code></dfn>
   (numeric value 3)</dt>

   <dd><p>The <code><a href="#applicationcache">ApplicationCache</a></code> object's <a href="#cache-host">cache
   host</a> is associated with an <a href="#application-cache">application cache</a>
   whose <a href="#application-cache-group">application cache group</a>'s <a href="#concept-appcache-status" title="concept-appcache-status">update status</a> is
   <i>downloading</i>.</p></dd>

   <dt><dfn id="dom-appcache-updateready" title="dom-appcache-UPDATEREADY"><code>UPDATEREADY</code></dfn>
   (numeric value 4)</dt>

   <dd><p>The <code><a href="#applicationcache">ApplicationCache</a></code> object's <a href="#cache-host">cache
   host</a> is associated with an <a href="#application-cache">application cache</a>
   whose <a href="#application-cache-group">application cache group</a>'s <a href="#concept-appcache-status" title="concept-appcache-status">update status</a> is
   <i>idle</i>, and whose <a href="#application-cache-group">application cache group</a> is not
   marked as <a href="#concept-appcache-obsolete" title="concept-appcache-obsolete">obsolete</a>,
   but that <a href="#application-cache">application cache</a> is <em>not</em> the <a href="#concept-appcache-newer" title="concept-appcache-newer">newest</a> cache in its
   group.</p></dd>

   <dt><dfn id="dom-appcache-obsolete" title="dom-appcache-OBSOLETE"><code>OBSOLETE</code></dfn>
   (numeric value 5)</dt>

   <dd><p>The <code><a href="#applicationcache">ApplicationCache</a></code> object's <a href="#cache-host">cache
   host</a> is associated with an <a href="#application-cache">application cache</a>
   whose <a href="#application-cache-group">application cache group</a> is marked as <a href="#concept-appcache-obsolete" title="concept-appcache-obsolete">obsolete</a>.</p></dd>

  </dl><h4 id="browser-state"><span class="secno">6.7.5 </span>Browser state</h4><dl class="domintro"><dt><var title="">window</var> . <code title="dom-navigator"><a href="#dom-navigator">navigator</a></code> . <code title="dom-navigator-onLine"><a href="#dom-navigator-online">onLine</a></code></dt>

   <dd>

    <p>Returns false if the user agent is definitely offline
    (disconnected from the network). Returns true if the user agent
    might be online.</p>

   </dd>

  </dl><p class="note">This attribute is inherently unreliable. A computer
  can be connected to a network without having Internet access.</p></body></html>
--- NEW FILE: syntax.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>9 The HTML syntax &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="comms.html" title="8 Communication" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="named-character-references.html" title="9.2 Named character references" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="comms.html">&#8592; 8 Communication</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="named-character-references.html">9.2 Named character references &#8594;</a>
  </div>

  <h2 id="syntax"><span class="secno">9 </span><dfn>The HTML syntax</dfn></h2><p class="note">This section only describes the rules for
  <code><a href="iana-considerations.html#text-html">text/html</a></code> resources. Rules for XML resources are
  discussed in the section below entitled "<a href="the-xhtml-syntax.html#the-xhtml-syntax">The XHTML
  syntax</a>".</p><h3 id="writing"><span class="secno">9.1 </span>Writing HTML documents</h3><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><p>Documents must consist of the following parts, in the given
  order:</p><ol><li>Optionally, a single U+FEFF BYTE ORDER MARK (BOM) character.</li>

   <li>Any number of <a href="#syntax-comments" title="syntax-comments">comments</a> and
   <a href="#space-character" title="space character">space characters</a>.</li>

   <li>A <a href="#syntax-doctype" title="syntax-doctype">DOCTYPE</a>.

   </li><li>Any number of <a href="#syntax-comments" title="syntax-comments">comments</a> and
   <a href="#space-character" title="space character">space characters</a>.</li>

   <li>The root element, in the form of an <code><a href="semantics.html#the-html-element-0">html</a></code> <a href="#syntax-elements" title="syntax-elements">element</a>.</li>

   <li>Any number of <a href="#syntax-comments" title="syntax-comments">comments</a> and
   <a href="#space-character" title="space character">space characters</a>.</li>

  </ol><p>The various types of content mentioned above are described in the
  next few sections.</p><p>In addition, there are some restrictions on how <a href="semantics.html#character-encoding-declaration" title="character encoding declaration">character encoding
  declarations</a> are to be serialized, as discussed in the
  section on that topic.</p><div class="note">

   <p>Space characters before the root <code><a href="semantics.html#the-html-element-0">html</a></code> element, and
   space characters at the start of the <code><a href="semantics.html#the-html-element-0">html</a></code> element and
   before the <code><a href="semantics.html#the-head-element-0">head</a></code> element, will be dropped when the
   document is parsed; space characters <em>after</em> the root
   <code><a href="semantics.html#the-html-element-0">html</a></code> element will be parsed as if they were at the end
   of the <code><a href="semantics.html#the-body-element-0">body</a></code> element. Thus, space characters around the
   root element do not round-trip.</p>

   <p>It is suggested that newlines be inserted after the DOCTYPE,
   after any comments that are before the root element, after the
   <code><a href="semantics.html#the-html-element-0">html</a></code> element's start tag (if it is not <a href="#syntax-tag-omission" title="syntax-tag-omission">omitted</a>), and after any comments
   that are inside the <code><a href="semantics.html#the-html-element-0">html</a></code> element but before the
   <code><a href="semantics.html#the-head-element-0">head</a></code> element.</p>

  </div><p>Many strings in the HTML syntax (e.g. the names of elements and
  their attributes) are case-insensitive, but only for characters in
  the ranges U+0041 .. U+005A (LATIN CAPITAL LETTER A to LATIN CAPITAL
  LETTER Z) and U+0061 .. U+007A (LATIN SMALL LETTER A to LATIN SMALL
  LETTER Z). For convenience, in this section this is just referred to
  as "case-insensitive".</p><h4 id="the-doctype"><span class="secno">9.1.1 </span>The DOCTYPE</h4><p class="XXX annotation"><span><a href="http://www.w3.org/html/wg/tracker/issues/4">ISSUE-4</a> (html-versioning) and <a href="http://www.w3.org/html/wg/tracker/issues/54">ISSUE-54</a> (doctype-legacy-compat) block progress to Last Call</span></p><p>A <dfn id="syntax-doctype" title="syntax-doctype">DOCTYPE</dfn> is a mostly useless,
  but required, header.</p><p class="note">DOCTYPEs are required for legacy reasons. When
  omitted, browsers tend to use a different rendering mode that is
  incompatible with some specifications. Including the DOCTYPE in a
  document ensures that the browser makes a best-effort attempt at
  following the relevant specifications.</p><p>A DOCTYPE must consist of the following characters, in this
  order:</p><ol class="brief"><li>A U+003C LESS-THAN SIGN (<code>&lt;</code>) character.</li>
   <li>A U+0021 EXCLAMATION MARK (<code>!</code>) character.</li>
   <li>A string that is an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for the string "<code title="">DOCTYPE</code>".</li>
   <li>One or more <a href="#space-character" title="space character">space characters</a>.</li>
   <li>A string that is an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for the string "<code title="">HTML</code>".</li>
   <li>Optionally, a <a href="#doctype-legacy-string">DOCTYPE legacy string</a> (defined below).</li>
   <li>Zero or more <a href="#space-character" title="space character">space characters</a>.</li>
   <li>A U+003E GREATER-THAN SIGN (<code>&gt;</code>) character.</li>
  </ol><p class="note">In other words, <code>&lt;!DOCTYPE HTML&gt;</code>,
  case-insensitively.</p><p>For the purposes of HTML generators that cannot output HTML
  markup with the short DOCTYPE "<code title="">&lt;!DOCTYPE
  HTML&gt;</code>", a <dfn id="doctype-legacy-string">DOCTYPE legacy string</dfn> may be inserted
  into the DOCTYPE (in the position defined above). This string must
  consist of:</p><ol class="brief"><li>One or more <a href="#space-character" title="space character">space characters</a>.</li>
   <li>A string that is an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for the string "<code title="">SYSTEM</code>".</li>
   <li>One or more <a href="#space-character" title="space character">space characters</a>.</li>
   <li>A U+0022 QUOTATION MARK or U+0027 APOSTROPHE character (the <i>quote mark</i>).</li>
   <li>The literal string "<code title="">about:legacy-compat</code>".</li>
   <li>A matching U+0022 QUOTATION MARK or U+0027 APOSTROPHE character (i.e. the same character as in the earlier step marked <i>quote mark</i>).</li>
  </ol><p class="note">In other words, <code>&lt;!DOCTYPE HTML SYSTEM
  "about:legacy-compat"&gt;</code> or <code>&lt;!DOCTYPE HTML SYSTEM
  'about:legacy-compat'&gt;</code>, case-insensitively except for the bit
  in quotes.</p><p>The <a href="#doctype-legacy-string">DOCTYPE legacy string</a> should not be used unless
  the document is generated from a system that cannot output the
  shorter string.</p><h4 id="elements-0"><span class="secno">9.1.2 </span>Elements</h4><p>There are five different kinds of <dfn id="syntax-elements" title="syntax-elements">elements</dfn>: void elements, raw text
  elements, RCDATA elements, foreign elements, and normal
  elements.</p><dl><dt><dfn id="void-elements">Void elements</dfn></dt>

   <dd><code><a href="the-canvas-element.html#the-area-element">area</a></code>, <code><a href="semantics.html#the-base-element">base</a></code>, <code><a href="semantics.html#the-br-element">br</a></code>,
   <code><a href="tabular-data.html#the-col-element">col</a></code>, <code><a href="interactive-elements.html#the-command">command</a></code>, <code><a href="text-level-semantics.html#the-embed-element">embed</a></code>,
   <code><a href="semantics.html#the-hr-element">hr</a></code>, <code><a href="text-level-semantics.html#the-img-element">img</a></code>, <code><a href="forms.html#the-input-element">input</a></code>,
   <code><a href="forms.html#the-keygen-element">keygen</a></code>, <code><a href="semantics.html#the-link-element">link</a></code>, <code><a href="semantics.html#meta">meta</a></code>,
   <code><a href="text-level-semantics.html#the-param-element">param</a></code>, <code><a href="video.html#the-source-element">source</a></code></dd>

   <dt>Raw text elements</dt>

   <dd><code><a href="semantics.html#script">script</a></code>, <code><a href="semantics.html#the-style-element">style</a></code></dd> <!-- iframe and
   noscript don't count as raw text for syntax purposes -->

   <dt>RCDATA elements</dt>

   <dd><code><a href="forms.html#the-textarea-element">textarea</a></code>, <code><a href="semantics.html#the-title-element-0">title</a></code></dd>

   <dt>Foreign elements</dt>

   <dd>Elements from the <a href="#mathml-namespace">MathML namespace</a>
   and the <a href="#svg-namespace">SVG namespace</a>.</dd>

   <dt>Normal elements</dt>

   <dd>All other allowed <a href="infrastructure.html#html-elements">HTML elements</a> are normal
   elements.</dd>

  </dl><p><dfn id="syntax-tags" title="syntax-tags">Tags</dfn> are used to delimit the start
  and end of elements in the markup. Raw text, RCDATA, and normal
  elements have a <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> to
  indicate where they begin, and an <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> to indicate where they end. The start and end tags of
  certain normal elements can be <a href="#syntax-tag-omission" title="syntax-tag-omission">omitted</a>, as described
  later. Those that cannot be omitted must not be omitted. <a href="#void-elements">Void
  elements</a> only have a start tag; end tags must not be
  specified for void elements. Foreign elements must either have a
  start tag and an end tag, or a start tag that is marked as
  self-closing, in which case they must not have an end tag.</p><p>The contents of the element must be placed between just after the
  start tag (which <a href="#syntax-tag-omission" title="syntax-tag-omission">might be implied,
  in certain cases</a>) and just before the end tag (which again,
  <a href="#syntax-tag-omission" title="syntax-tag-omission">might be implied in certain
  cases</a>). The exact allowed contents of each individual element
  depends on the content model of that element, as described earlier
  in this specification. Elements must not contain content that their
  content model disallows. In addition to the restrictions placed on
  the contents by those content models, however, the five types of
  elements have additional <em>syntactic</em> requirements.</p><p><a href="#void-elements">Void elements</a> can't have any contents (since there's
  no end tag, no content can be put between the start tag and the end
  tag).</p><p>Raw text elements can have <a href="#syntax-text" title="syntax-text">text</a>,
  though it has <a href="#cdata-rcdata-restrictions">restrictions</a>
  described below.</p><p>RCDATA elements can have <a href="#syntax-text" title="syntax-text">text</a>
  and <a href="#syntax-charref" title="syntax-charref">character references</a>, but
  the text must not contain an <a href="#syntax-ambiguous-ampersand" title="syntax-ambiguous-ampersand">ambiguous ampersand</a>.
  There are also <a href="#cdata-rcdata-restrictions">further
  restrictions</a> described below.</p><p>Foreign elements whose start tag is marked as self-closing can't
  have any contents (since, again, as there's no end tag, no content
  can be put between the start tag and the end tag). Foreign elements
  whose start tag is <em>not</em> marked as self-closing can have
  <a href="#syntax-text" title="syntax-text">text</a>, <a href="#syntax-charref" title="syntax-charref">character references</a>, <a href="#syntax-cdata" title="syntax-cdata">CDATA sections</a>, other <a href="#syntax-elements" title="syntax-elements">elements</a>, and <a href="#syntax-comments" title="syntax-comments">comments</a>, but the text must not
  contain the character U+003C LESS-THAN SIGN (<code>&lt;</code>) or
  an <a href="#syntax-ambiguous-ampersand" title="syntax-ambiguous-ampersand">ambiguous
  ampersand</a>.</p><p>Normal elements can have <a href="#syntax-text" title="syntax-text">text</a>,
  <a href="#syntax-charref" title="syntax-charref">character references</a>, other
  <a href="#syntax-elements" title="syntax-elements">elements</a>, and <a href="#syntax-comments" title="syntax-comments">comments</a>, but the text must not
  contain the character U+003C LESS-THAN SIGN (<code>&lt;</code>) or
  an <a href="#syntax-ambiguous-ampersand" title="syntax-ambiguous-ampersand">ambiguous
  ampersand</a>. Some normal elements also have <a href="#element-restrictions">yet more restrictions</a> on what
  content they are allowed to hold, beyond the restrictions imposed by
  the content model and those described in this paragraph. Those
  restrictions are described below.</p><p>Tags contain a <dfn id="syntax-tag-name" title="syntax-tag-name">tag name</dfn>,
  giving the element's name. HTML elements all have names that only
  use characters in the range U+0030 DIGIT ZERO .. U+0039 DIGIT NINE,
  U+0061 LATIN SMALL LETTER A .. U+007A LATIN SMALL LETTER Z, U+0041
  LATIN CAPITAL LETTER A .. U+005A LATIN CAPITAL LETTER Z, and U+002D
  HYPHEN-MINUS (<code>-</code>). In the HTML syntax, tag names may be
  written with any mix of lower- and uppercase letters that, when
  converted to all-lowercase, matches the element's tag name; tag
  names are case-insensitive.</p><h5 id="start-tags"><span class="secno">9.1.2.1 </span>Start tags</h5><p><dfn id="syntax-start-tag" title="syntax-start-tag">Start tags</dfn> must have the
  following format:</p><ol><li>The first character of a start tag must be a U+003C LESS-THAN
   SIGN (<code>&lt;</code>).</li>

   <li>The next few characters of a start tag must be the element's
   <a href="#syntax-tag-name" title="syntax-tag-name">tag name</a>.</li>

   <li>If there are to be any attributes in the next step, there must
   first be one or more <a href="#space-character" title="space character">space
   characters</a>.</li>

   <li>Then, the start tag may have a number of attributes, the <a href="#syntax-attributes" title="syntax-attributes">syntax for which</a> is described
   below. Attributes may be separated from each other by one or more
   <a href="#space-character" title="space character">space characters</a>.</li>

   <li>After the attributes, there may be one or more <a href="#space-character" title="space character">space characters</a>. (Some attributes
   are required to be followed by a space. See the <a href="#syntax-attributes" title="syntax-attributes">attributes section</a> below.)</li>

   <li>Then, if the element is one of the <a href="#void-elements">void elements</a>,
   or if the element is a foreign element, then there may be a single
   U+002F SOLIDUS (<code>/</code>) character. This character has no
   effect on void elements, but on foreign elements it marks the start
   tag as self-closing.</li>

   <li>Finally, start tags must be closed by a U+003E GREATER-THAN
   SIGN (<code>&gt;</code>) character.</li>

  </ol><h5 id="end-tags"><span class="secno">9.1.2.2 </span>End tags</h5><p><dfn id="syntax-end-tag" title="syntax-end-tag">End tags</dfn> must have the
  following format:</p><ol><li>The first character of an end tag must be a U+003C LESS-THAN
   SIGN (<code>&lt;</code>).</li>

   <li>The second character of an end tag must be a U+002F SOLIDUS
   (<code>/</code>).</li>

   <li>The next few characters of an end tag must be the element's
   <a href="#syntax-tag-name" title="syntax-tag-name">tag name</a>.</li>

   <li>After the tag name, there may be one or more <a href="#space-character" title="space
   character">space characters</a>.</li>

   <li>Finally, end tags must be closed by a U+003E GREATER-THAN
   SIGN (<code>&gt;</code>) character.</li>

  </ol><h5 id="attributes"><span class="secno">9.1.2.3 </span>Attributes</h5><p><dfn id="syntax-attributes" title="syntax-attributes">Attributes</dfn> for an element
  are expressed inside the element's start tag.</p><p>Attributes have a name and a value. <dfn id="syntax-attribute-name" title="syntax-attribute-name">Attribute names</dfn> must consist of
  one or more characters other than the <a href="#space-character" title="space
  character">space characters</a>, U+0000 NULL, U+0022 QUOTATION
  MARK ("), U+0027 APOSTROPHE ('), U+003E GREATER-THAN SIGN
  (&gt;), U+002F SOLIDUS (/), and U+003D EQUALS SIGN (=) characters,
  the control characters, and any characters that are not defined by
  Unicode. In the HTML syntax, attribute names may be written with any
  mix of lower- and uppercase letters that are an <a href="infrastructure.html#ascii-case-insensitive">ASCII
  case-insensitive</a> match for the attribute's name.</p><p><dfn id="syntax-attribute-value" title="syntax-attribute-value">Attribute values</dfn> are a
  mixture of <a href="#syntax-text" title="syntax-text">text</a> and <a href="#syntax-charref" title="syntax-charref">character references</a>, except with the
  additional restriction that the text cannot contain an <a href="#syntax-ambiguous-ampersand" title="syntax-ambiguous-ampersand">ambiguous ampersand</a>.</p><p>Attributes can be specified in four different ways:</p><dl><dt>Empty attribute syntax</dt>

   <dd>

    <p>Just the <a href="#syntax-attribute-name" title="syntax-attribute-name">attribute
    name</a>.</p>

    <div class="example">

     <p>In the following example, the <code title="attr-fe-disabled"><a href="forms.html#attr-fe-disabled">disabled</a></code> attribute is given with
     the empty attribute syntax:</p>

     <pre>&lt;input <em>disabled</em>&gt;</pre>

    </div>

    <p>If an attribute using the empty attribute syntax is to be
    followed by another attribute, then there must be a <a href="#space-character">space
    character</a> separating the two.</p>

   </dd>

   <dt id="unquoted">Unquoted attribute value syntax</dt>

   <dd>

    <p>The <a href="#syntax-attribute-name" title="syntax-attribute-name">attribute name</a>,
    followed by zero or more <a href="#space-character" title="space character">space
    characters</a>, followed by a single U+003D EQUALS SIGN
    character, followed by zero or more <a href="#space-character" title="space
    character">space characters</a>, followed by the <a href="#syntax-attribute-value" title="syntax-attribute-value">attribute value</a>, which, in
    addition to the requirements given above for attribute values,
    must not contain any literal <a href="#space-character" title="space character">space
    characters</a>, any U+0022 QUOTATION MARK (<code>"</code>)
    characters, U+0027 APOSTROPHE (<code>'</code>) characters,
    U+003D EQUALS SIGN (<code>=</code>) characters, U+003C LESS-THAN
    SIGN (<code>&lt;</code>) characters, or U+003E GREATER-THAN SIGN
    (<code>&gt;</code>) characters, and must not be the empty
    string.</p>

    <div class="example">

     <p>In the following example, the <code title="attr-input-value"><a href="forms.html#attr-input-value">value</a></code> attribute is given
     with the unquoted attribute value syntax:</p>

     <pre>&lt;input <em>value=yes</em>&gt;</pre>

    </div>

    <p>If an attribute using the unquoted attribute syntax is to be
    followed by another attribute or by the optional U+002F SOLIDUS
    (<code>/</code>) character allowed in step 6 of the <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> syntax above, then there
    must be a <a href="#space-character">space character</a> separating the two.</p>

   </dd>

   <dt>Single-quoted attribute value syntax</dt>

   <dd>

    <p>The <a href="#syntax-attribute-name" title="syntax-attribute-name">attribute name</a>,
    followed by zero or more <a href="#space-character" title="space character">space
    characters</a>, followed by a single U+003D EQUALS SIGN
    character, followed by zero or more <a href="#space-character" title="space
    character">space characters</a>, followed by a single U+0027
    APOSTROPHE (<code>'</code>) character, followed by the <a href="#syntax-attribute-value" title="syntax-attribute-value">attribute value</a>, which, in
    addition to the requirements given above for attribute values,
    must not contain any literal U+0027 APOSTROPHE (<code>'</code>)
    characters, and finally followed by a second single U+0027
    APOSTROPHE (<code>'</code>) character.</p>

    <div class="example">

     <p>In the following example, the <code title="attr-input-type"><a href="forms.html#attr-input-type">type</a></code> attribute is given with the
     single-quoted attribute value syntax:</p>

     <pre>&lt;input <em>type='checkbox'</em>&gt;</pre>

    </div>

    <p>If an attribute using the single-quoted attribute syntax is to
    be followed by another attribute, then there must be a <a href="#space-character">space
    character</a> separating the two.</p>

   </dd>

   <dt>Double-quoted attribute value syntax</dt>

   <dd>

    <p>The <a href="#syntax-attribute-name" title="syntax-attribute-name">attribute name</a>,
    followed by zero or more <a href="#space-character" title="space character">space
    characters</a>, followed by a single U+003D EQUALS SIGN
    character, followed by zero or more <a href="#space-character" title="space
    character">space characters</a>, followed by a single U+0022
    QUOTATION MARK (<code>"</code>) character, followed by the <a href="#syntax-attribute-value" title="syntax-attribute-value">attribute value</a>, which, in
    addition to the requirements given above for attribute values,
    must not contain any literal U+0022 QUOTATION MARK
    (<code>"</code>) characters, and finally followed by a second
    single U+0022 QUOTATION MARK (<code>"</code>) character.</p>

    <div class="example">

     <p>In the following example, the <code title="attr-fe-name"><a href="forms.html#attr-fe-name">name</a></code> attribute is given with the
     double-quoted attribute value syntax:</p>

     <pre>&lt;input <em>name="be evil"</em>&gt;</pre>

    </div>

    <p>If an attribute using the double-quoted attribute syntax is to
    be followed by another attribute, then there must be a <a href="#space-character">space
    character</a> separating the two.</p>

   </dd>

  </dl><p>There must never be two or more attributes on the same start tag
  whose names are an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for
  each other.</p><h5 id="optional-tags"><span class="secno">9.1.2.4 </span>Optional tags</h5><p>Certain tags can be <dfn id="syntax-tag-omission" title="syntax-tag-omission">omitted</dfn>.</p><p class="note">Omitting an element's <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> does not mean the element
  is not present; it is implied, but it is still there. An HTML
  document always has a root <code><a href="semantics.html#the-html-element-0">html</a></code> element, even if the
  string <code title="">&lt;html&gt;</code> doesn't appear anywhere in
  the markup.</p><!-- <html> --><p>An <code><a href="semantics.html#the-html-element-0">html</a></code> element's <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> may be omitted if the
  first thing inside the <code><a href="semantics.html#the-html-element-0">html</a></code> element is not a <a href="#syntax-comments" title="syntax-comments">comment</a>.</p><!-- </html> --><p>An <code><a href="semantics.html#the-html-element-0">html</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-html-element-0">html</a></code> element is not
  immediately followed by a <a href="#syntax-comments" title="syntax-comments">comment</a>.</p><!-- <head> --><p>A <code><a href="semantics.html#the-head-element-0">head</a></code> element's <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> may be omitted <!--if the
  element is empty, or--> if the first thing inside the
  <code><a href="semantics.html#the-head-element-0">head</a></code> element is an element.</p><!-- </head> --><p>A <code><a href="semantics.html#the-head-element-0">head</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-head-element-0">head</a></code> element is not
  immediately followed by a <a href="#space-character">space character</a> or a <a href="#syntax-comments" title="syntax-comments">comment</a>.</p><!-- <body> --><p>A <code><a href="semantics.html#the-body-element-0">body</a></code> element's <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> may be omitted if the
  element is empty, or if the first thing inside the <code><a href="semantics.html#the-body-element-0">body</a></code>
  element is not a <a href="#space-character">space character</a> or a <a href="#syntax-comments" title="syntax-comments">comment</a>, except if the first thing
  inside the <code><a href="semantics.html#the-body-element-0">body</a></code> element is a <code><a href="semantics.html#script">script</a></code> or
  <code><a href="semantics.html#the-style-element">style</a></code> element. <!-- Note that even if the </head> end
  tag is present, the parser makes <style> and <script> elements
  between </head> and <body> end up in the <head> instead of implying
  the <body> --></p><!-- </body> --><p>A <code><a href="semantics.html#the-body-element-0">body</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-body-element-0">body</a></code> element is not
  immediately followed by a <a href="#syntax-comments" title="syntax-comments">comment</a>.</p><!-- </li> --><p>A <code><a href="semantics.html#the-li-element">li</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-li-element">li</a></code> element is
  immediately followed by another <code><a href="semantics.html#the-li-element">li</a></code> element or if there
  is no more content in the parent element.</p><!-- </dt> --><p>A <code><a href="semantics.html#the-dt-element">dt</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-dt-element">dt</a></code> element is
  immediately followed by another <code><a href="semantics.html#the-dt-element">dt</a></code> element or a
  <code><a href="semantics.html#the-dd-element">dd</a></code> element.</p><!-- </dd> --><p>A <code><a href="semantics.html#the-dd-element">dd</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-dd-element">dd</a></code> element is
  immediately followed by another <code><a href="semantics.html#the-dd-element">dd</a></code> element or a
  <code><a href="semantics.html#the-dt-element">dt</a></code> element, or if there is no more content in the
  parent element.</p><!-- </p> --><p>A <code><a href="semantics.html#the-p-element">p</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="semantics.html#the-p-element">p</a></code> element is
  immediately followed by an <code><a href="semantics.html#the-address-element">address</a></code>,
  <code><a href="semantics.html#the-article-element">article</a></code>, <code><a href="semantics.html#the-aside-element">aside</a></code>, <code><a href="semantics.html#the-blockquote-element">blockquote</a></code>,
  <!--v2DATAGRID <code>datagrid</code>,--> <code><a href="semantics.html#the-dialog-element">dialog</a></code>,
  <code><a href="obsolete.html#dir">dir</a></code>, <code><a href="interactive-elements.html#the-div-element">div</a></code>, <code><a href="semantics.html#the-dl-element">dl</a></code>,
  <code><a href="forms.html#the-fieldset-element">fieldset</a></code>, <code><a href="semantics.html#the-footer-element">footer</a></code>, <code><a href="forms.html#the-form-element">form</a></code>,
  <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code>, <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h2</a></code>, <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h3</a></code>, <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h4</a></code>,
  <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h5</a></code>, <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h6</a></code>, <code><a href="semantics.html#the-header-element">header</a></code>,
  <code><a href="semantics.html#the-hgroup-element">hgroup</a></code>, <code><a href="semantics.html#the-hr-element">hr</a></code>, <code><a href="interactive-elements.html#menus">menu</a></code>,
  <code><a href="semantics.html#the-nav-element">nav</a></code>, <code><a href="semantics.html#the-ol-element">ol</a></code>, <code><a href="semantics.html#the-p-element">p</a></code>, <code><a href="semantics.html#the-pre-element">pre</a></code>,
  <code><a href="semantics.html#the-section-element">section</a></code>, <code><a href="tabular-data.html#the-table-element">table</a></code>, or <code><a href="semantics.html#the-ul-element">ul</a></code>,
  element, or if there is no more content in the parent element and
  the parent element is not an <code><a href="text-level-semantics.html#the-a-element">a</a></code> element.</p><!-- </rt> --><p>An <code><a href="text-level-semantics.html#the-rt-element">rt</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="text-level-semantics.html#the-rt-element">rt</a></code> element is
  immediately followed by an <code><a href="text-level-semantics.html#the-rt-element">rt</a></code> or <code><a href="text-level-semantics.html#the-rp-element">rp</a></code>
  element, or if there is no more content in the parent element.</p><!-- </rp> --><p>An <code><a href="text-level-semantics.html#the-rp-element">rp</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="text-level-semantics.html#the-rp-element">rp</a></code> element is
  immediately followed by an <code><a href="text-level-semantics.html#the-rt-element">rt</a></code> or <code><a href="text-level-semantics.html#the-rp-element">rp</a></code>
  element, or if there is no more content in the parent element.</p><!-- </optgroup> (the text assumes <optgroup> can only be inside a
  <select>; commented out text below can handle the non-<select> case
  if we ever allow it) --><p>An <code><a href="forms.html#the-optgroup-element">optgroup</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end tag</a> may be omitted if the
  <code><a href="forms.html#the-optgroup-element">optgroup</a></code> element <!--has an ancestor
  <code>select</code> element and--> is immediately followed by
  another <code><a href="forms.html#the-optgroup-element">optgroup</a></code> element, or if <!--all of the elements
  that are ancestors of the <code>optgroup</code> element, up to and
  including the first ancestor element that is not an
  <code>optgroup</code> element, have no more content--> there is no
  more content in the parent element.</p><!-- so e.g. the max number of </optgroup>s are omitted here:
   <select><optgroup></select>
   <p id=x><optgroup></optgroup>x</p>
   <p id=x><optgroup><optgroup></optgroup></optgroup>x</p>
   <p><optgroup id=x><optgroup></optgroup>x</p>
   <p><optgroup><optgroup id=x>x</p>
  --><!-- </option> --><p>An <code><a href="forms.html#the-option-element">option</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="forms.html#the-option-element">option</a></code> element is
  immediately followed by another <code><a href="forms.html#the-option-element">option</a></code> element, or if
  it is immediately followed by an <code><a href="forms.html#the-optgroup-element">optgroup</a></code> element, or
  if there is no more content in the parent element.</p><!-- <colgroup> --><p>A <code><a href="tabular-data.html#the-colgroup-element">colgroup</a></code> element's <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> may be omitted if the
  first thing inside the <code><a href="tabular-data.html#the-colgroup-element">colgroup</a></code> element is a
  <code><a href="tabular-data.html#the-col-element">col</a></code> element, and if the element is not immediately
  preceded by another <code><a href="tabular-data.html#the-colgroup-element">colgroup</a></code> element whose <a href="#syntax-end-tag" title="syntax-end-tag">end tag</a> has been omitted. (It can't be
  omitted if the element is empty.)</p><!-- </colgroup> --><p>A <code><a href="tabular-data.html#the-colgroup-element">colgroup</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end tag</a> may be omitted if the
  <code><a href="tabular-data.html#the-colgroup-element">colgroup</a></code> element is not immediately followed by a
  <a href="#space-character">space character</a> or a <a href="#syntax-comments" title="syntax-comments">comment</a>.</p><!-- </thead> --><p>A <code><a href="tabular-data.html#the-thead-element">thead</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="tabular-data.html#the-thead-element">thead</a></code> element is
  immediately followed by a <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> or <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code>
  element.</p><!-- <tbody> --><p>A <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> element's <a href="#syntax-start-tag" title="syntax-start-tag">start tag</a> may be omitted if the
  first thing inside the <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> element is a
  <code><a href="tabular-data.html#the-tr-element">tr</a></code> element, and if the element is not immediately
  preceded by a <code><a href="tabular-data.html#the-tbody-element">tbody</a></code>, <code><a href="tabular-data.html#the-thead-element">thead</a></code>, or
  <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> element whose <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> has been omitted. (It can't be omitted if the element is
  empty.)</p><!-- </tbody> --><p>A <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> element is
  immediately followed by a <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> or <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code>
  element, or if there is no more content in the parent element.</p><!-- </tfoot> --><p>A <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> element is
  immediately followed by a <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> element, or if there is
  no more content in the parent element.</p><!-- </tr> --><p>A <code><a href="tabular-data.html#the-tr-element">tr</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="tabular-data.html#the-tr-element">tr</a></code> element is
  immediately followed by another <code><a href="tabular-data.html#the-tr-element">tr</a></code> element, or if there
  is no more content in the parent element.</p><!-- </td> --><p>A <code><a href="tabular-data.html#the-td-element">td</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="tabular-data.html#the-td-element">td</a></code> element is
  immediately followed by a <code><a href="tabular-data.html#the-td-element">td</a></code> or <code><a href="tabular-data.html#the-th-element">th</a></code>
  element, or if there is no more content in the parent element.</p><!-- </th> --><p>A <code><a href="tabular-data.html#the-th-element">th</a></code> element's <a href="#syntax-end-tag" title="syntax-end-tag">end
  tag</a> may be omitted if the <code><a href="tabular-data.html#the-th-element">th</a></code> element is
  immediately followed by a <code><a href="tabular-data.html#the-td-element">td</a></code> or <code><a href="tabular-data.html#the-th-element">th</a></code>
  element, or if there is no more content in the parent element.</p><p><strong>However</strong>, a <a href="#syntax-start-tag" title="syntax-start-tag">start
  tag</a> must never be omitted if it has any attributes.</p><h5 id="element-restrictions"><span class="secno">9.1.2.5 </span>Restrictions on content models</h5><p>For historical reasons, certain elements have extra restrictions
  beyond even the restrictions given by their content model.</p><p>A <code><a href="tabular-data.html#the-table-element">table</a></code> element must not contain <code><a href="tabular-data.html#the-tr-element">tr</a></code>
  elements, even though these elements are technically allowed inside
  <code><a href="tabular-data.html#the-table-element">table</a></code> elements according to the content models
  described in this specification. (If a <code><a href="tabular-data.html#the-tr-element">tr</a></code> element is
  put inside a <code><a href="tabular-data.html#the-table-element">table</a></code> in the markup, it will in fact imply
  a <code><a href="tabular-data.html#the-tbody-element">tbody</a></code> start tag before it.)</p><p>A single U+000A LINE FEED (LF) character may be placed
  immediately after the <a href="#syntax-start-tag" title="syntax-start-tag">start
  tag</a> of <code><a href="semantics.html#the-pre-element">pre</a></code> and <code><a href="forms.html#the-textarea-element">textarea</a></code>
  elements. This does not affect the processing of the element. The
  otherwise optional U+000A LINE FEED (LF) character <em>must</em> be
  included if the element's contents start with that character
  (because otherwise the leading newline in the contents would be
  treated like the optional newline, and ignored).</p><div class="example">
   <p>The following two <code><a href="semantics.html#the-pre-element">pre</a></code> blocks are equivalent:</p>
   <pre>&lt;pre&gt;Hello&lt;/pre&gt;</pre>
   <pre>&lt;pre&gt;<br>Hello&lt;/pre&gt;</pre>
  </div><h5 id="cdata-rcdata-restrictions"><span class="secno">9.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</h5><p>The text in raw text and RCDATA elements must not contain any
  occurrences of the string "<code title="">&lt;/</code>" (U+003C
  LESS-THAN SIGN, U+002F SOLIDUS) followed by characters that
  case-insensitively match the tag name of the element followed by one
  of U+0009 CHARACTER TABULATION, U+000A LINE FEED (LF), U+000C FORM
  FEED (FF), U+0020 SPACE, U+003E GREATER-THAN SIGN (&gt;), or U+002F
  SOLIDUS (/), unless that string is part of an <a href="#syntax-escape" title="syntax-escape">escaping text span</a>.</p><p>An <dfn id="syntax-escape" title="syntax-escape">escaping text span</dfn> is a span
  of <a href="#syntax-text" title="syntax-text">text</a> that starts with an <a href="#syntax-escape-start" title="syntax-escape-start">escaping text span start</a> that is
  not itself in an <a href="#syntax-escape" title="syntax-escape">escaping text
  span</a>, and ends at the next <a href="#syntax-escape-end" title="syntax-escape-end">escaping text span end</a>. There
  cannot be any <a href="#syntax-charref" title="syntax-charref">character
  references</a> inside an <a href="#syntax-escape" title="syntax-escape">escaping
  text span</a> &#8212; sequences of characters that would look
  like <a href="#syntax-charref" title="syntax-charref">character references</a> do not
  have special meaning.</p><p>An <dfn id="syntax-escape-start" title="syntax-escape-start">escaping text span
  start</dfn> is a part of <a href="#syntax-text" title="syntax-text">text</a> that
  consists of the four character sequence "<code title="">&lt;!--</code>" (U+003C LESS-THAN SIGN, U+0021 EXCLAMATION
  MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS).</p><p>An <dfn id="syntax-escape-end" title="syntax-escape-end">escaping text span end</dfn> is
  a part of <a href="#syntax-text" title="syntax-text">text</a> that consists of the
  three character sequence "<code title="">--&gt;</code>" (U+002D
  HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN).</p><p>An <a href="#syntax-escape-start" title="syntax-escape-start">escaping text span
  start</a> may share its U+002D HYPHEN-MINUS characters with its
  corresponding <a href="#syntax-escape-end" title="syntax-escape-end">escaping text span
  end</a>.</p><p>The text in raw text elements and RCDATA elements must not have
  an <a href="#syntax-escape-start" title="syntax-escape-start">escaping text span start</a>
  that is not followed by an <a href="#syntax-escape-end" title="syntax-escape-end">escaping
  text span end</a>.</p><h4 id="text-0"><span class="secno">9.1.3 </span>Text</h4><p><dfn id="syntax-text" title="syntax-text">Text</dfn> is allowed inside elements,
  attributes, and comments. Text must consist of Unicode characters.
  Text must not contain U+0000 characters. Text must not contain
  permanently undefined Unicode characters. Text must not contain
  control characters other than <a href="#space-character" title="space character">space
  characters</a>. Extra constraints are placed on what is and what
  is not allowed in text based on where the text is to be put, as
  described in the other sections.</p><h5 id="newlines"><span class="secno">9.1.3.1 </span>Newlines</h5><p><dfn id="syntax-newlines" title="syntax-newlines">Newlines</dfn> in HTML may be
  represented either as U+000D CARRIAGE RETURN (CR) characters, U+000A
  LINE FEED (LF) characters, or pairs of U+000D CARRIAGE RETURN (CR),
  U+000A LINE FEED (LF) characters in that order.</p><h4 id="character-references"><span class="secno">9.1.4 </span>Character references</h4><p>In certain cases described in other sections, <a href="#syntax-text" title="syntax-text">text</a> may be mixed with <dfn id="syntax-charref" title="syntax-charref">character references</dfn>. These can be used
  to escape characters that couldn't otherwise legally be included in
  <a href="#syntax-text" title="syntax-text">text</a>.</p><p>Character references must start with a U+0026 AMPERSAND
  (<code>&amp;</code>). Following this, there are three possible kinds
  of character references:</p><dl><dt>Named character references</dt>

   <dd>The ampersand must be followed by one of the names given in the
   <a href="named-character-references.html#named-character-references">named character references</a> section, using the same
   case. The name must be one that is terminated by a U+003B SEMICOLON
   (<code title="">;</code>) character.</dd>


   <dt>Decimal numeric character reference</dt>

   <dd>The ampersand must be followed by a U+0023 NUMBER SIGN
   (<code>#</code>) character, followed by one or more digits in the
   range U+0030 DIGIT ZERO .. U+0039 DIGIT NINE, representing a
   base-ten integer that itself is a Unicode code point that is
   not U+0000, U+000D, in the range U+0080 .. U+009F, or in the range
   0xD800 .. 0xDFFF (surrogates). The digits must then be followed by
   a U+003B SEMICOLON character (<code title="">;</code>).</dd>


   <dt>Hexadecimal numeric character reference</dt>

   <dd>The ampersand must be followed by a U+0023 NUMBER SIGN
   (<code>#</code>) character, which must be followed by either a
   U+0078 LATIN SMALL LETTER X or a U+0058 LATIN CAPITAL LETTER X
   character, which must then be followed by one or more digits in the
   range U+0030 DIGIT ZERO .. U+0039 DIGIT NINE, U+0061 LATIN SMALL
   LETTER A .. U+0066 LATIN SMALL LETTER F, and U+0041 LATIN CAPITAL
   LETTER A .. U+0046 LATIN CAPITAL LETTER F, representing a
   base-sixteen integer that itself is a Unicode code point that is
   not U+0000, U+000D, in the range U+0080 .. U+009F, or in the range
   0xD800 .. 0xDFFF (surrogates). The digits must then be followed by
   a U+003B SEMICOLON character (<code title="">;</code>).</dd>

  </dl><p>An <dfn id="syntax-ambiguous-ampersand" title="syntax-ambiguous-ampersand">ambiguous
  ampersand</dfn> is a U+0026 AMPERSAND (<code>&amp;</code>) character
  that is followed by some <a href="#syntax-text" title="syntax-text">text</a> other
  than a <a href="#space-character">space character</a>, a U+003C LESS-THAN SIGN
  character ('&lt;'), or another U+0026 AMPERSAND (<code>&amp;</code>)
  character.</p><h4 id="cdata-sections"><span class="secno">9.1.5 </span>CDATA sections</h4><p><dfn id="syntax-cdata" title="syntax-cdata">CDATA sections</dfn> must start with
  the character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION
  MARK, U+005B LEFT SQUARE BRACKET, U+0043 LATIN CAPITAL LETTER C,
  U+0044 LATIN CAPITAL LETTER D, U+0041 LATIN CAPITAL LETTER A, U+0054
  LATIN CAPITAL LETTER T, U+0041 LATIN CAPITAL LETTER A, U+005B LEFT
  SQUARE BRACKET (<code title="">&lt;![CDATA[</code>). Following this
  sequence, the CDATA section may have <a href="#syntax-text" title="syntax-text">text</a>, with the additional restriction
  that the text must not contain the three character sequence U+005D
  RIGHT SQUARE BRACKET, U+005D RIGHT SQUARE BRACKET, U+003E
  GREATER-THAN SIGN (<code title="">]]&gt;</code>). Finally, the CDATA
  section must be ended by the three character sequence U+005D RIGHT
  SQUARE BRACKET, U+005D RIGHT SQUARE BRACKET, U+003E GREATER-THAN
  SIGN (<code title="">]]&gt;</code>).</p><h4 id="comments"><span class="secno">9.1.6 </span>Comments</h4><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><p><dfn id="syntax-comments" title="syntax-comments">Comments</dfn> must start with the
  four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION
  MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<code title="">&lt;!--</code>). Following this sequence, the comment may
  have <a href="#syntax-text" title="syntax-text">text</a>, with the additional
  restriction that the text must not start with a single U+003E
  GREATER-THAN SIGN ('&gt;') character, nor start with a U+002D
  HYPHEN-MINUS (<code title="">-</code>) character followed by a
  U+003E GREATER-THAN SIGN ('&gt;') character, nor contain two
  consecutive U+002D HYPHEN-MINUS (<code title="">-</code>)
  characters, nor end with a U+002D HYPHEN-MINUS (<code title="">-</code>) character. Finally, the comment must be ended by
  the three character sequence U+002D HYPHEN-MINUS, U+002D
  HYPHEN-MINUS, U+003E GREATER-THAN SIGN (<code title="">--&gt;</code>).</p></body></html>
--- NEW FILE: obsolete.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>11 Obsolete features &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="the-xhtml-syntax.html" title="10 The XHTML syntax" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="no.html" title="12 Things that you can't do with this specification because they are better handled using other technologies that are further described herein" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="the-xhtml-syntax.html">&#8592; 10 The XHTML syntax</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="no.html">12 Things that you can't do with this specification because they are better handled using other technologies that are further described herein &#8594;</a>
  </div>

  <h2 id="obsolete"><span class="secno">11 </span>Obsolete features</h2><h3 id="obsolete-but-conforming-features"><span class="secno">11.1 </span>Obsolete but conforming features</h3><p>Features listed in this section will trigger warnings in
  conformance checkers.</p><p>In <a href="syntax.html#syntax">the HTML syntax</a>, authors should not specify <a href="syntax.html#syntax-doctype" title="syntax-DOCTYPE">DOCTYPE</a>s that get parsed as <a href="#obsolete-permitted-doctype" title="obsolete permitted DOCTYPE">obsolete permitted
  DOCTYPEs</a>.</p><!-- this is poor form; we really should define
  this in the syntax section somehow --><p>Authors should not specify an <code title="attr-meta-http-equiv"><a href="semantics.html#attr-meta-http-equiv">http-equiv</a></code> attribute in the
  <a href="semantics.html#attr-meta-http-equiv-content-language" title="attr-meta-http-equiv-content-language">Content
  Language</a> state on a <code><a href="semantics.html#meta">meta</a></code> element. The <code title="attr-lang"><a href="dom.html#attr-lang">lang</a></code> attribute should be used instead.</p><p>Authors should not specify a <code title="attr-img-border"><a href="#attr-img-border">border</a></code> attribute on an
  <code><a href="text-level-semantics.html#the-img-element">img</a></code> element. If the attribute is present, its value
  must be the string "<code title="">0</code>". CSS should be used
  instead.</p><p>Authors should not specify a <code title="attr-script-language"><a href="#attr-script-language">language</a></code> attribute on a
  <code><a href="semantics.html#script">script</a></code> element. If the attribute is present, its value
  must be an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for the string
  "<code title="">JavaScript</code>" and either the <code title="attr-script-type"><a href="semantics.html#attr-script-type">type</a></code> attribute must be omitted or
  its value must be an <a href="infrastructure.html#ascii-case-insensitive">ASCII case-insensitive</a> match for
  the string "<code title="">text/javascript</code>". The attribute
  should be entirely omitted instead (with the value "<code title="">JavaScript</code>", it has no effect), or replaced with use
  of the <code title="attr-script-type"><a href="semantics.html#attr-script-type">type</a></code> attribute.</p><p>Authors should not specify the <code title="attr-a-name"><a href="#attr-a-name">name</a></code> attribute on <code><a href="text-level-semantics.html#the-a-element">a</a></code>
  elements. If the attribute is present, its value must not be the
  empty string. In earlier versions of the language, this attribute
  served a similar role as the <code title="attr-id"><a href="dom.html#the-id-attribute">id</a></code>
  attribute. The <code title="attr-id"><a href="dom.html#the-id-attribute">id</a></code> attribute should be
  used instead.</p><p class="note">The <code title="attr-table-summary"><a href="tabular-data.html#attr-table-summary">summary</a></code>
  attribute, defined in the <code><a href="tabular-data.html#the-table-element">table</a></code> section, will also
  trigger a warning.</p><h3 id="non-conforming-features"><span class="secno">11.2 </span>Non-conforming features</h3><p>Elements in the following list are entirely obsolete, and must
  not be used by authors:</p><dl><!-- alphabetical by first element in the group, except CSS goes last --><dt><code><a href="#the-applet-element">applet</a></code></dt>
   <dd><p>Use <code><a href="text-level-semantics.html#the-embed-element">embed</a></code> or <code><a href="text-level-semantics.html#the-object-element">object</a></code> instead.</p></dd>

   <dt><dfn id="acronym"><code>acronym</code></dfn></dt>
   <dd><p>Use <code><a href="text-level-semantics.html#the-abbr-element">abbr</a></code> instead.</p></dd>

   <dt><dfn id="dir"><code>dir</code></dfn></dt>
   <dd><p>Use <code><a href="semantics.html#the-ul-element">ul</a></code> instead.</p></dd>

   <dt><code><a href="#frame">frame</a></code></dt>
   <dt><code><a href="#frameset">frameset</a></code></dt>
   <dt><dfn id="noframes"><code>noframes</code></dfn></dt>
   <dd><p>Either use <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> and CSS instead, or use server-side includes to generate complete pages with the various invariant parts merged in.</p></dd>

   <dt><dfn id="isindex-0"><code>isindex</code></dfn></dt>
   <dd><p>Use an explicit <code><a href="forms.html#the-form-element">form</a></code> and <a href="forms.html#text-state-and-search-state" title="attr-input-type-text">text field</a> combination instead.</p></dd>

   <dt><dfn id="listing"><code>listing</code></dfn></dt>
   <dt><dfn id="xmp"><code>xmp</code></dfn></dt>
   <dd><p>Use <code><a href="semantics.html#the-pre-element">pre</a></code> and <code><a href="text-level-semantics.html#the-code-element">code</a></code> instead.</p></dd>

   <dt><dfn id="noembed"><code>noembed</code></dfn></dt>
   <dd><p>Use <code><a href="text-level-semantics.html#the-object-element">object</a></code> instead of <code><a href="text-level-semantics.html#the-embed-element">embed</a></code> when fallback is necessary.</p></dd>

   <dt><dfn id="plaintext"><code>plaintext</code></dfn></dt>
   <dd><p>Use the "<code>text/plain</code>" <a href="infrastructure.html#mime-type">MIME type</a> instead.</p></dd>

   <dt><dfn id="basefont"><code>basefont</code></dfn></dt>
   <dt><dfn id="big"><code>big</code></dfn></dt>
   <dt><dfn id="blink"><code>blink</code></dfn></dt>
   <dt><dfn id="center"><code>center</code></dfn></dt>
   <dt><dfn id="font"><code>font</code></dfn></dt>
   <dt><code><a href="#the-marquee-element">marquee</a></code></dt>
   <dt><dfn id="s"><code>s</code></dfn></dt>
   <dt><dfn id="spacer"><code>spacer</code></dfn></dt>
   <dt><dfn id="strike"><code>strike</code></dfn></dt>
   <dt><dfn id="tt"><code>tt</code></dfn></dt>
   <dt><dfn id="u"><code>u</code></dfn></dt>
   <dd><p>Use CSS instead.</p></dd>

  </dl><hr><p>The following attributes are obsolete (though the elements are
  still part of the language), and must not be used by authors:</p><dl><!-- alphabetical by element then attribute of first item in group, except CSS goes last --><dt><dfn id="attr-a-charset" title="attr-a-charset"><code>charset</code></dfn> on <code><a href="text-level-semantics.html#the-a-element">a</a></code> elements</dt>
   <dt><dfn id="attr-link-charset" title="attr-link-charset"><code>charset</code></dfn> on <code><a href="semantics.html#the-link-element">link</a></code> elements</dt>
   <dd><p>Use an HTTP Content-Type header on the linked resource instead.</p></dd>

   <dt><dfn id="attr-a-coords" title="attr-a-coords"><code>coords</code></dfn> on <code><a href="text-level-semantics.html#the-a-element">a</a></code> elements</dt>
   <dt><dfn id="attr-a-shape" title="attr-a-shape"><code>shape</code></dfn> on <code><a href="text-level-semantics.html#the-a-element">a</a></code> elements</dt>
   <dd><p>Use <code><a href="the-canvas-element.html#the-area-element">area</a></code> instead of <code><a href="text-level-semantics.html#the-a-element">a</a></code> for image maps.</p></dd>

   <dt><dfn id="attr-a-rev" title="attr-a-rev"><code>rev</code></dfn> on <code><a href="text-level-semantics.html#the-a-element">a</a></code> elements</dt>
   <dt><dfn id="attr-link-rev" title="attr-link-rev"><code>rev</code></dfn> on <code><a href="semantics.html#the-link-element">link</a></code> elements</dt>
   <dd><p>Use the <code title="attr-hyperlink-rel"><a href="history.html#attr-hyperlink-rel">rel</a></code>
   attribute instead, with an opposite term. (For example, instead of
   <code title="">rev="made"</code>, use <code title="">rel="author"</code>.)</p></dd>

   <dt><dfn id="attr-a-name" title="attr-a-name"><code>name</code></dfn> on <code><a href="text-level-semantics.html#the-a-element">a</a></code> elements (except as noted in the previous section)</dt>
   <dt><dfn id="attr-img-name" title="attr-img-name"><code>name</code></dfn> on <code><a href="text-level-semantics.html#the-img-element">img</a></code> elements</dt>
   <dd><p>Use the <code title="attr-id"><a href="dom.html#the-id-attribute">id</a></code> attribute instead.</p></dd>

   <dt><dfn id="attr-area-nohref" title="attr-area-nohref"><code>nohref</code></dfn> on <code><a href="the-canvas-element.html#the-area-element">area</a></code> elements</dt>
   <dd><p>Omitting the <code title="attr-hyperlink-href"><a href="history.html#attr-hyperlink-href">href</a></code>
   attribute is sufficient; the <code title="attr-area-nohref"><a href="#attr-area-nohref">nohref</a></code> attribute is
   unnecessary. Omit it altogether.</p></dd>

   <dt><dfn id="attr-head-profile" title="attr-head-profile"><code>profile</code></dfn> on <code><a href="semantics.html#the-head-element-0">head</a></code> elements</dt>
   <dd><p>When used for declaring which <code><a href="semantics.html#meta">meta</a></code> terms are
   used in the document, unnecessary; omit it altogether, and <a href="semantics.html#concept-meta-extensions" title="concept-meta-extensions">register the names</a>.</p></dd>
   <dd><p>When used for triggering specific user agent behaviors: use
   a <code><a href="semantics.html#the-link-element">link</a></code> element instead.</p></dd>

   <dt><dfn id="attr-html-version" title="attr-html-version"><code>version</code></dfn> on <code><a href="semantics.html#the-html-element-0">html</a></code> elements</dt>
   <dd><p>Unnecessary. Omit it altogether.</p></dd>

   <dt><dfn id="attr-input-usemap" title="attr-input-usemap"><code>usemap</code></dfn> on <code><a href="forms.html#the-input-element">input</a></code> elements</dt>
   <dd><p>Use <code><a href="text-level-semantics.html#the-img-element">img</a></code> instead of <code><a href="forms.html#the-input-element">input</a></code> for image maps.</p></dd>

   <dt><dfn id="attr-iframe-longdesc" title="attr-iframe-longdesc"><code>longdesc</code></dfn> on <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements</dt>
   <dt><dfn id="attr-img-longdesc" title="attr-img-longdesc"><code>longdesc</code></dfn> on <code><a href="text-level-semantics.html#the-img-element">img</a></code> elements</dt>
   <dd><p>Use a regular <code><a href="text-level-semantics.html#the-a-element">a</a></code> element to link to the description.</p></dd>

   <dt><dfn id="attr-link-target" title="attr-link-target"><code>target</code></dfn> on <code><a href="semantics.html#the-link-element">link</a></code> elements</dt>
   <dd><p>Unnecessary. Omit it altogether.</p></dd>

   <dt><dfn id="attr-meta-scheme" title="attr-meta-scheme"><code>scheme</code></dfn> on <code><a href="semantics.html#meta">meta</a></code> elements</dt>
   <dd><p>Use only one scheme per field, or make the scheme declaration part of the value.</p></dd>

   <dt><dfn id="attr-object-archive" title="attr-object-archive"><code>archive</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-object-code" title="attr-object-code"><code>code</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-object-codebase" title="attr-object-codebase"><code>codebase</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-object-codetype" title="attr-object-codetype"><code>codetype</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dd><p>Use the <code title="attr-object-data"><a href="text-level-semantics.html#attr-object-data">data</a></code> and <code title="attr-object-type"><a href="text-level-semantics.html#attr-object-type">type</a></code> attributes to invoke
   <a href="infrastructure.html#plugin" title="plugin">plugins</a>.</p></dd>

   <dt><dfn id="attr-object-declare" title="attr-object-declare"><code>declare</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dd><p>Repeat the <code><a href="text-level-semantics.html#the-object-element">object</a></code> element completely each time the resource is to be reused.</p></dd>

   <dt><dfn id="attr-object-standby" title="attr-object-standby"><code>standby</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dd><p>Optimise the linked resource so that it loads quickly or, at least, incrementally.</p></dd>

   <dt><dfn id="attr-param-type" title="attr-param-type"><code>type</code></dfn> on <code><a href="text-level-semantics.html#the-param-element">param</a></code> elements</dt>
   <dt><dfn id="attr-param-valuetype" title="attr-param-valuetype"><code>valuetype</code></dfn> on <code><a href="text-level-semantics.html#the-param-element">param</a></code> elements</dt>
   <dd><p>Use the <code title="attr-param-name"><a href="text-level-semantics.html#attr-param-name">name</a></code> and <code title="attr-param-value"><a href="text-level-semantics.html#attr-param-value">value</a></code> attributes without declaring
   value types.</p></dd>

   <dt><dfn id="attr-script-language" title="attr-script-language"><code>language</code></dfn> on <code><a href="semantics.html#script">script</a></code> elements (except as noted in the previous section)</dt>
   <dd><p>Use the <code title="attr-script-type"><a href="semantics.html#attr-script-type">type</a></code> attribute
   instead.</p></dd>

   <dt><dfn id="attr-td-th-abbr" title="attr-td/th-abbr"><code>abbr</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dd><p>Use text that begins in an unambiguous and terse manner, and include any more elaborate text after that.</p>

   </dd><dt><dfn id="attr-td-th-axis" title="attr-td/th-axis"><code>axis</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dd><p>Use the <code title="attr-th-scope"><a href="tabular-data.html#attr-th-scope">scope</a></code> attribute.</p>

   </dd><dt><dfn id="attr-body-alink" title="attr-body-alink"><code>alink</code></dfn> on <code><a href="semantics.html#the-body-element-0">body</a></code> elements</dt>
   <dt><dfn id="attr-body-background" title="attr-body-background"><code>background</code></dfn> on <code><a href="semantics.html#the-body-element-0">body</a></code> elements</dt>
   <dt><dfn id="attr-body-bgcolor" title="attr-body-bgcolor"><code>bgcolor</code></dfn> on <code><a href="semantics.html#the-body-element-0">body</a></code> elements</dt>
   <dt><dfn id="attr-body-link" title="attr-body-link"><code>link</code></dfn> on <code><a href="semantics.html#the-body-element-0">body</a></code> elements</dt>
   <dt><dfn id="attr-body-text" title="attr-body-text"><code>text</code></dfn> on <code><a href="semantics.html#the-body-element-0">body</a></code> elements</dt>
   <dt><dfn id="attr-body-vlink" title="attr-body-vlink"><code>vlink</code></dfn> on <code><a href="semantics.html#the-body-element-0">body</a></code> elements</dt>
   <dt><dfn id="attr-br-clear" title="attr-br-clear"><code>clear</code></dfn> on <code><a href="semantics.html#the-br-element">br</a></code> elements</dt>
   <dt><dfn id="attr-caption-align" title="attr-caption-align"><code>align</code></dfn> on <code><a href="tabular-data.html#the-caption-element">caption</a></code> elements</dt>
   <dt><dfn id="attr-col-align" title="attr-col-align"><code>align</code></dfn> on <code><a href="tabular-data.html#the-col-element">col</a></code> elements</dt>
   <dt><dfn id="attr-col-char" title="attr-col-char"><code>char</code></dfn> on <code><a href="tabular-data.html#the-col-element">col</a></code> elements</dt>
   <dt><dfn id="attr-col-charoff" title="attr-col-charoff"><code>charoff</code></dfn> on <code><a href="tabular-data.html#the-col-element">col</a></code> elements</dt>
   <dt><dfn id="attr-col-valign" title="attr-col-vAlign"><code>valign</code></dfn> on <code><a href="tabular-data.html#the-col-element">col</a></code> elements</dt>
   <dt><dfn id="attr-col-width" title="attr-col-width"><code>width</code></dfn> on <code><a href="tabular-data.html#the-col-element">col</a></code> elements</dt>
   <dt><dfn id="attr-div-align" title="attr-div-align"><code>align</code></dfn> on <code><a href="interactive-elements.html#the-div-element">div</a></code> elements</dt>
   <dt><dfn id="attr-dl-compact" title="attr-dl-compact"><code>compact</code></dfn> on <code><a href="semantics.html#the-dl-element">dl</a></code> elements</dt>
   <dt><dfn id="attr-hr-align" title="attr-hr-align"><code>align</code></dfn> on <code><a href="semantics.html#the-hr-element">hr</a></code> elements</dt>
   <dt><dfn id="attr-hr-noshade" title="attr-hr-noshade"><code>noshade</code></dfn> on <code><a href="semantics.html#the-hr-element">hr</a></code> elements</dt>
   <dt><dfn id="attr-hr-size" title="attr-hr-size"><code>size</code></dfn> on <code><a href="semantics.html#the-hr-element">hr</a></code> elements</dt>
   <dt><dfn id="attr-hr-width" title="attr-hr-width"><code>width</code></dfn> on <code><a href="semantics.html#the-hr-element">hr</a></code> elements</dt>
   <dt><dfn id="attr-hx-align" title="attr-hx-align"><code>align</code></dfn> on <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code>&#8212;<code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h6</a></code> elements</dt>
   <dt><dfn id="attr-iframe-align" title="attr-iframe-align"><code>align</code></dfn> on <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements</dt>
   <dt><dfn id="attr-iframe-frameborder" title="attr-iframe-frameborder"><code>frameborder</code></dfn> on <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements</dt>
   <dt><dfn id="attr-iframe-marginheight" title="attr-iframe-marginheight"><code>marginheight</code></dfn> on <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements</dt>
   <dt><dfn id="attr-iframe-marginwidth" title="attr-iframe-marginwidth"><code>marginwidth</code></dfn> on <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements</dt>
   <dt><dfn id="attr-iframe-scrolling" title="attr-iframe-scrolling"><code>scrolling</code></dfn> on <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code> elements</dt>
   <dt><dfn id="attr-input-align" title="attr-input-align"><code>align</code></dfn> on <code><a href="forms.html#the-input-element">input</a></code> elements</dt>
   <dt><dfn id="attr-img-align" title="attr-img-align"><code>align</code></dfn> on <code><a href="text-level-semantics.html#the-img-element">img</a></code> elements</dt>
   <dt><dfn id="attr-img-border" title="attr-img-border"><code>border</code></dfn> on <code><a href="text-level-semantics.html#the-img-element">img</a></code> elements (except as noted in the previous section)</dt>
   <dt><dfn id="attr-img-hspace" title="attr-img-hspace"><code>hspace</code></dfn> on <code><a href="text-level-semantics.html#the-img-element">img</a></code> elements</dt>
   <dt><dfn id="attr-img-vspace" title="attr-img-vspace"><code>vspace</code></dfn> on <code><a href="text-level-semantics.html#the-img-element">img</a></code> elements</dt>
   <dt><dfn id="attr-legend-align" title="attr-legend-align"><code>align</code></dfn> on <code><a href="interactive-elements.html#the-legend-element">legend</a></code> elements</dt>
   <dt><dfn id="attr-li-type" title="attr-li-type"><code>type</code></dfn> on <code><a href="semantics.html#the-li-element">li</a></code> elements</dt>
   <dt><dfn id="attr-menu-compact" title="attr-menu-compact"><code>compact</code></dfn> on <code><a href="interactive-elements.html#menus">menu</a></code> elements</dt>
   <dt><dfn id="attr-object-align" title="attr-object-align"><code>align</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-object-border" title="attr-object-border"><code>border</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-object-hspace" title="attr-object-hspace"><code>hspace</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-object-vspace" title="attr-object-vspace"><code>vspace</code></dfn> on <code><a href="text-level-semantics.html#the-object-element">object</a></code> elements</dt>
   <dt><dfn id="attr-ol-compact" title="attr-ol-compact"><code>compact</code></dfn> on <code><a href="semantics.html#the-ol-element">ol</a></code> elements</dt>
   <dt><dfn id="attr-ol-type" title="attr-ol-type"><code>type</code></dfn> on <code><a href="semantics.html#the-ol-element">ol</a></code> elements</dt>
   <dt><dfn id="attr-p-align" title="attr-p-align"><code>align</code></dfn> on <code><a href="semantics.html#the-p-element">p</a></code> elements</dt>
   <dt><dfn id="attr-pre-width" title="attr-pre-width"><code>width</code></dfn> on <code><a href="semantics.html#the-pre-element">pre</a></code> elements</dt>
   <dt><dfn id="attr-table-align" title="attr-table-align"><code>align</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-bgcolor" title="attr-table-bgcolor"><code>bgcolor</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-border" title="attr-table-border"><code>border</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-cellpadding" title="attr-table-cellpadding"><code>cellpadding</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-cellspacing" title="attr-table-cellspacing"><code>cellspacing</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-frame" title="attr-table-frame"><code>frame</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-rules" title="attr-table-rules"><code>rules</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-table-width" title="attr-table-width"><code>width</code></dfn> on <code><a href="tabular-data.html#the-table-element">table</a></code> elements</dt>
   <dt><dfn id="attr-tbody-align" title="attr-tbody-align"><code>align</code></dfn> on <code><a href="tabular-data.html#the-tbody-element">tbody</a></code>, <code><a href="tabular-data.html#the-thead-element">thead</a></code>, and <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> elements</dt>
   <dt><dfn id="attr-tbody-char" title="attr-tbody-char"><code>char</code></dfn> on <code><a href="tabular-data.html#the-tbody-element">tbody</a></code>, <code><a href="tabular-data.html#the-thead-element">thead</a></code>, and <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> elements</dt>
   <dt><dfn id="attr-tbody-charoff" title="attr-tbody-charoff"><code>charoff</code></dfn> on <code><a href="tabular-data.html#the-tbody-element">tbody</a></code>, <code><a href="tabular-data.html#the-thead-element">thead</a></code>, and <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> elements</dt>
   <dt><dfn id="attr-tbody-valign" title="attr-tbody-vAlign"><code>valign</code></dfn> on <code><a href="tabular-data.html#the-tbody-element">tbody</a></code>, <code><a href="tabular-data.html#the-thead-element">thead</a></code>, and <code><a href="tabular-data.html#the-tfoot-element">tfoot</a></code> elements</dt>
   <dt><dfn id="attr-td-th-align" title="attr-td/th-align"><code>align</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-bgcolor" title="attr-td/th-bgcolor"><code>bgcolor</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-char" title="attr-td/th-char"><code>char</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-charoff" title="attr-td/th-charoff"><code>charoff</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-height" title="attr-td/th-height"><code>height</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-nowrap" title="attr-td/th-nowrap"><code>nowrap</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-valign" title="attr-td/th-valign"><code>valign</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-td-th-width" title="attr-td/th-width"><code>width</code></dfn> on <code><a href="tabular-data.html#the-td-element">td</a></code> and <code><a href="tabular-data.html#the-th-element">th</a></code> elements</dt>
   <dt><dfn id="attr-tr-align" title="attr-tr-align"><code>align</code></dfn> on <code><a href="tabular-data.html#the-tr-element">tr</a></code> elements</dt>
   <dt><dfn id="attr-tr-bgcolor" title="attr-tr-bgcolor"><code>bgcolor</code></dfn> on <code><a href="tabular-data.html#the-tr-element">tr</a></code> elements</dt>
   <dt><dfn id="attr-tr-char" title="attr-tr-char"><code>char</code></dfn> on <code><a href="tabular-data.html#the-tr-element">tr</a></code> elements</dt>
   <dt><dfn id="attr-tr-charoff" title="attr-tr-charoff"><code>charoff</code></dfn> on <code><a href="tabular-data.html#the-tr-element">tr</a></code> elements</dt>
   <dt><dfn id="attr-tr-valign" title="attr-tr-valign"><code>valign</code></dfn> on <code><a href="tabular-data.html#the-tr-element">tr</a></code> elements</dt>
   <dt><dfn id="attr-ul-compact" title="attr-ul-compact"><code>compact</code></dfn> on <code><a href="semantics.html#the-ul-element">ul</a></code> elements</dt>
   <dt><dfn id="attr-ul-type" title="attr-ul-type"><code>type</code></dfn> on <code><a href="semantics.html#the-ul-element">ul</a></code> elements</dt>
   <dd><p>Use CSS instead.</p></dd>

  </dl></body></html>
--- NEW FILE: named-character-references.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>9.2 Named character references &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="syntax.html" title="9 The HTML syntax" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="the-xhtml-syntax.html" title="10 The XHTML syntax" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="syntax.html">&#8592; 9 The HTML syntax</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="the-xhtml-syntax.html">10 The XHTML syntax &#8594;</a>
  </div>

  <h3 id="named-character-references"><span class="secno">9.2 </span><dfn>Named character references</dfn></h3><p>This table lists the character reference names that are supported
  by HTML, and the code points to which they refer. It is referenced
  by the previous sections.</p><div class="tall-and-narrow">
   <table><thead><tr><th> Name </th> <th> Character </th> </tr></thead><tbody><tr><td> <code title="">AElig;</code> </td> <td> U+000C6 </td> </tr><tr><td> <code title="">AElig</code> </td> <td> U+000C6 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">AMP;</code> </td> <td> U+00026 </td> </tr><tr><td> <code title="">AMP</code> </td> <td> U+00026 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Aacute;</code> </td> <td> U+000C1 </td> </tr><tr><td> <code title="">Aacute</code> </td> <td> U+000C1 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Abreve;</code> </td> <td> U+00102 </td> </tr><tr><td> <code title="">Acirc;</code> </td> <td> U+000C2 </td> </tr><tr><td> <code title="">Acirc</code> </td> <td> U+000C2 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Acy;</code> </td> <td> U+0410 </td> </tr><tr><td> <code title="">Afr;</code> </td> <td> U+1D504 </td> </tr><tr><td> <code title="">Agrave;</code> </td> <td> U+000C0 </td> </tr><tr><td> <code title="">Agrave</code> </td> <td> U+000C0 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Alpha;</code> </td> <td> U+00391 </td> </tr><tr><td> <code title="">Amacr;</code> </td> <td> U+00100 </td> </tr><tr><td> <code title="">And;</code> </td> <td> U+02A53 </td> </tr><tr><td> <code title="">Aogon;</code> </td> <td> U+00104 </td> </tr><tr><td> <code title="">Aopf;</code> </td> <td> U+1D538 </td> </tr><tr><td> <code title="">ApplyFunction;</code> </td> <td> U+02061 </td> </tr><tr><td> <code title="">Aring;</code> </td> <td> U+000C5 </td> </tr><tr><td> <code title="">Aring</code> </td> <td> U+000C5 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ascr;</code> </td> <td> U+1D49C </td> </tr><tr><td> <code title="">Assign;</code> </td><td> U+02254 </td> </tr><tr><td> <code title="">Atilde;</code> </td> <td> U+000C3 </td> </tr><tr><td> <code title="">Atilde</code> </td> <td> U+000C3 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Auml;</code> </td> <td> U+000C4 </td> </tr><tr><td> <code title="">Auml</code> </td> <td> U+000C4 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Backslash;</code> </td> <td> U+02216 </td> </tr><tr><td> <code title="">Barv;</code> </td> <td> U+02AE7 </td> </tr><tr><td> <code title="">Barwed;</code> </td> <td> U+02306 </td> </tr><tr><td> <code title="">Bcy;</code> </td> <td> U+00411 </td> </tr><tr><td> <code title="">Because;</code> </td> <td> U+02235 </td> </tr><tr><td> <code title="">Bernoullis;</code> </td> <td> U+0212C </td> </tr><tr><td> <code title="">Beta;</code> </td> <td> U+00392 </td> </tr><tr><td> <code title="">Bfr;</code> </td> <td> U+1D505 </td> </tr><tr><td> <code title="">Bopf;</cod> </td> <td> U+1D539 </td> </tr><tr><td> <code title="">Breve;</code> </td> <td> U+002D8 </td> </tr><tr><td> <code title="">Bscr;</code> </td> <td> U+0212C </td> </tr><tr><td> <code title="">Bumpeq;</code> </td> <td> U+0224E </td> </tr><tr><td> <code title="">CHcy;</code> </td> <td> U+00427 </td> </tr><tr><td> <code title="">COPY;</code> </td> <td> U+000A9 </td> </tr><tr><td> <code title="">COPY</code> </td> <td> U+000A9 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Cacute;</code> </td> <td> U+00106 </td> </tr><tr><td> <code title="">Cap;</code> </td> <td> U+022D2 </td> </tr><tr><td> <code title="">CapitalDifferentialD;</code> </td> <td> U+02145 </td> </tr><tr><td> <code title="">Cayleys;</code> </td> <td> U+0212D </td> </tr><tr><td> <code title="">Ccaron;</code> </td> <td> U+0010C </td> </tr><tr><td> <code title="">Ccedil;</code> </td> <td> U+000C7 </td> </tr><tr><td> <code title="">Ccedil</code> </td> <td> U+000C7 </td> </tr><!-- (invalid entitywith missing semicolon for legacy support only) --><tr><td> <code title="">Ccirc;</code> </td> <td> U+00108 </td> </tr><tr><td> <code title="">Cconint;</code> </td> <td> U+02230 </td> </tr><tr><td> <code title="">Cdot;</code> </td> <td> U+0010A </td> </tr><tr><td> <code title="">Cedilla;</code> </td> <td> U+000B8 </td> </tr><tr><td> <code title="">CenterDot;</code> </td> <td> U+000B7 </td> </tr><tr><td> <code title="">Cfr;</code> </td> <td> U+0212D </td> </tr><tr><td> <code title="">Chi;</code> </td> <td> U+003A7 </td> </tr><tr><td> <code title="">CircleDot;</code> </td> <td> U+02299 </td> </tr><tr><td> <code title="">CircleMinus;</code> </td> <td> U+02296 </td> </tr><tr><td> <code title="">CirclePlus;</code> </td> <td> U+02295 </td> </tr><tr><td> <code title="">CircleTimes;</code> </td> <td> U+02297 </td> </tr><tr><td> <code title="">ClockwiseContourIntegral;</code> </td> <td> U+02232 </td> </tr><tr><td> <code title="">CloseCurlyDoubleQuote;</code> </td> <td> U+0201D </td> </tr><tr><td> <code title="">ClosCurlyQuote;</code> </td> <td> U+02019 </td> </tr><tr><td> <code title="">Colon;</code> </td> <td> U+02237 </td> </tr><tr><td> <code title="">Colone;</code> </td> <td> U+02A74 </td> </tr><tr><td> <code title="">Congruent;</code> </td> <td> U+02261 </td> </tr><tr><td> <code title="">Conint;</code> </td> <td> U+0222F </td> </tr><tr><td> <code title="">ContourIntegral;</code> </td> <td> U+0222E </td> </tr><tr><td> <code title="">Copf;</code> </td> <td> U+02102 </td> </tr><tr><td> <code title="">Coproduct;</code> </td> <td> U+02210 </td> </tr><tr><td> <code title="">CounterClockwiseContourIntegral;</code> </td> <td> U+02233 </td> </tr><tr><td> <code title="">Cross;</code> </td> <td> U+02A2F </td> </tr><tr><td> <code title="">Cscr;</code> </td> <td> U+1D49E </td> </tr><tr><td> <code title="">Cup;</code> </td> <td> U+022D3 </td> </tr><tr><td> <code title="">CupCap;</code> </td> <td> U+0224D </td> </tr><tr><td> <code title="">DD;</code> </td> <td> U+02145 </td> </tr><tr><td> <code title="">DDotrahd;</code> </td> <t> U+02911 </td> </tr><tr><td> <code title="">DJcy;</code> </td> <td> U+00402 </td> </tr><tr><td> <code title="">DScy;</code> </td> <td> U+00405 </td> </tr><tr><td> <code title="">DZcy;</code> </td> <td> U+0040F </td> </tr><tr><td> <code title="">Dagger;</code> </td> <td> U+02021 </td> </tr><tr><td> <code title="">Darr;</code> </td> <td> U+021A1 </td> </tr><tr><td> <code title="">Dashv;</code> </td> <td> U+02AE4 </td> </tr><tr><td> <code title="">Dcaron;</code> </td> <td> U+0010E </td> </tr><tr><td> <code title="">Dcy;</code> </td> <td> U+00414 </td> </tr><tr><td> <code title="">Del;</code> </td> <td> U+02207 </td> </tr><tr><td> <code title="">Delta;</code> </td> <td> U+00394 </td> </tr><tr><td> <code title="">Dfr;</code> </td> <td> U+1D507 </td> </tr><tr><td> <code title="">DiacriticalAcute;</code> </td> <td> U+000B4 </td> </tr><tr><td> <code title="">DiacriticalDot;</code> </td> <td> U+002D9 </td> </tr><tr><td> <code title="">DiacriticalDoubleAcute;</code> </td> <td> U+002DD </td> </tr><tr><td> <code title"">DiacriticalGrave;</code> </td> <td> U+00060 </td> </tr><tr><td> <code title="">DiacriticalTilde;</code> </td> <td> U+002DC </td> </tr><tr><td> <code title="">Diamond;</code> </td> <td> U+022C4 </td> </tr><tr><td> <code title="">DifferentialD;</code> </td> <td> U+02146 </td> </tr><tr><td> <code title="">Dopf;</code> </td> <td> U+1D53B </td> </tr><tr><td> <code title="">Dot;</code> </td> <td> U+000A8 </td> </tr><tr><td> <code title="">DotDot;</code> </td> <td> U+020DC </td> </tr><tr><td> <code title="">DotEqual;</code> </td> <td> U+02250 </td> </tr><tr><td> <code title="">DoubleContourIntegral;</code> </td> <td> U+0222F </td> </tr><tr><td> <code title="">DoubleDot;</code> </td> <td> U+000A8 </td> </tr><tr><td> <code title="">DoubleDownArrow;</code> </td> <td> U+021D3 </td> </tr><tr><td> <code title="">DoubleLeftArrow;</code> </td> <td> U+021D0 </td> </tr><tr><td> <code title="">DoubleLeftRightArrow;</code> </td> <td> U+021D4 </td> </tr><tr><td> <code title="">DoubleLeftTee;</code> </td> <td> U+02AE4 </td> /tr><tr><td> <code title="">DoubleLongLeftArrow;</code> </td> <td> U+027F8 </td> </tr><tr><td> <code title="">DoubleLongLeftRightArrow;</code> </td> <td> U+027FA </td> </tr><tr><td> <code title="">DoubleLongRightArrow;</code> </td> <td> U+027F9 </td> </tr><tr><td> <code title="">DoubleRightArrow;</code> </td> <td> U+021D2 </td> </tr><tr><td> <code title="">DoubleRightTee;</code> </td> <td> U+022A8 </td> </tr><tr><td> <code title="">DoubleUpArrow;</code> </td> <td> U+021D1 </td> </tr><tr><td> <code title="">DoubleUpDownArrow;</code> </td> <td> U+021D5 </td> </tr><tr><td> <code title="">DoubleVerticalBar;</code> </td> <td> U+02225 </td> </tr><tr><td> <code title="">DownArrow;</code> </td> <td> U+02193 </td> </tr><tr><td> <code title="">DownArrowBar;</code> </td> <td> U+02913 </td> </tr><tr><td> <code title="">DownArrowUpArrow;</code> </td> <td> U+021F5 </td> </tr><tr><td> <code title="">DownBreve;</code> </td> <td> U+00311 </td> </tr><tr><td> <code title="">DownLeftRightVector;</code> </td> <td> U+02950 </td></tr><tr><td> <code title="">DownLeftTeeVector;</code> </td> <td> U+0295E </td> </tr><tr><td> <code title="">DownLeftVector;</code> </td> <td> U+021BD </td> </tr><tr><td> <code title="">DownLeftVectorBar;</code> </td> <td> U+02956 </td> </tr><tr><td> <code title="">DownRightTeeVector;</code> </td> <td> U+0295F </td> </tr><tr><td> <code title="">DownRightVector;</code> </td> <td> U+021C1 </td> </tr><tr><td> <code title="">DownRightVectorBar;</code> </td> <td> U+02957 </td> </tr><tr><td> <code title="">DownTee;</code> </td> <td> U+022A4 </td> </tr><tr><td> <code title="">DownTeeArrow;</code> </td> <td> U+021A7 </td> </tr><tr><td> <code title="">Downarrow;</code> </td> <td> U+021D3 </td> </tr><tr><td> <code title="">Dscr;</code> </td> <td> U+1D49F </td> </tr><tr><td> <code title="">Dstrok;</code> </td> <td> U+00110 </td> </tr><tr><td> <code title="">ENG;</code> </td> <td> U+0014A </td> </tr><tr><td> <code title="">ETH;</code> </td> <td> U+000D0 </td> </tr><tr><td> <code title="">ETH</code> </td> <td> U+000D0 <td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Eacute;</code> </td> <td> U+000C9 </td> </tr><tr><td> <code title="">Eacute</code> </td> <td> U+000C9 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ecaron;</code> </td> <td> U+0011A </td> </tr><tr><td> <code title="">Ecirc;</code> </td> <td> U+000CA </td> </tr><tr><td> <code title="">Ecirc</code> </td> <td> U+000CA </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ecy;</code> </td> <td> U+0042D </td> </tr><tr><td> <code title="">Edot;</code> </td> <td> U+00116 </td> </tr><tr><td> <code title="">Efr;</code> </td> <td> U+1D508 </td> </tr><tr><td> <code title="">Egrave;</code> </td> <td> U+000C8 </td> </tr><tr><td> <code title="">Egrave</code> </td> <td> U+000C8 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Element;</code> </td> <t> U+02208 </td> </tr><tr><td> <code title="">Emacr;</code> </td> <td> U+00112 </td> </tr><tr><td> <code title="">EmptySmallSquare;</code> </td> <td> U+025FB </td> </tr><tr><td> <code title="">EmptyVerySmallSquare;</code> </td> <td> U+025AB </td> </tr><tr><td> <code title="">Eogon;</code> </td> <td> U+00118 </td> </tr><tr><td> <code title="">Eopf;</code> </td> <td> U+1D53C </td> </tr><tr><td> <code title="">Epsilon;</code> </td> <td> U+00395 </td> </tr><tr><td> <code title="">Equal;</code> </td> <td> U+02A75 </td> </tr><tr><td> <code title="">EqualTilde;</code> </td> <td> U+02242 </td> </tr><tr><td> <code title="">Equilibrium;</code> </td> <td> U+021CC </td> </tr><tr><td> <code title="">Escr;</code> </td> <td> U+02130 </td> </tr><tr><td> <code title="">Esim;</code> </td> <td> U+02A73 </td> </tr><tr><td> <code title="">Eta;</code> </td> <td> U+00397 </td> </tr><tr><td> <code title="">Euml;</code> </td> <td> U+000CB </td> </tr><tr><td> <code title="">Euml</code> </td> <td> U+000CB </td> </tr><!-- (invalid entiy with missing semicolon for legacy support only) --><tr><td> <code title="">Exists;</code> </td> <td> U+02203 </td> </tr><tr><td> <code title="">ExponentialE;</code> </td> <td> U+02147 </td> </tr><tr><td> <code title="">Fcy;</code> </td> <td> U+00424 </td> </tr><tr><td> <code title="">Ffr;</code> </td> <td> U+1D509 </td> </tr><tr><td> <code title="">FilledSmallSquare;</code> </td> <td> U+025FC </td> </tr><tr><td> <code title="">FilledVerySmallSquare;</code> </td> <td> U+025AA </td> </tr><tr><td> <code title="">Fopf;</code> </td> <td> U+1D53D </td> </tr><tr><td> <code title="">ForAll;</code> </td> <td> U+02200 </td> </tr><tr><td> <code title="">Fouriertrf;</code> </td> <td> U+02131 </td> </tr><tr><td> <code title="">Fscr;</code> </td> <td> U+02131 </td> </tr><tr><td> <code title="">GJcy;</code> </td> <td> U+00403 </td> </tr><tr><td> <code title="">GT;</code> </td> <td> U+0003E </td> </tr><tr><td> <code title="">GT</code> </td> <td> U+0003E </td> </tr><!-- (invalid entity with missing semicolon for legacy suport only) --><tr><td> <code title="">Gamma;</code> </td> <td> U+00393 </td> </tr><tr><td> <code title="">Gammad;</code> </td> <td> U+003DC </td> </tr><tr><td> <code title="">Gbreve;</code> </td> <td> U+0011E </td> </tr><tr><td> <code title="">Gcedil;</code> </td> <td> U+00122 </td> </tr><tr><td> <code title="">Gcirc;</code> </td> <td> U+0011C </td> </tr><tr><td> <code title="">Gcy;</code> </td> <td> U+00413 </td> </tr><tr><td> <code title="">Gdot;</code> </td> <td> U+00120 </td> </tr><tr><td> <code title="">Gfr;</code> </td> <td> U+1D50A </td> </tr><tr><td> <code title="">Gg;</code> </td> <td> U+022D9 </td> </tr><tr><td> <code title="">Gopf;</code> </td> <td> U+1D53E </td> </tr><tr><td> <code title="">GreaterEqual;</code> </td> <td> U+02265 </td> </tr><tr><td> <code title="">GreaterEqualLess;</code> </td> <td> U+022DB </td> </tr><tr><td> <code title="">GreaterFullEqual;</code> </td> <td> U+02267 </td> </tr><tr><td> <code title="">GreaterGreater;</code> </td> <td> U+02AA2 </td> </tr><tr><td> <code title="">reaterLess;</code> </td> <td> U+02277 </td> </tr><tr><td> <code title="">GreaterSlantEqual;</code> </td> <td> U+02A7E </td> </tr><tr><td> <code title="">GreaterTilde;</code> </td> <td> U+02273 </td> </tr><tr><td> <code title="">Gscr;</code> </td> <td> U+1D4A2 </td> </tr><tr><td> <code title="">Gt;</code> </td> <td> U+0226B </td> </tr><tr><td> <code title="">HARDcy;</code> </td> <td> U+0042A </td> </tr><tr><td> <code title="">Hacek;</code> </td> <td> U+002C7 </td> </tr><tr><td> <code title="">Hat;</code> </td> <td> U+0005E </td> </tr><tr><td> <code title="">Hcirc;</code> </td> <td> U+00124 </td> </tr><tr><td> <code title="">Hfr;</code> </td> <td> U+0210C </td> </tr><tr><td> <code title="">HilbertSpace;</code> </td> <td> U+0210B </td> </tr><tr><td> <code title="">Hopf;</code> </td> <td> U+0210D </td> </tr><tr><td> <code title="">HorizontalLine;</code> </td> <td> U+02500 </td> </tr><tr><td> <code title="">Hscr;</code> </td> <td> U+0210B </td> </tr><tr><td> <code title="">Hstrok;</code> </td> <td> U+00126 </td></tr><tr><td> <code title="">HumpDownHump;</code> </td> <td> U+0224E </td> </tr><tr><td> <code title="">HumpEqual;</code> </td> <td> U+0224F </td> </tr><tr><td> <code title="">IEcy;</code> </td> <td> U+00415 </td> </tr><tr><td> <code title="">IJlig;</code> </td> <td> U+00132 </td> </tr><tr><td> <code title="">IOcy;</code> </td> <td> U+00401 </td> </tr><tr><td> <code title="">Iacute;</code> </td> <td> U+000CD </td> </tr><tr><td> <code title="">Iacute</code> </td> <td> U+000CD </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Icirc;</code> </td> <td> U+000CE </td> </tr><tr><td> <code title="">Icirc</code> </td> <td> U+000CE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Icy;</code> </td> <td> U+00418 </td> </tr><tr><td> <code title="">Idot;</code> </td> <td> U+00130 </td> </tr><tr><td> <code title="">Ifr;</code> </td> <td> U+02111 </td> </tr><tr><td> <code title="">Igrave;</code> </td> <td> U+00CC </td> </tr><tr><td> <code title="">Igrave</code> </td> <td> U+000CC </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Im;</code> </td> <td> U+02111 </td> </tr><tr><td> <code title="">Imacr;</code> </td> <td> U+0012A </td> </tr><tr><td> <code title="">ImaginaryI;</code> </td> <td> U+02148 </td> </tr><tr><td> <code title="">Implies;</code> </td> <td> U+021D2 </td> </tr><tr><td> <code title="">Int;</code> </td> <td> U+0222C </td> </tr><tr><td> <code title="">Integral;</code> </td> <td> U+0222B </td> </tr><tr><td> <code title="">Intersection;</code> </td> <td> U+022C2 </td> </tr><tr><td> <code title="">InvisibleComma;</code> </td> <td> U+02063 </td> </tr><tr><td> <code title="">InvisibleTimes;</code> </td> <td> U+02062 </td> </tr><tr><td> <code title="">Iogon;</code> </td> <td> U+0012E </td> </tr><tr><td> <code title="">Iopf;</code> </td> <td> U+1D540 </td> </tr><tr><td> <code title="">Iota;</code> </td> <td> U+00399 </td> </tr><tr><td> <code title=""Iscr;</code> </td> <td> U+02110 </td> </tr><tr><td> <code title="">Itilde;</code> </td> <td> U+00128 </td> </tr><tr><td> <code title="">Iukcy;</code> </td> <td> U+00406 </td> </tr><tr><td> <code title="">Iuml;</code> </td> <td> U+000CF </td> </tr><tr><td> <code title="">Iuml</code> </td> <td> U+000CF </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Jcirc;</code> </td> <td> U+00134 </td> </tr><tr><td> <code title="">Jcy;</code> </td> <td> U+00419 </td> </tr><tr><td> <code title="">Jfr;</code> </td> <td> U+1D50D </td> </tr><tr><td> <code title="">Jopf;</code> </td> <td> U+1D541 </td> </tr><tr><td> <code title="">Jscr;</code> </td> <td> U+1D4A5 </td> </tr><tr><td> <code title="">Jsercy;</code> </td> <td> U+00408 </td> </tr><tr><td> <code title="">Jukcy;</code> </td> <td> U+00404 </td> </tr><tr><td> <code title="">KHcy;</code> </td> <td> U+00425 </td> </tr><tr><td> <code title="">KJcy;</code> </td> <td> U+0040C </td> </tr><tr><td> <code title="">Kappa;</ode> </td> <td> U+0039A </td> </tr><tr><td> <code title="">Kcedil;</code> </td> <td> U+00136 </td> </tr><tr><td> <code title="">Kcy;</code> </td> <td> U+0041A </td> </tr><tr><td> <code title="">Kfr;</code> </td> <td> U+1D50E </td> </tr><tr><td> <code title="">Kopf;</code> </td> <td> U+1D542 </td> </tr><tr><td> <code title="">Kscr;</code> </td> <td> U+1D4A6 </td> </tr><tr><td> <code title="">LJcy;</code> </td> <td> U+00409 </td> </tr><tr><td> <code title="">LT;</code> </td> <td> U+0003C </td> </tr><tr><td> <code title="">LT</code> </td> <td> U+0003C </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Lacute;</code> </td> <td> U+00139 </td> </tr><tr><td> <code title="">Lambda;</code> </td> <td> U+0039B </td> </tr><tr><td> <code title="">Lang;</code> </td> <td> U+027EA </td> </tr><tr><td> <code title="">Laplacetrf;</code> </td> <td> U+02112 </td> </tr><tr><td> <code title="">Larr;</code> </td> <td> U+0219E </td> </tr><tr><td> <code title="">Lcaron;</code> /td> <td> U+0013D </td> </tr><tr><td> <code title="">Lcedil;</code> </td> <td> U+0013B </td> </tr><tr><td> <code title="">Lcy;</code> </td> <td> U+0041B </td> </tr><tr><td> <code title="">LeftAngleBracket;</code> </td> <td> U+027E8 </td> </tr><tr><td> <code title="">LeftArrow;</code> </td> <td> U+02190 </td> </tr><tr><td> <code title="">LeftArrowBar;</code> </td> <td> U+021E4 </td> </tr><tr><td> <code title="">LeftArrowRightArrow;</code> </td> <td> U+021C6 </td> </tr><tr><td> <code title="">LeftCeiling;</code> </td> <td> U+02308 </td> </tr><tr><td> <code title="">LeftDoubleBracket;</code> </td> <td> U+027E6 </td> </tr><tr><td> <code title="">LeftDownTeeVector;</code> </td> <td> U+02961 </td> </tr><tr><td> <code title="">LeftDownVector;</code> </td> <td> U+021C3 </td> </tr><tr><td> <code title="">LeftDownVectorBar;</code> </td> <td> U+02959 </td> </tr><tr><td> <code title="">LeftFloor;</code> </td> <td> U+0230A </td> </tr><tr><td> <code title="">LeftRightArrow;</code> </td> <td> U+02194 </td> </tr><tr><td> <ode title="">LeftRightVector;</code> </td> <td> U+0294E </td> </tr><tr><td> <code title="">LeftTee;</code> </td> <td> U+022A3 </td> </tr><tr><td> <code title="">LeftTeeArrow;</code> </td> <td> U+021A4 </td> </tr><tr><td> <code title="">LeftTeeVector;</code> </td> <td> U+0295A </td> </tr><tr><td> <code title="">LeftTriangle;</code> </td> <td> U+022B2 </td> </tr><tr><td> <code title="">LeftTriangleBar;</code> </td> <td> U+029CF </td> </tr><tr><td> <code title="">LeftTriangleEqual;</code> </td> <td> U+022B4 </td> </tr><tr><td> <code title="">LeftUpDownVector;</code> </td> <td> U+02951 </td> </tr><tr><td> <code title="">LeftUpTeeVector;</code> </td> <td> U+02960 </td> </tr><tr><td> <code title="">LeftUpVector;</code> </td> <td> U+021BF </td> </tr><tr><td> <code title="">LeftUpVectorBar;</code> </td> <td> U+02958 </td> </tr><tr><td> <code title="">LeftVector;</code> </td> <td> U+021BC </td> </tr><tr><td> <code title="">LeftVectorBar;</code> </td> <td> U+02952 </td> </tr><tr><td> <code title="">Leftarrow;</code> /td> <td> U+021D0 </td> </tr><tr><td> <code title="">Leftrightarrow;</code> </td> <td> U+021D4 </td> </tr><tr><td> <code title="">LessEqualGreater;</code> </td> <td> U+022DA </td> </tr><tr><td> <code title="">LessFullEqual;</code> </td> <td> U+02266 </td> </tr><tr><td> <code title="">LessGreater;</code> </td> <td> U+02276 </td> </tr><tr><td> <code title="">LessLess;</code> </td> <td> U+02AA1 </td> </tr><tr><td> <code title="">LessSlantEqual;</code> </td> <td> U+02A7D </td> </tr><tr><td> <code title="">LessTilde;</code> </td> <td> U+02272 </td> </tr><tr><td> <code title="">Lfr;</code> </td> <td> U+1D50F </td> </tr><tr><td> <code title="">Ll;</code> </td> <td> U+022D8 </td> </tr><tr><td> <code title="">Lleftarrow;</code> </td> <td> U+021DA </td> </tr><tr><td> <code title="">Lmidot;</code> </td> <td> U+0013F </td> </tr><tr><td> <code title="">LongLeftArrow;</code> </td> <td> U+027F5 </td> </tr><tr><td> <code title="">LongLeftRightArrow;</code> </td> <td> U+027F7 </td> </tr><tr><td> <code title="">LongRightArro;</code> </td> <td> U+027F6 </td> </tr><tr><td> <code title="">Longleftarrow;</code> </td> <td> U+027F8 </td> </tr><tr><td> <code title="">Longleftrightarrow;</code> </td> <td> U+027FA </td> </tr><tr><td> <code title="">Longrightarrow;</code> </td> <td> U+027F9 </td> </tr><tr><td> <code title="">Lopf;</code> </td> <td> U+1D543 </td> </tr><tr><td> <code title="">LowerLeftArrow;</code> </td> <td> U+02199 </td> </tr><tr><td> <code title="">LowerRightArrow;</code> </td> <td> U+02198 </td> </tr><tr><td> <code title="">Lscr;</code> </td> <td> U+02112 </td> </tr><tr><td> <code title="">Lsh;</code> </td> <td> U+021B0 </td> </tr><tr><td> <code title="">Lstrok;</code> </td> <td> U+00141 </td> </tr><tr><td> <code title="">Lt;</code> </td> <td> U+0226A </td> </tr><tr><td> <code title="">Map;</code> </td> <td> U+02905 </td> </tr><tr><td> <code title="">Mcy;</code> </td> <td> U+0041C </td> </tr><tr><td> <code title="">MediumSpace;</code> </td> <td> U+0205F </td> </tr><tr><td> <code title="">Mellintrf;</code> </td> <td> U02133 </td> </tr><tr><td> <code title="">Mfr;</code> </td> <td> U+1D510 </td> </tr><tr><td> <code title="">MinusPlus;</code> </td> <td> U+02213 </td> </tr><tr><td> <code title="">Mopf;</code> </td> <td> U+1D544 </td> </tr><tr><td> <code title="">Mscr;</code> </td> <td> U+02133 </td> </tr><tr><td> <code title="">Mu;</code> </td> <td> U+0039C </td> </tr><tr><td> <code title="">NJcy;</code> </td> <td> U+0040A </td> </tr><tr><td> <code title="">Nacute;</code> </td> <td> U+00143 </td> </tr><tr><td> <code title="">Ncaron;</code> </td> <td> U+00147 </td> </tr><tr><td> <code title="">Ncedil;</code> </td> <td> U+00145 </td> </tr><tr><td> <code title="">Ncy;</code> </td> <td> U+0041D </td> </tr><tr><td> <code title="">NegativeMediumSpace;</code> </td> <td> U+0200B </td> </tr><tr><td> <code title="">NegativeThickSpace;</code> </td> <td> U+0200B </td> </tr><tr><td> <code title="">NegativeThinSpace;</code> </td> <td> U+0200B </td> </tr><tr><td> <code title="">NegativeVeryThinSpace;</code> </td> <td> U+0200B </td> </tr><r><td> <code title="">NestedGreaterGreater;</code> </td> <td> U+0226B </td> </tr><tr><td> <code title="">NestedLessLess;</code> </td> <td> U+0226A </td> </tr><tr><td> <code title="">NewLine;</code> </td> <td> U+0000A </td> </tr><tr><td> <code title="">Nfr;</code> </td> <td> U+1D511 </td> </tr><tr><td> <code title="">NoBreak;</code> </td> <td> U+02060 </td> </tr><tr><td> <code title="">NonBreakingSpace;</code> </td> <td> U+000A0 </td> </tr><tr><td> <code title="">Nopf;</code> </td> <td> U+02115 </td> </tr><tr><td> <code title="">Not;</code> </td> <td> U+02AEC </td> </tr><tr><td> <code title="">NotCongruent;</code> </td> <td> U+02262 </td> </tr><tr><td> <code title="">NotCupCap;</code> </td> <td> U+0226D </td> </tr><tr><td> <code title="">NotDoubleVerticalBar;</code> </td> <td> U+02226 </td> </tr><tr><td> <code title="">NotElement;</code> </td> <td> U+02209 </td> </tr><tr><td> <code title="">NotEqual;</code> </td> <td> U+02260 </td> </tr><tr><td> <code title="">NotExists;</code> </td> <td> U+02204 </td> </tr>tr><td> <code title="">NotGreater;</code> </td> <td> U+0226F </td> </tr><tr><td> <code title="">NotGreaterEqual;</code> </td> <td> U+02271 </td> </tr><tr><td> <code title="">NotGreaterLess;</code> </td> <td> U+02279 </td> </tr><tr><td> <code title="">NotGreaterTilde;</code> </td> <td> U+02275 </td> </tr><tr><td> <code title="">NotLeftTriangle;</code> </td> <td> U+022EA </td> </tr><tr><td> <code title="">NotLeftTriangleEqual;</code> </td> <td> U+022EC </td> </tr><tr><td> <code title="">NotLess;</code> </td> <td> U+0226E </td> </tr><tr><td> <code title="">NotLessEqual;</code> </td> <td> U+02270 </td> </tr><tr><td> <code title="">NotLessGreater;</code> </td> <td> U+02278 </td> </tr><tr><td> <code title="">NotLessTilde;</code> </td> <td> U+02274 </td> </tr><tr><td> <code title="">NotPrecedes;</code> </td> <td> U+02280 </td> </tr><tr><td> <code title="">NotPrecedesSlantEqual;</code> </td> <td> U+022E0 </td> </tr><tr><td> <code title="">NotReverseElement;</code> </td> <td> U+0220C </td> </tr><tr><td> <code title=">NotRightTriangle;</code> </td> <td> U+022EB </td> </tr><tr><td> <code title="">NotRightTriangleEqual;</code> </td> <td> U+022ED </td> </tr><tr><td> <code title="">NotSquareSubsetEqual;</code> </td> <td> U+022E2 </td> </tr><tr><td> <code title="">NotSquareSupersetEqual;</code> </td> <td> U+022E3 </td> </tr><tr><td> <code title="">NotSubsetEqual;</code> </td> <td> U+02288 </td> </tr><tr><td> <code title="">NotSucceeds;</code> </td> <td> U+02281 </td> </tr><tr><td> <code title="">NotSucceedsSlantEqual;</code> </td> <td> U+022E1 </td> </tr><tr><td> <code title="">NotSupersetEqual;</code> </td> <td> U+02289 </td> </tr><tr><td> <code title="">NotTilde;</code> </td> <td> U+02241 </td> </tr><tr><td> <code title="">NotTildeEqual;</code> </td> <td> U+02244 </td> </tr><tr><td> <code title="">NotTildeFullEqual;</code> </td> <td> U+02247 </td> </tr><tr><td> <code title="">NotTildeTilde;</code> </td> <td> U+02249 </td> </tr><tr><td> <code title="">NotVerticalBar;</code> </td> <td> U+02224 </td> </tr><tr><td> <code titl="">Nscr;</code> </td> <td> U+1D4A9 </td> </tr><tr><td> <code title="">Ntilde;</code> </td> <td> U+000D1 </td> </tr><tr><td> <code title="">Ntilde</code> </td> <td> U+000D1 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Nu;</code> </td> <td> U+0039D </td> </tr><tr><td> <code title="">OElig;</code> </td> <td> U+00152 </td> </tr><tr><td> <code title="">Oacute;</code> </td> <td> U+000D3 </td> </tr><tr><td> <code title="">Oacute</code> </td> <td> U+000D3 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ocirc;</code> </td> <td> U+000D4 </td> </tr><tr><td> <code title="">Ocirc</code> </td> <td> U+000D4 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ocy;</code> </td> <td> U+0041E </td> </tr><tr><td> <code title="">Odblac;</code> </td> <td> U+00150 </td> </tr><tr><td> <code title="">Ofr;</code> </td> <td> U+1D512 </td> </tr><tr><td> <code ttle="">Ograve;</code> </td> <td> U+000D2 </td> </tr><tr><td> <code title="">Ograve</code> </td> <td> U+000D2 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Omacr;</code> </td> <td> U+0014C </td> </tr><tr><td> <code title="">Omega;</code> </td> <td> U+003A9 </td> </tr><tr><td> <code title="">Omicron;</code> </td> <td> U+0039F </td> </tr><tr><td> <code title="">Oopf;</code> </td> <td> U+1D546 </td> </tr><tr><td> <code title="">OpenCurlyDoubleQuote;</code> </td> <td> U+0201C </td> </tr><tr><td> <code title="">OpenCurlyQuote;</code> </td> <td> U+02018 </td> </tr><tr><td> <code title="">Or;</code> </td> <td> U+02A54 </td> </tr><tr><td> <code title="">Oscr;</code> </td> <td> U+1D4AA </td> </tr><tr><td> <code title="">Oslash;</code> </td> <td> U+000D8 </td> </tr><tr><td> <code title="">Oslash</code> </td> <td> U+000D8 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Otilde;</code> </td> <td> U+000D </td> </tr><tr><td> <code title="">Otilde</code> </td> <td> U+000D5 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Otimes;</code> </td> <td> U+02A37 </td> </tr><tr><td> <code title="">Ouml;</code> </td> <td> U+000D6 </td> </tr><tr><td> <code title="">Ouml</code> </td> <td> U+000D6 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">OverBar;</code> </td> <td> U+000AF </td> </tr><tr><td> <code title="">OverBrace;</code> </td> <td> U+023DE </td> </tr><tr><td> <code title="">OverBracket;</code> </td> <td> U+023B4 </td> </tr><tr><td> <code title="">OverParenthesis;</code> </td> <td> U+023DC </td> </tr><tr><td> <code title="">PartialD;</code> </td> <td> U+02202 </td> </tr><tr><td> <code title="">Pcy;</code> </td> <td> U+0041F </td> </tr><tr><td> <code title="">Pfr;</code> </td> <td> U+1D513 </td> </tr><tr><td> <code title="">Phi;</code> </td> <td> U+003A6 </td> </tr><tr><td> <code title="">Pi;</code </td> <td> U+003A0 </td> </tr><tr><td> <code title="">PlusMinus;</code> </td> <td> U+000B1 </td> </tr><tr><td> <code title="">Poincareplane;</code> </td> <td> U+0210C </td> </tr><tr><td> <code title="">Popf;</code> </td> <td> U+02119 </td> </tr><tr><td> <code title="">Pr;</code> </td> <td> U+02ABB </td> </tr><tr><td> <code title="">Precedes;</code> </td> <td> U+0227A </td> </tr><tr><td> <code title="">PrecedesEqual;</code> </td> <td> U+02AAF </td> </tr><tr><td> <code title="">PrecedesSlantEqual;</code> </td> <td> U+0227C </td> </tr><tr><td> <code title="">PrecedesTilde;</code> </td> <td> U+0227E </td> </tr><tr><td> <code title="">Prime;</code> </td> <td> U+02033 </td> </tr><tr><td> <code title="">Product;</code> </td> <td> U+0220F </td> </tr><tr><td> <code title="">Proportion;</code> </td> <td> U+02237 </td> </tr><tr><td> <code title="">Proportional;</code> </td> <td> U+0221D </td> </tr><tr><td> <code title="">Pscr;</code> </td> <td> U+1D4AB </td> </tr><tr><td> <code title="">Psi;</code> </td> <td> U+003A8</td> </tr><tr><td> <code title="">QUOT;</code> </td> <td> U+00022 </td> </tr><tr><td> <code title="">QUOT</code> </td> <td> U+00022 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Qfr;</code> </td> <td> U+1D514 </td> </tr><tr><td> <code title="">Qopf;</code> </td> <td> U+0211A </td> </tr><tr><td> <code title="">Qscr;</code> </td> <td> U+1D4AC </td> </tr><tr><td> <code title="">RBarr;</code> </td> <td> U+02910 </td> </tr><tr><td> <code title="">REG;</code> </td> <td> U+000AE </td> </tr><tr><td> <code title="">REG</code> </td> <td> U+000AE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Racute;</code> </td> <td> U+00154 </td> </tr><tr><td> <code title="">Rang;</code> </td> <td> U+027EB </td> </tr><tr><td> <code title="">Rarr;</code> </td> <td> U+021A0 </td> </tr><tr><td> <code title="">Rarrtl;</code> </td> <td> U+02916 </td> </tr><tr><td> <code title="">Rcaron;</code> </td> <td> U+00158 </td></tr><tr><td> <code title="">Rcedil;</code> </td> <td> U+00156 </td> </tr><tr><td> <code title="">Rcy;</code> </td> <td> U+00420 </td> </tr><tr><td> <code title="">Re;</code> </td> <td> U+0211C </td> </tr><tr><td> <code title="">ReverseElement;</code> </td> <td> U+0220B </td> </tr><tr><td> <code title="">ReverseEquilibrium;</code> </td> <td> U+021CB </td> </tr><tr><td> <code title="">ReverseUpEquilibrium;</code> </td> <td> U+0296F </td> </tr><tr><td> <code title="">Rfr;</code> </td> <td> U+0211C </td> </tr><tr><td> <code title="">Rho;</code> </td> <td> U+003A1 </td> </tr><tr><td> <code title="">RightAngleBracket;</code> </td> <td> U+027E9 </td> </tr><tr><td> <code title="">RightArrow;</code> </td> <td> U+02192 </td> </tr><tr><td> <code title="">RightArrowBar;</code> </td> <td> U+021E5 </td> </tr><tr><td> <code title="">RightArrowLeftArrow;</code> </td> <td> U+021C4 </td> </tr><tr><td> <code title="">RightCeiling;</code> </td> <td> U+02309 </td> </tr><tr><td> <code title="">RightDoubleBracket;</code> </td> <d> U+027E7 </td> </tr><tr><td> <code title="">RightDownTeeVector;</code> </td> <td> U+0295D </td> </tr><tr><td> <code title="">RightDownVector;</code> </td> <td> U+021C2 </td> </tr><tr><td> <code title="">RightDownVectorBar;</code> </td> <td> U+02955 </td> </tr><tr><td> <code title="">RightFloor;</code> </td> <td> U+0230B </td> </tr><tr><td> <code title="">RightTee;</code> </td> <td> U+022A2 </td> </tr><tr><td> <code title="">RightTeeArrow;</code> </td> <td> U+021A6 </td> </tr><tr><td> <code title="">RightTeeVector;</code> </td> <td> U+0295B </td> </tr><tr><td> <code title="">RightTriangle;</code> </td> <td> U+022B3 </td> </tr><tr><td> <code title="">RightTriangleBar;</code> </td> <td> U+029D0 </td> </tr><tr><td> <code title="">RightTriangleEqual;</code> </td> <td> U+022B5 </td> </tr><tr><td> <code title="">RightUpDownVector;</code> </td> <td> U+0294F </td> </tr><tr><td> <code title="">RightUpTeeVector;</code> </td> <td> U+0295C </td> </tr><tr><td> <code title="">RightUpVector;</code> </td> <td> U+021BE </t> </tr><tr><td> <code title="">RightUpVectorBar;</code> </td> <td> U+02954 </td> </tr><tr><td> <code title="">RightVector;</code> </td> <td> U+021C0 </td> </tr><tr><td> <code title="">RightVectorBar;</code> </td> <td> U+02953 </td> </tr><tr><td> <code title="">Rightarrow;</code> </td> <td> U+021D2 </td> </tr><tr><td> <code title="">Ropf;</code> </td> <td> U+0211D </td> </tr><tr><td> <code title="">RoundImplies;</code> </td> <td> U+02970 </td> </tr><tr><td> <code title="">Rrightarrow;</code> </td> <td> U+021DB </td> </tr><tr><td> <code title="">Rscr;</code> </td> <td> U+0211B </td> </tr><tr><td> <code title="">Rsh;</code> </td> <td> U+021B1 </td> </tr><tr><td> <code title="">RuleDelayed;</code> </td> <td> U+029F4 </td> </tr><tr><td> <code title="">SHCHcy;</code> </td> <td> U+00429 </td> </tr><tr><td> <code title="">SHcy;</code> </td> <td> U+00428 </td> </tr><tr><td> <code title="">SOFTcy;</code> </td> <td> U+0042C </td> </tr><tr><td> <code title="">Sacute;</code> </td> <td> U+0015A </td> </tr><tr><td> <code itle="">Sc;</code> </td> <td> U+02ABC </td> </tr><tr><td> <code title="">Scaron;</code> </td> <td> U+00160 </td> </tr><tr><td> <code title="">Scedil;</code> </td> <td> U+0015E </td> </tr><tr><td> <code title="">Scirc;</code> </td> <td> U+0015C </td> </tr><tr><td> <code title="">Scy;</code> </td> <td> U+00421 </td> </tr><tr><td> <code title="">Sfr;</code> </td> <td> U+1D516 </td> </tr><tr><td> <code title="">ShortDownArrow;</code> </td> <td> U+02193 </td> </tr><tr><td> <code title="">ShortLeftArrow;</code> </td> <td> U+02190 </td> </tr><tr><td> <code title="">ShortRightArrow;</code> </td> <td> U+02192 </td> </tr><tr><td> <code title="">ShortUpArrow;</code> </td> <td> U+02191 </td> </tr><tr><td> <code title="">Sigma;</code> </td> <td> U+003A3 </td> </tr><tr><td> <code title="">SmallCircle;</code> </td> <td> U+02218 </td> </tr><tr><td> <code title="">Sopf;</code> </td> <td> U+1D54A </td> </tr><tr><td> <code title="">Sqrt;</code> </td> <td> U+0221A </td> </tr><tr><td> <code title="">Square;</code> </td> <td> U+25A1 </td> </tr><tr><td> <code title="">SquareIntersection;</code> </td> <td> U+02293 </td> </tr><tr><td> <code title="">SquareSubset;</code> </td> <td> U+0228F </td> </tr><tr><td> <code title="">SquareSubsetEqual;</code> </td> <td> U+02291 </td> </tr><tr><td> <code title="">SquareSuperset;</code> </td> <td> U+02290 </td> </tr><tr><td> <code title="">SquareSupersetEqual;</code> </td> <td> U+02292 </td> </tr><tr><td> <code title="">SquareUnion;</code> </td> <td> U+02294 </td> </tr><tr><td> <code title="">Sscr;</code> </td> <td> U+1D4AE </td> </tr><tr><td> <code title="">Star;</code> </td> <td> U+022C6 </td> </tr><tr><td> <code title="">Sub;</code> </td> <td> U+022D0 </td> </tr><tr><td> <code title="">Subset;</code> </td> <td> U+022D0 </td> </tr><tr><td> <code title="">SubsetEqual;</code> </td> <td> U+02286 </td> </tr><tr><td> <code title="">Succeeds;</code> </td> <td> U+0227B </td> </tr><tr><td> <code title="">SucceedsEqual;</code> </td> <td> U+02AB0 </td> </tr><tr><td> <code title="">SucceedsSlantEqual;</coe> </td> <td> U+0227D </td> </tr><tr><td> <code title="">SucceedsTilde;</code> </td> <td> U+0227F </td> </tr><tr><td> <code title="">SuchThat;</code> </td> <td> U+0220B </td> </tr><tr><td> <code title="">Sum;</code> </td> <td> U+02211 </td> </tr><tr><td> <code title="">Sup;</code> </td> <td> U+022D1 </td> </tr><tr><td> <code title="">Superset;</code> </td> <td> U+02283 </td> </tr><tr><td> <code title="">SupersetEqual;</code> </td> <td> U+02287 </td> </tr><tr><td> <code title="">Supset;</code> </td> <td> U+022D1 </td> </tr><tr><td> <code title="">THORN;</code> </td> <td> U+000DE </td> </tr><tr><td> <code title="">THORN</code> </td> <td> U+000DE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">TRADE;</code> </td> <td> U+02122 </td> </tr><tr><td> <code title="">TSHcy;</code> </td> <td> U+0040B </td> </tr><tr><td> <code title="">TScy;</code> </td> <td> U+00426 </td> </tr><tr><td> <code title="">Tab;</code> </td> <td> U+00009 </td> </tr><tr><td> <code tite="">Tau;</code> </td> <td> U+003A4 </td> </tr><tr><td> <code title="">Tcaron;</code> </td> <td> U+00164 </td> </tr><tr><td> <code title="">Tcedil;</code> </td> <td> U+00162 </td> </tr><tr><td> <code title="">Tcy;</code> </td> <td> U+00422 </td> </tr><tr><td> <code title="">Tfr;</code> </td> <td> U+1D517 </td> </tr><tr><td> <code title="">Therefore;</code> </td> <td> U+02234 </td> </tr><tr><td> <code title="">Theta;</code> </td> <td> U+00398 </td> </tr><tr><td> <code title="">ThinSpace;</code> </td> <td> U+02009 </td> </tr><tr><td> <code title="">Tilde;</code> </td> <td> U+0223C </td> </tr><tr><td> <code title="">TildeEqual;</code> </td> <td> U+02243 </td> </tr><tr><td> <code title="">TildeFullEqual;</code> </td> <td> U+02245 </td> </tr><tr><td> <code title="">TildeTilde;</code> </td> <td> U+02248 </td> </tr><tr><td> <code title="">Topf;</code> </td> <td> U+1D54B </td> </tr><tr><td> <code title="">TripleDot;</code> </td> <td> U+020DB </td> </tr><tr><td> <code title="">Tscr;</code> </td> <td> U+1D4AF </td> <tr><tr><td> <code title="">Tstrok;</code> </td> <td> U+00166 </td> </tr><tr><td> <code title="">Uacute;</code> </td> <td> U+000DA </td> </tr><tr><td> <code title="">Uacute</code> </td> <td> U+000DA </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Uarr;</code> </td> <td> U+0219F </td> </tr><tr><td> <code title="">Uarrocir;</code> </td> <td> U+02949 </td> </tr><tr><td> <code title="">Ubrcy;</code> </td> <td> U+0040E </td> </tr><tr><td> <code title="">Ubreve;</code> </td> <td> U+0016C </td> </tr><tr><td> <code title="">Ucirc;</code> </td> <td> U+000DB </td> </tr><tr><td> <code title="">Ucirc</code> </td> <td> U+000DB </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ucy;</code> </td> <td> U+00423 </td> </tr><tr><td> <code title="">Udblac;</code> </td> <td> U+00170 </td> </tr><tr><td> <code title="">Ufr;</code> </td> <td> U+1D518 </td> </tr><tr><td> <code title="">Ugrave;</code> </td> <td> U+000D9 /td> </tr><tr><td> <code title="">Ugrave</code> </td> <td> U+000D9 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Umacr;</code> </td> <td> U+0016A </td> </tr><tr><td> <code title="">UnderBar;</code> </td> <td> U+00332 </td> </tr><tr><td> <code title="">UnderBrace;</code> </td> <td> U+023DF </td> </tr><tr><td> <code title="">UnderBracket;</code> </td> <td> U+023B5 </td> </tr><tr><td> <code title="">UnderParenthesis;</code> </td> <td> U+023DD </td> </tr><tr><td> <code title="">Union;</code> </td> <td> U+022C3 </td> </tr><tr><td> <code title="">UnionPlus;</code> </td> <td> U+0228E </td> </tr><tr><td> <code title="">Uogon;</code> </td> <td> U+00172 </td> </tr><tr><td> <code title="">Uopf;</code> </td> <td> U+1D54C </td> </tr><tr><td> <code title="">UpArrow;</code> </td> <td> U+02191 </td> </tr><tr><td> <code title="">UpArrowBar;</code> </td> <td> U+02912 </td> </tr><tr><td> <code title="">UpArrowDownArrow;</code> </td> <td> U+021C5 </td> </tr><tr><td> code title="">UpDownArrow;</code> </td> <td> U+02195 </td> </tr><tr><td> <code title="">UpEquilibrium;</code> </td> <td> U+0296E </td> </tr><tr><td> <code title="">UpTee;</code> </td> <td> U+022A5 </td> </tr><tr><td> <code title="">UpTeeArrow;</code> </td> <td> U+021A5 </td> </tr><tr><td> <code title="">Uparrow;</code> </td> <td> U+021D1 </td> </tr><tr><td> <code title="">Updownarrow;</code> </td> <td> U+021D5 </td> </tr><tr><td> <code title="">UpperLeftArrow;</code> </td> <td> U+02196 </td> </tr><tr><td> <code title="">UpperRightArrow;</code> </td> <td> U+02197 </td> </tr><tr><td> <code title="">Upsi;</code> </td> <td> U+003D2 </td> </tr><tr><td> <code title="">Upsilon;</code> </td> <td> U+003A5 </td> </tr><tr><td> <code title="">Uring;</code> </td> <td> U+0016E </td> </tr><tr><td> <code title="">Uscr;</code> </td> <td> U+1D4B0 </td> </tr><tr><td> <code title="">Utilde;</code> </td> <td> U+00168 </td> </tr><tr><td> <code title="">Uuml;</code> </td> <td> U+000DC </td> </tr><tr><td> <code title="">Uuml</code </td> <td> U+000DC </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">VDash;</code> </td> <td> U+022AB </td> </tr><tr><td> <code title="">Vbar;</code> </td> <td> U+02AEB </td> </tr><tr><td> <code title="">Vcy;</code> </td> <td> U+00412 </td> </tr><tr><td> <code title="">Vdash;</code> </td> <td> U+022A9 </td> </tr><tr><td> <code title="">Vdashl;</code> </td> <td> U+02AE6 </td> </tr><tr><td> <code title="">Vee;</code> </td> <td> U+022C1 </td> </tr><tr><td> <code title="">Verbar;</code> </td> <td> U+02016 </td> </tr><tr><td> <code title="">Vert;</code> </td> <td> U+02016 </td> </tr><tr><td> <code title="">VerticalBar;</code> </td> <td> U+02223 </td> </tr><tr><td> <code title="">VerticalLine;</code> </td> <td> U+0007C </td> </tr><tr><td> <code title="">VerticalSeparator;</code> </td> <td> U+02758 </td> </tr><tr><td> <code title="">VerticalTilde;</code> </td> <td> U+02240 </td> </tr><tr><td> <code title="">VeryThinSpace;</code> </td> <td> U+0200A </td> </t><tr><td> <code title="">Vfr;</code> </td> <td> U+1D519 </td> </tr><tr><td> <code title="">Vopf;</code> </td> <td> U+1D54D </td> </tr><tr><td> <code title="">Vscr;</code> </td> <td> U+1D4B1 </td> </tr><tr><td> <code title="">Vvdash;</code> </td> <td> U+022AA </td> </tr><tr><td> <code title="">Wcirc;</code> </td> <td> U+00174 </td> </tr><tr><td> <code title="">Wedge;</code> </td> <td> U+022C0 </td> </tr><tr><td> <code title="">Wfr;</code> </td> <td> U+1D51A </td> </tr><tr><td> <code title="">Wopf;</code> </td> <td> U+1D54E </td> </tr><tr><td> <code title="">Wscr;</code> </td> <td> U+1D4B2 </td> </tr><tr><td> <code title="">Xfr;</code> </td> <td> U+1D51B </td> </tr><tr><td> <code title="">Xi;</code> </td> <td> U+0039E </td> </tr><tr><td> <code title="">Xopf;</code> </td> <td> U+1D54F </td> </tr><tr><td> <code title="">Xscr;</code> </td> <td> U+1D4B3 </td> </tr><tr><td> <code title="">YAcy;</code> </td> <td> U+0042F </td> </tr><tr><td> <code title="">YIcy;</code> </td> <td> U+00407 </td> </tr><tr><td> <code tile="">YUcy;</code> </td> <td> U+0042E </td> </tr><tr><td> <code title="">Yacute;</code> </td> <td> U+000DD </td> </tr><tr><td> <code title="">Yacute</code> </td> <td> U+000DD </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">Ycirc;</code> </td> <td> U+00176 </td> </tr><tr><td> <code title="">Ycy;</code> </td> <td> U+0042B </td> </tr><tr><td> <code title="">Yfr;</code> </td> <td> U+1D51C </td> </tr><tr><td> <code title="">Yopf;</code> </td> <td> U+1D550 </td> </tr><tr><td> <code title="">Yscr;</code> </td> <td> U+1D4B4 </td> </tr><tr><td> <code title="">Yuml;</code> </td> <td> U+00178 </td> </tr><tr><td> <code title="">ZHcy;</code> </td> <td> U+00416 </td> </tr><tr><td> <code title="">Zacute;</code> </td> <td> U+00179 </td> </tr><tr><td> <code title="">Zcaron;</code> </td> <td> U+0017D </td> </tr><tr><td> <code title="">Zcy;</code> </td> <td> U+00417 </td> </tr><tr><td> <code title="">Zdot;</code> </td> <td> U+0017B </td> </tr><tr><td> <code title="">ZroWidthSpace;</code> </td> <td> U+0200B </td> </tr><tr><td> <code title="">Zeta;</code> </td> <td> U+00396 </td> </tr><tr><td> <code title="">Zfr;</code> </td> <td> U+02128 </td> </tr><tr><td> <code title="">Zopf;</code> </td> <td> U+02124 </td> </tr><tr><td> <code title="">Zscr;</code> </td> <td> U+1D4B5 </td> </tr><tr><td> <code title="">aacute;</code> </td> <td> U+000E1 </td> </tr><tr><td> <code title="">aacute</code> </td> <td> U+000E1 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">abreve;</code> </td> <td> U+00103 </td> </tr><tr><td> <code title="">ac;</code> </td> <td> U+0223E </td> </tr><tr><td> <code title="">acd;</code> </td> <td> U+0223F </td> </tr><tr><td> <code title="">acirc;</code> </td> <td> U+000E2 </td> </tr><tr><td> <code title="">acirc</code> </td> <td> U+000E2 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">acute;</code> </td> <td> U+000B4 </td> </tr><tr><td> <code title"">acute</code> </td> <td> U+000B4 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">acy;</code> </td> <td> U+00430 </td> </tr><tr><td> <code title="">aelig;</code> </td> <td> U+000E6 </td> </tr><tr><td> <code title="">aelig</code> </td> <td> U+000E6 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">af;</code> </td> <td> U+02061 </td> </tr><tr><td> <code title="">afr;</code> </td> <td> U+1D51E </td> </tr><tr><td> <code title="">agrave;</code> </td> <td> U+000E0 </td> </tr><tr><td> <code title="">agrave</code> </td> <td> U+000E0 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">alefsym;</code> </td> <td> U+02135 </td> </tr><tr><td> <code title="">aleph;</code> </td> <td> U+02135 </td> </tr><tr><td> <code title="">alpha;</code> </td> <td> U+003B1 </td> </tr><tr><td> <code title="">amacr;</code> </td> <td> U+00101 </td> </tr><tr><td> <code tile="">amalg;</code> </td> <td> U+02A3F </td> </tr><tr><td> <code title="">amp;</code> </td> <td> U+00026 </td> </tr><tr><td> <code title="">amp</code> </td> <td> U+00026 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">and;</code> </td> <td> U+02227 </td> </tr><tr><td> <code title="">andand;</code> </td> <td> U+02A55 </td> </tr><tr><td> <code title="">andd;</code> </td> <td> U+02A5C </td> </tr><tr><td> <code title="">andslope;</code> </td> <td> U+02A58 </td> </tr><tr><td> <code title="">andv;</code> </td> <td> U+02A5A </td> </tr><tr><td> <code title="">ang;</code> </td> <td> U+02220 </td> </tr><tr><td> <code title="">ange;</code> </td> <td> U+029A4 </td> </tr><tr><td> <code title="">angle;</code> </td> <td> U+02220 </td> </tr><tr><td> <code title="">angmsd;</code> </td> <td> U+02221 </td> </tr><tr><td> <code title="">angmsdaa;</code> </td> <td> U+029A8 </td> </tr><tr><td> <code title="">angmsdab;</code> </td> <td> U+029A9 </td> </tr><tr><td> <code tile="">angmsdac;</code> </td> <td> U+029AA </td> </tr><tr><td> <code title="">angmsdad;</code> </td> <td> U+029AB </td> </tr><tr><td> <code title="">angmsdae;</code> </td> <td> U+029AC </td> </tr><tr><td> <code title="">angmsdaf;</code> </td> <td> U+029AD </td> </tr><tr><td> <code title="">angmsdag;</code> </td> <td> U+029AE </td> </tr><tr><td> <code title="">angmsdah;</code> </td> <td> U+029AF </td> </tr><tr><td> <code title="">angrt;</code> </td> <td> U+0221F </td> </tr><tr><td> <code title="">angrtvb;</code> </td> <td> U+022BE </td> </tr><tr><td> <code title="">angrtvbd;</code> </td> <td> U+0299D </td> </tr><tr><td> <code title="">angsph;</code> </td> <td> U+02222 </td> </tr><tr><td> <code title="">angst;</code> </td> <td> U+0212B </td> </tr><tr><td> <code title="">angzarr;</code> </td> <td> U+0237C </td> </tr><tr><td> <code title="">aogon;</code> </td> <td> U+00105 </td> </tr><tr><td> <code title="">aopf;</code> </td> <td> U+1D552 </td> </tr><tr><td> <code title="">ap;</code> </td> <td> U+02248 </td> </t><tr><td> <code title="">apE;</code> </td> <td> U+02A70 </td> </tr><tr><td> <code title="">apacir;</code> </td> <td> U+02A6F </td> </tr><tr><td> <code title="">ape;</code> </td> <td> U+0224A </td> </tr><tr><td> <code title="">apid;</code> </td> <td> U+0224B </td> </tr><tr><td> <code title="">apos;</code> </td> <td> U+00027 </td> </tr><tr><td> <code title="">approx;</code> </td> <td> U+02248 </td> </tr><tr><td> <code title="">approxeq;</code> </td> <td> U+0224A </td> </tr><tr><td> <code title="">aring;</code> </td> <td> U+000E5 </td> </tr><tr><td> <code title="">aring</code> </td> <td> U+000E5 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ascr;</code> </td> <td> U+1D4B6 </td> </tr><tr><td> <code title="">ast;</code> </td> <td> U+0002A </td> </tr><tr><td> <code title="">asymp;</code> </td> <td> U+02248 </td> </tr><tr><td> <code title="">asympeq;</code> </td> <td> U+0224D </td> </tr><tr><td> <code title="">atilde;</code> </td> <td> U+000E3 </td> </tr<tr><td> <code title="">atilde</code> </td> <td> U+000E3 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">auml;</code> </td> <td> U+000E4 </td> </tr><tr><td> <code title="">auml</code> </td> <td> U+000E4 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">awconint;</code> </td> <td> U+02233 </td> </tr><tr><td> <code title="">awint;</code> </td> <td> U+02A11 </td> </tr><tr><td> <code title="">bNot;</code> </td> <td> U+02AED </td> </tr><tr><td> <code title="">backcong;</code> </td> <td> U+0224C </td> </tr><tr><td> <code title="">backepsilon;</code> </td> <td> U+003F6 </td> </tr><tr><td> <code title="">backprime;</code> </td> <td> U+02035 </td> </tr><tr><td> <code title="">backsim;</code> </td> <td> U+0223D </td> </tr><tr><td> <code title="">backsimeq;</code> </td> <td> U+022CD </td> </tr><tr><td> <code title="">barvee;</code> </td> <td> U+022BD </td> </tr><tr><td> <code title="">barwed;</code> </td <td> U+02305 </td> </tr><tr><td> <code title="">barwedge;</code> </td> <td> U+02305 </td> </tr><tr><td> <code title="">bbrk;</code> </td> <td> U+023B5 </td> </tr><tr><td> <code title="">bbrktbrk;</code> </td> <td> U+023B6 </td> </tr><tr><td> <code title="">bcong;</code> </td> <td> U+0224C </td> </tr><tr><td> <code title="">bcy;</code> </td> <td> U+00431 </td> </tr><tr><td> <code title="">bdquo;</code> </td> <td> U+0201E </td> </tr><tr><td> <code title="">becaus;</code> </td> <td> U+02235 </td> </tr><tr><td> <code title="">because;</code> </td> <td> U+02235 </td> </tr><tr><td> <code title="">bemptyv;</code> </td> <td> U+029B0 </td> </tr><tr><td> <code title="">bepsi;</code> </td> <td> U+003F6 </td> </tr><tr><td> <code title="">bernou;</code> </td> <td> U+0212C </td> </tr><tr><td> <code title="">beta;</code> </td> <td> U+003B2 </td> </tr><tr><td> <code title="">beth;</code> </td> <td> U+02136 </td> </tr><tr><td> <code title="">between;</code> </td> <td> U+0226C </td> </tr><tr><td> <code title="">bfr;</code> /td> <td> U+1D51F </td> </tr><tr><td> <code title="">bigcap;</code> </td> <td> U+022C2 </td> </tr><tr><td> <code title="">bigcirc;</code> </td> <td> U+025EF </td> </tr><tr><td> <code title="">bigcup;</code> </td> <td> U+022C3 </td> </tr><tr><td> <code title="">bigodot;</code> </td> <td> U+02A00 </td> </tr><tr><td> <code title="">bigoplus;</code> </td> <td> U+02A01 </td> </tr><tr><td> <code title="">bigotimes;</code> </td> <td> U+02A02 </td> </tr><tr><td> <code title="">bigsqcup;</code> </td> <td> U+02A06 </td> </tr><tr><td> <code title="">bigstar;</code> </td> <td> U+02605 </td> </tr><tr><td> <code title="">bigtriangledown;</code> </td> <td> U+025BD </td> </tr><tr><td> <code title="">bigtriangleup;</code> </td> <td> U+025B3 </td> </tr><tr><td> <code title="">biguplus;</code> </td> <td> U+02A04 </td> </tr><tr><td> <code title="">bigvee;</code> </td> <td> U+022C1 </td> </tr><tr><td> <code title="">bigwedge;</code> </td> <td> U+022C0 </td> </tr><tr><td> <code title="">bkarow;</code> </td> <td> U+0290D </td> </r><tr><td> <code title="">blacklozenge;</code> </td> <td> U+029EB </td> </tr><tr><td> <code title="">blacksquare;</code> </td> <td> U+025AA </td> </tr><tr><td> <code title="">blacktriangle;</code> </td> <td> U+025B4 </td> </tr><tr><td> <code title="">blacktriangledown;</code> </td> <td> U+025BE </td> </tr><tr><td> <code title="">blacktriangleleft;</code> </td> <td> U+025C2 </td> </tr><tr><td> <code title="">blacktriangleright;</code> </td> <td> U+025B8 </td> </tr><tr><td> <code title="">blank;</code> </td> <td> U+02423 </td> </tr><tr><td> <code title="">blk12;</code> </td> <td> U+02592 </td> </tr><tr><td> <code title="">blk14;</code> </td> <td> U+02591 </td> </tr><tr><td> <code title="">blk34;</code> </td> <td> U+02593 </td> </tr><tr><td> <code title="">block;</code> </td> <td> U+02588 </td> </tr><tr><td> <code title="">bnot;</code> </td> <td> U+02310 </td> </tr><tr><td> <code title="">bopf;</code> </td> <td> U+1D553 </td> </tr><tr><td> <code title="">bot;</code> </td> <td> U+022A5 </td> </tr><tr><td> <codetitle="">bottom;</code> </td> <td> U+022A5 </td> </tr><tr><td> <code title="">bowtie;</code> </td> <td> U+022C8 </td> </tr><tr><td> <code title="">boxDL;</code> </td> <td> U+02557 </td> </tr><tr><td> <code title="">boxDR;</code> </td> <td> U+02554 </td> </tr><tr><td> <code title="">boxDl;</code> </td> <td> U+02556 </td> </tr><tr><td> <code title="">boxDr;</code> </td> <td> U+02553 </td> </tr><tr><td> <code title="">boxH;</code> </td> <td> U+02550 </td> </tr><tr><td> <code title="">boxHD;</code> </td> <td> U+02566 </td> </tr><tr><td> <code title="">boxHU;</code> </td> <td> U+02569 </td> </tr><tr><td> <code title="">boxHd;</code> </td> <td> U+02564 </td> </tr><tr><td> <code title="">boxHu;</code> </td> <td> U+02567 </td> </tr><tr><td> <code title="">boxUL;</code> </td> <td> U+0255D </td> </tr><tr><td> <code title="">boxUR;</code> </td> <td> U+0255A </td> </tr><tr><td> <code title="">boxUl;</code> </td> <td> U+0255C </td> </tr><tr><td> <code title="">boxUr;</code> </td> <td> U+02559 </td> </tr><tr><td> <code ttle="">boxV;</code> </td> <td> U+02551 </td> </tr><tr><td> <code title="">boxVH;</code> </td> <td> U+0256C </td> </tr><tr><td> <code title="">boxVL;</code> </td> <td> U+02563 </td> </tr><tr><td> <code title="">boxVR;</code> </td> <td> U+02560 </td> </tr><tr><td> <code title="">boxVh;</code> </td> <td> U+0256B </td> </tr><tr><td> <code title="">boxVl;</code> </td> <td> U+02562 </td> </tr><tr><td> <code title="">boxVr;</code> </td> <td> U+0255F </td> </tr><tr><td> <code title="">boxbox;</code> </td> <td> U+029C9 </td> </tr><tr><td> <code title="">boxdL;</code> </td> <td> U+02555 </td> </tr><tr><td> <code title="">boxdR;</code> </td> <td> U+02552 </td> </tr><tr><td> <code title="">boxdl;</code> </td> <td> U+02510 </td> </tr><tr><td> <code title="">boxdr;</code> </td> <td> U+0250C </td> </tr><tr><td> <code title="">boxh;</code> </td> <td> U+02500 </td> </tr><tr><td> <code title="">boxhD;</code> </td> <td> U+02565 </td> </tr><tr><td> <code title="">boxhU;</code> </td> <td> U+02568 </td> </tr><tr><td> <code title"">boxhd;</code> </td> <td> U+0252C </td> </tr><tr><td> <code title="">boxhu;</code> </td> <td> U+02534 </td> </tr><tr><td> <code title="">boxminus;</code> </td> <td> U+0229F </td> </tr><tr><td> <code title="">boxplus;</code> </td> <td> U+0229E </td> </tr><tr><td> <code title="">boxtimes;</code> </td> <td> U+022A0 </td> </tr><tr><td> <code title="">boxuL;</code> </td> <td> U+0255B </td> </tr><tr><td> <code title="">boxuR;</code> </td> <td> U+02558 </td> </tr><tr><td> <code title="">boxul;</code> </td> <td> U+02518 </td> </tr><tr><td> <code title="">boxur;</code> </td> <td> U+02514 </td> </tr><tr><td> <code title="">boxv;</code> </td> <td> U+02502 </td> </tr><tr><td> <code title="">boxvH;</code> </td> <td> U+0256A </td> </tr><tr><td> <code title="">boxvL;</code> </td> <td> U+02561 </td> </tr><tr><td> <code title="">boxvR;</code> </td> <td> U+0255E </td> </tr><tr><td> <code title="">boxvh;</code> </td> <td> U+0253C </td> </tr><tr><td> <code title="">boxvl;</code> </td> <td> U+02524 </td> </tr><tr><td> <code ttle="">boxvr;</code> </td> <td> U+0251C </td> </tr><tr><td> <code title="">bprime;</code> </td> <td> U+02035 </td> </tr><tr><td> <code title="">breve;</code> </td> <td> U+002D8 </td> </tr><tr><td> <code title="">brvbar;</code> </td> <td> U+000A6 </td> </tr><tr><td> <code title="">brvbar</code> </td> <td> U+000A6 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">bscr;</code> </td> <td> U+1D4B7 </td> </tr><tr><td> <code title="">bsemi;</code> </td> <td> U+0204F </td> </tr><tr><td> <code title="">bsim;</code> </td> <td> U+0223D </td> </tr><tr><td> <code title="">bsime;</code> </td> <td> U+022CD </td> </tr><tr><td> <code title="">bsol;</code> </td> <td> U+0005C </td> </tr><tr><td> <code title="">bsolb;</code> </td> <td> U+029C5 </td> </tr><tr><td> <code title="">bull;</code> </td> <td> U+02022 </td> </tr><tr><td> <code title="">bullet;</code> </td> <td> U+02022 </td> </tr><tr><td> <code title="">bump;</code> </td> <td> U+0224E </td> </tr><tr><td> <code tile="">bumpE;</code> </td> <td> U+02AAE </td> </tr><tr><td> <code title="">bumpe;</code> </td> <td> U+0224F </td> </tr><tr><td> <code title="">bumpeq;</code> </td> <td> U+0224F </td> </tr><tr><td> <code title="">cacute;</code> </td> <td> U+00107 </td> </tr><tr><td> <code title="">cap;</code> </td> <td> U+02229 </td> </tr><tr><td> <code title="">capand;</code> </td> <td> U+02A44 </td> </tr><tr><td> <code title="">capbrcup;</code> </td> <td> U+02A49 </td> </tr><tr><td> <code title="">capcap;</code> </td> <td> U+02A4B </td> </tr><tr><td> <code title="">capcup;</code> </td> <td> U+02A47 </td> </tr><tr><td> <code title="">capdot;</code> </td> <td> U+02A40 </td> </tr><tr><td> <code title="">caret;</code> </td> <td> U+02041 </td> </tr><tr><td> <code title="">caron;</code> </td> <td> U+002C7 </td> </tr><tr><td> <code title="">ccaps;</code> </td> <td> U+02A4D </td> </tr><tr><td> <code title="">ccaron;</code> </td> <td> U+0010D </td> </tr><tr><td> <code title="">ccedil;</code> </td> <td> U+000E7 </td> </tr><tr><td> <cde title="">ccedil</code> </td> <td> U+000E7 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ccirc;</code> </td> <td> U+00109 </td> </tr><tr><td> <code title="">ccups;</code> </td> <td> U+02A4C </td> </tr><tr><td> <code title="">ccupssm;</code> </td> <td> U+02A50 </td> </tr><tr><td> <code title="">cdot;</code> </td> <td> U+0010B </td> </tr><tr><td> <code title="">cedil;</code> </td> <td> U+000B8 </td> </tr><tr><td> <code title="">cedil</code> </td> <td> U+000B8 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">cemptyv;</code> </td> <td> U+029B2 </td> </tr><tr><td> <code title="">cent;</code> </td> <td> U+000A2 </td> </tr><tr><td> <code title="">cent</code> </td> <td> U+000A2 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">centerdot;</code> </td> <td> U+000B7 </td> </tr><tr><td> <code title="">cfr;</code> </td> <td> U+1D520 </td> </tr><r><td> <code title="">chcy;</code> </td> <td> U+00447 </td> </tr><tr><td> <code title="">check;</code> </td> <td> U+02713 </td> </tr><tr><td> <code title="">checkmark;</code> </td> <td> U+02713 </td> </tr><tr><td> <code title="">chi;</code> </td> <td> U+003C7 </td> </tr><tr><td> <code title="">cir;</code> </td> <td> U+025CB </td> </tr><tr><td> <code title="">cirE;</code> </td> <td> U+029C3 </td> </tr><tr><td> <code title="">circ;</code> </td> <td> U+002C6 </td> </tr><tr><td> <code title="">circeq;</code> </td> <td> U+02257 </td> </tr><tr><td> <code title="">circlearrowleft;</code> </td> <td> U+021BA </td> </tr><tr><td> <code title="">circlearrowright;</code> </td> <td> U+021BB </td> </tr><tr><td> <code title="">circledR;</code> </td> <td> U+000AE </td> </tr><tr><td> <code title="">circledS;</code> </td> <td> U+024C8 </td> </tr><tr><td> <code title="">circledast;</code> </td> <td> U+0229B </td> </tr><tr><td> <code title="">circledcirc;</code> </td> <td> U+0229A </td> </tr><tr><td> <code title="">circleddash;/code> </td> <td> U+0229D </td> </tr><tr><td> <code title="">cire;</code> </td> <td> U+02257 </td> </tr><tr><td> <code title="">cirfnint;</code> </td> <td> U+02A10 </td> </tr><tr><td> <code title="">cirmid;</code> </td> <td> U+02AEF </td> </tr><tr><td> <code title="">cirscir;</code> </td> <td> U+029C2 </td> </tr><tr><td> <code title="">clubs;</code> </td> <td> U+02663 </td> </tr><tr><td> <code title="">clubsuit;</code> </td> <td> U+02663 </td> </tr><tr><td> <code title="">colon;</code> </td> <td> U+0003A </td> </tr><tr><td> <code title="">colone;</code> </td> <td> U+02254 </td> </tr><tr><td> <code title="">coloneq;</code> </td> <td> U+02254 </td> </tr><tr><td> <code title="">comma;</code> </td> <td> U+0002C </td> </tr><tr><td> <code title="">commat;</code> </td> <td> U+00040 </td> </tr><tr><td> <code title="">comp;</code> </td> <td> U+02201 </td> </tr><tr><td> <code title="">compfn;</code> </td> <td> U+02218 </td> </tr><tr><td> <code title="">complement;</code> </td> <td> U+02201 </td> </tr><tr><td> <code ttle="">complexes;</code> </td> <td> U+02102 </td> </tr><tr><td> <code title="">cong;</code> </td> <td> U+02245 </td> </tr><tr><td> <code title="">congdot;</code> </td> <td> U+02A6D </td> </tr><tr><td> <code title="">conint;</code> </td> <td> U+0222E </td> </tr><tr><td> <code title="">copf;</code> </td> <td> U+1D554 </td> </tr><tr><td> <code title="">coprod;</code> </td> <td> U+02210 </td> </tr><tr><td> <code title="">copy;</code> </td> <td> U+000A9 </td> </tr><tr><td> <code title="">copy</code> </td> <td> U+000A9 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">copysr;</code> </td> <td> U+02117 </td> </tr><tr><td> <code title="">crarr;</code> </td> <td> U+021B5 </td> </tr><tr><td> <code title="">cross;</code> </td> <td> U+02717 </td> </tr><tr><td> <code title="">cscr;</code> </td> <td> U+1D4B8 </td> </tr><tr><td> <code title="">csub;</code> </td> <td> U+02ACF </td> </tr><tr><td> <code title="">csube;</code> </td> <td> U+02AD1 </td> </tr><tr><td> <cod title="">csup;</code> </td> <td> U+02AD0 </td> </tr><tr><td> <code title="">csupe;</code> </td> <td> U+02AD2 </td> </tr><tr><td> <code title="">ctdot;</code> </td> <td> U+022EF </td> </tr><tr><td> <code title="">cudarrl;</code> </td> <td> U+02938 </td> </tr><tr><td> <code title="">cudarrr;</code> </td> <td> U+02935 </td> </tr><tr><td> <code title="">cuepr;</code> </td> <td> U+022DE </td> </tr><tr><td> <code title="">cuesc;</code> </td> <td> U+022DF </td> </tr><tr><td> <code title="">cularr;</code> </td> <td> U+021B6 </td> </tr><tr><td> <code title="">cularrp;</code> </td> <td> U+0293D </td> </tr><tr><td> <code title="">cup;</code> </td> <td> U+0222A </td> </tr><tr><td> <code title="">cupbrcap;</code> </td> <td> U+02A48 </td> </tr><tr><td> <code title="">cupcap;</code> </td> <td> U+02A46 </td> </tr><tr><td> <code title="">cupcup;</code> </td> <td> U+02A4A </td> </tr><tr><td> <code title="">cupdot;</code> </td> <td> U+0228D </td> </tr><tr><td> <code title="">cupor;</code> </td> <td> U+02A45 </td> </tr><tr><t> <code title="">curarr;</code> </td> <td> U+021B7 </td> </tr><tr><td> <code title="">curarrm;</code> </td> <td> U+0293C </td> </tr><tr><td> <code title="">curlyeqprec;</code> </td> <td> U+022DE </td> </tr><tr><td> <code title="">curlyeqsucc;</code> </td> <td> U+022DF </td> </tr><tr><td> <code title="">curlyvee;</code> </td> <td> U+022CE </td> </tr><tr><td> <code title="">curlywedge;</code> </td> <td> U+022CF </td> </tr><tr><td> <code title="">curren;</code> </td> <td> U+000A4 </td> </tr><tr><td> <code title="">curren</code> </td> <td> U+000A4 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">curvearrowleft;</code> </td> <td> U+021B6 </td> </tr><tr><td> <code title="">curvearrowright;</code> </td> <td> U+021B7 </td> </tr><tr><td> <code title="">cuvee;</code> </td> <td> U+022CE </td> </tr><tr><td> <code title="">cuwed;</code> </td> <td> U+022CF </td> </tr><tr><td> <code title="">cwconint;</code> </td> <td> U+02232 </td> </tr><tr><td> <code title="">cwit;</code> </td> <td> U+02231 </td> </tr><tr><td> <code title="">cylcty;</code> </td> <td> U+0232D </td> </tr><tr><td> <code title="">dArr;</code> </td> <td> U+021D3 </td> </tr><tr><td> <code title="">dHar;</code> </td> <td> U+02965 </td> </tr><tr><td> <code title="">dagger;</code> </td> <td> U+02020 </td> </tr><tr><td> <code title="">daleth;</code> </td> <td> U+02138 </td> </tr><tr><td> <code title="">darr;</code> </td> <td> U+02193 </td> </tr><tr><td> <code title="">dash;</code> </td> <td> U+02010 </td> </tr><tr><td> <code title="">dashv;</code> </td> <td> U+022A3 </td> </tr><tr><td> <code title="">dbkarow;</code> </td> <td> U+0290F </td> </tr><tr><td> <code title="">dblac;</code> </td> <td> U+002DD </td> </tr><tr><td> <code title="">dcaron;</code> </td> <td> U+0010F </td> </tr><tr><td> <code title="">dcy;</code> </td> <td> U+00434 </td> </tr><tr><td> <code title="">dd;</code> </td> <td> U+02146 </td> </tr><tr><td> <code title="">ddagger;</code> </td> <td> U+02021 </td> </tr><tr><td> <code title="">ddarr;<code> </td> <td> U+021CA </td> </tr><tr><td> <code title="">ddotseq;</code> </td> <td> U+02A77 </td> </tr><tr><td> <code title="">deg;</code> </td> <td> U+000B0 </td> </tr><tr><td> <code title="">deg</code> </td> <td> U+000B0 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">delta;</code> </td> <td> U+003B4 </td> </tr><tr><td> <code title="">demptyv;</code> </td> <td> U+029B1 </td> </tr><tr><td> <code title="">dfisht;</code> </td> <td> U+0297F </td> </tr><tr><td> <code title="">dfr;</code> </td> <td> U+1D521 </td> </tr><tr><td> <code title="">dharl;</code> </td> <td> U+021C3 </td> </tr><tr><td> <code title="">dharr;</code> </td> <td> U+021C2 </td> </tr><tr><td> <code title="">diam;</code> </td> <td> U+022C4 </td> </tr><tr><td> <code title="">diamond;</code> </td> <td> U+022C4 </td> </tr><tr><td> <code title="">diamondsuit;</code> </td> <td> U+02666 </td> </tr><tr><td> <code title="">diams;</code> </td> <td> U+02666 </td> </tr><tr><td> <code title="">de;</code> </td> <td> U+000A8 </td> </tr><tr><td> <code title="">digamma;</code> </td> <td> U+003DD </td> </tr><tr><td> <code title="">disin;</code> </td> <td> U+022F2 </td> </tr><tr><td> <code title="">div;</code> </td> <td> U+000F7 </td> </tr><tr><td> <code title="">divide;</code> </td> <td> U+000F7 </td> </tr><tr><td> <code title="">divide</code> </td> <td> U+000F7 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">divideontimes;</code> </td> <td> U+022C7 </td> </tr><tr><td> <code title="">divonx;</code> </td> <td> U+022C7 </td> </tr><tr><td> <code title="">djcy;</code> </td> <td> U+00452 </td> </tr><tr><td> <code title="">dlcorn;</code> </td> <td> U+0231E </td> </tr><tr><td> <code title="">dlcrop;</code> </td> <td> U+0230D </td> </tr><tr><td> <code title="">dollar;</code> </td> <td> U+00024 </td> </tr><tr><td> <code title="">dopf;</code> </td> <td> U+1D555 </td> </tr><tr><td> <code title="">dot;</code> </td> <td> U+002D9 </td> </tr><tr><td> <code tile="">doteq;</code> </td> <td> U+02250 </td> </tr><tr><td> <code title="">doteqdot;</code> </td> <td> U+02251 </td> </tr><tr><td> <code title="">dotminus;</code> </td> <td> U+02238 </td> </tr><tr><td> <code title="">dotplus;</code> </td> <td> U+02214 </td> </tr><tr><td> <code title="">dotsquare;</code> </td> <td> U+022A1 </td> </tr><tr><td> <code title="">doublebarwedge;</code> </td> <td> U+02306 </td> </tr><tr><td> <code title="">downarrow;</code> </td> <td> U+02193 </td> </tr><tr><td> <code title="">downdownarrows;</code> </td> <td> U+021CA </td> </tr><tr><td> <code title="">downharpoonleft;</code> </td> <td> U+021C3 </td> </tr><tr><td> <code title="">downharpoonright;</code> </td> <td> U+021C2 </td> </tr><tr><td> <code title="">drbkarow;</code> </td> <td> U+02910 </td> </tr><tr><td> <code title="">drcorn;</code> </td> <td> U+0231F </td> </tr><tr><td> <code title="">drcrop;</code> </td> <td> U+0230C </td> </tr><tr><td> <code title="">dscr;</code> </td> <td> U+1D4B9 </td> </tr><tr><td> <code title="">dscy;/code> </td> <td> U+00455 </td> </tr><tr><td> <code title="">dsol;</code> </td> <td> U+029F6 </td> </tr><tr><td> <code title="">dstrok;</code> </td> <td> U+00111 </td> </tr><tr><td> <code title="">dtdot;</code> </td> <td> U+022F1 </td> </tr><tr><td> <code title="">dtri;</code> </td> <td> U+025BF </td> </tr><tr><td> <code title="">dtrif;</code> </td> <td> U+025BE </td> </tr><tr><td> <code title="">duarr;</code> </td> <td> U+021F5 </td> </tr><tr><td> <code title="">duhar;</code> </td> <td> U+0296F </td> </tr><tr><td> <code title="">dwangle;</code> </td> <td> U+029A6 </td> </tr><tr><td> <code title="">dzcy;</code> </td> <td> U+0045F </td> </tr><tr><td> <code title="">dzigrarr;</code> </td> <td> U+027FF </td> </tr><tr><td> <code title="">eDDot;</code> </td> <td> U+02A77 </td> </tr><tr><td> <code title="">eDot;</code> </td> <td> U+02251 </td> </tr><tr><td> <code title="">eacute;</code> </td> <td> U+000E9 </td> </tr><tr><td> <code title="">eacute</code> </td> <td> U+000E9 </td> </tr><!-- (invalid entity with missng semicolon for legacy support only) --><tr><td> <code title="">easter;</code> </td> <td> U+02A6E </td> </tr><tr><td> <code title="">ecaron;</code> </td> <td> U+0011B </td> </tr><tr><td> <code title="">ecir;</code> </td> <td> U+02256 </td> </tr><tr><td> <code title="">ecirc;</code> </td> <td> U+000EA </td> </tr><tr><td> <code title="">ecirc</code> </td> <td> U+000EA </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ecolon;</code> </td> <td> U+02255 </td> </tr><tr><td> <code title="">ecy;</code> </td> <td> U+0044D </td> </tr><tr><td> <code title="">edot;</code> </td> <td> U+00117 </td> </tr><tr><td> <code title="">ee;</code> </td> <td> U+02147 </td> </tr><tr><td> <code title="">efDot;</code> </td> <td> U+02252 </td> </tr><tr><td> <code title="">efr;</code> </td> <td> U+1D522 </td> </tr><tr><td> <code title="">eg;</code> </td> <td> U+02A9A </td> </tr><tr><td> <code title="">egrave;</code> </td> <td> U+000E8 </td> </tr><tr><td> <code title="">egrave</coe> </td> <td> U+000E8 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">egs;</code> </td> <td> U+02A96 </td> </tr><tr><td> <code title="">egsdot;</code> </td> <td> U+02A98 </td> </tr><tr><td> <code title="">el;</code> </td> <td> U+02A99 </td> </tr><tr><td> <code title="">elinters;</code> </td> <td> U+023E7 </td> </tr><tr><td> <code title="">ell;</code> </td> <td> U+02113 </td> </tr><tr><td> <code title="">els;</code> </td> <td> U+02A95 </td> </tr><tr><td> <code title="">elsdot;</code> </td> <td> U+02A97 </td> </tr><tr><td> <code title="">emacr;</code> </td> <td> U+00113 </td> </tr><tr><td> <code title="">empty;</code> </td> <td> U+02205 </td> </tr><tr><td> <code title="">emptyset;</code> </td> <td> U+02205 </td> </tr><tr><td> <code title="">emptyv;</code> </td> <td> U+02205 </td> </tr><tr><td> <code title="">emsp13;</code> </td> <td> U+02004 </td> </tr><tr><td> <code title="">emsp14;</code> </td> <td> U+02005 </td> </tr><tr><td> <code title="">emsp;</ode> </td> <td> U+02003 </td> </tr><tr><td> <code title="">eng;</code> </td> <td> U+0014B </td> </tr><tr><td> <code title="">ensp;</code> </td> <td> U+02002 </td> </tr><tr><td> <code title="">eogon;</code> </td> <td> U+00119 </td> </tr><tr><td> <code title="">eopf;</code> </td> <td> U+1D556 </td> </tr><tr><td> <code title="">epar;</code> </td> <td> U+022D5 </td> </tr><tr><td> <code title="">eparsl;</code> </td> <td> U+029E3 </td> </tr><tr><td> <code title="">eplus;</code> </td> <td> U+02A71 </td> </tr><tr><td> <code title="">epsi;</code> </td> <td> U+003F5 </td> </tr><tr><td> <code title="">epsilon;</code> </td> <td> U+003B5 </td> </tr><tr><td> <code title="">epsiv;</code> </td> <td> U+003B5 </td> </tr><tr><td> <code title="">eqcirc;</code> </td> <td> U+02256 </td> </tr><tr><td> <code title="">eqcolon;</code> </td> <td> U+02255 </td> </tr><tr><td> <code title="">eqsim;</code> </td> <td> U+02242 </td> </tr><tr><td> <code title="">eqslantgtr;</code> </td> <td> U+02A96 </td> </tr><tr><td> <code title="">eqslanless;</code> </td> <td> U+02A95 </td> </tr><tr><td> <code title="">equals;</code> </td> <td> U+0003D </td> </tr><tr><td> <code title="">equest;</code> </td> <td> U+0225F </td> </tr><tr><td> <code title="">equiv;</code> </td> <td> U+02261 </td> </tr><tr><td> <code title="">equivDD;</code> </td> <td> U+02A78 </td> </tr><tr><td> <code title="">eqvparsl;</code> </td> <td> U+029E5 </td> </tr><tr><td> <code title="">erDot;</code> </td> <td> U+02253 </td> </tr><tr><td> <code title="">erarr;</code> </td> <td> U+02971 </td> </tr><tr><td> <code title="">escr;</code> </td> <td> U+0212F </td> </tr><tr><td> <code title="">esdot;</code> </td> <td> U+02250 </td> </tr><tr><td> <code title="">esim;</code> </td> <td> U+02242 </td> </tr><tr><td> <code title="">eta;</code> </td> <td> U+003B7 </td> </tr><tr><td> <code title="">eth;</code> </td> <td> U+000F0 </td> </tr><tr><td> <code title="">eth</code> </td> <td> U+000F0 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">eml;</code> </td> <td> U+000EB </td> </tr><tr><td> <code title="">euml</code> </td> <td> U+000EB </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">euro;</code> </td> <td> U+020AC </td> </tr><tr><td> <code title="">excl;</code> </td> <td> U+00021 </td> </tr><tr><td> <code title="">exist;</code> </td> <td> U+02203 </td> </tr><tr><td> <code title="">expectation;</code> </td> <td> U+02130 </td> </tr><tr><td> <code title="">exponentiale;</code> </td> <td> U+02147 </td> </tr><tr><td> <code title="">fallingdotseq;</code> </td> <td> U+02252 </td> </tr><tr><td> <code title="">fcy;</code> </td> <td> U+00444 </td> </tr><tr><td> <code title="">female;</code> </td> <td> U+02640 </td> </tr><tr><td> <code title="">ffilig;</code> </td> <td> U+0FB03 </td> </tr><tr><td> <code title="">fflig;</code> </td> <td> U+0FB00 </td> </tr><tr><td> <code title="">ffllig;</code> </td> <td> U+0FB04 </td> </tr><tr><td> <code title="">ffr;</code> </td> <td> U+1D523 </td> </tr><tr><td> code title="">filig;</code> </td> <td> U+0FB01 </td> </tr><tr><td> <code title="">flat;</code> </td> <td> U+0266D </td> </tr><tr><td> <code title="">fllig;</code> </td> <td> U+0FB02 </td> </tr><tr><td> <code title="">fltns;</code> </td> <td> U+025B1 </td> </tr><tr><td> <code title="">fnof;</code> </td> <td> U+00192 </td> </tr><tr><td> <code title="">fopf;</code> </td> <td> U+1D557 </td> </tr><tr><td> <code title="">forall;</code> </td> <td> U+02200 </td> </tr><tr><td> <code title="">fork;</code> </td> <td> U+022D4 </td> </tr><tr><td> <code title="">forkv;</code> </td> <td> U+02AD9 </td> </tr><tr><td> <code title="">fpartint;</code> </td> <td> U+02A0D </td> </tr><tr><td> <code title="">frac12;</code> </td> <td> U+000BD </td> </tr><tr><td> <code title="">frac12</code> </td> <td> U+000BD </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">frac13;</code> </td> <td> U+02153 </td> </tr><tr><td> <code title="">frac14;</code> </td> <td> U+000BC </td> </tr><tr><d> <code title="">frac14</code> </td> <td> U+000BC </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">frac15;</code> </td> <td> U+02155 </td> </tr><tr><td> <code title="">frac16;</code> </td> <td> U+02159 </td> </tr><tr><td> <code title="">frac18;</code> </td> <td> U+0215B </td> </tr><tr><td> <code title="">frac23;</code> </td> <td> U+02154 </td> </tr><tr><td> <code title="">frac25;</code> </td> <td> U+02156 </td> </tr><tr><td> <code title="">frac34;</code> </td> <td> U+000BE </td> </tr><tr><td> <code title="">frac34</code> </td> <td> U+000BE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">frac35;</code> </td> <td> U+02157 </td> </tr><tr><td> <code title="">frac38;</code> </td> <td> U+0215C </td> </tr><tr><td> <code title="">frac45;</code> </td> <td> U+02158 </td> </tr><tr><td> <code title="">frac56;</code> </td> <td> U+0215A </td> </tr><tr><td> <code title="">frac58;</code> </td> <td> U+0215D /td> </tr><tr><td> <code title="">frac78;</code> </td> <td> U+0215E </td> </tr><tr><td> <code title="">frasl;</code> </td> <td> U+02044 </td> </tr><tr><td> <code title="">frown;</code> </td> <td> U+02322 </td> </tr><tr><td> <code title="">fscr;</code> </td> <td> U+1D4BB </td> </tr><tr><td> <code title="">gE;</code> </td> <td> U+02267 </td> </tr><tr><td> <code title="">gEl;</code> </td> <td> U+02A8C </td> </tr><tr><td> <code title="">gacute;</code> </td> <td> U+001F5 </td> </tr><tr><td> <code title="">gamma;</code> </td> <td> U+003B3 </td> </tr><tr><td> <code title="">gammad;</code> </td> <td> U+003DD </td> </tr><tr><td> <code title="">gap;</code> </td> <td> U+02A86 </td> </tr><tr><td> <code title="">gbreve;</code> </td> <td> U+0011F </td> </tr><tr><td> <code title="">gcirc;</code> </td> <td> U+0011D </td> </tr><tr><td> <code title="">gcy;</code> </td> <td> U+00433 </td> </tr><tr><td> <code title="">gdot;</code> </td> <td> U+00121 </td> </tr><tr><td> <code title="">ge;</code> </td> <td> U+02265 </td> </tr><t><td> <code title="">gel;</code> </td> <td> U+022DB </td> </tr><tr><td> <code title="">geq;</code> </td> <td> U+02265 </td> </tr><tr><td> <code title="">geqq;</code> </td> <td> U+02267 </td> </tr><tr><td> <code title="">geqslant;</code> </td> <td> U+02A7E </td> </tr><tr><td> <code title="">ges;</code> </td> <td> U+02A7E </td> </tr><tr><td> <code title="">gescc;</code> </td> <td> U+02AA9 </td> </tr><tr><td> <code title="">gesdot;</code> </td> <td> U+02A80 </td> </tr><tr><td> <code title="">gesdoto;</code> </td> <td> U+02A82 </td> </tr><tr><td> <code title="">gesdotol;</code> </td> <td> U+02A84 </td> </tr><tr><td> <code title="">gesles;</code> </td> <td> U+02A94 </td> </tr><tr><td> <code title="">gfr;</code> </td> <td> U+1D524 </td> </tr><tr><td> <code title="">gg;</code> </td> <td> U+0226B </td> </tr><tr><td> <code title="">ggg;</code> </td> <td> U+022D9 </td> </tr><tr><td> <code title="">gimel;</code> </td> <td> U+02137 </td> </tr><tr><td> <code title="">gjcy;</code> </td> <td> U+00453 </td> </tr><tr><td> <ode title="">gl;</code> </td> <td> U+02277 </td> </tr><tr><td> <code title="">glE;</code> </td> <td> U+02A92 </td> </tr><tr><td> <code title="">gla;</code> </td> <td> U+02AA5 </td> </tr><tr><td> <code title="">glj;</code> </td> <td> U+02AA4 </td> </tr><tr><td> <code title="">gnE;</code> </td> <td> U+02269 </td> </tr><tr><td> <code title="">gnap;</code> </td> <td> U+02A8A </td> </tr><tr><td> <code title="">gnapprox;</code> </td> <td> U+02A8A </td> </tr><tr><td> <code title="">gne;</code> </td> <td> U+02A88 </td> </tr><tr><td> <code title="">gneq;</code> </td> <td> U+02A88 </td> </tr><tr><td> <code title="">gneqq;</code> </td> <td> U+02269 </td> </tr><tr><td> <code title="">gnsim;</code> </td> <td> U+022E7 </td> </tr><tr><td> <code title="">gopf;</code> </td> <td> U+1D558 </td> </tr><tr><td> <code title="">grave;</code> </td> <td> U+00060 </td> </tr><tr><td> <code title="">gscr;</code> </td> <td> U+0210A </td> </tr><tr><td> <code title="">gsim;</code> </td> <td> U+02273 </td> </tr><tr><td> <code title="">gsim;</code> </td> <td> U+02A8E </td> </tr><tr><td> <code title="">gsiml;</code> </td> <td> U+02A90 </td> </tr><tr><td> <code title="">gt;</code> </td> <td> U+0003E </td> </tr><tr><td> <code title="">gt</code> </td> <td> U+0003E </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">gtcc;</code> </td> <td> U+02AA7 </td> </tr><tr><td> <code title="">gtcir;</code> </td> <td> U+02A7A </td> </tr><tr><td> <code title="">gtdot;</code> </td> <td> U+022D7 </td> </tr><tr><td> <code title="">gtlPar;</code> </td> <td> U+02995 </td> </tr><tr><td> <code title="">gtquest;</code> </td> <td> U+02A7C </td> </tr><tr><td> <code title="">gtrapprox;</code> </td> <td> U+02A86 </td> </tr><tr><td> <code title="">gtrarr;</code> </td> <td> U+02978 </td> </tr><tr><td> <code title="">gtrdot;</code> </td> <td> U+022D7 </td> </tr><tr><td> <code title="">gtreqless;</code> </td> <td> U+022DB </td> </tr><tr><td> <code title="">gtreqqless;</code> </td> <td> U+02A8C </td> </tr><tr><td> <code tile="">gtrless;</code> </td> <td> U+02277 </td> </tr><tr><td> <code title="">gtrsim;</code> </td> <td> U+02273 </td> </tr><tr><td> <code title="">hArr;</code> </td> <td> U+021D4 </td> </tr><tr><td> <code title="">hairsp;</code> </td> <td> U+0200A </td> </tr><tr><td> <code title="">half;</code> </td> <td> U+000BD </td> </tr><tr><td> <code title="">hamilt;</code> </td> <td> U+0210B </td> </tr><tr><td> <code title="">hardcy;</code> </td> <td> U+0044A </td> </tr><tr><td> <code title="">harr;</code> </td> <td> U+02194 </td> </tr><tr><td> <code title="">harrcir;</code> </td> <td> U+02948 </td> </tr><tr><td> <code title="">harrw;</code> </td> <td> U+021AD </td> </tr><tr><td> <code title="">hbar;</code> </td> <td> U+0210F </td> </tr><tr><td> <code title="">hcirc;</code> </td> <td> U+00125 </td> </tr><tr><td> <code title="">hearts;</code> </td> <td> U+02665 </td> </tr><tr><td> <code title="">heartsuit;</code> </td> <td> U+02665 </td> </tr><tr><td> <code title="">hellip;</code> </td> <td> U+02026 </td> </tr><tr><td> <ode title="">hercon;</code> </td> <td> U+022B9 </td> </tr><tr><td> <code title="">hfr;</code> </td> <td> U+1D525 </td> </tr><tr><td> <code title="">hksearow;</code> </td> <td> U+02925 </td> </tr><tr><td> <code title="">hkswarow;</code> </td> <td> U+02926 </td> </tr><tr><td> <code title="">hoarr;</code> </td> <td> U+021FF </td> </tr><tr><td> <code title="">homtht;</code> </td> <td> U+0223B </td> </tr><tr><td> <code title="">hookleftarrow;</code> </td> <td> U+021A9 </td> </tr><tr><td> <code title="">hookrightarrow;</code> </td> <td> U+021AA </td> </tr><tr><td> <code title="">hopf;</code> </td> <td> U+1D559 </td> </tr><tr><td> <code title="">horbar;</code> </td> <td> U+02015 </td> </tr><tr><td> <code title="">hscr;</code> </td> <td> U+1D4BD </td> </tr><tr><td> <code title="">hslash;</code> </td> <td> U+0210F </td> </tr><tr><td> <code title="">hstrok;</code> </td> <td> U+00127 </td> </tr><tr><td> <code title="">hybull;</code> </td> <td> U+02043 </td> </tr><tr><td> <code title="">hyphen;</code> </td> <td> U+0201 </td> </tr><tr><td> <code title="">iacute;</code> </td> <td> U+000ED </td> </tr><tr><td> <code title="">iacute</code> </td> <td> U+000ED </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ic;</code> </td> <td> U+02063 </td> </tr><tr><td> <code title="">icirc;</code> </td> <td> U+000EE </td> </tr><tr><td> <code title="">icirc</code> </td> <td> U+000EE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">icy;</code> </td> <td> U+00438 </td> </tr><tr><td> <code title="">iecy;</code> </td> <td> U+00435 </td> </tr><tr><td> <code title="">iexcl;</code> </td> <td> U+000A1 </td> </tr><tr><td> <code title="">iexcl</code> </td> <td> U+000A1 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">iff;</code> </td> <td> U+021D4 </td> </tr><tr><td> <code title="">ifr;</code> </td> <td> U+1D526 </td> </tr><tr><td> <code title="">igrave;</code> </td> <td> U+000EC</td> </tr><tr><td> <code title="">igrave</code> </td> <td> U+000EC </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ii;</code> </td> <td> U+02148 </td> </tr><tr><td> <code title="">iiiint;</code> </td> <td> U+02A0C </td> </tr><tr><td> <code title="">iiint;</code> </td> <td> U+0222D </td> </tr><tr><td> <code title="">iinfin;</code> </td> <td> U+029DC </td> </tr><tr><td> <code title="">iiota;</code> </td> <td> U+02129 </td> </tr><tr><td> <code title="">ijlig;</code> </td> <td> U+00133 </td> </tr><tr><td> <code title="">imacr;</code> </td> <td> U+0012B </td> </tr><tr><td> <code title="">image;</code> </td> <td> U+02111 </td> </tr><tr><td> <code title="">imagline;</code> </td> <td> U+02110 </td> </tr><tr><td> <code title="">imagpart;</code> </td> <td> U+02111 </td> </tr><tr><td> <code title="">imath;</code> </td> <td> U+00131 </td> </tr><tr><td> <code title="">imof;</code> </td> <td> U+022B7 </td> </tr><tr><td> <code title="">imped;</code> </td> <td> U+01B5 </td> </tr><tr><td> <code title="">in;</code> </td> <td> U+02208 </td> </tr><tr><td> <code title="">incare;</code> </td> <td> U+02105 </td> </tr><tr><td> <code title="">infin;</code> </td> <td> U+0221E </td> </tr><tr><td> <code title="">infintie;</code> </td> <td> U+029DD </td> </tr><tr><td> <code title="">inodot;</code> </td> <td> U+00131 </td> </tr><tr><td> <code title="">int;</code> </td> <td> U+0222B </td> </tr><tr><td> <code title="">intcal;</code> </td> <td> U+022BA </td> </tr><tr><td> <code title="">integers;</code> </td> <td> U+02124 </td> </tr><tr><td> <code title="">intercal;</code> </td> <td> U+022BA </td> </tr><tr><td> <code title="">intlarhk;</code> </td> <td> U+02A17 </td> </tr><tr><td> <code title="">intprod;</code> </td> <td> U+02A3C </td> </tr><tr><td> <code title="">iocy;</code> </td> <td> U+00451 </td> </tr><tr><td> <code title="">iogon;</code> </td> <td> U+0012F </td> </tr><tr><td> <code title="">iopf;</code> </td> <td> U+1D55A </td> </tr><tr><td> <code title="">iota;</code> </td> <d> U+003B9 </td> </tr><tr><td> <code title="">iprod;</code> </td> <td> U+02A3C </td> </tr><tr><td> <code title="">iquest;</code> </td> <td> U+000BF </td> </tr><tr><td> <code title="">iquest</code> </td> <td> U+000BF </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">iscr;</code> </td> <td> U+1D4BE </td> </tr><tr><td> <code title="">isin;</code> </td> <td> U+02208 </td> </tr><tr><td> <code title="">isinE;</code> </td> <td> U+022F9 </td> </tr><tr><td> <code title="">isindot;</code> </td> <td> U+022F5 </td> </tr><tr><td> <code title="">isins;</code> </td> <td> U+022F4 </td> </tr><tr><td> <code title="">isinsv;</code> </td> <td> U+022F3 </td> </tr><tr><td> <code title="">isinv;</code> </td> <td> U+02208 </td> </tr><tr><td> <code title="">it;</code> </td> <td> U+02062 </td> </tr><tr><td> <code title="">itilde;</code> </td> <td> U+00129 </td> </tr><tr><td> <code title="">iukcy;</code> </td> <td> U+00456 </td> </tr><tr><td> <code title="">iuml;</code> </td> <d> U+000EF </td> </tr><tr><td> <code title="">iuml</code> </td> <td> U+000EF </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">jcirc;</code> </td> <td> U+00135 </td> </tr><tr><td> <code title="">jcy;</code> </td> <td> U+00439 </td> </tr><tr><td> <code title="">jfr;</code> </td> <td> U+1D527 </td> </tr><tr><td> <code title="">jmath;</code> </td> <td> U+00237 </td> </tr><tr><td> <code title="">jopf;</code> </td> <td> U+1D55B </td> </tr><tr><td> <code title="">jscr;</code> </td> <td> U+1D4BF </td> </tr><tr><td> <code title="">jsercy;</code> </td> <td> U+00458 </td> </tr><tr><td> <code title="">jukcy;</code> </td> <td> U+00454 </td> </tr><tr><td> <code title="">kappa;</code> </td> <td> U+003BA </td> </tr><tr><td> <code title="">kappav;</code> </td> <td> U+003F0 </td> </tr><tr><td> <code title="">kcedil;</code> </td> <td> U+00137 </td> </tr><tr><td> <code title="">kcy;</code> </td> <td> U+0043A </td> </tr><tr><td> <code title="">kfr;</code> </td> <td> U+1D28 </td> </tr><tr><td> <code title="">kgreen;</code> </td> <td> U+00138 </td> </tr><tr><td> <code title="">khcy;</code> </td> <td> U+00445 </td> </tr><tr><td> <code title="">kjcy;</code> </td> <td> U+0045C </td> </tr><tr><td> <code title="">kopf;</code> </td> <td> U+1D55C </td> </tr><tr><td> <code title="">kscr;</code> </td> <td> U+1D4C0 </td> </tr><tr><td> <code title="">lAarr;</code> </td> <td> U+021DA </td> </tr><tr><td> <code title="">lArr;</code> </td> <td> U+021D0 </td> </tr><tr><td> <code title="">lAtail;</code> </td> <td> U+0291B </td> </tr><tr><td> <code title="">lBarr;</code> </td> <td> U+0290E </td> </tr><tr><td> <code title="">lE;</code> </td> <td> U+02266 </td> </tr><tr><td> <code title="">lEg;</code> </td> <td> U+02A8B </td> </tr><tr><td> <code title="">lHar;</code> </td> <td> U+02962 </td> </tr><tr><td> <code title="">lacute;</code> </td> <td> U+0013A </td> </tr><tr><td> <code title="">laemptyv;</code> </td> <td> U+029B4 </td> </tr><tr><td> <code title="">lagran;</code> </td> <td> U+02112 </t> </tr><tr><td> <code title="">lambda;</code> </td> <td> U+003BB </td> </tr><tr><td> <code title="">lang;</code> </td> <td> U+027E8 </td> </tr><tr><td> <code title="">langd;</code> </td> <td> U+02991 </td> </tr><tr><td> <code title="">langle;</code> </td> <td> U+027E8 </td> </tr><tr><td> <code title="">lap;</code> </td> <td> U+02A85 </td> </tr><tr><td> <code title="">laquo;</code> </td> <td> U+000AB </td> </tr><tr><td> <code title="">laquo</code> </td> <td> U+000AB </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">larr;</code> </td> <td> U+02190 </td> </tr><tr><td> <code title="">larrb;</code> </td> <td> U+021E4 </td> </tr><tr><td> <code title="">larrbfs;</code> </td> <td> U+0291F </td> </tr><tr><td> <code title="">larrfs;</code> </td> <td> U+0291D </td> </tr><tr><td> <code title="">larrhk;</code> </td> <td> U+021A9 </td> </tr><tr><td> <code title="">larrlp;</code> </td> <td> U+021AB </td> </tr><tr><td> <code title="">larrpl;</code> </td> <td> U+02939</td> </tr><tr><td> <code title="">larrsim;</code> </td> <td> U+02973 </td> </tr><tr><td> <code title="">larrtl;</code> </td> <td> U+021A2 </td> </tr><tr><td> <code title="">lat;</code> </td> <td> U+02AAB </td> </tr><tr><td> <code title="">latail;</code> </td> <td> U+02919 </td> </tr><tr><td> <code title="">late;</code> </td> <td> U+02AAD </td> </tr><tr><td> <code title="">lbarr;</code> </td> <td> U+0290C </td> </tr><tr><td> <code title="">lbbrk;</code> </td> <td> U+02772 </td> </tr><tr><td> <code title="">lbrace;</code> </td> <td> U+0007B </td> </tr><tr><td> <code title="">lbrack;</code> </td> <td> U+0005B </td> </tr><tr><td> <code title="">lbrke;</code> </td> <td> U+0298B </td> </tr><tr><td> <code title="">lbrksld;</code> </td> <td> U+0298F </td> </tr><tr><td> <code title="">lbrkslu;</code> </td> <td> U+0298D </td> </tr><tr><td> <code title="">lcaron;</code> </td> <td> U+0013E </td> </tr><tr><td> <code title="">lcedil;</code> </td> <td> U+0013C </td> </tr><tr><td> <code title="">lceil;</code> </td> <td> U02308 </td> </tr><tr><td> <code title="">lcub;</code> </td> <td> U+0007B </td> </tr><tr><td> <code title="">lcy;</code> </td> <td> U+0043B </td> </tr><tr><td> <code title="">ldca;</code> </td> <td> U+02936 </td> </tr><tr><td> <code title="">ldquo;</code> </td> <td> U+0201C </td> </tr><tr><td> <code title="">ldquor;</code> </td> <td> U+0201E </td> </tr><tr><td> <code title="">ldrdhar;</code> </td> <td> U+02967 </td> </tr><tr><td> <code title="">ldrushar;</code> </td> <td> U+0294B </td> </tr><tr><td> <code title="">ldsh;</code> </td> <td> U+021B2 </td> </tr><tr><td> <code title="">le;</code> </td> <td> U+02264 </td> </tr><tr><td> <code title="">leftarrow;</code> </td> <td> U+02190 </td> </tr><tr><td> <code title="">leftarrowtail;</code> </td> <td> U+021A2 </td> </tr><tr><td> <code title="">leftharpoondown;</code> </td> <td> U+021BD </td> </tr><tr><td> <code title="">leftharpoonup;</code> </td> <td> U+021BC </td> </tr><tr><td> <code title="">leftleftarrows;</code> </td> <td> U+021C7 </td> </tr><tr><td> <code ttle="">leftrightarrow;</code> </td> <td> U+02194 </td> </tr><tr><td> <code title="">leftrightarrows;</code> </td> <td> U+021C6 </td> </tr><tr><td> <code title="">leftrightharpoons;</code> </td> <td> U+021CB </td> </tr><tr><td> <code title="">leftrightsquigarrow;</code> </td> <td> U+021AD </td> </tr><tr><td> <code title="">leftthreetimes;</code> </td> <td> U+022CB </td> </tr><tr><td> <code title="">leg;</code> </td> <td> U+022DA </td> </tr><tr><td> <code title="">leq;</code> </td> <td> U+02264 </td> </tr><tr><td> <code title="">leqq;</code> </td> <td> U+02266 </td> </tr><tr><td> <code title="">leqslant;</code> </td> <td> U+02A7D </td> </tr><tr><td> <code title="">les;</code> </td> <td> U+02A7D </td> </tr><tr><td> <code title="">lescc;</code> </td> <td> U+02AA8 </td> </tr><tr><td> <code title="">lesdot;</code> </td> <td> U+02A7F </td> </tr><tr><td> <code title="">lesdoto;</code> </td> <td> U+02A81 </td> </tr><tr><td> <code title="">lesdotor;</code> </td> <td> U+02A83 </td> </tr><tr><td> <code title="">lesges;/code> </td> <td> U+02A93 </td> </tr><tr><td> <code title="">lessapprox;</code> </td> <td> U+02A85 </td> </tr><tr><td> <code title="">lessdot;</code> </td> <td> U+022D6 </td> </tr><tr><td> <code title="">lesseqgtr;</code> </td> <td> U+022DA </td> </tr><tr><td> <code title="">lesseqqgtr;</code> </td> <td> U+02A8B </td> </tr><tr><td> <code title="">lessgtr;</code> </td> <td> U+02276 </td> </tr><tr><td> <code title="">lesssim;</code> </td> <td> U+02272 </td> </tr><tr><td> <code title="">lfisht;</code> </td> <td> U+0297C </td> </tr><tr><td> <code title="">lfloor;</code> </td> <td> U+0230A </td> </tr><tr><td> <code title="">lfr;</code> </td> <td> U+1D529 </td> </tr><tr><td> <code title="">lg;</code> </td> <td> U+02276 </td> </tr><tr><td> <code title="">lgE;</code> </td> <td> U+02A91 </td> </tr><tr><td> <code title="">lhard;</code> </td> <td> U+021BD </td> </tr><tr><td> <code title="">lharu;</code> </td> <td> U+021BC </td> </tr><tr><td> <code title="">lharul;</code> </td> <td> U+0296A </td> </tr><tr><td> <code tile="">lhblk;</code> </td> <td> U+02584 </td> </tr><tr><td> <code title="">ljcy;</code> </td> <td> U+00459 </td> </tr><tr><td> <code title="">ll;</code> </td> <td> U+0226A </td> </tr><tr><td> <code title="">llarr;</code> </td> <td> U+021C7 </td> </tr><tr><td> <code title="">llcorner;</code> </td> <td> U+0231E </td> </tr><tr><td> <code title="">llhard;</code> </td> <td> U+0296B </td> </tr><tr><td> <code title="">lltri;</code> </td> <td> U+025FA </td> </tr><tr><td> <code title="">lmidot;</code> </td> <td> U+00140 </td> </tr><tr><td> <code title="">lmoust;</code> </td> <td> U+023B0 </td> </tr><tr><td> <code title="">lmoustache;</code> </td> <td> U+023B0 </td> </tr><tr><td> <code title="">lnE;</code> </td> <td> U+02268 </td> </tr><tr><td> <code title="">lnap;</code> </td> <td> U+02A89 </td> </tr><tr><td> <code title="">lnapprox;</code> </td> <td> U+02A89 </td> </tr><tr><td> <code title="">lne;</code> </td> <td> U+02A87 </td> </tr><tr><td> <code title="">lneq;</code> </td> <td> U+02A87 </td> </tr><tr><td> <code ttle="">lneqq;</code> </td> <td> U+02268 </td> </tr><tr><td> <code title="">lnsim;</code> </td> <td> U+022E6 </td> </tr><tr><td> <code title="">loang;</code> </td> <td> U+027EC </td> </tr><tr><td> <code title="">loarr;</code> </td> <td> U+021FD </td> </tr><tr><td> <code title="">lobrk;</code> </td> <td> U+027E6 </td> </tr><tr><td> <code title="">longleftarrow;</code> </td> <td> U+027F5 </td> </tr><tr><td> <code title="">longleftrightarrow;</code> </td> <td> U+027F7 </td> </tr><tr><td> <code title="">longmapsto;</code> </td> <td> U+027FC </td> </tr><tr><td> <code title="">longrightarrow;</code> </td> <td> U+027F6 </td> </tr><tr><td> <code title="">looparrowleft;</code> </td> <td> U+021AB </td> </tr><tr><td> <code title="">looparrowright;</code> </td> <td> U+021AC </td> </tr><tr><td> <code title="">lopar;</code> </td> <td> U+02985 </td> </tr><tr><td> <code title="">lopf;</code> </td> <td> U+1D55D </td> </tr><tr><td> <code title="">loplus;</code> </td> <td> U+02A2D </td> </tr><tr><td> <code title="">lotimes;</cde> </td> <td> U+02A34 </td> </tr><tr><td> <code title="">lowast;</code> </td> <td> U+02217 </td> </tr><tr><td> <code title="">lowbar;</code> </td> <td> U+0005F </td> </tr><tr><td> <code title="">loz;</code> </td> <td> U+025CA </td> </tr><tr><td> <code title="">lozenge;</code> </td> <td> U+025CA </td> </tr><tr><td> <code title="">lozf;</code> </td> <td> U+029EB </td> </tr><tr><td> <code title="">lpar;</code> </td> <td> U+00028 </td> </tr><tr><td> <code title="">lparlt;</code> </td> <td> U+02993 </td> </tr><tr><td> <code title="">lrarr;</code> </td> <td> U+021C6 </td> </tr><tr><td> <code title="">lrcorner;</code> </td> <td> U+0231F </td> </tr><tr><td> <code title="">lrhar;</code> </td> <td> U+021CB </td> </tr><tr><td> <code title="">lrhard;</code> </td> <td> U+0296D </td> </tr><tr><td> <code title="">lrm;</code> </td> <td> U+0200E </td> </tr><tr><td> <code title="">lrtri;</code> </td> <td> U+022BF </td> </tr><tr><td> <code title="">lsaquo;</code> </td> <td> U+02039 </td> </tr><tr><td> <code title="">lscr;</cde> </td> <td> U+1D4C1 </td> </tr><tr><td> <code title="">lsh;</code> </td> <td> U+021B0 </td> </tr><tr><td> <code title="">lsim;</code> </td> <td> U+02272 </td> </tr><tr><td> <code title="">lsime;</code> </td> <td> U+02A8D </td> </tr><tr><td> <code title="">lsimg;</code> </td> <td> U+02A8F </td> </tr><tr><td> <code title="">lsqb;</code> </td> <td> U+0005B </td> </tr><tr><td> <code title="">lsquo;</code> </td> <td> U+02018 </td> </tr><tr><td> <code title="">lsquor;</code> </td> <td> U+0201A </td> </tr><tr><td> <code title="">lstrok;</code> </td> <td> U+00142 </td> </tr><tr><td> <code title="">lt;</code> </td> <td> U+0003C </td> </tr><tr><td> <code title="">lt</code> </td> <td> U+0003C </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ltcc;</code> </td> <td> U+02AA6 </td> </tr><tr><td> <code title="">ltcir;</code> </td> <td> U+02A79 </td> </tr><tr><td> <code title="">ltdot;</code> </td> <td> U+022D6 </td> </tr><tr><td> <code title="">lthree;</code> </t> <td> U+022CB </td> </tr><tr><td> <code title="">ltimes;</code> </td> <td> U+022C9 </td> </tr><tr><td> <code title="">ltlarr;</code> </td> <td> U+02976 </td> </tr><tr><td> <code title="">ltquest;</code> </td> <td> U+02A7B </td> </tr><tr><td> <code title="">ltrPar;</code> </td> <td> U+02996 </td> </tr><tr><td> <code title="">ltri;</code> </td> <td> U+025C3 </td> </tr><tr><td> <code title="">ltrie;</code> </td> <td> U+022B4 </td> </tr><tr><td> <code title="">ltrif;</code> </td> <td> U+025C2 </td> </tr><tr><td> <code title="">lurdshar;</code> </td> <td> U+0294A </td> </tr><tr><td> <code title="">luruhar;</code> </td> <td> U+02966 </td> </tr><tr><td> <code title="">mDDot;</code> </td> <td> U+0223A </td> </tr><tr><td> <code title="">macr;</code> </td> <td> U+000AF </td> </tr><tr><td> <code title="">macr</code> </td> <td> U+000AF </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">male;</code> </td> <td> U+02642 </td> </tr><tr><td> <code title="">malt;</code </td> <td> U+02720 </td> </tr><tr><td> <code title="">maltese;</code> </td> <td> U+02720 </td> </tr><tr><td> <code title="">map;</code> </td> <td> U+021A6 </td> </tr><tr><td> <code title="">mapsto;</code> </td> <td> U+021A6 </td> </tr><tr><td> <code title="">mapstodown;</code> </td> <td> U+021A7 </td> </tr><tr><td> <code title="">mapstoleft;</code> </td> <td> U+021A4 </td> </tr><tr><td> <code title="">mapstoup;</code> </td> <td> U+021A5 </td> </tr><tr><td> <code title="">marker;</code> </td> <td> U+025AE </td> </tr><tr><td> <code title="">mcomma;</code> </td> <td> U+02A29 </td> </tr><tr><td> <code title="">mcy;</code> </td> <td> U+0043C </td> </tr><tr><td> <code title="">mdash;</code> </td> <td> U+02014 </td> </tr><tr><td> <code title="">measuredangle;</code> </td> <td> U+02221 </td> </tr><tr><td> <code title="">mfr;</code> </td> <td> U+1D52A </td> </tr><tr><td> <code title="">mho;</code> </td> <td> U+02127 </td> </tr><tr><td> <code title="">micro;</code> </td> <td> U+000B5 </td> </tr><tr><td> <code title=">micro</code> </td> <td> U+000B5 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">mid;</code> </td> <td> U+02223 </td> </tr><tr><td> <code title="">midast;</code> </td> <td> U+0002A </td> </tr><tr><td> <code title="">midcir;</code> </td> <td> U+02AF0 </td> </tr><tr><td> <code title="">middot;</code> </td> <td> U+000B7 </td> </tr><tr><td> <code title="">middot</code> </td> <td> U+000B7 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">minus;</code> </td> <td> U+02212 </td> </tr><tr><td> <code title="">minusb;</code> </td> <td> U+0229F </td> </tr><tr><td> <code title="">minusd;</code> </td> <td> U+02238 </td> </tr><tr><td> <code title="">minusdu;</code> </td> <td> U+02A2A </td> </tr><tr><td> <code title="">mlcp;</code> </td> <td> U+02ADB </td> </tr><tr><td> <code title="">mldr;</code> </td> <td> U+02026 </td> </tr><tr><td> <code title="">mnplus;</code> </td> <td> U+02213 </td> </tr><tr><td> <cod title="">models;</code> </td> <td> U+022A7 </td> </tr><tr><td> <code title="">mopf;</code> </td> <td> U+1D55E </td> </tr><tr><td> <code title="">mp;</code> </td> <td> U+02213 </td> </tr><tr><td> <code title="">mscr;</code> </td> <td> U+1D4C2 </td> </tr><tr><td> <code title="">mstpos;</code> </td> <td> U+0223E </td> </tr><tr><td> <code title="">mu;</code> </td> <td> U+003BC </td> </tr><tr><td> <code title="">multimap;</code> </td> <td> U+022B8 </td> </tr><tr><td> <code title="">mumap;</code> </td> <td> U+022B8 </td> </tr><tr><td> <code title="">nLeftarrow;</code> </td> <td> U+021CD </td> </tr><tr><td> <code title="">nLeftrightarrow;</code> </td> <td> U+021CE </td> </tr><tr><td> <code title="">nRightarrow;</code> </td> <td> U+021CF </td> </tr><tr><td> <code title="">nVDash;</code> </td> <td> U+022AF </td> </tr><tr><td> <code title="">nVdash;</code> </td> <td> U+022AE </td> </tr><tr><td> <code title="">nabla;</code> </td> <td> U+02207 </td> </tr><tr><td> <code title="">nacute;</code> </td> <td> U+00144 </td> /tr><tr><td> <code title="">nap;</code> </td> <td> U+02249 </td> </tr><tr><td> <code title="">napos;</code> </td> <td> U+00149 </td> </tr><tr><td> <code title="">napprox;</code> </td> <td> U+02249 </td> </tr><tr><td> <code title="">natur;</code> </td> <td> U+0266E </td> </tr><tr><td> <code title="">natural;</code> </td> <td> U+0266E </td> </tr><tr><td> <code title="">naturals;</code> </td> <td> U+02115 </td> </tr><tr><td> <code title="">nbsp;</code> </td> <td> U+000A0 </td> </tr><tr><td> <code title="">nbsp</code> </td> <td> U+000A0 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ncap;</code> </td> <td> U+02A43 </td> </tr><tr><td> <code title="">ncaron;</code> </td> <td> U+00148 </td> </tr><tr><td> <code title="">ncedil;</code> </td> <td> U+00146 </td> </tr><tr><td> <code title="">ncong;</code> </td> <td> U+02247 </td> </tr><tr><td> <code title="">ncup;</code> </td> <td> U+02A42 </td> </tr><tr><td> <code title="">ncy;</code> </td> <td> U+0043D </td></tr><tr><td> <code title="">ndash;</code> </td> <td> U+02013 </td> </tr><tr><td> <code title="">ne;</code> </td> <td> U+02260 </td> </tr><tr><td> <code title="">neArr;</code> </td> <td> U+021D7 </td> </tr><tr><td> <code title="">nearhk;</code> </td> <td> U+02924 </td> </tr><tr><td> <code title="">nearr;</code> </td> <td> U+02197 </td> </tr><tr><td> <code title="">nearrow;</code> </td> <td> U+02197 </td> </tr><tr><td> <code title="">nequiv;</code> </td> <td> U+02262 </td> </tr><tr><td> <code title="">nesear;</code> </td> <td> U+02928 </td> </tr><tr><td> <code title="">nexist;</code> </td> <td> U+02204 </td> </tr><tr><td> <code title="">nexists;</code> </td> <td> U+02204 </td> </tr><tr><td> <code title="">nfr;</code> </td> <td> U+1D52B </td> </tr><tr><td> <code title="">nge;</code> </td> <td> U+02271 </td> </tr><tr><td> <code title="">ngeq;</code> </td> <td> U+02271 </td> </tr><tr><td> <code title="">ngsim;</code> </td> <td> U+02275 </td> </tr><tr><td> <code title="">ngt;</code> </td> <td> U+0226F </td> </tr<tr><td> <code title="">ngtr;</code> </td> <td> U+0226F </td> </tr><tr><td> <code title="">nhArr;</code> </td> <td> U+021CE </td> </tr><tr><td> <code title="">nharr;</code> </td> <td> U+021AE </td> </tr><tr><td> <code title="">nhpar;</code> </td> <td> U+02AF2 </td> </tr><tr><td> <code title="">ni;</code> </td> <td> U+0220B </td> </tr><tr><td> <code title="">nis;</code> </td> <td> U+022FC </td> </tr><tr><td> <code title="">nisd;</code> </td> <td> U+022FA </td> </tr><tr><td> <code title="">niv;</code> </td> <td> U+0220B </td> </tr><tr><td> <code title="">njcy;</code> </td> <td> U+0045A </td> </tr><tr><td> <code title="">nlArr;</code> </td> <td> U+021CD </td> </tr><tr><td> <code title="">nlarr;</code> </td> <td> U+0219A </td> </tr><tr><td> <code title="">nldr;</code> </td> <td> U+02025 </td> </tr><tr><td> <code title="">nle;</code> </td> <td> U+02270 </td> </tr><tr><td> <code title="">nleftarrow;</code> </td> <td> U+0219A </td> </tr><tr><td> <code title="">nleftrightarrow;</code> </td> <td> U+021AE </td> </tr>tr><td> <code title="">nleq;</code> </td> <td> U+02270 </td> </tr><tr><td> <code title="">nless;</code> </td> <td> U+0226E </td> </tr><tr><td> <code title="">nlsim;</code> </td> <td> U+02274 </td> </tr><tr><td> <code title="">nlt;</code> </td> <td> U+0226E </td> </tr><tr><td> <code title="">nltri;</code> </td> <td> U+022EA </td> </tr><tr><td> <code title="">nltrie;</code> </td> <td> U+022EC </td> </tr><tr><td> <code title="">nmid;</code> </td> <td> U+02224 </td> </tr><tr><td> <code title="">nopf;</code> </td> <td> U+1D55F </td> </tr><tr><td> <code title="">not;</code> </td> <td> U+000AC </td> </tr><tr><td> <code title="">not</code> </td> <td> U+000AC </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">notin;</code> </td> <td> U+02209 </td> </tr><tr><td> <code title="">notinva;</code> </td> <td> U+02209 </td> </tr><tr><td> <code title="">notinvb;</code> </td> <td> U+022F7 </td> </tr><tr><td> <code title="">notinvc;</code> </td> <td> U+022F6 </td> </tr><t><td> <code title="">notni;</code> </td> <td> U+0220C </td> </tr><tr><td> <code title="">notniva;</code> </td> <td> U+0220C </td> </tr><tr><td> <code title="">notnivb;</code> </td> <td> U+022FE </td> </tr><tr><td> <code title="">notnivc;</code> </td> <td> U+022FD </td> </tr><tr><td> <code title="">npar;</code> </td> <td> U+02226 </td> </tr><tr><td> <code title="">nparallel;</code> </td> <td> U+02226 </td> </tr><tr><td> <code title="">npolint;</code> </td> <td> U+02A14 </td> </tr><tr><td> <code title="">npr;</code> </td> <td> U+02280 </td> </tr><tr><td> <code title="">nprcue;</code> </td> <td> U+022E0 </td> </tr><tr><td> <code title="">nprec;</code> </td> <td> U+02280 </td> </tr><tr><td> <code title="">nrArr;</code> </td> <td> U+021CF </td> </tr><tr><td> <code title="">nrarr;</code> </td> <td> U+0219B </td> </tr><tr><td> <code title="">nrightarrow;</code> </td> <td> U+0219B </td> </tr><tr><td> <code title="">nrtri;</code> </td> <td> U+022EB </td> </tr><tr><td> <code title="">nrtrie;</code> </td> <td> U+022ED</td> </tr><tr><td> <code title="">nsc;</code> </td> <td> U+02281 </td> </tr><tr><td> <code title="">nsccue;</code> </td> <td> U+022E1 </td> </tr><tr><td> <code title="">nscr;</code> </td> <td> U+1D4C3 </td> </tr><tr><td> <code title="">nshortmid;</code> </td> <td> U+02224 </td> </tr><tr><td> <code title="">nshortparallel;</code> </td> <td> U+02226 </td> </tr><tr><td> <code title="">nsim;</code> </td> <td> U+02241 </td> </tr><tr><td> <code title="">nsime;</code> </td> <td> U+02244 </td> </tr><tr><td> <code title="">nsimeq;</code> </td> <td> U+02244 </td> </tr><tr><td> <code title="">nsmid;</code> </td> <td> U+02224 </td> </tr><tr><td> <code title="">nspar;</code> </td> <td> U+02226 </td> </tr><tr><td> <code title="">nsqsube;</code> </td> <td> U+022E2 </td> </tr><tr><td> <code title="">nsqsupe;</code> </td> <td> U+022E3 </td> </tr><tr><td> <code title="">nsub;</code> </td> <td> U+02284 </td> </tr><tr><td> <code title="">nsube;</code> </td> <td> U+02288 </td> </tr><tr><td> <code title="">nsubseteq;</code> </t> <td> U+02288 </td> </tr><tr><td> <code title="">nsucc;</code> </td> <td> U+02281 </td> </tr><tr><td> <code title="">nsup;</code> </td> <td> U+02285 </td> </tr><tr><td> <code title="">nsupe;</code> </td> <td> U+02289 </td> </tr><tr><td> <code title="">nsupseteq;</code> </td> <td> U+02289 </td> </tr><tr><td> <code title="">ntgl;</code> </td> <td> U+02279 </td> </tr><tr><td> <code title="">ntilde;</code> </td> <td> U+000F1 </td> </tr><tr><td> <code title="">ntilde</code> </td> <td> U+000F1 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ntlg;</code> </td> <td> U+02278 </td> </tr><tr><td> <code title="">ntriangleleft;</code> </td> <td> U+022EA </td> </tr><tr><td> <code title="">ntrianglelefteq;</code> </td> <td> U+022EC </td> </tr><tr><td> <code title="">ntriangleright;</code> </td> <td> U+022EB </td> </tr><tr><td> <code title="">ntrianglerighteq;</code> </td> <td> U+022ED </td> </tr><tr><td> <code title="">nu;</code> </td> <td> U+003BD </td> </tr><tr<td> <code title="">num;</code> </td> <td> U+00023 </td> </tr><tr><td> <code title="">numero;</code> </td> <td> U+02116 </td> </tr><tr><td> <code title="">numsp;</code> </td> <td> U+02007 </td> </tr><tr><td> <code title="">nvDash;</code> </td> <td> U+022AD </td> </tr><tr><td> <code title="">nvHarr;</code> </td> <td> U+02904 </td> </tr><tr><td> <code title="">nvdash;</code> </td> <td> U+022AC </td> </tr><tr><td> <code title="">nvinfin;</code> </td> <td> U+029DE </td> </tr><tr><td> <code title="">nvlArr;</code> </td> <td> U+02902 </td> </tr><tr><td> <code title="">nvrArr;</code> </td> <td> U+02903 </td> </tr><tr><td> <code title="">nwArr;</code> </td> <td> U+021D6 </td> </tr><tr><td> <code title="">nwarhk;</code> </td> <td> U+02923 </td> </tr><tr><td> <code title="">nwarr;</code> </td> <td> U+02196 </td> </tr><tr><td> <code title="">nwarrow;</code> </td> <td> U+02196 </td> </tr><tr><td> <code title="">nwnear;</code> </td> <td> U+02927 </td> </tr><tr><td> <code title="">oS;</code> </td> <td> U+024C8 </td> </tr<tr><td> <code title="">oacute;</code> </td> <td> U+000F3 </td> </tr><tr><td> <code title="">oacute</code> </td> <td> U+000F3 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">oast;</code> </td> <td> U+0229B </td> </tr><tr><td> <code title="">ocir;</code> </td> <td> U+0229A </td> </tr><tr><td> <code title="">ocirc;</code> </td> <td> U+000F4 </td> </tr><tr><td> <code title="">ocirc</code> </td> <td> U+000F4 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ocy;</code> </td> <td> U+0043E </td> </tr><tr><td> <code title="">odash;</code> </td> <td> U+0229D </td> </tr><tr><td> <code title="">odblac;</code> </td> <td> U+00151 </td> </tr><tr><td> <code title="">odiv;</code> </td> <td> U+02A38 </td> </tr><tr><td> <code title="">odot;</code> </td> <td> U+02299 </td> </tr><tr><td> <code title="">odsold;</code> </td> <td> U+029BC </td> </tr><tr><td> <code title="">oelig;</code> </td> <td> U+00153 </td> </t><tr><td> <code title="">ofcir;</code> </td> <td> U+029BF </td> </tr><tr><td> <code title="">ofr;</code> </td> <td> U+1D52C </td> </tr><tr><td> <code title="">ogon;</code> </td> <td> U+002DB </td> </tr><tr><td> <code title="">ograve;</code> </td> <td> U+000F2 </td> </tr><tr><td> <code title="">ograve</code> </td> <td> U+000F2 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ogt;</code> </td> <td> U+029C1 </td> </tr><tr><td> <code title="">ohbar;</code> </td> <td> U+029B5 </td> </tr><tr><td> <code title="">ohm;</code> </td> <td> U+02126 </td> </tr><tr><td> <code title="">oint;</code> </td> <td> U+0222E </td> </tr><tr><td> <code title="">olarr;</code> </td> <td> U+021BA </td> </tr><tr><td> <code title="">olcir;</code> </td> <td> U+029BE </td> </tr><tr><td> <code title="">olcross;</code> </td> <td> U+029BB </td> </tr><tr><td> <code title="">oline;</code> </td> <td> U+0203E </td> </tr><tr><td> <code title="">olt;</code> </td> <td> U+029C0 </td> </tr><tr>td> <code title="">omacr;</code> </td> <td> U+0014D </td> </tr><tr><td> <code title="">omega;</code> </td> <td> U+003C9 </td> </tr><tr><td> <code title="">omicron;</code> </td> <td> U+003BF </td> </tr><tr><td> <code title="">omid;</code> </td> <td> U+029B6 </td> </tr><tr><td> <code title="">ominus;</code> </td> <td> U+02296 </td> </tr><tr><td> <code title="">oopf;</code> </td> <td> U+1D560 </td> </tr><tr><td> <code title="">opar;</code> </td> <td> U+029B7 </td> </tr><tr><td> <code title="">operp;</code> </td> <td> U+029B9 </td> </tr><tr><td> <code title="">oplus;</code> </td> <td> U+02295 </td> </tr><tr><td> <code title="">or;</code> </td> <td> U+02228 </td> </tr><tr><td> <code title="">orarr;</code> </td> <td> U+021BB </td> </tr><tr><td> <code title="">ord;</code> </td> <td> U+02A5D </td> </tr><tr><td> <code title="">order;</code> </td> <td> U+02134 </td> </tr><tr><td> <code title="">orderof;</code> </td> <td> U+02134 </td> </tr><tr><td> <code title="">ordf;</code> </td> <td> U+000AA </td> </tr><tr><td> <cde title="">ordf</code> </td> <td> U+000AA </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ordm;</code> </td> <td> U+000BA </td> </tr><tr><td> <code title="">ordm</code> </td> <td> U+000BA </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">origof;</code> </td> <td> U+022B6 </td> </tr><tr><td> <code title="">oror;</code> </td> <td> U+02A56 </td> </tr><tr><td> <code title="">orslope;</code> </td> <td> U+02A57 </td> </tr><tr><td> <code title="">orv;</code> </td> <td> U+02A5B </td> </tr><tr><td> <code title="">oscr;</code> </td> <td> U+02134 </td> </tr><tr><td> <code title="">oslash;</code> </td> <td> U+000F8 </td> </tr><tr><td> <code title="">oslash</code> </td> <td> U+000F8 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">osol;</code> </td> <td> U+02298 </td> </tr><tr><td> <code title="">otilde;</code> </td> <td> U+000F5 </td> </tr><tr><td <code title="">otilde</code> </td> <td> U+000F5 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">otimes;</code> </td> <td> U+02297 </td> </tr><tr><td> <code title="">otimesas;</code> </td> <td> U+02A36 </td> </tr><tr><td> <code title="">ouml;</code> </td> <td> U+000F6 </td> </tr><tr><td> <code title="">ouml</code> </td> <td> U+000F6 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ovbar;</code> </td> <td> U+0233D </td> </tr><tr><td> <code title="">par;</code> </td> <td> U+02225 </td> </tr><tr><td> <code title="">para;</code> </td> <td> U+000B6 </td> </tr><tr><td> <code title="">para</code> </td> <td> U+000B6 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">parallel;</code> </td> <td> U+02225 </td> </tr><tr><td> <code title="">parsim;</code> </td> <td> U+02AF3 </td> </tr><tr><td> <code title="">parsl;</code> </td> <td> U+02AFD </td> </t><tr><td> <code title="">part;</code> </td> <td> U+02202 </td> </tr><tr><td> <code title="">pcy;</code> </td> <td> U+0043F </td> </tr><tr><td> <code title="">percnt;</code> </td> <td> U+00025 </td> </tr><tr><td> <code title="">period;</code> </td> <td> U+0002E </td> </tr><tr><td> <code title="">permil;</code> </td> <td> U+02030 </td> </tr><tr><td> <code title="">perp;</code> </td> <td> U+022A5 </td> </tr><tr><td> <code title="">pertenk;</code> </td> <td> U+02031 </td> </tr><tr><td> <code title="">pfr;</code> </td> <td> U+1D52D </td> </tr><tr><td> <code title="">phi;</code> </td> <td> U+003C6 </td> </tr><tr><td> <code title="">phiv;</code> </td> <td> U+003C6 </td> </tr><tr><td> <code title="">phmmat;</code> </td> <td> U+02133 </td> </tr><tr><td> <code title="">phone;</code> </td> <td> U+0260E </td> </tr><tr><td> <code title="">pi;</code> </td> <td> U+003C0 </td> </tr><tr><td> <code title="">pitchfork;</code> </td> <td> U+022D4 </td> </tr><tr><td> <code title="">piv;</code> </td> <td> U+003D6 </td> </tr><tr><d> <code title="">planck;</code> </td> <td> U+0210F </td> </tr><tr><td> <code title="">planckh;</code> </td> <td> U+0210E </td> </tr><tr><td> <code title="">plankv;</code> </td> <td> U+0210F </td> </tr><tr><td> <code title="">plus;</code> </td> <td> U+0002B </td> </tr><tr><td> <code title="">plusacir;</code> </td> <td> U+02A23 </td> </tr><tr><td> <code title="">plusb;</code> </td> <td> U+0229E </td> </tr><tr><td> <code title="">pluscir;</code> </td> <td> U+02A22 </td> </tr><tr><td> <code title="">plusdo;</code> </td> <td> U+02214 </td> </tr><tr><td> <code title="">plusdu;</code> </td> <td> U+02A25 </td> </tr><tr><td> <code title="">pluse;</code> </td> <td> U+02A72 </td> </tr><tr><td> <code title="">plusmn;</code> </td> <td> U+000B1 </td> </tr><tr><td> <code title="">plusmn</code> </td> <td> U+000B1 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">plussim;</code> </td> <td> U+02A26 </td> </tr><tr><td> <code title="">plustwo;</code> </td> <td> U+02A27 /td> </tr><tr><td> <code title="">pm;</code> </td> <td> U+000B1 </td> </tr><tr><td> <code title="">pointint;</code> </td> <td> U+02A15 </td> </tr><tr><td> <code title="">popf;</code> </td> <td> U+1D561 </td> </tr><tr><td> <code title="">pound;</code> </td> <td> U+000A3 </td> </tr><tr><td> <code title="">pound</code> </td> <td> U+000A3 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">pr;</code> </td> <td> U+0227A </td> </tr><tr><td> <code title="">prE;</code> </td> <td> U+02AB3 </td> </tr><tr><td> <code title="">prap;</code> </td> <td> U+02AB7 </td> </tr><tr><td> <code title="">prcue;</code> </td> <td> U+0227C </td> </tr><tr><td> <code title="">pre;</code> </td> <td> U+02AAF </td> </tr><tr><td> <code title="">prec;</code> </td> <td> U+0227A </td> </tr><tr><td> <code title="">precapprox;</code> </td> <td> U+02AB7 </td> </tr><tr><td> <code title="">preccurlyeq;</code> </td> <td> U+0227C </td> </tr><tr><td> <code title="">preceq;</code> </td> <td> U+02AA </td> </tr><tr><td> <code title="">precnapprox;</code> </td> <td> U+02AB9 </td> </tr><tr><td> <code title="">precneqq;</code> </td> <td> U+02AB5 </td> </tr><tr><td> <code title="">precnsim;</code> </td> <td> U+022E8 </td> </tr><tr><td> <code title="">precsim;</code> </td> <td> U+0227E </td> </tr><tr><td> <code title="">prime;</code> </td> <td> U+02032 </td> </tr><tr><td> <code title="">primes;</code> </td> <td> U+02119 </td> </tr><tr><td> <code title="">prnE;</code> </td> <td> U+02AB5 </td> </tr><tr><td> <code title="">prnap;</code> </td> <td> U+02AB9 </td> </tr><tr><td> <code title="">prnsim;</code> </td> <td> U+022E8 </td> </tr><tr><td> <code title="">prod;</code> </td> <td> U+0220F </td> </tr><tr><td> <code title="">profalar;</code> </td> <td> U+0232E </td> </tr><tr><td> <code title="">profline;</code> </td> <td> U+02312 </td> </tr><tr><td> <code title="">profsurf;</code> </td> <td> U+02313 </td> </tr><tr><td> <code title="">prop;</code> </td> <td> U+0221D </td> </tr><tr><td> <code title="">propto;</cod> </td> <td> U+0221D </td> </tr><tr><td> <code title="">prsim;</code> </td> <td> U+0227E </td> </tr><tr><td> <code title="">prurel;</code> </td> <td> U+022B0 </td> </tr><tr><td> <code title="">pscr;</code> </td> <td> U+1D4C5 </td> </tr><tr><td> <code title="">psi;</code> </td> <td> U+003C8 </td> </tr><tr><td> <code title="">puncsp;</code> </td> <td> U+02008 </td> </tr><tr><td> <code title="">qfr;</code> </td> <td> U+1D52E </td> </tr><tr><td> <code title="">qint;</code> </td> <td> U+02A0C </td> </tr><tr><td> <code title="">qopf;</code> </td> <td> U+1D562 </td> </tr><tr><td> <code title="">qprime;</code> </td> <td> U+02057 </td> </tr><tr><td> <code title="">qscr;</code> </td> <td> U+1D4C6 </td> </tr><tr><td> <code title="">quaternions;</code> </td> <td> U+0210D </td> </tr><tr><td> <code title="">quatint;</code> </td> <td> U+02A16 </td> </tr><tr><td> <code title="">quest;</code> </td> <td> U+0003F </td> </tr><tr><td> <code title="">questeq;</code> </td> <td> U+0225F </td> </tr><tr><td> <code title="">quot;</coe> </td> <td> U+00022 </td> </tr><tr><td> <code title="">quot</code> </td> <td> U+00022 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">rAarr;</code> </td> <td> U+021DB </td> </tr><tr><td> <code title="">rArr;</code> </td> <td> U+021D2 </td> </tr><tr><td> <code title="">rAtail;</code> </td> <td> U+0291C </td> </tr><tr><td> <code title="">rBarr;</code> </td> <td> U+0290F </td> </tr><tr><td> <code title="">rHar;</code> </td> <td> U+02964 </td> </tr><tr><td> <code title="">race;</code> </td> <td> U+029DA </td> </tr><tr><td> <code title="">racute;</code> </td> <td> U+00155 </td> </tr><tr><td> <code title="">radic;</code> </td> <td> U+0221A </td> </tr><tr><td> <code title="">raemptyv;</code> </td> <td> U+029B3 </td> </tr><tr><td> <code title="">rang;</code> </td> <td> U+027E9 </td> </tr><tr><td> <code title="">rangd;</code> </td> <td> U+02992 </td> </tr><tr><td> <code title="">range;</code> </td> <td> U+029A5 </td> </tr><tr><td> <code title="">rangle;</cde> </td> <td> U+027E9 </td> </tr><tr><td> <code title="">raquo;</code> </td> <td> U+000BB </td> </tr><tr><td> <code title="">raquo</code> </td> <td> U+000BB </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">rarr;</code> </td> <td> U+02192 </td> </tr><tr><td> <code title="">rarrap;</code> </td> <td> U+02975 </td> </tr><tr><td> <code title="">rarrb;</code> </td> <td> U+021E5 </td> </tr><tr><td> <code title="">rarrbfs;</code> </td> <td> U+02920 </td> </tr><tr><td> <code title="">rarrc;</code> </td> <td> U+02933 </td> </tr><tr><td> <code title="">rarrfs;</code> </td> <td> U+0291E </td> </tr><tr><td> <code title="">rarrhk;</code> </td> <td> U+021AA </td> </tr><tr><td> <code title="">rarrlp;</code> </td> <td> U+021AC </td> </tr><tr><td> <code title="">rarrpl;</code> </td> <td> U+02945 </td> </tr><tr><td> <code title="">rarrsim;</code> </td> <td> U+02974 </td> </tr><tr><td> <code title="">rarrtl;</code> </td> <td> U+021A3 </td> </tr><tr><td> <code title="">arrw;</code> </td> <td> U+0219D </td> </tr><tr><td> <code title="">ratail;</code> </td> <td> U+0291A </td> </tr><tr><td> <code title="">ratio;</code> </td> <td> U+02236 </td> </tr><tr><td> <code title="">rationals;</code> </td> <td> U+0211A </td> </tr><tr><td> <code title="">rbarr;</code> </td> <td> U+0290D </td> </tr><tr><td> <code title="">rbbrk;</code> </td> <td> U+02773 </td> </tr><tr><td> <code title="">rbrace;</code> </td> <td> U+0007D </td> </tr><tr><td> <code title="">rbrack;</code> </td> <td> U+0005D </td> </tr><tr><td> <code title="">rbrke;</code> </td> <td> U+0298C </td> </tr><tr><td> <code title="">rbrksld;</code> </td> <td> U+0298E </td> </tr><tr><td> <code title="">rbrkslu;</code> </td> <td> U+02990 </td> </tr><tr><td> <code title="">rcaron;</code> </td> <td> U+00159 </td> </tr><tr><td> <code title="">rcedil;</code> </td> <td> U+00157 </td> </tr><tr><td> <code title="">rceil;</code> </td> <td> U+02309 </td> </tr><tr><td> <code title="">rcub;</code> </td> <td> U+0007D </td> </tr><tr><td> <code itle="">rcy;</code> </td> <td> U+00440 </td> </tr><tr><td> <code title="">rdca;</code> </td> <td> U+02937 </td> </tr><tr><td> <code title="">rdldhar;</code> </td> <td> U+02969 </td> </tr><tr><td> <code title="">rdquo;</code> </td> <td> U+0201D </td> </tr><tr><td> <code title="">rdquor;</code> </td> <td> U+0201D </td> </tr><tr><td> <code title="">rdsh;</code> </td> <td> U+021B3 </td> </tr><tr><td> <code title="">real;</code> </td> <td> U+0211C </td> </tr><tr><td> <code title="">realine;</code> </td> <td> U+0211B </td> </tr><tr><td> <code title="">realpart;</code> </td> <td> U+0211C </td> </tr><tr><td> <code title="">reals;</code> </td> <td> U+0211D </td> </tr><tr><td> <code title="">rect;</code> </td> <td> U+025AD </td> </tr><tr><td> <code title="">reg;</code> </td> <td> U+000AE </td> </tr><tr><td> <code title="">reg</code> </td> <td> U+000AE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">rfisht;</code> </td> <td> U+0297D </td> </tr><tr><td> <code ttle="">rfloor;</code> </td> <td> U+0230B </td> </tr><tr><td> <code title="">rfr;</code> </td> <td> U+1D52F </td> </tr><tr><td> <code title="">rhard;</code> </td> <td> U+021C1 </td> </tr><tr><td> <code title="">rharu;</code> </td> <td> U+021C0 </td> </tr><tr><td> <code title="">rharul;</code> </td> <td> U+0296C </td> </tr><tr><td> <code title="">rho;</code> </td> <td> U+003C1 </td> </tr><tr><td> <code title="">rhov;</code> </td> <td> U+003F1 </td> </tr><tr><td> <code title="">rightarrow;</code> </td> <td> U+02192 </td> </tr><tr><td> <code title="">rightarrowtail;</code> </td> <td> U+021A3 </td> </tr><tr><td> <code title="">rightharpoondown;</code> </td> <td> U+021C1 </td> </tr><tr><td> <code title="">rightharpoonup;</code> </td> <td> U+021C0 </td> </tr><tr><td> <code title="">rightleftarrows;</code> </td> <td> U+021C4 </td> </tr><tr><td> <code title="">rightleftharpoons;</code> </td> <td> U+021CC </td> </tr><tr><td> <code title="">rightrightarrows;</code> </td> <td> U+021C9 </td> </tr><tr><td> <code title=""rightsquigarrow;</code> </td> <td> U+0219D </td> </tr><tr><td> <code title="">rightthreetimes;</code> </td> <td> U+022CC </td> </tr><tr><td> <code title="">ring;</code> </td> <td> U+002DA </td> </tr><tr><td> <code title="">risingdotseq;</code> </td> <td> U+02253 </td> </tr><tr><td> <code title="">rlarr;</code> </td> <td> U+021C4 </td> </tr><tr><td> <code title="">rlhar;</code> </td> <td> U+021CC </td> </tr><tr><td> <code title="">rlm;</code> </td> <td> U+0200F </td> </tr><tr><td> <code title="">rmoust;</code> </td> <td> U+023B1 </td> </tr><tr><td> <code title="">rmoustache;</code> </td> <td> U+023B1 </td> </tr><tr><td> <code title="">rnmid;</code> </td> <td> U+02AEE </td> </tr><tr><td> <code title="">roang;</code> </td> <td> U+027ED </td> </tr><tr><td> <code title="">roarr;</code> </td> <td> U+021FE </td> </tr><tr><td> <code title="">robrk;</code> </td> <td> U+027E7 </td> </tr><tr><td> <code title="">ropar;</code> </td> <td> U+02986 </td> </tr><tr><td> <code title="">ropf;</code> </td> <td> U+1D563 </td> </r><tr><td> <code title="">roplus;</code> </td> <td> U+02A2E </td> </tr><tr><td> <code title="">rotimes;</code> </td> <td> U+02A35 </td> </tr><tr><td> <code title="">rpar;</code> </td> <td> U+00029 </td> </tr><tr><td> <code title="">rpargt;</code> </td> <td> U+02994 </td> </tr><tr><td> <code title="">rppolint;</code> </td> <td> U+02A12 </td> </tr><tr><td> <code title="">rrarr;</code> </td> <td> U+021C9 </td> </tr><tr><td> <code title="">rsaquo;</code> </td> <td> U+0203A </td> </tr><tr><td> <code title="">rscr;</code> </td> <td> U+1D4C7 </td> </tr><tr><td> <code title="">rsh;</code> </td> <td> U+021B1 </td> </tr><tr><td> <code title="">rsqb;</code> </td> <td> U+0005D </td> </tr><tr><td> <code title="">rsquo;</code> </td> <td> U+02019 </td> </tr><tr><td> <code title="">rsquor;</code> </td> <td> U+02019 </td> </tr><tr><td> <code title="">rthree;</code> </td> <td> U+022CC </td> </tr><tr><td> <code title="">rtimes;</code> </td> <td> U+022CA </td> </tr><tr><td> <code title="">rtri;</code> </td> <td> U+025B9 </td> /tr><tr><td> <code title="">rtrie;</code> </td> <td> U+022B5 </td> </tr><tr><td> <code title="">rtrif;</code> </td> <td> U+025B8 </td> </tr><tr><td> <code title="">rtriltri;</code> </td> <td> U+029CE </td> </tr><tr><td> <code title="">ruluhar;</code> </td> <td> U+02968 </td> </tr><tr><td> <code title="">rx;</code> </td> <td> U+0211E </td> </tr><tr><td> <code title="">sacute;</code> </td> <td> U+0015B </td> </tr><tr><td> <code title="">sbquo;</code> </td> <td> U+0201A </td> </tr><tr><td> <code title="">sc;</code> </td> <td> U+0227B </td> </tr><tr><td> <code title="">scE;</code> </td> <td> U+02AB4 </td> </tr><tr><td> <code title="">scap;</code> </td> <td> U+02AB8 </td> </tr><tr><td> <code title="">scaron;</code> </td> <td> U+00161 </td> </tr><tr><td> <code title="">sccue;</code> </td> <td> U+0227D </td> </tr><tr><td> <code title="">sce;</code> </td> <td> U+02AB0 </td> </tr><tr><td> <code title="">scedil;</code> </td> <td> U+0015F </td> </tr><tr><td> <code title="">scirc;</code> </td> <td> U+0015D </td> </tr><r><td> <code title="">scnE;</code> </td> <td> U+02AB6 </td> </tr><tr><td> <code title="">scnap;</code> </td> <td> U+02ABA </td> </tr><tr><td> <code title="">scnsim;</code> </td> <td> U+022E9 </td> </tr><tr><td> <code title="">scpolint;</code> </td> <td> U+02A13 </td> </tr><tr><td> <code title="">scsim;</code> </td> <td> U+0227F </td> </tr><tr><td> <code title="">scy;</code> </td> <td> U+00441 </td> </tr><tr><td> <code title="">sdot;</code> </td> <td> U+022C5 </td> </tr><tr><td> <code title="">sdotb;</code> </td> <td> U+022A1 </td> </tr><tr><td> <code title="">sdote;</code> </td> <td> U+02A66 </td> </tr><tr><td> <code title="">seArr;</code> </td> <td> U+021D8 </td> </tr><tr><td> <code title="">searhk;</code> </td> <td> U+02925 </td> </tr><tr><td> <code title="">searr;</code> </td> <td> U+02198 </td> </tr><tr><td> <code title="">searrow;</code> </td> <td> U+02198 </td> </tr><tr><td> <code title="">sect;</code> </td> <td> U+000A7 </td> </tr><tr><td> <code title="">sect</code> </td> <td> U+000A7 </td> </tr><!--(invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">semi;</code> </td> <td> U+0003B </td> </tr><tr><td> <code title="">seswar;</code> </td> <td> U+02929 </td> </tr><tr><td> <code title="">setminus;</code> </td> <td> U+02216 </td> </tr><tr><td> <code title="">setmn;</code> </td> <td> U+02216 </td> </tr><tr><td> <code title="">sext;</code> </td> <td> U+02736 </td> </tr><tr><td> <code title="">sfr;</code> </td> <td> U+1D530 </td> </tr><tr><td> <code title="">sfrown;</code> </td> <td> U+02322 </td> </tr><tr><td> <code title="">sharp;</code> </td> <td> U+0266F </td> </tr><tr><td> <code title="">shchcy;</code> </td> <td> U+00449 </td> </tr><tr><td> <code title="">shcy;</code> </td> <td> U+00448 </td> </tr><tr><td> <code title="">shortmid;</code> </td> <td> U+02223 </td> </tr><tr><td> <code title="">shortparallel;</code> </td> <td> U+02225 </td> </tr><tr><td> <code title="">shy;</code> </td> <td> U+000AD </td> </tr><tr><td> <code title="">shy</code> </td> <td> U+000AD </td> <tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">sigma;</code> </td> <td> U+003C3 </td> </tr><tr><td> <code title="">sigmaf;</code> </td> <td> U+003C2 </td> </tr><tr><td> <code title="">sigmav;</code> </td> <td> U+003C2 </td> </tr><tr><td> <code title="">sim;</code> </td> <td> U+0223C </td> </tr><tr><td> <code title="">simdot;</code> </td> <td> U+02A6A </td> </tr><tr><td> <code title="">sime;</code> </td> <td> U+02243 </td> </tr><tr><td> <code title="">simeq;</code> </td> <td> U+02243 </td> </tr><tr><td> <code title="">simg;</code> </td> <td> U+02A9E </td> </tr><tr><td> <code title="">simgE;</code> </td> <td> U+02AA0 </td> </tr><tr><td> <code title="">siml;</code> </td> <td> U+02A9D </td> </tr><tr><td> <code title="">simlE;</code> </td> <td> U+02A9F </td> </tr><tr><td> <code title="">simne;</code> </td> <td> U+02246 </td> </tr><tr><td> <code title="">simplus;</code> </td> <td> U+02A24 </td> </tr><tr><td> <code title="">simrarr;</code> </td> <td> U+02972 </td </tr><tr><td> <code title="">slarr;</code> </td> <td> U+02190 </td> </tr><tr><td> <code title="">smallsetminus;</code> </td> <td> U+02216 </td> </tr><tr><td> <code title="">smashp;</code> </td> <td> U+02A33 </td> </tr><tr><td> <code title="">smeparsl;</code> </td> <td> U+029E4 </td> </tr><tr><td> <code title="">smid;</code> </td> <td> U+02223 </td> </tr><tr><td> <code title="">smile;</code> </td> <td> U+02323 </td> </tr><tr><td> <code title="">smt;</code> </td> <td> U+02AAA </td> </tr><tr><td> <code title="">smte;</code> </td> <td> U+02AAC </td> </tr><tr><td> <code title="">softcy;</code> </td> <td> U+0044C </td> </tr><tr><td> <code title="">sol;</code> </td> <td> U+0002F </td> </tr><tr><td> <code title="">solb;</code> </td> <td> U+029C4 </td> </tr><tr><td> <code title="">solbar;</code> </td> <td> U+0233F </td> </tr><tr><td> <code title="">sopf;</code> </td> <td> U+1D564 </td> </tr><tr><td> <code title="">spades;</code> </td> <td> U+02660 </td> </tr><tr><td> <code title="">spadesuit;</code> </td> <td> U+0260 </td> </tr><tr><td> <code title="">spar;</code> </td> <td> U+02225 </td> </tr><tr><td> <code title="">sqcap;</code> </td> <td> U+02293 </td> </tr><tr><td> <code title="">sqcup;</code> </td> <td> U+02294 </td> </tr><tr><td> <code title="">sqsub;</code> </td> <td> U+0228F </td> </tr><tr><td> <code title="">sqsube;</code> </td> <td> U+02291 </td> </tr><tr><td> <code title="">sqsubset;</code> </td> <td> U+0228F </td> </tr><tr><td> <code title="">sqsubseteq;</code> </td> <td> U+02291 </td> </tr><tr><td> <code title="">sqsup;</code> </td> <td> U+02290 </td> </tr><tr><td> <code title="">sqsupe;</code> </td> <td> U+02292 </td> </tr><tr><td> <code title="">sqsupset;</code> </td> <td> U+02290 </td> </tr><tr><td> <code title="">sqsupseteq;</code> </td> <td> U+02292 </td> </tr><tr><td> <code title="">squ;</code> </td> <td> U+025A1 </td> </tr><tr><td> <code title="">square;</code> </td> <td> U+025A1 </td> </tr><tr><td> <code title="">squarf;</code> </td> <td> U+025AA </td> </tr><tr><td> <code title="">squf;</code> </d> <td> U+025AA </td> </tr><tr><td> <code title="">srarr;</code> </td> <td> U+02192 </td> </tr><tr><td> <code title="">sscr;</code> </td> <td> U+1D4C8 </td> </tr><tr><td> <code title="">ssetmn;</code> </td> <td> U+02216 </td> </tr><tr><td> <code title="">ssmile;</code> </td> <td> U+02323 </td> </tr><tr><td> <code title="">sstarf;</code> </td> <td> U+022C6 </td> </tr><tr><td> <code title="">star;</code> </td> <td> U+02606 </td> </tr><tr><td> <code title="">starf;</code> </td> <td> U+02605 </td> </tr><tr><td> <code title="">straightepsilon;</code> </td> <td> U+003F5 </td> </tr><tr><td> <code title="">straightphi;</code> </td> <td> U+003D5 </td> </tr><tr><td> <code title="">strns;</code> </td> <td> U+000AF </td> </tr><tr><td> <code title="">sub;</code> </td> <td> U+02282 </td> </tr><tr><td> <code title="">subE;</code> </td> <td> U+02AC5 </td> </tr><tr><td> <code title="">subdot;</code> </td> <td> U+02ABD </td> </tr><tr><td> <code title="">sube;</code> </td> <td> U+02286 </td> </tr><tr><td> <code title="">subedt;</code> </td> <td> U+02AC3 </td> </tr><tr><td> <code title="">submult;</code> </td> <td> U+02AC1 </td> </tr><tr><td> <code title="">subnE;</code> </td> <td> U+02ACB </td> </tr><tr><td> <code title="">subne;</code> </td> <td> U+0228A </td> </tr><tr><td> <code title="">subplus;</code> </td> <td> U+02ABF </td> </tr><tr><td> <code title="">subrarr;</code> </td> <td> U+02979 </td> </tr><tr><td> <code title="">subset;</code> </td> <td> U+02282 </td> </tr><tr><td> <code title="">subseteq;</code> </td> <td> U+02286 </td> </tr><tr><td> <code title="">subseteqq;</code> </td> <td> U+02AC5 </td> </tr><tr><td> <code title="">subsetneq;</code> </td> <td> U+0228A </td> </tr><tr><td> <code title="">subsetneqq;</code> </td> <td> U+02ACB </td> </tr><tr><td> <code title="">subsim;</code> </td> <td> U+02AC7 </td> </tr><tr><td> <code title="">subsub;</code> </td> <td> U+02AD5 </td> </tr><tr><td> <code title="">subsup;</code> </td> <td> U+02AD3 </td> </tr><tr><td> <code title="">succ;</code> </td> <td> U+0227B </td> </tr><tr><d> <code title="">succapprox;</code> </td> <td> U+02AB8 </td> </tr><tr><td> <code title="">succcurlyeq;</code> </td> <td> U+0227D </td> </tr><tr><td> <code title="">succeq;</code> </td> <td> U+02AB0 </td> </tr><tr><td> <code title="">succnapprox;</code> </td> <td> U+02ABA </td> </tr><tr><td> <code title="">succneqq;</code> </td> <td> U+02AB6 </td> </tr><tr><td> <code title="">succnsim;</code> </td> <td> U+022E9 </td> </tr><tr><td> <code title="">succsim;</code> </td> <td> U+0227F </td> </tr><tr><td> <code title="">sum;</code> </td> <td> U+02211 </td> </tr><tr><td> <code title="">sung;</code> </td> <td> U+0266A </td> </tr><tr><td> <code title="">sup1;</code> </td> <td> U+000B9 </td> </tr><tr><td> <code title="">sup1</code> </td> <td> U+000B9 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">sup2;</code> </td> <td> U+000B2 </td> </tr><tr><td> <code title="">sup2</code> </td> <td> U+000B2 </td> </tr><!-- (invalid entity with missing semicolon for legacy upport only) --><tr><td> <code title="">sup3;</code> </td> <td> U+000B3 </td> </tr><tr><td> <code title="">sup3</code> </td> <td> U+000B3 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">sup;</code> </td> <td> U+02283 </td> </tr><tr><td> <code title="">supE;</code> </td> <td> U+02AC6 </td> </tr><tr><td> <code title="">supdot;</code> </td> <td> U+02ABE </td> </tr><tr><td> <code title="">supdsub;</code> </td> <td> U+02AD8 </td> </tr><tr><td> <code title="">supe;</code> </td> <td> U+02287 </td> </tr><tr><td> <code title="">supedot;</code> </td> <td> U+02AC4 </td> </tr><tr><td> <code title="">suphsub;</code> </td> <td> U+02AD7 </td> </tr><tr><td> <code title="">suplarr;</code> </td> <td> U+0297B </td> </tr><tr><td> <code title="">supmult;</code> </td> <td> U+02AC2 </td> </tr><tr><td> <code title="">supnE;</code> </td> <td> U+02ACC </td> </tr><tr><td> <code title="">supne;</code> </td> <td> U+0228B </td> </tr><tr><td> <code title="">supplus;</code> </td> td> U+02AC0 </td> </tr><tr><td> <code title="">supset;</code> </td> <td> U+02283 </td> </tr><tr><td> <code title="">supseteq;</code> </td> <td> U+02287 </td> </tr><tr><td> <code title="">supseteqq;</code> </td> <td> U+02AC6 </td> </tr><tr><td> <code title="">supsetneq;</code> </td> <td> U+0228B </td> </tr><tr><td> <code title="">supsetneqq;</code> </td> <td> U+02ACC </td> </tr><tr><td> <code title="">supsim;</code> </td> <td> U+02AC8 </td> </tr><tr><td> <code title="">supsub;</code> </td> <td> U+02AD4 </td> </tr><tr><td> <code title="">supsup;</code> </td> <td> U+02AD6 </td> </tr><tr><td> <code title="">swArr;</code> </td> <td> U+021D9 </td> </tr><tr><td> <code title="">swarhk;</code> </td> <td> U+02926 </td> </tr><tr><td> <code title="">swarr;</code> </td> <td> U+02199 </td> </tr><tr><td> <code title="">swarrow;</code> </td> <td> U+02199 </td> </tr><tr><td> <code title="">swnwar;</code> </td> <td> U+0292A </td> </tr><tr><td> <code title="">szlig;</code> </td> <td> U+000DF </td> </tr><tr><td> <code title=""szlig</code> </td> <td> U+000DF </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">target;</code> </td> <td> U+02316 </td> </tr><tr><td> <code title="">tau;</code> </td> <td> U+003C4 </td> </tr><tr><td> <code title="">tbrk;</code> </td> <td> U+023B4 </td> </tr><tr><td> <code title="">tcaron;</code> </td> <td> U+00165 </td> </tr><tr><td> <code title="">tcedil;</code> </td> <td> U+00163 </td> </tr><tr><td> <code title="">tcy;</code> </td> <td> U+00442 </td> </tr><tr><td> <code title="">tdot;</code> </td> <td> U+020DB </td> </tr><tr><td> <code title="">telrec;</code> </td> <td> U+02315 </td> </tr><tr><td> <code title="">tfr;</code> </td> <td> U+1D531 </td> </tr><tr><td> <code title="">there4;</code> </td> <td> U+02234 </td> </tr><tr><td> <code title="">therefore;</code> </td> <td> U+02234 </td> </tr><tr><td> <code title="">theta;</code> </td> <td> U+003B8 </td> </tr><tr><td> <code title="">thetasym;</code> </td> <td> U+003D1 </td> </tr><tr><td> <code titl="">thetav;</code> </td> <td> U+003D1 </td> </tr><tr><td> <code title="">thickapprox;</code> </td> <td> U+02248 </td> </tr><tr><td> <code title="">thicksim;</code> </td> <td> U+0223C </td> </tr><tr><td> <code title="">thinsp;</code> </td> <td> U+02009 </td> </tr><tr><td> <code title="">thkap;</code> </td> <td> U+02248 </td> </tr><tr><td> <code title="">thksim;</code> </td> <td> U+0223C </td> </tr><tr><td> <code title="">thorn;</code> </td> <td> U+000FE </td> </tr><tr><td> <code title="">thorn</code> </td> <td> U+000FE </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">tilde;</code> </td> <td> U+002DC </td> </tr><tr><td> <code title="">times;</code> </td> <td> U+000D7 </td> </tr><tr><td> <code title="">times</code> </td> <td> U+000D7 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">timesb;</code> </td> <td> U+022A0 </td> </tr><tr><td> <code title="">timesbar;</code> </td> <td> U+02A31 </td> </tr>tr><td> <code title="">timesd;</code> </td> <td> U+02A30 </td> </tr><tr><td> <code title="">tint;</code> </td> <td> U+0222D </td> </tr><tr><td> <code title="">toea;</code> </td> <td> U+02928 </td> </tr><tr><td> <code title="">top;</code> </td> <td> U+022A4 </td> </tr><tr><td> <code title="">topbot;</code> </td> <td> U+02336 </td> </tr><tr><td> <code title="">topcir;</code> </td> <td> U+02AF1 </td> </tr><tr><td> <code title="">topf;</code> </td> <td> U+1D565 </td> </tr><tr><td> <code title="">topfork;</code> </td> <td> U+02ADA </td> </tr><tr><td> <code title="">tosa;</code> </td> <td> U+02929 </td> </tr><tr><td> <code title="">tprime;</code> </td> <td> U+02034 </td> </tr><tr><td> <code title="">trade;</code> </td> <td> U+02122 </td> </tr><tr><td> <code title="">triangle;</code> </td> <td> U+025B5 </td> </tr><tr><td> <code title="">triangledown;</code> </td> <td> U+025BF </td> </tr><tr><td> <code title="">triangleleft;</code> </td> <td> U+025C3 </td> </tr><tr><td> <code title="">trianglelefteq;</code> </td> <d> U+022B4 </td> </tr><tr><td> <code title="">triangleq;</code> </td> <td> U+0225C </td> </tr><tr><td> <code title="">triangleright;</code> </td> <td> U+025B9 </td> </tr><tr><td> <code title="">trianglerighteq;</code> </td> <td> U+022B5 </td> </tr><tr><td> <code title="">tridot;</code> </td> <td> U+025EC </td> </tr><tr><td> <code title="">trie;</code> </td> <td> U+0225C </td> </tr><tr><td> <code title="">triminus;</code> </td> <td> U+02A3A </td> </tr><tr><td> <code title="">triplus;</code> </td> <td> U+02A39 </td> </tr><tr><td> <code title="">trisb;</code> </td> <td> U+029CD </td> </tr><tr><td> <code title="">tritime;</code> </td> <td> U+02A3B </td> </tr><tr><td> <code title="">trpezium;</code> </td> <td> U+023E2 </td> </tr><tr><td> <code title="">tscr;</code> </td> <td> U+1D4C9 </td> </tr><tr><td> <code title="">tscy;</code> </td> <td> U+00446 </td> </tr><tr><td> <code title="">tshcy;</code> </td> <td> U+0045B </td> </tr><tr><td> <code title="">tstrok;</code> </td> <td> U+00167 </td> </tr><tr><td> <code tile="">twixt;</code> </td> <td> U+0226C </td> </tr><tr><td> <code title="">twoheadleftarrow;</code> </td> <td> U+0219E </td> </tr><tr><td> <code title="">twoheadrightarrow;</code> </td> <td> U+021A0 </td> </tr><tr><td> <code title="">uArr;</code> </td> <td> U+021D1 </td> </tr><tr><td> <code title="">uHar;</code> </td> <td> U+02963 </td> </tr><tr><td> <code title="">uacute;</code> </td> <td> U+000FA </td> </tr><tr><td> <code title="">uacute</code> </td> <td> U+000FA </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">uarr;</code> </td> <td> U+02191 </td> </tr><tr><td> <code title="">ubrcy;</code> </td> <td> U+0045E </td> </tr><tr><td> <code title="">ubreve;</code> </td> <td> U+0016D </td> </tr><tr><td> <code title="">ucirc;</code> </td> <td> U+000FB </td> </tr><tr><td> <code title="">ucirc</code> </td> <td> U+000FB </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">ucy;</code> </td> <td> U+00443 </td </tr><tr><td> <code title="">udarr;</code> </td> <td> U+021C5 </td> </tr><tr><td> <code title="">udblac;</code> </td> <td> U+00171 </td> </tr><tr><td> <code title="">udhar;</code> </td> <td> U+0296E </td> </tr><tr><td> <code title="">ufisht;</code> </td> <td> U+0297E </td> </tr><tr><td> <code title="">ufr;</code> </td> <td> U+1D532 </td> </tr><tr><td> <code title="">ugrave;</code> </td> <td> U+000F9 </td> </tr><tr><td> <code title="">ugrave</code> </td> <td> U+000F9 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">uharl;</code> </td> <td> U+021BF </td> </tr><tr><td> <code title="">uharr;</code> </td> <td> U+021BE </td> </tr><tr><td> <code title="">uhblk;</code> </td> <td> U+02580 </td> </tr><tr><td> <code title="">ulcorn;</code> </td> <td> U+0231C </td> </tr><tr><td> <code title="">ulcorner;</code> </td> <td> U+0231C </td> </tr><tr><td> <code title="">ulcrop;</code> </td> <td> U+0230F </td> </tr><tr><td> <code title="">ultri;</code> </td> <td> U+0258 </td> </tr><tr><td> <code title="">umacr;</code> </td> <td> U+0016B </td> </tr><tr><td> <code title="">uml;</code> </td> <td> U+000A8 </td> </tr><tr><td> <code title="">uml</code> </td> <td> U+000A8 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">uogon;</code> </td> <td> U+00173 </td> </tr><tr><td> <code title="">uopf;</code> </td> <td> U+1D566 </td> </tr><tr><td> <code title="">uparrow;</code> </td> <td> U+02191 </td> </tr><tr><td> <code title="">updownarrow;</code> </td> <td> U+02195 </td> </tr><tr><td> <code title="">upharpoonleft;</code> </td> <td> U+021BF </td> </tr><tr><td> <code title="">upharpoonright;</code> </td> <td> U+021BE </td> </tr><tr><td> <code title="">uplus;</code> </td> <td> U+0228E </td> </tr><tr><td> <code title="">upsi;</code> </td> <td> U+003C5 </td> </tr><tr><td> <code title="">upsih;</code> </td> <td> U+003D2 </td> </tr><tr><td> <code title="">upsilon;</code> </td> <td> U+003C5 </td> </tr><tr><td> <code title="">upuparrow;</code> </td> <td> U+021C8 </td> </tr><tr><td> <code title="">urcorn;</code> </td> <td> U+0231D </td> </tr><tr><td> <code title="">urcorner;</code> </td> <td> U+0231D </td> </tr><tr><td> <code title="">urcrop;</code> </td> <td> U+0230E </td> </tr><tr><td> <code title="">uring;</code> </td> <td> U+0016F </td> </tr><tr><td> <code title="">urtri;</code> </td> <td> U+025F9 </td> </tr><tr><td> <code title="">uscr;</code> </td> <td> U+1D4CA </td> </tr><tr><td> <code title="">utdot;</code> </td> <td> U+022F0 </td> </tr><tr><td> <code title="">utilde;</code> </td> <td> U+00169 </td> </tr><tr><td> <code title="">utri;</code> </td> <td> U+025B5 </td> </tr><tr><td> <code title="">utrif;</code> </td> <td> U+025B4 </td> </tr><tr><td> <code title="">uuarr;</code> </td> <td> U+021C8 </td> </tr><tr><td> <code title="">uuml;</code> </td> <td> U+000FC </td> </tr><tr><td> <code title="">uuml</code> </td> <td> U+000FC </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">uwngle;</code> </td> <td> U+029A7 </td> </tr><tr><td> <code title="">vArr;</code> </td> <td> U+021D5 </td> </tr><tr><td> <code title="">vBar;</code> </td> <td> U+02AE8 </td> </tr><tr><td> <code title="">vBarv;</code> </td> <td> U+02AE9 </td> </tr><tr><td> <code title="">vDash;</code> </td> <td> U+022A8 </td> </tr><tr><td> <code title="">vangrt;</code> </td> <td> U+0299C </td> </tr><tr><td> <code title="">varepsilon;</code> </td> <td> U+003B5 </td> </tr><tr><td> <code title="">varkappa;</code> </td> <td> U+003F0 </td> </tr><tr><td> <code title="">varnothing;</code> </td> <td> U+02205 </td> </tr><tr><td> <code title="">varphi;</code> </td> <td> U+003C6 </td> </tr><tr><td> <code title="">varpi;</code> </td> <td> U+003D6 </td> </tr><tr><td> <code title="">varpropto;</code> </td> <td> U+0221D </td> </tr><tr><td> <code title="">varr;</code> </td> <td> U+02195 </td> </tr><tr><td> <code title="">varrho;</code> </td> <td> U+003F1 </td> </tr><tr><td> <code title="">varsigma;</code> </td> <td> U+003C2 </td> </tr><tr><td <code title="">vartheta;</code> </td> <td> U+003D1 </td> </tr><tr><td> <code title="">vartriangleleft;</code> </td> <td> U+022B2 </td> </tr><tr><td> <code title="">vartriangleright;</code> </td> <td> U+022B3 </td> </tr><tr><td> <code title="">vcy;</code> </td> <td> U+00432 </td> </tr><tr><td> <code title="">vdash;</code> </td> <td> U+022A2 </td> </tr><tr><td> <code title="">vee;</code> </td> <td> U+02228 </td> </tr><tr><td> <code title="">veebar;</code> </td> <td> U+022BB </td> </tr><tr><td> <code title="">veeeq;</code> </td> <td> U+0225A </td> </tr><tr><td> <code title="">vellip;</code> </td> <td> U+022EE </td> </tr><tr><td> <code title="">verbar;</code> </td> <td> U+0007C </td> </tr><tr><td> <code title="">vert;</code> </td> <td> U+0007C </td> </tr><tr><td> <code title="">vfr;</code> </td> <td> U+1D533 </td> </tr><tr><td> <code title="">vltri;</code> </td> <td> U+022B2 </td> </tr><tr><td> <code title="">vopf;</code> </td> <td> U+1D567 </td> </tr><tr><td> <code title="">vprop;</code> </td> <td> U+0221D </d> </tr><tr><td> <code title="">vrtri;</code> </td> <td> U+022B3 </td> </tr><tr><td> <code title="">vscr;</code> </td> <td> U+1D4CB </td> </tr><tr><td> <code title="">vzigzag;</code> </td> <td> U+0299A </td> </tr><tr><td> <code title="">wcirc;</code> </td> <td> U+00175 </td> </tr><tr><td> <code title="">wedbar;</code> </td> <td> U+02A5F </td> </tr><tr><td> <code title="">wedge;</code> </td> <td> U+02227 </td> </tr><tr><td> <code title="">wedgeq;</code> </td> <td> U+02259 </td> </tr><tr><td> <code title="">weierp;</code> </td> <td> U+02118 </td> </tr><tr><td> <code title="">wfr;</code> </td> <td> U+1D534 </td> </tr><tr><td> <code title="">wopf;</code> </td> <td> U+1D568 </td> </tr><tr><td> <code title="">wp;</code> </td> <td> U+02118 </td> </tr><tr><td> <code title="">wr;</code> </td> <td> U+02240 </td> </tr><tr><td> <code title="">wreath;</code> </td> <td> U+02240 </td> </tr><tr><td> <code title="">wscr;</code> </td> <td> U+1D4CC </td> </tr><tr><td> <code title="">xcap;</code> </td> <td> U+022C2 </td> </tr>tr><td> <code title="">xcirc;</code> </td> <td> U+025EF </td> </tr><tr><td> <code title="">xcup;</code> </td> <td> U+022C3 </td> </tr><tr><td> <code title="">xdtri;</code> </td> <td> U+025BD </td> </tr><tr><td> <code title="">xfr;</code> </td> <td> U+1D535 </td> </tr><tr><td> <code title="">xhArr;</code> </td> <td> U+027FA </td> </tr><tr><td> <code title="">xharr;</code> </td> <td> U+027F7 </td> </tr><tr><td> <code title="">xi;</code> </td> <td> U+003BE </td> </tr><tr><td> <code title="">xlArr;</code> </td> <td> U+027F8 </td> </tr><tr><td> <code title="">xlarr;</code> </td> <td> U+027F5 </td> </tr><tr><td> <code title="">xmap;</code> </td> <td> U+027FC </td> </tr><tr><td> <code title="">xnis;</code> </td> <td> U+022FB </td> </tr><tr><td> <code title="">xodot;</code> </td> <td> U+02A00 </td> </tr><tr><td> <code title="">xopf;</code> </td> <td> U+1D569 </td> </tr><tr><td> <code title="">xoplus;</code> </td> <td> U+02A01 </td> </tr><tr><td> <code title="">xotime;</code> </td> <td> U+02A02 </td> </tr><tr><td> <ode title="">xrArr;</code> </td> <td> U+027F9 </td> </tr><tr><td> <code title="">xrarr;</code> </td> <td> U+027F6 </td> </tr><tr><td> <code title="">xscr;</code> </td> <td> U+1D4CD </td> </tr><tr><td> <code title="">xsqcup;</code> </td> <td> U+02A06 </td> </tr><tr><td> <code title="">xuplus;</code> </td> <td> U+02A04 </td> </tr><tr><td> <code title="">xutri;</code> </td> <td> U+025B3 </td> </tr><tr><td> <code title="">xvee;</code> </td> <td> U+022C1 </td> </tr><tr><td> <code title="">xwedge;</code> </td> <td> U+022C0 </td> </tr><tr><td> <code title="">yacute;</code> </td> <td> U+000FD </td> </tr><tr><td> <code title="">yacute</code> </td> <td> U+000FD </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">yacy;</code> </td> <td> U+0044F </td> </tr><tr><td> <code title="">ycirc;</code> </td> <td> U+00177 </td> </tr><tr><td> <code title="">ycy;</code> </td> <td> U+0044B </td> </tr><tr><td> <code title="">yen;</code> </td> <td> U+000A5 </td> </tr><tr><td> <coe title="">yen</code> </td> <td> U+000A5 </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">yfr;</code> </td> <td> U+1D536 </td> </tr><tr><td> <code title="">yicy;</code> </td> <td> U+00457 </td> </tr><tr><td> <code title="">yopf;</code> </td> <td> U+1D56A </td> </tr><tr><td> <code title="">yscr;</code> </td> <td> U+1D4CE </td> </tr><tr><td> <code title="">yucy;</code> </td> <td> U+0044E </td> </tr><tr><td> <code title="">yuml;</code> </td> <td> U+000FF </td> </tr><tr><td> <code title="">yuml</code> </td> <td> U+000FF </td> </tr><!-- (invalid entity with missing semicolon for legacy support only) --><tr><td> <code title="">zacute;</code> </td> <td> U+0017A </td> </tr><tr><td> <code title="">zcaron;</code> </td> <td> U+0017E </td> </tr><tr><td> <code title="">zcy;</code> </td> <td> U+00437 </td> </tr><tr><td> <code title="">zdot;</code> </td> <td> U+0017C </td> </tr><tr><td> <code title="">zeetrf;</code> </td> <td> U+02128 </td> </tr><tr><td> <code titl="">zeta;</code> </td> <td> U+003B6 </td> </tr><tr><td> <code title="">zfr;</code> </td> <td> U+1D537 </td> </tr><tr><td> <code title="">zhcy;</code> </td> <td> U+00436 </td> </tr><tr><td> <code title="">zigrarr;</code> </td> <td> U+021DD </td> </tr><tr><td> <code title="">zopf;</code> </td> <td> U+1D56B </td> </tr><tr><td> <code title="">zscr;</code> </td> <td> U+1D4CF </td> </tr><tr><td> <code title="">zwj;</code> </td> <td> U+0200D </td> </tr><tr><td> <code title="">zwnj;</code> </td> <td> U+0200C </td> </tr></tbody></table><!--
   If we want to add character references, Almorca suggests:
   > I would add &sub1; (character U+2081), &sub2;
   > (character U+2082) and &sub3; (character U+2083). They
   > would are the equivalent to &sup1;, &sup2;, and &sup3;.
   See also: http://www.w3.org/2003/entities/
  --></div></body></html>
--- NEW FILE: references.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>References &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="index.html" title="Index" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="acknowledgements.html" title="Acknowledgements" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="index.html">&#8592; Index</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="acknowledgements.html">Acknowledgements &#8594;</a>
  </div>

  <h2 class="no-num" id="references">References</h2><p class="XXX annotation"><b>Status: </b><i>First draft</i></p><!--REFS--><p>All references are normative unless marked "Non-normative".</p><dl><dt id="refsABNF">[ABNF]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/std/std68.txt">Augmented
   BNF for Syntax Specifications: ABNF</a></cite>, D. Crocker,
   P. Overell. IETF, January 2008.</dd>

   <dt id="refsARIA">[ARIA]</dt>
   <dd><cite><a href="http://www.w3.org/WAI/PF/aria/">Accessible Rich
   Internet Applications (WAI-ARIA)</a></cite>, J. Craig, M. Cooper, L. Pappas,
   R. Schwerdtfeger, L. Seeman. W3C, August 2009.</dd>

   <dt id="refsARIAIMPL">[ARIAIMPL]</dt>
   <dd><cite><a href="http://www.w3.org/WAI/PF/aria-implementation/">WAI-ARIA 1.0
   User Agent Implementation Guide</a></cite>, A. Snow-Weaver,
   M. Cooper. W3C, August 2009.</dd>

   <dt id="refsATOM">[ATOM]</dt>
   <dd>(Non-normative) <cite><a href="http://www.ietf.org/rfc/rfc4287.txt">The Atom Syndication
   Format</a></cite>, M. Nottingham, R. Sayre. IETF, December
   2005.</dd>

   <dt id="refsBCP47">[BCP47]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/bcp/bcp47.txt">Tags for
   Identifying Languages; Matching of Language Tags</a></cite>,
   A. Phillips, M. Davis. IETF, September 2006.</dd>

   <dt id="refsBECSS">[BECSS]</dt>
   <dd><cite><a href="http://www.w3.org/TR/becss/">Behavioral
   Extensions to CSS</a></cite>, I. Hickson. W3C, October 2007.</dd>

   <dt id="refsBEZIER">[BEZIER]</dt>
   <dd><cite>Courbes &#224; poles</cite>, P. de Casteljau. INPI, 1959.</dd>

   <dt id="refsBIDI">[BIDI]</dt>
   <dd><cite><a href="http://www.unicode.org/reports/tr9/">UAX #9: Unicode
   Bidirectional Algorithm</a></cite>, M. Davis. Unicode Consortium,
   March 2008.</dd>

   <dt id="refsBIG5">[BIG5]</dt>
   <dd>(Non-normative) <cite>Chinese Coded Character Set in Computer</cite>. Institute
   for Information Industry, March 1984.</dd>

   <dt id="refsBOCU1">[BOCU1]</dt>
   <dd>(Non-normative) <cite><a href="http://www.unicode.org/notes/tn6/">UTN #6: BOCU-1:
   MIME-Compatible Unicode Compression</a></cite>, M. Scherer,
   M. Davis. Unicode Consortium, February 2006.</dd>

   <dt id="refsCESU8">[CESU8]</dt>
   <dd>(Non-normative) <cite><a href="http://www.unicode.org/reports/tr26/">UTR #26: Compatibility
   Encoding Scheme For UTF-16: 8-BIT (CESU-8)</a></cite>,
   T. Phipps. Unicode Consortium, April 2002.</dd>

   <dt id="refsCHARMOD">[CHARMOD]</dt>
   <dd>(Non-normative) <cite><a href="http://www.w3.org/TR/charmod/">Character Model for the World
   Wide Web 1.0: Fundamentals</a></cite>, M. D&#252;rst, F. Yergeau,
   R. Ishida, M. Wolf, T. Texin. W3C, February 2005.</dd>

   <dt id="refsCOMPUTABLE">[COMPUTABLE]</dt>
   <dd>(Non-normative) <cite><a href="http://www.turingarchive.org/browse.php/B/12">On computable
   numbers, with an application to the
   Entscheidungsproblem</a></cite>, A. Turing. In <cite>Proceedings of
   the London Mathematical Society</cite>, series 2, volume 42, pages
   230-265. London Mathematical Society, 1937.  Retrieved on
   2007-03-03.</dd>

   <dt id="refsCOOKIES">[COOKIES]</dt>
   <!--
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2965.txt">HTTP State Management
   Mechanism</a></cite>, D. Kristol, L. Montulli. IETF, October 2000.</dd>
   -->
   <dd><cite><a href="http://tools.ietf.org/html/draft-abarth-cookie">HTTP State
   Management Mechanism</a></cite>, A. Barth. IETF, August 2009.</dd>

   <dt id="refsCORS">[CORS]</dt>
   <!--
   <dd><cite><a href="http://www.w3.org/TR/cors/">Cross-Origin
   Resource Sharing</a></cite>, A. van Kesteren. W3C, March 2009.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/2006/waf/access-control/">Cross-Origin
   Resource Sharing</a></cite>, A. van Kesteren.  W3C, June 2009.</dd>

   <dt id="refsCSS">[CSS]</dt>
   <dd><cite><a href="http://www.w3.org/TR/CSS/">Cascading Style Sheets Level 2
   Revision 1</a></cite>, B. Bos, T. &#199;elik, I.
   Hickson, H. Lie. W3C, April 2009.</dd>

   <dt id="refsCSSCOLOR">[CSSCOLOR]</dt>
   <!--
   <dd><cite><a href="http://www.w3.org/TR/css3-color/">CSS Color
   Module Level 3</a></cite>, T. &Ccedil;elik, C. Lilley, L.
   Baron. W3C, July 2008.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/csswg/css3-color/">CSS Color
   Module Level 3</a></cite>, T. &#199;elik, C. Lilley, L.
   Baron. W3C, August 2008.</dd>

   <dt id="refsCSSFONTS">[CSSFONTS]</dt>
   <dd><cite><a href="http://www.w3.org/TR/css3-fonts/">CSS Fonts
   Module Level 3</a></cite>, J. Daggett. W3C, June 2009.</dd>

   <dt id="refsCSSOM">[CSSOM]</dt>
   <dd><cite><a href="http://dev.w3.org/csswg/cssom/">Cascading Style Sheets
   Object Model (CSSOM)</a></cite>, A. van Kesteren. W3C, December 2007.</dd>

   <dt id="refsCSSUI">[CSSUI]</dt>
   <dd><cite><a href="http://www.w3.org/TR/css3-ui/">CSS3 Basic User
   Interface Module</a></cite>, T. &#199;elik. W3C, May 2004.</dd>

   <dt id="refsDOM2HTML">[DOM2HTML]</dt>
   <dd>(Non-normative) <cite><a href="http://www.w3.org/TR/DOM-Level-2-HTML/">Document Object Model
   (DOM) Level 2 HTML Specification</a></cite>, J. Stenback, P. Le
   Hegaret, A. Le Hors. W3C, January 2003.</dd>

   <dt id="refsDOMCORE">[DOMCORE]</dt>
   <dd><cite><a href="http://www.w3.org/TR/DOM-Level-3-Core/">Document
   Object Model (DOM) Level 3 Core Specification</a></cite>, A. Le
   Hors, P. Le Hegaret, L. Wood, G. Nicol, J. Robie, M. Champion,
   S. Byrnes. W3C, April 2004.</dd>
   <!--
   <dd><cite><a href="http://simon.html5.org/specs/web-dom-core">Web
   DOM Core</a></cite>, S. Pieters. W3C, June 2009.</dd>
   -->

   <dt id="refsDOMEVENTS">[DOMEVENTS]</dt>
   <!--
   <dd><cite><a
   href="http://www.w3.org/TR/DOM-Level-3-Events/">Document Object
   Model (DOM) Level 3 Events Specification</a></cite>,
   B. H&ouml;hrmann, P. Le Hegaret, T. Pixley. W3C, December
   2007.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html">Document
   Object Model (DOM) Level 3 Events Specification</a></cite>,
   D. Schepers. W3C, July 2009.</dd>

   <dt id="refsDOMRANGE">[DOMRANGE]</dt>
   <dd><cite><a href="http://www.w3.org/TR/DOM-Level-2-Traversal-Range/">Document
   Object Model (DOM) Level 2 Traversal and Range
   Specification</a></cite>, J.  Kesselman, J. Robie, M. Champion,
   P. Sharpe, V. Apparao, L.  Wood. W3C, November 2000.</dd>

   <dt id="refsDOMVIEWS">[DOMVIEWS]</dt>
   <dd><cite><a href="http://www.w3.org/TR/DOM-Level-2-Views/">Document Object
   Model (DOM) Level 2 Views Specification</a></cite>, A. Le Hors, L.
   Cable. W3C, November 2000.</dd>

   <dt id="refsE163">[E163]</dt>
   <dd><cite>Recommendation E.163 &#8212; Numbering Plan for The International
   Telephone Service</cite>, CCITT Blue Book, Fascicle II.2, pp. 128-134, November
   1988.</dd>

   <dt id="refsECMA262">[ECMA262]</dt>
   <dd><cite><a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">ECMAScript
   Language Specification</a></cite>. ECMA, December 1999.</dd>

   <dt id="refsECMA357">[ECMA357]</dt>
   <dd>(Non-normative) <cite><a href="http://www.ecma-international.org/publications/standards/Ecma-357.htm">ECMAScript
   for XML (E4X) Specification</a></cite>. ECMA, December 2005.</dd>

   <dt id="refsEUCKR">[EUCKR]</dt>
   <dd><cite>Hangul Unix Environment</cite>. Korea Industrial
   Standards Association, 1992. Ref. No. KS C 5861-1992.</dd>

   <dt id="refsFILEAPI">[FILEAPI]</dt>
   <dd><cite><a href="http://dev.w3.org/2006/webapi/FileUpload/publish/FileAPI.html">File
   API</a></cite>, A. Ranganathan. W3C, August 2009.</dd>

   <dt id="refsGBK">[GBK]</dt>
   <dd><cite>Chinese Internal Code Specification</cite>. Chinese IT
   Standardization Technical Committee, December 1995.</dd>
   <!-- http://www.iana.org/assignments/charset-reg/GBK -->

   <dt id="refsGRAPHICS">[GRAPHICS]</dt>
   <dd>(Non-normative) <cite>Computer Graphics: Principles and
   Practice in C</cite>, Second Edition, J. Foley, A. van Dam,
   S. Feiner, J. Hughes. Addison-Wesley, July 1995. ISBN
   0-201-84840-6.</dd>
   <!--
   If anyone has this book ("Computer Graphics: Principles and Practice in C"),
   please check page 34 or so and see if it makes any references to literature in
   the bibliographic section to define the "even-odd" rule for polygon filling and
   hit testing.
   -->

   <dt id="refsGREGORIAN">[GREGORIAN]</dt>
   <dd>(Non-normative) <cite>Inter Gravissimas</cite>, A. Lilius,
   C. Clavius. Gregory XIII Papal Bulls, February 1582.</dd>

   <dt id="refsHTML4">[HTML4]</dt>
   <dd>(Non-normative) <cite><a href="http://www.w3.org/TR/html4/">HTML 4.01
   Specification</a></cite>, D. Raggett, A. Le Hors, I. Jacobs.  W3C,
   December 1999.</dd>

   <dt id="refsHTMLDIFF">[HTMLDIFF]</dt>
   <!--
   <dd>(Non-normative) <cite><a
   href="http://www.w3.org/TR/html5-diff/">HTML 5 differences from
   HTML 4</a></cite>, A. van Kesteren. W3C, April 2009.</dd>
   -->
   <dd>(Non-normative) <cite><a href="http://dev.w3.org/html5/html4-differences/">HTML 5
   differences from HTML 4</a></cite>, A. van Kesteren.  W3C, August
   2009.</dd>

   <dt id="refsHTTP">[HTTP]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2616.txt">Hypertext
   Transfer Protocol &#8212; HTTP/1.1</a></cite>, R. Fielding, J. Gettys,
   J. Mogul, H.  Frystyk, L. Masinter, P. Leach, T. Berners-Lee. IETF,
   June 1999.</dd>

   <dt id="refsIANACHARSET">[IANACHARSET]</dt>
   <dd><cite><a href="http://www.iana.org/assignments/character-sets">Character
   Sets</a></cite>. IANA, May 2007.</dd>

   <dt id="refsIEEE754">[IEEE754]</dt>
   <dd><cite><a href="http://ieeexplore.ieee.org/servlet/opac?punumber=4610933">IEEE
   Standard for Floating-Point Arithmetic (IEEE 754)</a></cite>. IEEE,
   August 2008. ISBN 978-0-7381-5753-5.</dd>

   <dt id="refsISO8601">[ISO8601]</dt>
   <dd><cite><a href="http://isotc.iso.org/livelink/livelink/4021199/ISO_8601_2004_E.zip?func=doc.Fetch&amp;nodeid=4021199">ISO8601: Data elements and interchange formats &#8212; Information interchange &#8212; Representation of dates and times</a></cite>. ISO, December 2004.</dd>

   <dt id="refsISO885911">[ISO885911]</dt>
   <dd><cite><a href="http://anubis.dkuug.dk/jtc1/sc2/open/02n3333.pdf">ISO-8859-11:
   Information technology &#8212; 8-bit single-byte coded graphic
   character sets &#8212; Part 11: Latin/Thai
   alphabet</a></cite>. ISO, October 1999.</dd>

   <dt id="refsJSON">[JSON]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc4627.txt">The
   application/json Media Type for JavaScript Object Notation
   (JSON)</a></cite>, D. Crockford. IETF, July 2006.</dd>

   <dt id="refsJSURL">[JSURL]</dt>
   <dd><cite><a href="http://tools.ietf.org/html/draft-hoehrmann-javascript-scheme">The
   'javascript' resource identifier scheme</a></cite>,
   B. H&#246;hrmann. IETF, November 2006.</dd>

   <dt id="refsMAILTO">[MAILTO]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2368.txt">The mailto URL
   scheme</a></cite>, P. Hoffman, L. Masinter, J. Zawinski.
   IETF, July 1998.</dd>

   <dt id="refsMATHML">[MATHML]</dt>
   <dd><cite><a href="http://www.w3.org/TR/MathML/">Mathematical
   Markup Language (MathML)</a></cite>, D. Carlisle, P. Ion, R. Miner,
   N. Poppelier. W3C, October 2003.</dd>

   <dt id="refsMIMESNIFF">[MIMESNIFF]</dt>
   <dd><cite><a href="http://tools.ietf.org/html/draft-abarth-mime-sniff">Content-Type
   Processing Model</a></cite>, A. Barth, I. Hickson. IETF,
   May 2009.</dd>

   <dt id="refsMQ">[MQ]</dt>
   <!--
   <dd><cite><a href="http://www.w3.org/TR/css3-mediaqueries/">Media
   Queries</a></cite>, H. Lie, T.  &Ccedil;elik, D. Glazman, A. van
   Kesteren. W3C, April 2009.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/csswg/css3-mediaqueries/">Media
   Queries</a></cite>, H. Lie, T.  &#199;elik, D. Glazman, A. van
   Kesteren. W3C, July 2009.</dd>

   <dt id="refsNPAPI">[NPAPI]</dt>
   <dd>(Non-normative) <cite><a href="https://developer.mozilla.org/en/Gecko_Plugin_API_Reference">Gecko
   Plugin API Reference</a></cite>. Mozilla, November 2008.</dd>

   <dt id="refsOPENSEARCH">[OPENSEARCH]</dt>
   <dd><cite><a href="http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_HTML.2FXHTML">Autodiscovery
   in HTML/XHTML</a></cite>. In <cite>OpenSearch 1.1 Draft 4</cite>,
   Section 4.6.2. OpenSearch.org.</dd>

   <dt id="refsPINGBACK">[PINGBACK]</dt>
   <dd><cite><a href="http://www.hixie.ch/specs/pingback/pingback">Pingback
   1.0</a></cite>, S. Langridge, I. Hickson. January 2007.</dd>

   <dt id="refsPNG">[PNG]</dt>
   <dd><cite><a href="http://www.w3.org/TR/PNG/">Portable Network
   Graphics (PNG) Specification</a></cite>, D. Duce. W3C, November
   2003.</dd>

   <dt id="refsPORTERDUFF">[PORTERDUFF]</dt>
   <dd><cite><a href="http://keithp.com/~keithp/porterduff/p253-porter.pdf">Compositing
   Digital Images</a></cite>, T. Porter, T. Duff. In <cite>Computer
   graphics</cite>, volume 18, number 3, pp. 253-259. ACM Press, July
   1984.</dd>

   <dt id="refsPROGRESS">[PROGRESS]</dt>
   <!--
   <dd><cite><a href="http://www.w3.org/TR/progress-events/">Progress
   Events</a></cite>, C. McCathieNevile. W3C, May 2008.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/2006/webapi/progress/Progress.html">Progress
   Events</a></cite>, C. McCathieNevile. W3C, March 2009.</dd>

   <dt id="refsPSL">[PSL]</dt>
   <dd><cite><a href="http://publicsuffix.org/">Public Suffix List</a></cite>.
   Mozilla Foundation.</dd>

   <dt id="refsRFC1345">[RFC1345]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc1345.txt">Character Mnemonics
   and Character Sets</a></cite>, K. Simonsen. IETF, June 1992.</dd>

   <dt id="refsRFC1468">[RFC1468]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc1468.txt">Japanese Character
   Encoding for Internet Messages</a></cite>, J. Murai, M. Crispin, E. van der
   Poel. IETF, June 1993.</dd>

   <dt id="refsRFC1494">[RFC1494]</dt>
   <dd>(Non-normative) <cite><a href="http://www.ietf.org/rfc/rfc1494.txt">Equivalences between
   1988 X.400 and RFC-822 Message Bodies</a></cite>, H. Alvestrand,
   S. Thompson. IETF, August 1993.</dd>

   <dt id="refsRFC1554">[RFC1554]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc1554.txt">ISO-2022-JP-2:
   Multilingual Extension of ISO-2022-JP</a></cite>, M. Ohta, K. Handa. IETF,
   December 1993.</dd>

   <dt id="refsRFC1557">[RFC1557]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc1557.txt">Korean Character
   Encoding for Internet Messages</a></cite>, U. Choi, K. Chon, H. Park. IETF,
   December 1993.</dd>

   <dt id="refsRFC1922">[RFC1922]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc1922.txt">Chinese Character
   Encoding for Internet Messages</a></cite>, HF. Zhu, DY. Hu, ZG. Wang, TC. Kao,
   WCH. Chang, M. Crispin. IETF, March 1996.</dd>

   <dt id="refsRFC2045">[RFC2045]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2045.txt">Multipurpose Internet
   Mail Extensions (MIME) Part One: Format of Internet Message Bodies</a></cite>,
   N. Freed, N. Borenstein. IETF, November 1996.</dd>

   <dt id="refsRFC2046">[RFC2046]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2046.txt">Multipurpose Internet
   Mail Extensions (MIME) Part Two: Media Types</a></cite>, N. Freed,
   N.  Borenstein. IETF, November 1996.</dd> <!-- for text/plain and
   "Internet Media type"; not for definition of "valid MIME type". -->

   <dt id="refsRFC2109">[RFC2109]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2109.txt">HTTP State Management
   Mechanism</a></cite>, D. Kristol, L. Montulli. IETF, February 1997.</dd>

   <dt id="refsRFC2119">[RFC2119]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2119.txt">Key words for use in
   RFCs to Indicate Requirement Levels</a></cite>, S. Bradner. IETF, March
   1997.</dd>

   <dt id="refsRFC2237">[RFC2237]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2237.txt">Japanese Character
   Encoding for Internet Messages</a></cite>, K. Tamaru. IETF, November
   1997.</dd>

   <dt id="refsRFC2318">[RFC2318]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2318.txt">The
   text/css Media Type</a></cite>, H. Lie, B. Bos, C. Lilley. IETF,
   March 1998.</dd>

   <dt id="refsRFC2388">[RFC2388]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2388.txt">Returning Values from
   Forms: multipart/form-data</a></cite>, L. Masinter. IETF, August 1998.</dd>

   <dt id="refsRFC2426">[RFC2426]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2426.txt">vCard MIME Directory
   Profile</a></cite>, F. Dawson, T. Howes. IETF, September 1998.</dd>

   <dt id="refsRFC2445">[RFC2445]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2445.txt">Internet Calendaring
   and Scheduling Core Object Specification (iCalendar)</a></cite>, F. Dawson, D.
   Stenerson. IETF, November 1998.</dd>

   <dt id="refsRFC2483">[RFC2483]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2483.txt">URI Resolution
   Services Necessary for URN Resolution</a></cite>, M. Mealling, R. Daniel.
   IETF, January 1999.</dd>

   <dt id="refsRFC2646">[RFC2646]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2646.txt">The Text/Plain Format
   Parameter</a></cite>, R. Gellens. IETF, August 1999.</dd>

   <dt id="refsRFC2806">[RFC2806]</dt>
   <dd>(Non-normative) <cite><a href="http://www.ietf.org/rfc/rfc2806.txt">URLs for Telephone
   Calls</a></cite>, A. Vaha-Sipila. IETF, April 2000.</dd>

   <dt id="refsRFC3023">[RFC3023]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc3023.txt">XML Media
   Types</a></cite>, M. Murata, S. St. Laurent, D. Kohn. IETF, January 2001.</dd>

   <dt id="refsRFC3279">[RFC3279]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc3279.txt">Algorithms
   and Identifiers for the Internet X.509 Public Key Infrastructure
   Certificate and Certificate Revocation List (CRL)
   Profile</a></cite>, W. Polk, R. Housley, L. Bassham. IETF, April
   2002.</dd>

   <dt id="refsRFC3490">[RFC3490]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc3490.txt">Internationalizing
   Domain Names in Applications (IDNA)</a></cite>, P. Faltstrom, P. Hoffman, A.
   Costello. IETF, March 2003.</dd>

   <dt id="refsRFC3548">[RFC3548]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc3548.txt">The Base16, Base32,
   and Base64 Data Encodings</a></cite>, S. Josefsson. IETF, July
   2003.</dd>

   <dt id="refsRFC3986">[RFC3986]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc3986.txt">Uniform Resource
   Identifier (URI): Generic Syntax</a></cite>, T. Berners-Lee, R. Fielding, L.
   Masinter. IETF, January 2005.</dd>

   <dt id="refsRFC3987">[RFC3987]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc3987.txt">Internationalized
   Resource Identifiers (IRIs)</a></cite>, M. D&#252;rst, M. Suignard. IETF, January
   2005.</dd>

   <dt id="refsRFC4281">[RFC4281]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc4281.txt">The Codecs Parameter
   for "Bucket" Media Types</a></cite>, R. Gellens, D. Singer, P. Frojdh. IETF,
   November 2005.</dd>

   <dt id="refsRFC4329">[RFC4329]</dt>
   <dd>(Non-normative) <cite><a href="http://www.ietf.org/rfc/rfc4329.txt">Scripting Media
   Types</a></cite>, B. H&#246;hrmann. IETF, April 2006.</dd>

   <dt id="refsRFC4770">[RFC4770]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc4770.txt">vCard Extensions for
   Instant Messaging (IM)</a></cite>, C. Jennings, J. Reschke. IETF,
   January 2007.</dd>

   <dt id="refsRFC5280">[RFC5280]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc5280.txt">Internet
   X.509 Public Key Infrastructure Certificate and Certificate
   Revocation List (CRL) Profile</a></cite>, D. Cooper, S. Santesson,
   S. Farrell, S. Boeyen, R. Housley, W. Polk. IETF, May 2008.</dd>

   <dt id="refsRFC5322">[RFC5322]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc5322.txt">Internet Message
   Format</a></cite>, P. Resnick. IETF, October 2008.</dd>

   <dt id="refsSCSU">[SCSU]</dt>
   <dd>(Non-normative) <cite><a href="http://www.unicode.org/reports/tr6/">UTR #6: A Standard
   Compression Scheme For Unicode</a></cite>, M. Wolf, K. Whistler,
   C. Wicksteed, M. Davis, A. Freytag, M. Scherer. Unicode Consortium,
   May 2005.</dd>

   <dt id="refsSELECTORS">[SELECTORS]</dt>
   <dd><cite><a href="http://www.w3.org/TR/css3-selectors">Selectors</a></cite>,
   T. &#199;elik, E. Etemad, D.  Glazman, I. Hickson, P. Linss,
   J. Williams. W3C, March 2009.</dd>

   <dt id="refsSHIFTJIS">[SHIFTJIS]</dt>
   <dd><cite>JIS X0208: 7-bit and 8-bit double byte coded KANJI sets
   for information interchange</cite>. Japanese Standards Association,
   1997.</dd>

   <dt id="refsSRGB">[SRGB]</dt>
   <dd><cite><a href="http://webstore.iec.ch/webstore/webstore.nsf/artnum/025408!OpenDocument&amp;Click=">IEC
   61966-2-1: Multimedia systems and equipment &#8212; Colour measurement
   and management &#8212; Part 2-1: Colour management &#8212; Default RGB colour
   space &#8212; sRGB</a></cite>. IEC, October 1999.</dd>

   <dt id="refsSVG">[SVG]</dt>
   <dd><cite><a href="http://www.w3.org/TR/SVGTiny12/">Scalable Vector
   Graphics (SVG) Tiny 1.2 Specification</a></cite>, O. Andersson,
   R. Berjon, E. Dahltr&#246;m, A. Emmons, J. Ferraiolo, A. Grasso,
   V. Hardy, S. Hayman, D. Jackson, C. Lilley, C. McCormack,
   A. Neumann, C. Northway, A. Quint, N. Ramani, D. Schepers,
   A. Shellshear. W3C, December 2008.</dd>

   <dt id="refsTIS620">[TIS620]</dt>
   <dd><cite><a href="http://www.nectec.or.th/it-standards/std620/std620.htm">UDC
   681.3.04:003.62</a></cite>. Thai Industrial Standards Institute,
   Ministry of Industry, Royal Thai Government, 1990. ISBN
   974-606-153-4.</dd>

   <dt id="refsUNICODE">[UNICODE]</dt>
   <dd><cite><a href="http://www.unicode.org/versions/">The Unicode Standard</a></cite>. Unicode Consortium, 2007.</dd>

   <dt id="refsUNIVCHARDET">[UNIVCHARDET]</dt>
   <dd>(Non-normative) <cite><a href="http://www.mozilla.org/projects/intl/UniversalCharsetDetection.html">A
   composite approach to language/encoding
   detection</a></cite>. S. Li, K. Momoi. Netscape, September 2001. In
   <cite>Proceedings of the 19th International Unicode
   Conference</cite>.</dd>

   <dt id="refsUTF7">[UTF7]</dt>
   <dd><cite><a href="http://www.ietf.org/rfc/rfc2152.txt">UTF-7: A
   Mail-Safe Transformation Format of Unicode</a></cite>,
   D. Goldsmith, M. Davis. IETF, May 1997.</dd>

   <dt id="refsUTS22">[UTS22]</dt>
   <dd><cite><a href="http://www.unicode.org/reports/tr22/#Charset_Alias_Matching">Charset
   Alias Matching</a></cite>. In <cite><a href="http://www.unicode.org/reports/tr22/">UTS #22: Character
   Mapping Markup Language (CharMapML)</a></cite>, M. Davis,
   M. Scherer. Unicode Consortium, June 2006.</dd>

   <dt id="refsWEBADDRESSES">[WEBADDRESSES]</dt>
   <dd><cite><a href="http://www.w3.org/html/wg/href/draft">Web
   addresses in HTML 5</a></cite>, D. Connolly,
   C. Sperberg-McQueen. March 2009.</dd>

   <dt id="refsWEBIDL">[WEBIDL]</dt>
   <!--
   <dd><cite><a href="http://www.w3.org/TR/WebIDL/">Web
   IDL</a></cite>, C. McCormack. W3C, December 2008.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/2006/webapi/WebIDL/">Web
   IDL</a></cite>, C. McCormack. W3C, July 2009.</dd>

   <dt id="refsWEBLINK">[WEBLINK]</dt>
   <dd><cite><a href="http://tools.ietf.org/html/draft-nottingham-http-link-header">Web
   Linking</a></cite>, M. Nottingham. IETF, July 2009.</dd>

   <dt id="refsWHATWGWIKI">[WHATWGWIKI]</dt>
   <dd><cite><a href="http://wiki.whatwg.org/">The WHATWG Wiki</a></cite>. WHATWG.</dd>

   <dt id="refsWIN1252">[WIN1252]</dt>
   <dd><cite><a href="http://www.microsoft.com/globaldev/reference/sbcs/1252.htm">Windows 1252</a></cite>. Microsoft.</dd>

   <dt id="refsWIN1254">[WIN1254]</dt>
   <dd><cite><a href="http://www.microsoft.com/globaldev/reference/sbcs/1254.htm">Windows 1254</a></cite>. Microsoft.</dd>

   <dt id="refsWIN31J">[WIN31J]</dt>
   <dd><cite><a href="http://www.microsoft.com/globaldev/reference/dbcs/932.mspx">Windows Codepage 932</a></cite>. Microsoft.</dd>

   <dt id="refsWIN874">[WIN874]</dt>
   <dd><cite><a href="http://www.microsoft.com/globaldev/reference/sbcs/874.mspx">Windows 874</a></cite>. Microsoft.</dd>

   <dt id="refsWIN949">[WIN949]</dt>
   <dd><cite><a href="http://www.microsoft.com/globaldev/reference/dbcs/949.mspx">Windows Codepage 949</a></cite>. Microsoft.</dd>

   <dt id="refsX121">[X121]</dt>
   <dd><cite>Recommendation X.121 &#8212; International Numbering Plan for
   Public Data Networks</cite>, CCITT Blue Book, Fascicle VIII.3,
   pp. 317-332, November 1988.</dd>

   <dt id="refsX690">[X690]</dt>
   <dd><cite><a href="http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf">Recommendation
   X.690 &#8212; Information Technology &#8212; ASN.1 Encoding Rules &#8212;
   Specification of Basic Encoding Rules (BER), Canonical Encoding
   Rules (CER), and Distinguished Encoding Rules
   (DER)</a></cite>. International Telecommunication Union, July
   2002.</dd>

   <dt id="refsXHR">[XHR]</dt>
   <!--
   <dd><cite><a href="http://www.w3.org/TR/XMLHttpRequest/">The XMLHttpRequest
   Object</a></cite>, A. van Kesteren. W3C, April
   2008.</dd>
   -->
   <dd><cite><a href="http://dev.w3.org/2006/webapi/XMLHttpRequest/"><code>XMLHttpRequest</code></a></cite>,
   A. van Kesteren. W3C, June 2009.</dd>

   <dt id="refsXHTML10">[XHTML10]</dt>
   <dd><cite><a href="http://www.w3.org/TR/xhtml1/">XHTML(TM) 1.0 The
   Extensible HyperText Markup Language (Second Edition)</a></cite>. W3C,
   August 2002.</dd>

   <dt id="refsXHTML11">[XHTML11]</dt>
   <dd><cite><a href="http://www.w3.org/TR/xhtml11/">XHTML(TM) 1.1 -
   Module-based XHTML</a></cite>, M. Altheim, S. McCarron. W3C,
   May 2001.</dd>

   <dt id="refsXHTMLMOD">[XHTMLMOD]</dt>
   <dd><cite><a href="http://www.w3.org/TR/xhtml-modularization">Modularization of
   XHTML(TM)</a></cite>, M. Altheim, F. Boumphrey, S. Dooley, S.
   McCarron, S. Schnitzenbaumer, T. Wugofski. W3C, April 2001.</dd>

   <dt id="refsXML">[XML]</dt>
   <dd><cite><a href="http://www.w3.org/TR/xml/">Extensible Markup
   Language</a></cite>, T. Bray, J. Paoli, C. Sperberg-McQueen,
   E. Maler, F. Yergeau. W3C, November 2008.</dd>

   <dt id="refsXMLBASE">[XMLBASE]</dt>
   <dd><cite><a href="http://www.w3.org/TR/xmlbase/">XML
   Base</a></cite>, J. Marsh, R. Tobin. W3C, January 2009.</dd>

   <dt id="refsXMLNS">[XMLNS]</dt>
   <dd><cite><a href="http://www.w3.org/TR/xml-names/">Namespaces in
   XML</a></cite>, T. Bray, D. Hollander, A. Layman, R. Tobin. W3C,
   August 2006.</dd>

   <dt id="refsXPATH10">[XPATH10]</dt>
   <dd><cite><a href="http://www.w3.org/TR/1999/REC-xpath-19991116">XML Path
   Language (XPath) Version 1.0</a></cite>, J. Clark, S. DeRose. W3C,
   November 1999.</dd>

   <dt id="refsXSLT10">[XSLT10]</dt>
   <dd><cite><a href="http://www.w3.org/TR/1999/REC-xslt-19991116">XSL
   Transformations (XSLT) Version 1.0</a></cite>, J. Clark. W3C,
   November 1999.</dd>

  </dl></body></html>
--- NEW FILE: fragment-links.js ---
var fragment_links = { 'refsRFC1557':'references','attr-meter-high':'text-level-semantics','refsRFC1554':'references','dom-opener':'browsers','ports-and-garbage-collection':'comms','attr-label-for':'forms','htmlcommandelement':'interactive-elements','the-history-interface':'history','refsXHR':'references','attr-fs-method-delete-keyword':'forms','htmlfieldsetelement':'forms','the-root-element':'semantics','command-facet-type':'interactive-elements','md-vcard-type-adr-home':'microdata','valid-non-negative-integer':'infrastructure','attr-fs-enctype-urlencoded':'forms','md-vcard-label':'microdata','activation':'editing','the-br-element':'semantics','case-sensitivity-and-string-comparison':'infrastructure','command-redo':'editing','attr-meter-value':'text-level-semantics','dom-style-disabled':'semantics','attr-media-src':'video','concept-facet':'interactive-elements','hierarchy_request_err':'infrastructure','attr-script-async':'semantics','a-graphical-representation-of-some-of-the-surrounding-text':'text-level-smantics','math':'the-canvas-element','attr-br-clear':'obsolete','attr-iframe-longdesc':'obsolete','attr-input-usemap':'obsolete','posting-messages':'comms','attr-meta-http-equiv-content-language':'semantics','the-maxlength-attribute':'forms','predefined-vocabularies-0':'microdata','the-cite-element':'text-level-semantics','attr-button-type':'forms','attr-input-type-button-keyword':'forms','refsIEEE754':'references','attr-hr-align':'obsolete','custom-handlers':'browsers','non-conforming-features':'obsolete','attr-textarea-wrap-soft':'forms','md-vcard-tel-value':'microdata','concept-fe-disabled':'forms','dom-feature-strings':'infrastructure','root-element':'infrastructure','path':'the-canvas-element','attr-link-href':'semantics','spelling-and-grammar-checking':'editing','htmltitleelement':'semantics','canvaspattern':'the-canvas-element','syntax-escape-end':'syntax','character-references':'syntax','md-vevent-geo':'microdata','command-bold':'editing','attr-hyperlink-media':'history','dom-context-2d-textbaselinetop':'the-canvas-element','attr-object-align':'obsolete','syntax-start-tag':'syntax','md-vcard-type-adr-postal':'microdata','link-type-index':'history','refsHTTP':'references','strike':'obsolete','browsing-the-web':'history','encoding-microdata':'microdata','refsDOMRANGE':'references','dom-progress-position':'text-level-semantics','vcard':'microdata','attr-tr-bgcolor':'obsolete','the-img-element':'text-level-semantics','url-property-elements':'microdata','exceptions':'infrastructure','event-pause':'video','valid-browsing-context-name-or-keyword':'browsers','attr-meta-http-equiv-refresh':'semantics','the-dfn-element':'text-level-semantics','times':'infrastructure','attr-hr-noshade':'obsolete','attr-form-autocomplete-off-state':'forms','syntax-attributes':'syntax','canvas-context-2d':'the-canvas-element','command-facet-checkedstate':'interactive-elements','refsRFC3279':'references','attr-p-align':'obsolete','md-vevent-rrule':'microdata','attr-link-charset':'obsolete','edits-and-paragraphs':'text-level-semantis','typographic-conventions':'introduction','syntax-comments':'syntax','unknown-images':'text-level-semantics','attr-pre-width':'obsolete','the-details-element':'interactive-elements','refsRFC4770':'references','timers':'browsers','meta-description':'semantics','valid-simple-color':'infrastructure','quota_exceeded_err':'infrastructure','image-maps':'the-canvas-element','event-timeupdate':'video','refsDOMVIEWS':'references','media-element-attributes':'video','md-vcard':'microdata','htmlmenuelement':'interactive-elements','scripting-1':'semantics','scripting-0':'infrastructure','attr-input-alt':'forms','writing':'syntax','edits':'text-level-semantics','relaxing-the-same-origin-restriction':'browsers','history-0':'history','history-1':'introduction','weeks':'infrastructure','attr-textarea-cols':'forms','attr-fieldset-disabled':'forms','htmldetailselement':'interactive-elements','shadows':'the-canvas-element','md-vevent-resources':'microdata','domtokenlist-0':'infrastructure','attr-base-href':'semantics','commad-insertorderedlist':'editing','command-unlink':'editing','the-blockquote-element':'semantics','attr-object-type':'text-level-semantics','dom-media-have_enough_data':'video','attr-input-type-email-keyword':'forms','attr-textarea-readonly':'forms','typed-items':'microdata','serialize_err':'infrastructure','client-identification':'browsers','attr-input-type-color-keyword':'forms','concept-command':'interactive-elements','attr-ol-type':'obsolete','attr-fs-method-post-keyword':'forms','htmlhrelement':'semantics','standard-metadata-names':'semantics','command-insertparagraph':'editing','attr-meta-http-equiv-default-style':'semantics','message-channels':'comms','htmltextareaelement':'forms','default-media':'semantics','refsRFC3548':'references','no_modification_allowed_err':'infrastructure','refsWEBLINK':'references','refsRFC2388':'references','valid-e-mail-address-list':'forms','r1':'tabular-data','r2':'tabular-data','reflecting-content-attributes-in-dom-attributes':'infrastructure','md-vcard-fn':'microdata','resRFC3490':'references','sequential-focus-navigation':'editing','attr-fs-method-delete':'forms','rank':'semantics','network-states':'video','the-input-element':'forms','the-footer-element':'semantics','navigator':'browsers','link-type-help':'history','set-of-comma-separated-tokens':'infrastructure','refsBECSS':'references','link-type-author':'history','attr-media-controls':'video','htmlmetaelement':'semantics','attr-script-charset':'semantics','range-state':'forms','dom-location-hash':'history','dom-media-have_nothing':'video','attr-fe-autofocus':'forms','in-a-document':'infrastructure','dynamic-markup-insertion':'embedded-content-0','classes':'dom','the-multiple-attribute':'forms','syntax-ambiguous-ampersand':'syntax','top-level-browsing-context':'browsers','simple-color':'infrastructure','attr-button-value':'forms','navigatorabilities':'browsers','link-type-nofollow':'history','event-drag':'editing','inuse_attribute_err':'infrastructure','attr-object-declare':'obsolete','refsWIN31J':'references','the-titleelement':'dom','event-definitions':'comms','radio-button-state':'forms','acknowledgements':'acknowledgements','htmlmapelement':'the-canvas-element','dom':'dom','md-vcard-note':'microdata','the-mark-element':'text-level-semantics','concept-fs-target':'forms','not_found_err':'infrastructure','concept-datetime-local':'infrastructure','syntax':'syntax','colors':'infrastructure','outerhtml':'embedded-content-0','md-vcard-categories':'microdata','propertyvaluearray':'infrastructure','refsPROGRESS':'references','htmloptionscollection':'infrastructure','md-vcard-tel-type':'microdata','radionodelist':'infrastructure','domtokenlist':'infrastructure','event-volumechange':'video','htmlstyleelement':'semantics','attr-th-scope-colgroup':'tabular-data','colors-and-styles':'the-canvas-element','attr-fs-enctype':'forms','attr-textarea-wrap-hard':'forms','dom-title-text':'semantics','the-sub-and-sup-elements':'text-level-semantics','md-vcard-impp-value':'microdata','event-error':'video','refsFILEAPI':'references','concept-itm':'microdata','the-col-element':'tabular-data','the-placeholder-attribute':'forms','refsDOMCORE':'references','kinds-of-content':'dom','the-td-element':'tabular-data','accessing-other-browsing-contexts':'browsers','creator-browsing-context':'browsers','items:-the-item-attribute':'microdata','attr-tdth-headers':'tabular-data','attr-textarea-wrap-soft-state':'forms','active-document':'browsers','hidden-state':'forms','miscellaneous-elements':'interactive-elements','attr-li-value':'semantics','attr-command-type-keyword-checkbox':'interactive-elements','navigatoronline':'browsers','attr-button-type-button':'forms','concept-option-value':'forms','attr-head-profile':'obsolete','form-associated-element':'forms','md-vcard-email-type':'microdata','media-elements':'video','attr-tr-align':'obsolete','urls':'infrastructure','mediaerror':'video','concept-section':'semantics','attr-meter-optimum':'text-level-semantics','refsRFC3023':'references','attr-area-shape-rect':'the-canvas-element','innerhtml':'embedded-content-0,'attr-input-min':'forms','e-mail-state':'forms','gcop-lighter':'the-canvas-element','htmlheadelement':'semantics','attr-input-type-url-keyword':'forms','htmlembedelement':'text-level-semantics','md-vcard-type-tel-work':'microdata','character-encoding-declaration':'semantics','attr-keygen-challenge':'forms','date-state':'forms','link-type-tag':'history','attr-div-align':'obsolete','htmlpropertycollection-0':'infrastructure','category-reset':'forms','the-dragevent-and-datatransfer-interfaces':'editing','attr-input-type-text-keyword':'forms','the-source-element':'video','attr-th-scope-col':'tabular-data','browsing-context-name':'browsers','n':'tabular-data','attr-area-shape-circle':'the-canvas-element','element-definitions':'dom','predefined-property-name':'microdata','attr-fs-method-get':'forms','md-vcard-nickname':'microdata','command-delete':'editing','link-type-prev':'history','attr-fae-form':'forms','attr-form-accept-charset':'forms','event-appcache-cached':'offline','attr-fs-formmethod':'forms','xml-mim-type':'infrastructure','absolute-url':'infrastructure','htmlbrelement':'semantics','attr-img-hspace':'obsolete','pixel-manipulation':'the-canvas-element','a-link-or-button-containing-nothing-but-the-image':'text-level-semantics','events-fired-during-a-drag-and-drop-action':'editing','attr-fe-maxlength':'forms','htmlkeygenelement':'forms','md-vevent-status':'microdata','the-body-element':'dom','heading-content':'dom','attr-html-manifest':'semantics','htmliframeelement':'text-level-semantics','the-output-element':'forms','attr-input-type-image-keyword':'forms','event-abort':'video','attr-tr-charoff':'obsolete','attr-input-type-time-keyword':'forms','attr-ol-compact':'obsolete','md-vcard-type-tel-fax':'microdata','htmltimeelement':'text-level-semantics','the-address-element':'semantics','item-type':'microdata','validation_err':'infrastructure','category-label':'forms','collections':'infrastructure','week-state':'forms','unordered-set-of-unique-space-separated-tokens':'infrastructure','scriptingLanguages':'semntics','event-dragover':'editing','attr-hx-align':'obsolete','background':'introduction','htmlobjectelement':'text-level-semantics','scrolling-elements-into-view':'editing','network_err':'infrastructure','refsRFC4281':'references','security':'dom','refsRFC4329':'references','domstringmap-0':'infrastructure','paragraphs':'embedded-content-0','the-ins-element':'text-level-semantics','attr-embed-type':'text-level-semantics','manually-releasing-the-storage-mutex':'browsers','comments':'syntax','attr-command-type-state-checkbox':'interactive-elements','nested-browsing-context':'browsers','phrasing-content':'dom','dnd':'editing','event-handler-attributes-0':'browsers','attr-meter-min':'text-level-semantics','tag-clouds':'semantics','md-vcard-agent':'microdata','md-vcard-type-impp-personal':'microdata','md-vevent':'microdata','attr-command-disabled':'interactive-elements','controlling-the-input-stream':'embedded-content-0','event-dragenter':'editing','months':'infrastructure','md-vevent-summary':'microdata','annottions-for-assistive-technology-products':'embedded-content-0','attr-script-type':'semantics','creator-document':'browsers','refsMIMESNIFF':'references','htmltableelement':'tabular-data','refsATOM':'references','attr-param-type':'obsolete','attr-button-type-submit':'forms','remove-an-element-from-a-document':'infrastructure','the-readonly-attribute':'forms','htmlscriptelement':'semantics','unquoted':'syntax','distinguishing-site-wide-headings-from-page-headings':'semantics','refsBIG5':'references','isindex-0':'obsolete','refsRFC1468':'references','attr-area-nohref':'obsolete','index_size_err':'infrastructure','messageport':'comms','attr-fs-formenctype':'forms','introduction-5':'editing','cdata-sections':'syntax','command-facet-hiddenstate':'interactive-elements','syntax-escape':'syntax','md-vcard-title':'microdata','introduction-6':'comms','refsUTS22':'references','refsSVG':'references','refsECMA357':'references','introduction-2':'browsers','e-mail-type-strings':'microdata','md-vcard-adr-street-address':'micodata','dom-media-network_no_source':'video','command-insertunorderedlist':'editing','the-directionality':'dom','event-play':'video','no':'no','md-vcard-org':'microdata','attr-select-size':'forms','dom-mediaerror-media_err_aborted':'video','the-location-interface':'history','attr-q-cite':'text-level-semantics','willful-violation':'introduction','meta-generator':'semantics','attr-spellcheck':'editing','local-date-and-time-state':'forms','the-canvas-state':'the-canvas-element','attr-a-charset':'obsolete','concept-datetime':'infrastructure','html-namespace':'infrastructure','a-group-of-images-that-form-a-single-larger-picture-with-links':'text-level-semantics','navigating-nested-browsing-contexts-in-the-dom':'browsers','link-type-sidebar':'history','attr-meta-content':'semantics','the-accesskey-attribute':'editing','command-italic':'editing','focus':'editing','attr-caption-align':'obsolete','attr-textarea-placeholder':'forms','sequential-link-types':'history','md-vcard-adr-type':'microdata','local-dates-and-ties':'infrastructure','htmlselectelement':'forms','attr-mod-cite':'text-level-semantics','date-or-time-string':'infrastructure','attr-article-pubdate':'semantics','command-undo':'editing','dir':'obsolete','timeranges':'video','md-vcard-role':'microdata','attr-hyperlink-href':'history','input-type-attr-summary':'forms','obsolete':'obsolete','number-state':'forms','md-vcard-mailer':'microdata','secondary-browsing-contexts':'browsers','dom-media-have_current_data':'video','global-dates-and-times':'infrastructure','the-pre-element':'semantics','concept-submit-button':'forms','command-unselect':'editing','refsSHIFTJIS':'references','htmldocument':'dom','concept-button':'forms','refsWEBADDRESSES':'references','attr-param-value':'text-level-semantics','refsECMA262':'references','md-vcard-type-tel-video':'microdata','the-rt-element':'text-level-semantics','resource-metadata-management':'dom','link-type-license':'history','attr-command-type-keyword-radio':'interactive-elements','scripting':'browsers','sectioning-contnt':'dom','syntax-tag-name':'syntax','relationships-to-other-specifications':'introduction','md-vcard-tel':'microdata','set-of-space-separated-tokens':'infrastructure','browser-interface-elements':'browsers','canvaspixelarray':'the-canvas-element','the-id-attribute':'dom','style-default-media':'semantics','attr-hr-size':'obsolete','htmlparagraphelement':'semantics','not_supported_err':'infrastructure','charset512':'semantics','refsRFC2483':'references','messageevent':'comms','security_err':'infrastructure','event-dragleave':'editing','attr-object-standby':'obsolete','attr-mod-datetime':'text-level-semantics','the-noscript-element':'semantics','attr-input-type-range-keyword':'forms','live':'infrastructure','scope':'introduction','refsXHTML10':'references','the-pattern-attribute':'forms','attr-area-shape-keyword-circle':'the-canvas-element','attr-td-th-nowrap':'obsolete','attr-tabindex':'editing','refsPSL':'references','printing':'browsers','values':'microdata','attr-link-media':'semantics','htmlformcontrolscllection-0':'infrastructure','xml-compatible':'infrastructure','htmlbuttonelement':'forms','attr-fs-novalidate':'forms','event-seeked':'video','attr-input-type-reset-keyword':'forms','attr-optgroup-label':'forms','dom-context-2d-textbaseline-ideographic':'the-canvas-element','context-menus':'interactive-elements','the-param-element':'text-level-semantics','charset':'semantics','ping':'history','auxiliary-browsing-context':'browsers','xhtml':'the-xhtml-syntax','the-option-element':'forms','attr-script-src':'semantics','htmlareaelement':'the-canvas-element','refsCOOKIES':'references','refsPORTERDUFF':'references','attr-hyperlink-type':'history','telephone-type-strings':'microdata','outline':'semantics','attr-select-multiple':'forms','attr-iframe-sandbox':'text-level-semantics','address-type-strings':'microdata','dom-location-pathname':'history','the-span-element':'text-level-semantics','definitions':'forms','the-form-element':'forms','the-keygen-element':'forms','a-quick-introduction-to-html':'introduction','tmlquoteelement':'semantics','attr-input-autocomplete':'forms','link-type-up':'history','user-prompts':'browsers','md-vevent-duration':'microdata','forms':'forms','window':'browsers','listing':'obsolete','attr-th-scope':'tabular-data','event-seeking':'video','attr-object-data':'text-level-semantics','attr-table-align':'obsolete','category-listed':'forms','attr-hyperlink-usemap':'the-canvas-element','no_data_allowed_err':'infrastructure','embedded-content-1':'text-level-semantics','embedded-content-0':'embedded-content-0','the-dialog-element':'semantics','other-metadata-names':'semantics','the-required-attribute':'forms','authors-using-xhtml':'infrastructure','manifests':'offline','attr-command-radiogroup':'interactive-elements','canvas':'the-canvas-element','command-formatblock':'editing','md-vcard-type-tel-car':'microdata','attr-dl-compact':'obsolete','htmlhtmlelement':'semantics','md-vevent-sequence':'microdata','htmlunknownelement':'dom','md-vcard-logo':'microdata','sectioning-root':'semantics','the-sizeattribute':'forms','md-vcard-type-email-internet':'microdata','md-vcard-email-value':'microdata','htmllinkelement':'semantics','heading-content-0':'dom','language':'dom','text-html':'iana-considerations','copy-and-paste':'editing','valid-list-of-integers':'infrastructure','attr-hr-width':'obsolete','md-vcard-type-tel-voice':'microdata','the-style-attribute':'dom','the-div-element':'interactive-elements','the-document-s-current-address':'dom','blink':'obsolete','licensing-works':'microdata','elements-0':'syntax','md-vcard-tz':'microdata','doctype-legacy-string':'syntax','error-codes':'video','the-q-element':'text-level-semantics','event-ended':'video','refsRFC1345':'references','complex-shapes-paths':'the-canvas-element','syntax-charref':'syntax','attr-input-type-radio-keyword':'forms','the-figure-element':'text-level-semantics','semantics':'semantics','attr-tbody-valign':'obsolete','sections':'semantics','refsHTML4':'references','concept-time':'infrastructure','syntax-cdata':'syntax','htmltablecaptionelemen':'tabular-data','common-input-element-attributes':'forms','refsRFC2237':'references','dates-and-times':'infrastructure','refsRFC5280':'references','gcop-copy':'the-canvas-element','optional-tags':'syntax','attr-link-sizes':'history','refsGRAPHICS':'references','the-document-s-address':'dom','md-vcard-n-given-name':'microdata','canvasgradient':'the-canvas-element','attr-th-scope-row':'tabular-data','gcop-source-atop':'the-canvas-element','type_mismatch_err':'infrastructure','refsXHTMLMOD':'references','refsOPENSEARCH':'references','attr-form-autocomplete':'forms','md-vcard-type-email-x400':'microdata','property-names':'microdata','attr-fe-disabled':'forms','general-guidelines':'text-level-semantics','the-bdo-element':'text-level-semantics','the-article-element':'semantics','attr-td-th-abbr':'obsolete','apis-in-html-documents':'embedded-content-0','attr-input-checked':'forms','spacer':'obsolete','the-aside-element':'semantics','a-sample-manifest':'offline','dom-mediaerror-media_err_src_not_supported':'video''attr-contenteditable':'editing','htmlheadingelement':'semantics','xml':'infrastructure','syntax_err':'infrastructure','link-type-last':'history','refsWHATWGWIKI':'references','refsXHTML11':'references','the-min-and-max-attributes':'forms','category-submit':'forms','attr-area-shape-default':'the-canvas-element','xmp':'obsolete','attributes-common-to-form-controls':'forms','image-map':'the-canvas-element','attr-output-for':'forms','htmllegendelement':'interactive-elements','md-vcard-bday':'microdata','element-level-focus-apis':'editing','refsRFC3986':'references','refsRFC3987':'references','htmlspanelement':'text-level-semantics','textmetrics':'the-canvas-element','attr-iframe-align':'obsolete','md-vcard-n-honorific-prefix':'microdata','command-insertlinebreak':'editing','attr-map-name':'the-canvas-element','event-emptied':'video','md-work':'microdata','document.writeln':'embedded-content-0','command-subscript':'editing','attr-source-src':'video','the-var-element':'text-level-semantics','md-vcard-adr-post-ofice-box':'microdata','attr-script-language':'obsolete','the-undomanagerevent-interface-and-the-undo-and-redo-events':'editing','impp-type-strings':'microdata','refsGREGORIAN':'references','the-header-element':'semantics','event-summary':'offline','attr-option-selected':'forms','infrastructure':'infrastructure','form-submission':'forms','the-th-element':'tabular-data','svg-0':'the-canvas-element','dom-appcache-updateready':'offline','joint-session-history':'history','dates':'infrastructure','simple-shapes-rectangles':'the-canvas-element','s':'obsolete','attr-menu-compact':'obsolete','insert-an-element-into-a-document':'infrastructure','overview':'microdata','the-p-element':'semantics','event-loadeddata':'video','boolean-attribute':'infrastructure','interfaces-for-url-manipulation':'infrastructure','relationship-to-xhtml-1.x':'introduction','attr-iframe-name':'text-level-semantics','the-command':'interactive-elements','tabular-data':'tabular-data','real-numbers':'infrastructure','md-vcard-impp-type':'microdat','making-entire-documents-editable':'editing','documentSelection':'editing','htmlbaseelement':'semantics','attr-media-loop':'video','the-area-element':'the-canvas-element','link-type-bookmark':'history','concept-input-required':'forms','attr-keygen-keytype':'forms','prefix-match':'infrastructure','refsTIS620':'references','image-button-state':'forms','time-ranges':'video','plugin':'infrastructure','attr-area-shape-keyword-default':'the-canvas-element','refsWIN1254':'references','dom-document-open':'embedded-content-0','md-vevent-location':'microdata','htmlbodyelement':'semantics','boolean-attributes':'infrastructure','refsARIAIMPL':'references','md-vevent-last-modified':'microdata','domstring_size_err':'infrastructure','refsCORS':'references','the-dt-element':'semantics','events':'browsers','table-descriptions':'tabular-data','gcop-destination-in':'the-canvas-element','the-map-element':'the-canvas-element','dom-canvas-getcontext':'the-canvas-element','the-progress-element':'text-level-semantics','the-windo-object':'browsers','editing-apis':'editing','md-vcard-type-adr-work':'microdata','refsBCP47':'references','elements-in-the-html-namespace':'infrastructure','the-object-element':'text-level-semantics','attr-td-th-char':'obsolete','refsUTF7':'references','opener-browsing-context':'browsers','the-rp-element':'text-level-semantics','refsRFC2045':'references','refsRFC2046':'references','valid-e-mail-address':'forms','valid-reversed-dns-identifier':'infrastructure','attr-command-checked':'interactive-elements','refsSRGB':'references','the-li-element':'semantics','design-notes':'introduction','attr-hyperlink-hreflang':'history','element-restrictions':'syntax','refsNPAPI':'references','compliance-with-other-specifications':'introduction','the-thead-element':'tabular-data','md-vcard-org-organization-unit':'microdata','md-vcard-photo':'microdata','md-vevent-exdate':'microdata','event-loadedmetadata':'video','parse_err':'infrastructure','md-vcard-type-adr-parcel':'microdata','noembed':'obsolete','htmltablecolelement''tabular-data','browsing-context':'browsers','refsWIN874':'references','audience':'introduction','md-vcard-n-family-name':'microdata','md-vcard-n-honorific-suffix':'microdata','color-state':'forms','the-dl-element':'semantics','attributes-common-to-td-and-th-elements':'tabular-data','rel-sidebar-hyperlink':'history','x-that':'introduction','lists-of-integers':'infrastructure','external-resource-link':'semantics','refsGBK':'references','attr-base-target':'semantics','values-associated-with-denominator-punctuation-characters':'infrastructure','images':'the-canvas-element','refsJSON':'references','md-vcard-adr-postal-code':'microdata','attributes-common-to-ins-and-del-elements':'text-level-semantics','attr-td-th-align':'obsolete','attr-table-summary':'tabular-data','date-and-time-state':'forms','ordered-set-of-unique-space-separated-tokens':'infrastructure','attr-fs-method-post':'forms','attr-td-th-charoff':'obsolete','ratios':'infrastructure','dom-media-network_empty':'video','attr-object-code':'obsolete','do-time-time':'text-level-semantics','title-on-style':'semantics','browsing-context-nested-through':'browsers','dom-trees':'infrastructure','drawing-state':'the-canvas-element','dom-mediaerror-media_err_decode':'video','parent-browsing-context':'browsers','references':'references','refsWEBIDL':'references','invalid_access_err':'infrastructure','attr-optgroup-disabled':'forms','attr-command-type-state-command':'interactive-elements','attr-input-type-month-keyword':'forms','the-title-attribute':'dom','attr-source-type':'video','styling':'semantics','attr-input-autocomplete-on-state':'forms','inline-documentation-for-external-scripts':'semantics','the-code-element':'text-level-semantics','md-vcard-impp':'microdata','md-vevent-attach':'microdata','attr-img-align':'obsolete','attr-fs-formnovalidate':'forms','syntax-text':'syntax','the-legend-element':'interactive-elements','attr-command-title':'interactive-elements','mathml':'the-canvas-element','undomanagerevent':'editing','popstateevent':'history','attr-iframe-srolling':'obsolete','link-type-noreferrer':'history','checkbox-state':'forms','general':'microdata','attr-fs-method-put':'forms','the-time-element':'text-level-semantics','event-suspend':'video','refsX121':'references','obsolete-but-conforming-features':'obsolete','link-type-alternate':'history','refsXMLBASE':'references','an-image-not-intended-for-the-user':'text-level-semantics','dom-context-2d-textbaseline-alphabetic':'the-canvas-element','predefined-type':'microdata','dom-outerhtml':'embedded-content-0','htmlolistelement':'semantics','anonymous-command':'interactive-elements','fallback-content':'embedded-content-0','u':'obsolete','keywords-and-enumerated-attributes':'infrastructure','the-em-element':'text-level-semantics','attr-form-autocomplete-on-state':'forms','browsing-context-container':'browsers','refsRFC1922':'references','browsers':'browsers','alt':'text-level-semantics','tt':'obsolete','invalid_state_err':'infrastructure','tree-order':'infrastructure','concept-input-type-file-selected':'forms',refsRFC2109':'references','the-ruby-element':'text-level-semantics','command-inserthtml':'editing','application-cache-api':'offline','the-session-history-of-browsing-contexts':'history','md-vevent-exrule':'microdata','imagedata':'the-canvas-element','message-ports':'comms','concept-fs-method':'forms','attr-dim-width':'the-canvas-element','ascii-compatible-character-encoding':'infrastructure','form-submission-0':'forms','the-meter-element':'text-level-semantics','security-4':'comms','plugins':'infrastructure','refsMQ':'references','htmloptionscollection-0':'infrastructure','terminology-0':'infrastructure','attr-input-placeholder':'forms','flow-content-0':'dom','html-elements':'infrastructure','attr-meter-low':'text-level-semantics','attr-script-defer':'semantics','md-vevent-transp':'microdata','microdata':'microdata','attr-iframe-frameborder':'obsolete','md-vcard-org-organization-name':'microdata','states-of-the-type-attribute':'forms','url_mismatch_err':'infrastructure','md-vevent-contact':'microdata','attrcol-charoff':'obsolete','attr-tbody-align':'obsolete','declarative-3d-scenes':'no','concept-option-disabled':'forms','inter-element-whitespace':'dom','md-vcard-type-tel-isdn':'microdata','link-type-first':'history','the-h1-h2-h3-h4-h5-and-h6-elements':'semantics','attr-ul-type':'obsolete','namespace_err':'infrastructure','introduction-4':'editing','introduction-7':'comms','md-vevent-comment':'microdata','introduction-1':'microdata','introduction-3':'offline','the-button-element':'forms','the-ol-element':'semantics','void-elements':'syntax','attr-tdth-colspan':'tabular-data','refsABNF':'references','attr-col-span':'tabular-data','the-i-element':'text-level-semantics','the-embed-element':'text-level-semantics','file-upload-state':'forms','paragraph':'embedded-content-0','dom-innerhtml':'embedded-content-0','refsCSSUI':'references','history':'history','ascii-case-insensitive':'infrastructure','numbers':'infrastructure','default-view':'browsers','writing-cache-manifests':'offline','undomanager':'editing','attr-dth-rowspan':'tabular-data','menus':'interactive-elements','the-dd-element':'semantics','md-vevent-description':'microdata','enabling-and-disabling-form-controls':'forms','reflect':'infrastructure','md-vcard-adr-country-name':'microdata','htmlaudioelement':'video','refsXPATH10':'references','document-wide-default-language':'semantics','attr-style-type':'semantics','the-lang-and-xml:lang-attributes':'dom','htmlmodelement':'text-level-semantics','meta-application-name':'semantics','predefined-vocabularies':'microdata','dom-media-have_future_data':'video','dom-mediaerror-media_err_network':'video','examples-0':'microdata','examples-1':'microdata','beforeunloadevent':'history','edits-and-lists':'text-level-semantics','attr-input-type-date-keyword':'forms','the-2d-context':'the-canvas-element','valid-date-or-time-string-in-content':'infrastructure','refsCESU8':'references','md-vevent-rdate':'microdata','interactive-content-0':'embedded-content-0','the-nav-element':'semantics','seeking':'video','refsBOCU1':'refernces','reflecting-dom-attributes':'index','conformance-requirements':'infrastructure','valid-global-date-and-time-string':'infrastructure','concept-option-label':'forms','auxiliary-browsing-contexts':'browsers','refsRFC2445':'references','attr-textarea-required':'forms','htmldlistelement':'semantics','refsRFC2119':'references','attr-progress-value':'text-level-semantics','attr-tbody-char':'obsolete','md-vcard-type-impp-mobile':'microdata','attr-area-shape-keyword-poly':'the-canvas-element','attr-option-value':'forms','attr-input-type-password-keyword':'forms','attr-param-name':'text-level-semantics','the-select-element':'forms','attr-blockquote-cite':'semantics','attr-input-required':'forms','invalid_modification_err':'infrastructure','offline':'offline','the-microdata-model':'microdata','localization':'no','attr-img-src':'text-level-semantics','attr-lang':'dom','windowtimers':'browsers','gcop-source-out':'the-canvas-element','attr-option-label':'forms','reversed-dns-identifiers':'infrastructure','selection0':'editing','expiring-application-caches':'offline','md-vcard-sound':'microdata','preceded-or-followed':'dom','md-vcard-type-tel-bbs':'microdata','month-state':'forms','refsBEZIER':'references','limiting-user-input-length':'forms','attr-a-name':'obsolete','script':'semantics','introduction':'introduction','menus-intro':'interactive-elements','dom-context-2d-drawimage':'the-canvas-element','concept-input-value-default-range':'forms','button-state':'forms','list-state':'interactive-elements','attr-object-border':'obsolete','hyperlink-link':'semantics','dragevent':'editing','pragma-directives':'semantics','attr-body-text':'obsolete','a-purely-decorative-image-that-doesn-t-add-any-information':'text-level-semantics','transparent-content-models':'embedded-content-0','simple-dialogs':'browsers','attr-li-type':'obsolete','text-content':'dom','hierarchical-link-types':'history','attr-input-step':'forms','the-a-element':'text-level-semantics','refsUNIVCHARDET':'references','phrasing-content-0':'dom','htmloutputelemnt':'forms','command-api':'interactive-elements','htmlallcollection':'infrastructure','attr-tr-char':'obsolete','the-colgroup-element':'tabular-data','the-tr-element':'tabular-data','attr-td-th-bgcolor':'obsolete','syntax-doctype':'syntax','attr-body-alink':'obsolete','htmlcollection-0':'infrastructure','attr-area-shape-keyword-rect':'the-canvas-element','attr-fs-action':'forms','session-history':'history','md-vcard-adr-region':'microdata','dom-media-network_loaded':'video','attr-table-border':'obsolete','attr-input-type-week-keyword':'forms','maximum-allowed-value-length':'forms','htmlpreelement':'semantics','the-draggable-attribute':'editing','attr-fs-method':'forms','datatransfer':'editing','attr-meta-name':'semantics','windows':'browsers','command-facet-label':'interactive-elements','attr-area-shape':'the-canvas-element','attr-style-title':'semantics','refsIANACHARSET':'references','attributes-for-form-submission':'forms','htmlvideoelement':'video','attr-fs-method-put-keyword':'forms','html-vs-xhtml':'itroduction','the-xhtml-syntax':'the-xhtml-syntax','refsBIDI':'references','font':'obsolete','attr-option-disabled':'forms','attr-a-shape':'obsolete','attr-body-background':'obsolete','text-ping':'iana-considerations','interactive-elements':'interactive-elements','the-abbr-element':'text-level-semantics','attr-style-scoped':'semantics','domsettabletokenlist-0':'infrastructure','the-autocomplete-attribute':'forms','refsXMLNS':'references','iana-considerations':'iana-considerations','attr-input-type-tel-keyword':'forms','association-of-controls-and-forms':'forms','structure-of-this-specification':'introduction','attr-table-rules':'obsolete','the-label-element':'forms','canvasrenderingcontext2d':'the-canvas-element','furthest-ancestor-browsing-context':'browsers','dom-context-2d-textbaseline-middle':'the-canvas-element','autofocusing-a-form-control':'forms','attr-param-valuetype':'obsolete','attr-fs-enctype-formdata':'forms','user-interface':'video','attr-hyperlink-rel':'history','text-node':'infrastructure','cmmand-insertimage':'editing','attr-ol-start':'semantics','formatblock-candidate':'editing','state-object':'history','attr-input-type-submit-keyword':'forms','predefined-global-property-name':'microdata','concept-item-corresponding':'microdata','embedded-content':'embedded-content-0','the-datalist-element':'forms','event-ratechange':'video','elements-in-the-dom':'dom','attr-link-title':'semantics','attr-menu-label':'interactive-elements','htmltablerowelement':'tabular-data','hyperlink':'history','attr-body-vlink':'obsolete','refsCSSFONTS':'references','context':'the-canvas-element','command-selectall':'editing','document.write':'embedded-content-0','htmlsourceelement':'video','attr-html-version':'obsolete','domsettabletokenlist':'infrastructure','attr-input-pattern':'forms','transformations':'the-canvas-element','md-vevent-url':'microdata','using-the-microdata-dom-api':'microdata','insertadjacenthtml':'embedded-content-0','tag-cloud':'semantics','attr-th-scope-rowgroup':'tabular-data','dom-appcache-downloadig':'offline','attr-object-codebase':'obsolete','refsSELECTORS':'references','md-vevent-dtstart':'microdata','htmlprogresselement':'text-level-semantics','attr-input-type-datetime-keyword':'forms','propertynodelist':'infrastructure','attr-textarea-wrap-hard-state':'forms','the-table-element':'tabular-data','event-appcache-progress':'offline','dom-tree-accessors':'dom','attr-table-frame':'obsolete','attr-input-type-datetime-local-keyword':'forms','attr-table-width':'obsolete','md-vcard-type-adr-intl':'microdata','interpolation':'the-canvas-element','concept-fs-enctype':'forms','dom-time-timezone':'text-level-semantics','ancestor-browsing-context':'browsers','attr-fs-formtarget':'forms','md-vevent-class':'microdata','the-del-element':'text-level-semantics','a-short-phrase-or-label-with-an-alternative-graphical-representation:-icons-logos':'text-level-semantics','attr-table-cellspacing':'obsolete','concept-datetime-digit':'infrastructure','attr-object-name':'text-level-semantics','attr-area-coords':'the-canvas-lement','embedding-custom-non-visible-data':'dom','gcop-destination-over':'the-canvas-element','wrong_document_err':'infrastructure','dom-location-protocol':'history','syntax-tags':'syntax','gcop-xor':'the-canvas-element','compatibility-caseless':'infrastructure','newlines':'syntax','attr-xml-lang':'dom','associating-names-with-items':'microdata','attr-input-maxlength':'forms','relationship-to-html-4.01-and-dom2-html':'introduction','the-ul-element':'semantics','metadata-content-0':'dom','location':'history','refsE163':'references','attr-form-name':'forms','big':'obsolete','valid-vevent-duration-string':'microdata','attr-command-icon':'interactive-elements','dom-appcache-idle':'offline','the-caption-element':'tabular-data','case-sensitive':'infrastructure','facets':'interactive-elements','ignore':'infrastructure','valid-local-date-and-time-string':'infrastructure','dom-media-network_idle':'video','terminology':'infrastructure','the-title-element-0':'semantics','attr-source-media':'video','valid-floating-poit-number':'infrastructure','link-type-feed':'history','examples':'microdata','naming-form-controls':'forms','attr-input-type-keywords':'forms','refsCSSCOLOR':'references','names:-the-itemprop-attribute':'microdata','attr-textarea-rows':'forms','the-list-attribute':'forms','dom-media-have_metadata':'video','interactive-content':'embedded-content-0','dom-location-search':'history','attr-iframe-src':'text-level-semantics','refsRFC5322':'references','valid-browsing-context-name':'browsers','command-facet-accesskey':'interactive-elements','attr-input-type-number-keyword':'forms','attr-fs-method-get-keyword':'forms','location-of-the-media-resource':'video','refsRFC2646':'references','attr-link-sizes-any':'history','refsRFC2318':'references','telephone-state':'forms','a-phrase-or-paragraph-with-an-alternative-graphical-representation:-charts-diagrams-graphs-maps-illustrations':'text-level-semantics','event-load':'video','refsCHARMOD':'references','refsX690':'references','md-vcard-type-tel-pager':'microdata','dom-nvigator-registerprotocolhandler':'browsers','document-metadata':'semantics','refsCOMPUTABLE':'references','htmlulistelement':'semantics','attr-input-align':'obsolete','the-iframe-element':'text-level-semantics','concept-property-value':'microdata','refsMAILTO':'references','current-entry-of-the-joint-session-history':'history','htmlparamelement':'text-level-semantics','md-vcard-adr-locality':'microdata','attr-hyperlink-target':'history','activating-state-object-entries':'history','reset-button-state':'forms','syntax-elements':'syntax','character-encodings':'infrastructure','attr-img-ismap':'text-level-semantics','gcop-destination-atop':'the-canvas-element','text-that-has-been-rendered-to-a-graphic-for-typographical-effect':'text-level-semantics','refsCSSOM':'references','md-vcard-type-tel-msg':'microdata','refsISO885911':'references','url-decomposition-attributes':'infrastructure','attr-command-type':'interactive-elements','attr-col-char':'obsolete','md-vcard-class':'microdata','md-vevent-categories':'microata','attr-th-scope-auto':'tabular-data','attr-input-list':'forms','attr-colgroup-span':'tabular-data','attr-object-archive':'obsolete','event-appcache-noupdate':'offline','elements':'dom','mediaevents':'video','md-vcard-n':'microdata','line-styles':'the-canvas-element','text-state-and-search-state':'forms','non-negative-integers':'infrastructure','valid-month-string':'infrastructure','syntax-attribute-name':'syntax','htmloptgroupelement':'forms','documents-in-the-dom':'dom','svg':'the-canvas-element','attr-button-type-reset':'forms','attr-input-readonly':'forms','attr-input-max':'forms','event-progress':'video','md-vcard-type-impp-business':'microdata','headings-and-sections':'semantics','event-dragend':'editing','md-vcard-adr-extended-address':'microdata','concept-week':'infrastructure','md-vcard-url':'microdata','tool-bar-state':'interactive-elements','resources':'infrastructure','syntax-newlines':'syntax','media-resource':'video','syntax-references':'infrastructure','attr-iframe-seamless':'text-level-seantics','valid-week-string':'infrastructure','valid-url':'infrastructure','attr-data':'dom','gcop-source-over':'the-canvas-element','contenteditable':'editing','event-appcache-updateready':'offline','htmltableheadercellelement':'tabular-data','vevent':'microdata','compositing':'the-canvas-element','unloading-documents':'history','dimension-attributes':'the-canvas-element','attr-embed-src':'text-level-semantics','video':'video','attr-img-name':'obsolete','index':'index','attr-media-autobuffer':'video','the-hgroup-element':'semantics','md-vevent-created':'microdata','attr-ol-reversed':'semantics','valid-mime-type':'infrastructure','acronym':'obsolete','attr-meter-max':'text-level-semantics','valid-time-string':'infrastructure','attr-contextmenu':'interactive-elements','context-menu-state':'interactive-elements','the-strong-element':'text-level-semantics','attr-fs-target':'forms','the-head-element':'dom','a-key-part-of-the-content':'text-level-semantics','refsSCSU':'references','htmldivelement':'interactive-elments','media-element':'video','the-constraint-validation-api':'forms','event-durationchange':'video','attr-td-th-axis':'obsolete','link-type-pingback':'history','the-hr-element':'semantics','microdata-dom-api':'microdata','link-type-next':'history','event-canplaythrough':'video','child-browsing-context':'browsers','attr-fs-formaction':'forms','navigating-auxiliary-browsing-contexts-in-the-dom':'browsers','syntax-attribute-value':'syntax','attr-td-th-valign':'obsolete','htmlmeterelement':'text-level-semantics','noframes':'obsolete','gcop-source-in':'the-canvas-element','refsCSS':'references','the-step-attribute':'forms','concept-meta-extensions':'semantics','text-field-selection':'editing','signed-integers':'infrastructure','htmllielement':'semantics','attr-img-vspace':'obsolete','windowmodal':'browsers','md-work-title':'microdata','number-of-days-in-month-month-of-year-year':'infrastructure','hyperlink-elements':'history','browser-state':'offline','the-canvas-element':'the-canvas-element','attr-meta-http-euiv-content-type':'semantics','attr-style-media':'semantics','refsRFC2806':'references','links':'history','refsDOMEVENTS':'references','event-appcache-checking':'offline','refsARIA':'references','attr-meta-http-equiv':'semantics','htmldatalistelement':'forms','attr-td-th-width':'obsolete','dom-appcache-obsolete':'offline','the-style-element':'semantics','refsISO8601':'references','refsRFC1494':'references','md-vcard-type-tel-modem':'microdata','event-appcache-obsolete':'offline','common-grouping-idioms':'semantics','attr-img-alt':'text-level-semantics','md-work-author':'microdata','dom-appcache-checking':'offline','refsXML':'references','selectors':'the-xhtml-syntax','attr-iframe-marginwidth':'obsolete','the-link-element':'semantics','command-superscript':'editing','applicationcache':'offline','comms':'comms','concept-fs-novalidate':'forms','attr-tbody-charoff':'obsolete','attr-input-type-hidden-keyword':'forms','htmlinputelement':'forms','htmloptionelement':'forms','attr-input-type-file-keyword':'forms','te-base-element':'semantics','the-basic-syntax':'microdata','md-vcard-type-tel-cell':'microdata','attr-input-type-checkbox-keyword':'forms','transparent':'embedded-content-0','event-handler-content-attributes':'browsers','linkTypes':'history','text-0':'syntax','the-html-element':'dom','attr-col-valign':'obsolete','refsMATHML':'references','concept-fs-action':'forms','attr-progress-max':'text-level-semantics','link-type-archives':'history','offsets-into-the-media-resource':'video','a-type-that-the-user-agent-knows-it-cannot-render':'video','md-vcard-type-tel-pref':'microdata','dom-time-date':'text-level-semantics','constraints':'forms','attr-input-multiple':'forms','attr-subject':'microdata','meta':'semantics','attr-link-type':'semantics','attr-td-th-height':'obsolete','refsPNG':'references','dom-link-disabled':'semantics','the-hidden-attribute':'editing','attr-a-rev':'obsolete','attr-input-accept':'forms','htmltablesectionelement':'tabular-data','secondary-browsing-context':'browsers','undo':'editing','link-ype-external':'history','command-facet-disabledstate':'interactive-elements','usage-summary':'text-level-semantics','top-level-microdata-items':'microdata','system-state-and-capabilities':'browsers','attr-details-open':'interactive-elements','content-models':'dom','htmltabledatacellelement':'tabular-data','footnotes':'text-level-semantics','other-link-types':'history','attr-abbr-title':'text-level-semantics','event-waiting':'video','event-dragstart':'editing','a-group-of-images-that-form-a-single-larger-picture-with-no-links':'text-level-semantics','apis-for-creating-and-navigating-browsing-contexts-by-name':'browsers','attr-area-alt':'the-canvas-element','represented-by-the-collection':'infrastructure','the-xml:base-attribute-xml-only':'dom','channel-messaging':'comms','sectioning-content-0':'dom','htmlelement':'dom','event-stalled':'video','attr-img-longdesc':'obsolete','enumerated-attribute':'infrastructure','attr-input-size':'forms','attr-dim-height':'the-canvas-element','space-separated-tokens':'infrasructure','htmlallcollection-0':'infrastructure','refsPINGBACK':'references','md-vcard-sort-string':'microdata','xml-documents':'dom','attr-menu-type':'interactive-elements','md-vcard-rev':'microdata','attr-input-value':'forms','semantics-0':'dom','htmlmediaelement':'video','plaintext':'obsolete','metadata-content':'dom','attr-object-vspace':'obsolete','documents':'dom','invalid_character_err':'infrastructure','htmlimageelement':'text-level-semantics','attr-object-hspace':'obsolete','refsXSLT10':'references','attr-meta-charset':'semantics','command-inserttext':'editing','attr-command-type-state-radio':'interactive-elements','crossDocumentMessages':'comms','the-selection':'editing','htmlcanvaselement':'the-canvas-element','md-vcard-type-impp-pref':'microdata','refsJSURL':'references','url':'infrastructure','valid-date-or-time-string':'infrastructure','the-ready-states':'video','selection':'editing','text':'the-canvas-element','attr-col-align':'obsolete','attr-time-datetime':'text-level-semantics','the-body-elment-0':'semantics','html-documents':'dom','fully-active':'browsers','attr-dfn-title':'text-level-semantics','the-html-element-0':'semantics','dom-location-port':'history','attr-body-bgcolor':'obsolete','messagechannel':'comms','comma-separated-tokens':'infrastructure','ready-for-editing-host-commands':'editing','dialogs-implemented-using-separate-documents':'browsers','md-vcard-type-email-pref':'microdata','refsEUCKR':'references','event-playing':'video','gcop-destination-out':'the-canvas-element','password-state':'forms','the-kbd-element':'text-level-semantics','htmlpropertycollection':'infrastructure','view':'browsers','selecting-names-when-defining-vocabularies':'microdata','the-head-element-0':'semantics','x-this':'introduction','concept-month':'infrastructure','attr-video-poster':'video','link-type-prefetch':'history','syntax-escape-start':'syntax','the-tfoot-element':'tabular-data','basefont':'obsolete','collections-0':'infrastructure','attr-table-bgcolor':'obsolete','md-vcard-geo':'microdata','commad-facet-id':'interactive-elements','commands':'interactive-elements','flow-content':'dom','command-forwarddelete':'editing','common-dom-interfaces':'infrastructure','an-image-in-an-e-mail-or-private-document-intended-for-a-specific-person-who-is-known-to-be-able-to-view-images':'text-level-semantics','attr-meta-scheme':'obsolete','attributes':'syntax','htmlarticleelement':'semantics','valid-date-string':'infrastructure','attr-canvas-width':'the-canvas-element','concept-date':'infrastructure','abort_err':'infrastructure','form-owner':'forms','dom-appcache-uncached':'offline','attr-input-src':'forms','attr-col-width':'obsolete','attr-tr-valign':'obsolete','attr-input-type':'forms','playing-the-media-resource':'video','defining-term':'text-level-semantics','the-textarea-element':'forms','the-link-is-an-alternative-stylesheet':'history','md-vcard-type-adr-dom':'microdata','md-vcard-type-tel-home':'microdata','valid-integer':'infrastructure','attr-object-codetype':'obsolete','dom-media-network_loading':'video','efsDOM2HTML':'references','nested-browsing-contexts':'browsers','event-canplay':'video','command-createlink':'editing','attr-media-autoplay':'video','md-vcard-type-adr-pref':'microdata','the-tbody-element':'tabular-data','event-loadend':'video','link-type-search':'history','named-access-on-the-window-object':'browsers','other-pragma-directives':'semantics','htmlformcontrolscollection':'infrastructure','md-work-license':'microdata','valid-denominator-punctuation-character':'infrastructure','center':'obsolete','refsWIN1252':'references','md-vcard-n-additional-name':'microdata','textFieldSelection':'editing','audio':'video','md-vcard-type-impp-home':'microdata','htmlcollection':'infrastructure','global-attributes':'dom','application-microdata-json':'iana-considerations','the-section-element':'semantics','link-type-stylesheet':'history','week-number-of-the-last-day':'infrastructure','attr-input-autocomplete-off-state':'forms','attr-fs-enctype-text':'forms','md-vcard-email':'microdata','syntax-end-tag':'syntax',md-about':'microdata','attr-link-hreflang':'semantics','outlines':'semantics','attr-area-shape-poly':'the-canvas-element','the-fieldset-element':'forms','radio-button-group':'forms','attr-a-coords':'obsolete','attr-link-target':'obsolete','dom-context-2d-textbaseline-hanging':'the-canvas-element','dom-navigator-registercontenthandler':'browsers','attr-command-label':'interactive-elements','how-to-read-this-specification':'introduction','attr-link-rel':'semantics','htmlformelement':'forms','attr-body-link':'obsolete','attr-link-rev':'obsolete','attr-iframe-marginheight':'obsolete','htmlanchorelement':'text-level-semantics','attr-textarea-wrap':'forms','event-loadstart':'video','md-vevent-dtend':'microdata','the-dir-attribute':'dom','the-doctype':'syntax','dom-location-hostname':'history','common-microsyntaxes':'infrastructure','refsHTMLDIFF':'references','attr-img-border':'obsolete','md-vcard-label-value':'microdata','event-appcache-error':'offline','the-small-element':'text-level-semantics','event-message':comms','custom-data-attribute':'dom','session-history-entry':'history','refsWIN949':'references','common-input-element-apis':'forms','messageportarray':'comms','attr-table-cellpadding':'obsolete','command-facet-icon':'interactive-elements','attr-ul-compact':'obsolete','navigatorid':'browsers','url-state':'forms','mime-type':'infrastructure','valid-hash-name-reference':'infrastructure','attr-command-type-keyword-command':'interactive-elements','md-vcard-label-type':'microdata','command-facet-hint':'interactive-elements','command-facet-action':'interactive-elements','md-vcard-type-impp-work':'microdata','loading-the-media-resource':'video','time-state':'forms','application-xhtml-xml':'iana-considerations','md-vcard-adr':'microdata','document-level-focus-apis':'editing','the-b-element':'text-level-semantics','vaguer-moments-in-time':'infrastructure','home-subtree':'infrastructure','media-data':'video','attr-fe-name':'forms','event-drop':'editing','text-level-semantics':'text-level-semantics','barprop':'browser','serializability-of-script-execution':'introduction','attr-input-type-search-keyword':'forms','editing':'editing','concept-http-equiv-extensions':'semantics','md-vcard-type-tel-pcs':'microdata','dom-location-host':'history','the-undomanager-interface':'editing','attr-legend-align':'obsolete','end-tags':'syntax','mime-types':'video','valid-lowercase-simple-color':'infrastructure','named-character-references':'named-character-references','dom-context-2d-textbaseline-bottom':'the-canvas-element','cdata-rcdata-restrictions':'syntax','rel-icon':'history','text-cache-manifest':'iana-considerations','htmltablecellelement':'tabular-data','the-samp-element':'text-level-semantics','grouping-content':'semantics','authors-using-html':'infrastructure','syntax-tag-omission':'syntax','event-appcache-downloading':'offline','the-optgroup-element':'forms','attr-canvas-height':'the-canvas-element','current-entry':'history','refsUNICODE':'references','refsRFC2426':'references','htmllabelelement':'forms','attr-input-autocomplte-default-state':'forms','start-tags':'syntax','content-categories':'dom','browsing-context-names':'browsers','submit-button-state':'forms','concept-select-option-list':'forms' };

var fragid = window.location.hash.substr(1);
if (!fragid) { /* handle section-foo.html links from the old multipage version, and broken foo.html from the new version */
    var m = window.location.pathname.match(/\/(?:section-)?([\w\-]+)\.html/);
    if (m) fragid = m[1];
}
var page = fragment_links[fragid];
if (page) {
    window.location.replace(page+'.html#'+fragid);
}

--- NEW FILE: semantics.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>4 The elements of HTML &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
[...2503 lines suppressed...]
&lt;/ul&gt;</pre>

   <p>The actual frequency of each tag is given using the <code title="attr-title"><a href="dom.html#the-title-attribute">title</a></code> attribute. A CSS style sheet is
   provided to convert the markup into a cloud of differently-sized
   words, but for user agents that do not support CSS or are not
   visual, the markup contains annotations like "(popular)" or
   "(rare)" to categorize the various tags by frequency, thus enabling
   all users to benefit from the information.</p>

   <p>The <code><a href="#the-ul-element">ul</a></code> element is used (rather than
   <code><a href="#the-ol-element">ol</a></code>) because the order is not particular important:
   while the list is in fact ordered alphabetically, it would convey
   the same information if ordered by, say, the length of the tag.</p>

   <p>The <code title="rel-tag"><a href="history.html#link-type-tag">tag</a></code> <code title="attr-hyperlink-rel"><a href="history.html#attr-hyperlink-rel">rel</a></code>-keyword is <em>not</em> used
   on these <code><a href="text-level-semantics.html#the-a-element">a</a></code> elements because they do not represent tags
   that apply to the page itself; they are just part of an index
   listing the tags themselves.</p>

  </div></body></html>
--- NEW FILE: index.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>Index &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="iana-considerations.html" title="IANA considerations" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="references.html" title="References" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="iana-considerations.html">&#8592; IANA considerations</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="references.html">References &#8594;</a>
  </div>

  <h2 class="no-num" id="index">Index</h2><p class="XXX annotation"><b>Status: </b><i>First draft</i></p><p><i>This section is non-normative.</i></p><table><caption>List of elements</caption>
   <thead><tr><th> Element
     </th><th> Categories
     </th><th> Parents
     </th><th> Children
     </th><th> Attributes
     </th><th> Interface
   </th></tr></thead><tbody><tr><td class="XXX" colspan="6"> ...
    </td></tr><tr><td> <code><a href="forms.html#the-label-element">label</a></code>
     </td><td> <a href="dom.html#flow-content" title="flow content">flow</a>;
          <a href="forms.html#form-associated-element" title="form-associated element">form-associated</a>;
          <a href="embedded-content-0.html#interactive-content" title="interactive content">interactive</a>;
          <a href="dom.html#phrasing-content" title="phrasing content">phrasing</a>
     </td><td> <a href="dom.html#phrasing-content" title="phrasing content">phrasing</a>
     </td><td> <a href="dom.html#phrasing-content" title="phrasing content">phrasing</a>*
     </td><td> <code title="attr-label-for"><a href="forms.html#attr-label-for">for</a></code>;
          <code title="attr-fae-form"><a href="forms.html#attr-fae-form">form</a></code>
     </td><td> <code><a href="forms.html#htmllabelelement">HTMLLabelElement</a></code>
    </td></tr><tr><td class="XXX" colspan="6"> ...
  </td></tr></tbody></table><p>An asterisk (*) in a cell indicates that the actual rules are more complicated than indicated in the table above.</p><hr><table><caption>List of attributes</caption>
   <thead><tr><th> Attribute
     </th><th> Element(s)
     </th><th> Value
   </th></tr></thead><tbody><tr><td class="XXX" colspan="3"> ...
    </td></tr><tr><td> <code title="attr-fae-form"><a href="forms.html#attr-fae-form">form</a></code>
     </td><td> <code><a href="forms.html#the-button-element">button</a></code>;
          <code><a href="forms.html#the-fieldset-element">fieldset</a></code>;
          <code><a href="forms.html#the-input-element">input</a></code>;
          <code><a href="forms.html#the-keygen-element">keygen</a></code>;
          <code><a href="forms.html#the-label-element">label</a></code>;
          <code><a href="text-level-semantics.html#the-object-element">object</a></code>;
          <code><a href="forms.html#the-output-element">output</a></code>;
          <code><a href="forms.html#the-select-element">select</a></code>;
          <code><a href="forms.html#the-textarea-element">textarea</a></code>
     </td><td> ID*
    </td></tr><tr><td class="XXX" colspan="3"> ...
  </td></tr></tbody></table><p>An asterisk (*) in a cell indicates that the actual rules are more complicated than indicated in the table above.</p><hr><table><caption>List of <dfn id="reflecting-dom-attributes">reflecting DOM attributes</dfn></caption>
   <thead><tr><th> Interface
     </th><th> Element(s)
     </th><th> DOM attribute
     </th><th> Reflects...
   </th></tr></thead><tbody><tr><td class="XXX" colspan="4"> ...
    </td></tr><tr><td> <code><a href="dom.html#htmlelement">HTMLElement</a></code>
     </td><td> <a href="infrastructure.html#html-elements">HTML elements</a>
     </td><td> <code title="dom-contextMenu"><a href="#dom-contextmenu">contextMenu</a></code>
     </td><td> <code title="attr-contextmenu"><a href="interactive-elements.html#attr-contextmenu">contextmenu</a></code>
    </td></tr><tr><td> <code><a href="forms.html#htmloptionelement">HTMLOptionElement</a></code>
     </td><td> <code><a href="forms.html#the-option-element">option</a></code>
     </td><td> <code title="dom-option-text"><a href="#dom-option-text">text</a></code>
     </td><td> <code>textContent</code>
    </td></tr><tr><td class="XXX" colspan="4"> ...
  </td></tr></tbody></table><!-- include option.text; textarea.defaultValue, and other attributes that "reflect" the element's textContent --><hr><table><caption>List of interfaces for elements</caption>
   <thead><tr><th> Element(s)
     </th><th> Interface(s)
   </th></tr></thead><tbody><tr><td class="XXX" colspan="2"> ...
    </td></tr><tr><td> <code><a href="forms.html#the-option-element">option</a></code>
     </td><td> <code><a href="forms.html#htmloptionelement">HTMLOptionElement</a></code> : <code><a href="dom.html#htmlelement">HTMLElement</a></code>
    </td></tr><tr><td class="XXX" colspan="2"> ...
  </td></tr></tbody></table><hr><table><caption>List of events</caption>
   <thead><tr><th> Event
   </th></tr></thead><tbody><tr><td class="XXX" colspan="1"> ...
    </td></tr><tr><td> <code title="event-load"><a href="video.html#event-load">load</a></code>
    </td></tr><tr><td class="XXX" colspan="1"> ...
  </td></tr></tbody></table></body></html>
--- NEW FILE: comms.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>8 Communication &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="editing.html" title="7 User Interaction" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="syntax.html" title="9 The HTML syntax" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="editing.html">&#8592; 7 User Interaction</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="syntax.html">9 The HTML syntax &#8594;</a>
  </div>

  <h2 id="comms"><span class="secno">8 </span>Communication</h2><h3 id="event-definitions"><span class="secno">8.1 </span>Event definitions</h3><!-- XXX cross-references for SSE and WS need fixing now that this is cross-spec --><p>Messages in <span>server-sent events</span>, <span>Web
  sockets</span>, <a href="#crossDocumentMessages">cross-document messaging</a>, and
  <a href="#channel-messaging">channel messaging</a> use the <dfn id="event-message" title="event-message"><code>message</code></dfn> event.</p><p>The following interface is defined for this event:</p><pre class="idl">interface <dfn id="messageevent">MessageEvent</dfn> : Event {
  readonly attribute any <a href="#dom-messageevent-data" title="dom-MessageEvent-data">data</a>;
  readonly attribute DOMString <a href="#dom-messageevent-origin" title="dom-MessageEvent-origin">origin</a>;
  readonly attribute DOMString <a href="#dom-messageevent-lasteventid" title="dom-MessageEvent-lastEventId">lastEventId</a>;
  readonly attribute <a href="#windowproxy">WindowProxy</a> <a href="#dom-messageevent-source" title="dom-MessageEvent-source">source</a>;
  readonly attribute <a href="#messageportarray">MessagePortArray</a> <a href="#dom-messageevent-ports" title="dom-MessageEvent-ports">ports</a>;
  void <a href="#dom-messageevent-initmessageevent" title="dom-MessageEvent-initMessageEvent">initMessageEvent</a>(in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dataArg, in DOMString originArg, in DOMString lastEventIdArg, in <a href="#windowproxy">WindowProxy</a> sourceArg, in <a href="#messageportarray">MessagePortArray</a> portsArg);
  void <a href="#dom-messageevent-initmessageeventns" title="dom-MessageEvent-initMessageEventNS">initMessageEventNS</a>(in DOMString namespaceURI, in DOMString typeArg, in boolean canBubbleArg, in boolean cancelableArg, in any dataArg, in DOMString originArg, in DOMString lastEventIdArg, in <a href="#windowproxy">WindowProxy</a> sourceArg, in <a href="#messageportarray">MessagePortArray</a> portsArg);
};</pre><dl class="domintro"><dt><var title="">event</var> . <code title="dom-MessageEvent-data"><a href="#dom-messageevent-data">data</a></code></dt>

   <dd>

    <p>Returns the data of the message.</p>

   </dd>

   <dt><var title="">event</var> . <code title="dom-MessageEvent-origin"><a href="#dom-messageevent-origin">origin</a></code></dt>

   <dd>

    <p>Returns the origin of the message, for <span>server-sent
    events</span> and <a href="#crossDocumentMessages">cross-document messaging</a>.</p>

   </dd>

   <dt><var title="">event</var> . <code title="dom-MessageEvent-lastEventId"><a href="#dom-messageevent-lasteventid">lastEventId</a></code></dt>

   <dd>

    <p>Returns the last event ID, for <span>server-sent
    events</span>.</p>

   </dd>

   <dt><var title="">event</var> . <code title="dom-MessageEvent-source"><a href="#dom-messageevent-source">source</a></code></dt>

   <dd>

    <p>Returns the <code><a href="#windowproxy">WindowProxy</a></code> of the source window, for
    <a href="#crossDocumentMessages">cross-document messaging</a>.</p>

   </dd>

   <dt><var title="">event</var> . <code title="dom-MessageEvent-ports"><a href="#dom-messageevent-ports">ports</a></code></dt>

   <dd>

    <p>Returns the <code><a href="#messageportarray">MessagePortArray</a></code> sent with the
    message, for <a href="#crossDocumentMessages">cross-document messaging</a> and
    <a href="#channel-messaging">channel messaging</a>.</p>

   </dd>

  </dl><h3 id="crossDocumentMessages"><span class="secno">8.2 </span><dfn>Cross-document messaging</dfn></h3><p class="XXX annotation"><b>Status: </b><i>Awaiting implementation feedback</i></p><p>Web browsers, for security and privacy reasons, prevent documents
  in different domains from affecting each other; that is, cross-site
  scripting is disallowed.</p><p>While this is an important security feature, it prevents pages
  from different domains from communicating even when those pages are
  not hostile. This section introduces a messaging system that allows
  documents to communicate with each other regardless of their source
  domain, in a way designed to not enable cross-site scripting
  attacks.</p><h4 id="introduction-6"><span class="secno">8.2.1 </span>Introduction</h4><p><i>This section is non-normative.</i></p><div class="example">

   <p>For example, if document A contains an <code><a href="text-level-semantics.html#the-iframe-element">iframe</a></code>
   element that contains document B, and script in document A calls
   <code title="dom-window-postMessage-2"><a href="#dom-window-postmessage-2">postMessage()</a></code> on the
   <code><a href="browsers.html#window">Window</a></code> object of document B, then a message event will
   be fired on that object, marked as originating from the
   <code><a href="browsers.html#window">Window</a></code> of document A. The script in document A might
   look like:</p>

   <pre>var o = document.getElementsByTagName('iframe')[0];
o.contentWindow.postMessage('Hello world', 'http://b.example.org/');</pre>

   <p>To register an event handler for incoming events, the script
   would use <code title="">addEventListener()</code> (or similar
   mechanisms). For example, the script in document B might look
   like:</p>

   <pre>window.addEventListener('message', receiver, false);
function receiver(e) {
  if (e.origin == 'http://example.com') {
    if (e.data == 'Hello world') {
      e.source.postMessage('Hello', e.origin);
    } else {
      alert(e.data);
    }
  }
}</pre>

   <p>This script first checks the domain is the expected domain, and
   then looks at the message, which it either displays to the user, or
   responds to by sending a message back to the document which sent
   the message in the first place.</p>

  </div><h4 id="security-4"><span class="secno">8.2.2 </span>Security</h4><p class="warning">Use of this API requires extra care to protect
  users from hostile entities abusing a site for their own
  purposes.</p><p>Authors should check the <code title="dom-MessageEvent-origin"><a href="#dom-messageevent-origin">origin</a></code> attribute to ensure
  that messages are only accepted from domains that they expect to
  receive messages from. Otherwise, bugs in the author's message
  handling code could be exploited by hostile sites.</p><p>Furthermore, even after checking the <code title="dom-MessageEvent-origin"><a href="#dom-messageevent-origin">origin</a></code> attribute, authors
  should also check that the data in question is of the expected
  format. Otherwise, if the source of the event has been attacked
  using a cross-site scripting flaw, further unchecked processing of
  information sent using the <code title="dom-window-postMessage-2"><a href="#dom-window-postmessage-2">postMessage()</a></code> method could
  result in the attack being propagated into the receiver.</p><p>Authors should not use the wildcard keyword ("*") in the <var title="">targetOrigin</var> argument in messages that contain any
  confidential information, as otherwise there is no way to guarantee
  that the message is only delivered to the recipient to which it was
  intended.</p><h4 id="posting-messages"><span class="secno">8.2.3 </span>Posting messages</h4><dl class="domintro"><dt><var title="">window</var> . <code title="dom-window-postMessage-2"><a href="#dom-window-postmessage-2">postMessage</a></code>(<var title="">message</var>, [ <var title="">ports</var>, ] <var title="">targetOrigin</var>)</dt>

   <dd>

    <p>Posts a message, optionally with an array of ports, to the
    given window.</p>

    <p>If the origin of the target window doesn't match the given
    origin, the message is discarded, to avoid information leakage. To
    send the message to the target regardless of origin, set the
    target origin to "<code title="">*</code>".</p>

    <p>Throws an <code><a href="infrastructure.html#invalid_state_err">INVALID_STATE_ERR</a></code> if the <var title="">ports</var> array is not null and it contains either null
    entries or duplicate ports.</p>

   </dd>

  </dl><h3 id="channel-messaging"><span class="secno">8.3 </span><dfn>Channel messaging</dfn></h3><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><h4 id="introduction-7"><span class="secno">8.3.1 </span>Introduction</h4><p><i>This section is non-normative.</i></p><p class="XXX">An introduction to the channel and port
  APIs.</p><h4 id="message-channels"><span class="secno">8.3.2 </span>Message channels</h4><pre class="idl">[<a href="#dom-messagechannel" title="dom-MessageChannel">Constructor</a>]
interface <dfn id="messagechannel">MessageChannel</dfn> {
  readonly attribute <a href="#messageport">MessagePort</a> <a href="#dom-channel-port1" title="dom-channel-port1">port1</a>;
  readonly attribute <a href="#messageport">MessagePort</a> <a href="#dom-channel-port2" title="dom-channel-port2">port2</a>;
};</pre><dl class="domintro"><dt><var title="">channel</var> = new <code title="dom-MessageChannel"><a href="#dom-messagechannel">MessageChannel</a></code>()</dt>

   <dd>

    <p>Returns a new <code><a href="#messagechannel">MessageChannel</a></code> object with two new <code><a href="#messageport">MessagePort</a></code> objects.</p>

   </dd>

   <dt><var title="">channel</var> . <code title="dom-MessageChannel-port1">port1</code></dt>

   <dd>

    <p>Returns the first <code><a href="#messageport">MessagePort</a></code> object.</p>

   </dd>

   <dt><var title="">channel</var> . <code title="dom-MessageChannel-port2">port2</code></dt>

   <dd>

    <p>Returns the second <code><a href="#messageport">MessagePort</a></code> object.</p>

   </dd>

  </dl><h4 id="message-ports"><span class="secno">8.3.3 </span>Message ports</h4><p>Each channel has two message ports. Data sent through one port is
  received by the other port, and vice versa.</p><pre class="idl">typedef sequence&lt;MessagePort&gt; <dfn id="messageportarray">MessagePortArray</dfn>;

interface <dfn id="messageport">MessagePort</dfn> {
<!-- v2-onclose  readonly attribute boolean <span title="dom-MessagePort-active">active</span>;
-->  void <a href="#dom-messageport-postmessage" title="dom-MessagePort-postMessage">postMessage</a>(in any message, optional in <a href="#messageportarray">MessagePortArray</a> ports);<!--
  <span>MessagePort</span> <span title="dom-MessagePort-startConversation">startConversation</span>(in any message);-->
  void <a href="#dom-messageport-start" title="dom-MessagePort-start">start</a>();
  void <a href="#dom-messageport-close" title="dom-MessagePort-close">close</a>();

  // event handler attributes
           attribute <a href="#function">Function</a> <a href="#handler-messageport-onmessage" title="handler-MessagePort-onmessage">onmessage</a>;
};</pre><dl class="domintro"><!-- v2-onclose
   <dt><var title="">port</var> . <code title="dom-MessagePort-active">active</code></dt>

   <dd>

    <p>Returns true if the port is still active; otherwise, returns false.</p>

   </dd>
--><dt><var title="">port</var> . <code title="dom-MessagePort-poseMessage">postMessage</code>(<var title="">message</var> [, <var title="">ports</var>] )</dt>

   <dd>

    <p>Posts a message through the channel, optionally with the given
    ports.</p>

    <p>Throws an <code><a href="infrastructure.html#invalid_state_err">INVALID_STATE_ERR</a></code> if the <var title="">ports</var> array is not null and it contains either null
    entries, duplicate ports, or the source or target port.</p>

   </dd>

   <dt><var title="">port</var> . <code title="dom-MessagePort-start"><a href="#dom-messageport-start">start</a></code>()</dt>

   <dd>

    <p>Begins dispatching messages received on the port.</p>

   </dd>

   <dt><var title="">port</var> . <code title="dom-MessagePort-close"><a href="#dom-messageport-close">close</a></code>()</dt>

   <dd>

    <p>Disconnects the port, so that it is no longer active.</p>

   </dd>

  </dl><h5 id="ports-and-garbage-collection"><span class="secno">8.3.3.1 </span>Ports and garbage collection</h5><p class="note">Authors are strongly encouraged to explicitly close
  <code><a href="#messageport">MessagePort</a></code> objects to disentangle them, so that their
  resources can be recollected. Creating many <code><a href="#messageport">MessagePort</a></code>
  objects and discarding them without closing them can lead to high
  memory usage.</p></body></html>
--- NEW FILE: spec.html ---
<!DOCTYPE html><!-- when publishing, change bits marked ZZZ --><html lang=en-US-x-Hixie><head><title>HTML 5</title><style type=text/css>
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
[...26774 lines suppressed...]
 XXX * make the spec more consistent about its use of "hexadecimal"
       and "base-sixteen", the order that 0-9 A-Z a-z is mentioned,
       and the detail to which the spec explains how to interpret a
       string as a hexadecimal number.
 XXX * expose the form data set, either as an object (on which one can
       invoke the JSON serialiser), or in the form of a method on
       HTMLFormElement that returns the form data set serialised
       according to a particular encoding (defaulting to the form's
       enctype="" one, probably). This would allow forms to be used
       with XHR-like systems without having to manually construct the
       form data set the way that is done today.
 XXX * become more consistent about what markup we use to mark up
       productions (nothing? <i>? <code>?)
 XXX * should check all cases of 'active document' and change the
       relevant ones to 'fully active document'.
 XXX * use <code>Document</code> consistently instead of 'document'.
 XXX * s/raise/throw/g
 XXX * be clearer about arrays/lists/collections being zero-based
       despite using the term "/index/th".
--></body></html>
--- NEW FILE: introduction.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>1 Introduction &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="infrastructure.html" title="2 Common infrastructure" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="infrastructure.html">2 Common infrastructure &#8594;</a>
  </div>

  <h2 id="introduction"><span class="secno">1 </span>Introduction</h2><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><h3 id="background"><span class="secno">1.1 </span>Background</h3><p><i>This section is non-normative.</i></p><p>The World Wide Web's markup language has always been HTML. HTML
  was primarily designed as a language for semantically describing
  scientific documents, although its general design and adaptations
  over the years have enabled it to be used to describe a number of
  other types of documents.</p><p>The main area that has not been adequately addressed by HTML is a
  vague subject referred to as Web Applications. This specification
  attempts to rectify this, while at the same time updating the HTML
  specifications to address issues raised in the past few years.</p><h3 id="audience"><span class="secno">1.2 </span>Audience</h3><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><p><i>This section is non-normative.</i></p><p>This specification is intended for authors of documents and
  scripts that use the features defined in this specification, implementors of tools that operate on pages that use
  the features defined in this specification, and individuals wishing
  to establish the correctness of documents or implementations with
  respect to the requirements of this specification</p><p>This document is probably not suited to readers who do not
  already have at least a passing familiarity with Web technologies,
  as in places it sacrifices clarity for precision, and brevity for
  completeness. More approachable tutorials and authoring guides can
  provide a gentler introduction to the topic.</p><p>In particular, familiarity with the basics of DOM Core and DOM
  Events is necessary for a complete understanding of some of the more
  technical parts of this specification. An understanding of Web IDL,
  HTTP, XML, Unicode, character encodings, JavaScript, and CSS will
  also be helpful in places but is not essential.</p><h3 id="scope"><span class="secno">1.3 </span>Scope</h3><p><i>This section is non-normative.</i></p><p>This specification is limited to providing a semantic-level
  markup language and associated semantic-level scripting APIs for
  authoring accessible pages on the Web ranging from static documents
  to dynamic applications.</p><p>The scope of this specification does not include providing
  mechanisms for media-specific customization of presentation
  (although default rendering rules for Web browsers are included at
  the end of this specification, and several mechanisms for hooking
  into CSS are provided as part of the language).</p><p>The scope of this specification does not include documenting
  every HTML or DOM feature supported by Web browsers. Browsers
  support many features that are considered to be very bad for
  accessibility or that are otherwise inappropriate. For example, the
  <code><a href="obsolete.html#blink">blink</a></code> element is clearly presentational and authors
  wishing to cause text to blink should instead use CSS.</p><p>The scope of this specification is not to describe an entire
  operating system. In particular, hardware configuration software,
  image manipulation tools, and applications that users would be
  expected to use with high-end workstations on a daily basis are out
  of scope. In terms of applications, this specification is targeted
  specifically at applications that would be expected to be used by
  users on an occasional basis, or regularly but from disparate
  locations, with low CPU requirements. For instance online purchasing
  systems, searching systems, games (especially multiplayer online
  games), public telephone books or address books, communications
  software (e-mail clients, instant messaging clients, discussion
  software), document editing software, etc.</p><h3 id="history-1"><span class="secno">1.4 </span>History</h3><p><i>This section is non-normative.</i></p><p>Work on HTML&#160;5 originally started in late 2003, as a proof
  of concept to show that it was possible to extend HTML&#160;4's forms to
  provide many of the features that XForms 1.0 introduced, without
  requiring browsers to implement rendering engines that were
  incompatible with existing HTML Web pages. At this early stage,
  while the draft was already publicly available, and input was
  already being solicited from all sources, the specification was only
  under Opera Software's copyright.</p><p>In early 2004, some of the principles that underlie this effort,
  as well as an early draft proposal covering just forms-related
  features, were presented to the W3C jointly by Mozilla and Opera at
  a workshop discussing the future of Web Applications on the Web. The
  proposal was rejected on the grounds that the proposal conflicted
  with the previously chosen direction for the Web's evolution.</p><p>Shortly thereafter, Apple, Mozilla, and Opera jointly announced
  their intent to continue working on the effort. A public mailing
  list was created, and the drafts were moved to the WHATWG site. The
  copyright was subsequently amended to be jointly owned by all three
  vendors, and to allow reuse of the specifications.</p><p>In 2006, the W3C expressed interest in the specification, and
  created a working group chartered to work with the WHATWG on the
  development of the HTML&#160;5 specifications. The working group
  opened in 2007. Apple, Mozilla, and Opera allowed the W3C to publish
  the specifications under the W3C copyright, while keeping versions
  with the less restrictive license on the WHATWG site.</p><p>Since then, both groups have been working together.</p><h3 id="design-notes"><span class="secno">1.5 </span>Design notes</h3><p><i>This section is non-normative.</i></p><p>It must be admitted that many aspects of HTML appear at first
  glance to be nonsensical and inconsistent.</p><p>HTML, its supporting DOM APIs, as well as many of its supporting
  technologies, have been developed over a period of several decades
  by a wide array of people with different priorities who, in many
  cases, did not know of each other's existence.</p><p>Features have thus arisen from many sources, and have not always
  been designed in especially consistent ways. Furthermore, because of
  the unique characteristics of the Web, implementation bugs have
  often become de-facto, and now de-jure, standards, as content is
  often unintentionally written in ways that rely on them before they
  can be fixed.</p><p>Despite all this, efforts have been made to adhere to certain
  design goals. These are described in the next few subsections.</p><h4 id="serializability-of-script-execution"><span class="secno">1.5.1 </span>Serializability of script execution</h4><p><i>This section is non-normative.</i></p><p>To avoid exposing Web authors to the complexities of
  multithreading, the HTML and DOM APIs are designed such that no
  script can ever detect the simultaneous execution of other
  scripts. Even with <span title="Worker">workers</span>, the intent
  is that the behavior of implementations can be thought of as
  completely serializing the execution of all scripts in all <a href="browsers.html#browsing-context" title="browsing context">browsing contexts</a>.</p><p class="note">The <code title="dom-navigator-GetStorageUpdates"><a href="#dom-navigator-getstorageupdates">navigator.getStorageUpdates()</a></code>
  method, in this model, is equivalent to allowing other scripts to
  run while the calling script is blocked.</p><h4 id="compliance-with-other-specifications"><span class="secno">1.5.2 </span>Compliance with other specifications</h4><p><i>This section is non-normative.</i></p><p>This specification interacts with and relies on a wide variety of
  other specifications. In certain circumstances, unfortunately, the
  desire to be compatible with legacy content has led to this
  specification violating the requirements of these other
  specifications. Whenever this has occurred, the transgressions have
  been noted as "<dfn id="willful-violation" title="willful violation">willful
  violations</dfn>".</p><h3 id="relationships-to-other-specifications"><span class="secno">1.6 </span>Relationships to other specifications</h3><h4 id="relationship-to-html-4.01-and-dom2-html"><span class="secno">1.6.1 </span>Relationship to HTML&#160;4.01 and DOM2 HTML</h4><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><p><i>This section is non-normative.</i></p><p>This specification describes a new revision of the HTML language
  and its associated DOM API.</p><p>The requirements in this specification for features that were
  already in HTML&#160;4 and DOM2 HTML are based primarily on the
  implementation and deployment experience collected over the past ten
  years. Some features have been removed from the language, based on
  best current practices; implementation requirements for some of
  these, as well as for non-standard features that have nonetheless
  garnered wide use, are still included in this specification to allow
  implementations to continue supporting legacy content.  <a href="references.html#refsHTML4">[HTML4]</a> <a href="references.html#refsDOM2HTML">[DOM2HTML]</a></p><p>A separate document has been published by the W3C HTML working
  group to provide a more detailed reference of the differences
  between this specification and the language described in the HTML&#160;4
  specification. <a href="references.html#refsHTMLDIFF">[HTMLDIFF]</a></p><h4 id="relationship-to-xhtml-1.x"><span class="secno">1.6.2 </span>Relationship to XHTML 1.x</h4><p class="XXX annotation"><b>Status: </b><i>Working draft</i></p><p><i>This section is non-normative.</i></p><p>This specification is intended to replace XHTML 1.0 as the
  normative definition of the XML serialization of the HTML
  vocabulary. <a href="references.html#refsXHTML10">[XHTML10]</a></p><p>While this specification updates the semantics and requirements
  of the vocabulary defined by XHTML Modularization 1.1 and used by
  XHTML 1.1, it does not attempt to provide a replacement for the
  modularization scheme defined and used by those (and other)
  specifications, and therefore cannot be considered a complete
  replacement for them. <a href="references.html#refsXHTMLMOD">[XHTMLMOD]</a> <a href="references.html#refsXHTML11">[XHTML11]</a></p><p>Thus, authors and implementors who do not need such a
  modularization scheme can consider this specification a replacement
  for XHTML 1.x, but those who do need such a mechanism are encouraged
  to continue using the XHTML 1.1 line of specifications.</p><h3 id="html-vs-xhtml"><span class="secno">1.7 </span>HTML vs XHTML</h3><p class="XXX annotation"><b>Status: </b><i>Controversial Working Draft</i></p><p><i>This section is non-normative.</i></p><p>This specification defines an abstract language for describing
  documents and applications, and some APIs for interacting with
  in-memory representations of resources that use this language.</p><p>The in-memory representation is known as "DOM5 HTML", or "the
  DOM" for short.</p><p>There are various concrete syntaxes that can be used to transmit
  resources that use this abstract language, two of which are defined
  in this specification.</p><p>The first such concrete syntax is "HTML5". This is the format
  recommended for most authors. It is compatible with most legacy Web
  browsers. If a document is transmitted with the <a href="infrastructure.html#mime-type">MIME
  type</a> <code><a href="iana-considerations.html#text-html">text/html</a></code>, then it will be processed as an
  "HTML5" document by Web browsers.</p><p>The second concrete syntax uses XML, and is known as
  "XHTML5". When a document is transmitted with an <a href="infrastructure.html#xml-mime-type">XML MIME
  type</a>, such as <code><a href="iana-considerations.html#application-xhtml-xml">application/xhtml+xml</a></code>, then it is
  treated as an "XHTML5" document by Web browsers, which means that it
  will be handled by an XML processor. Authors are reminded that the
  processing for XML and HTML differs; in particular, even minor
  syntax errors will prevent an XML document from being rendered
  fully, whereas they would be ignored in the "HTML5" syntax.</p><p>The "DOM5 HTML", "HTML5", and "XHTML5" representations cannot all
  represent the same content. For example, namespaces cannot be
  represented using "HTML5", but they are supported in "DOM5 HTML" and
  "XHTML5". Similarly, documents that use the <code><a href="semantics.html#the-noscript-element">noscript</a></code>
  feature can be represented using "HTML5", but cannot be represented
  with "XHTML5" and "DOM5 HTML". Comments that contain the string
  "<code title="">--&gt;</code>" can be represented in "DOM5 HTML" but
  not in "HTML5" and "XHTML5". And so forth.</p><h3 id="structure-of-this-specification"><span class="secno">1.8 </span>Structure of this specification</h3><p><i>This section is non-normative.</i></p><p>This specification is divided into the following major
  sections:</p><dl><dt><a href="infrastructure.html#infrastructure">Common Infrastructure</a></dt>

   <dd>The conformance classes, algorithms, definitions, and the
   common underpinnings of the rest of the specification.</dd>


   <dt><a href="dom.html#dom">Semantics, structure, and APIs of HTML documents</a></dt>

   <dd>Documents are built from elements. These elements form a tree
   using the DOM. This section defines the features of this DOM, as
   well as introducing the features common to all elements, and the
   concepts used in defining elements.</dd>


   <dt><a href="semantics.html#semantics">Elements</a></dt>

   <dd>Each element has a predefined meaning, which is explained in
   this section. Rules for authors on how to use the element, along with user agent requirements for how to handle
   each element,</dd>


   <dt><a href="microdata.html#microdata">Microdata</a></dt>

   <dd>This specification introduces a mechanism for adding
   machine-readable annotations to documents, so that tools can
   extract trees of name/value pairs from the document. This section
   describes this mechanism and some algorithms
   that can be used to convert HTML documents into other
   formats</dd>


   <dt><a href="browsers.html#browsers">Web Browsers</a></dt>

   <dd>HTML documents do not exist in a vacuum &#8212; this section
   defines many of the features that affect environments that deal
   with multiple pages, links between pages, and running scripts.</dd>


   <dt><a href="editing.html#editing">User Interaction</a></dt>

   <dd>HTML documents can provide a number of mechanisms for users to
   interact with and modify content, which are described in this
   section.</dd>


   <dt><a href="comms.html#comms">The Communication APIs</a></dt>

   <dd>This section describes some mechanisms that applications
   written in HTML can use to communicate with other applications from
   different domains running on the same client.</dd>


   <dt><a href="syntax.html#syntax">The HTML Syntax</a></dt>
   <dt><a href="the-xhtml-syntax.html#xhtml">The XHTML Syntax</a></dt>

   <dd>All of these features would be for naught if they couldn't be
   represented in a serialized form and sent to other people, and so
   these sections define the syntaxes of HTML, along with rules for
   how to parse content using those syntaxes.</dd>


  </dl><p>There are also a couple of appendices, defining <a href="#rendering">rendering rules</a> for Web browsers and listing
  <a href="obsolete.html#obsolete">obsolete features</a> and <a href="no.html#no">areas
  that are out of scope</a> for this specification.</p><h4 id="how-to-read-this-specification"><span class="secno">1.8.1 </span>How to read this specification</h4><p>This specification should be read like all other specifications.
  First, it should be read cover-to-cover, multiple times. Then, it
  should be read backwards at least once. Then it should be read by
  picking random sections from the contents list and following all the
  cross-references.</p><h4 id="typographic-conventions"><span class="secno">1.8.2 </span>Typographic conventions</h4><p class="XXX annotation"><b>Status: </b><i>Implemented and widely deployed</i></p><p>This is a definition, requirement, or explanation.</p><p class="note">This is a note.</p><p class="example">This is an example.</p><p class="XXX">This is an open issue.</p><p class="warning">This is a warning.</p><pre class="idl extract">interface <dfn title="">Example</dfn> {
  // this is an IDL definition
};</pre><dl class="domintro"><dt><var title="">variable</var> = <var title="">object</var> . <code title="">method</code>( [ <var title="">optionalArgument</var> ] )</dt>

   <dd>

    <p>This is a note to authors describing the usage of an interface.</p>

   </dd>

  </dl><pre class="css">/* this is a CSS fragment */</pre><p>The defining instance of a term is marked up like <dfn id="x-this" title="x-this">this</dfn>. Uses of that term are marked up like
  <a href="#x-this" title="x-this">this</a> or like <i title="x-this"><a href="#x-this">this</a></i>.</p><p>The defining instance of an element, attribute, or API is marked
  up like <dfn id="x-that" title="x-that"><code>this</code></dfn>. References to
  that element, attribute, or API are marked up like <code title="x-that"><a href="#x-that">this</a></code>.</p><p>Other code fragments are marked up <code title="">like
  this</code>.</p><p>Variables are marked up like <var title="">this</var>.</p><h3 id="a-quick-introduction-to-html"><span class="secno">1.9 </span>A quick introduction to HTML</h3><p class="XXX annotation"><b>Status: </b><i>Last call for comments</i></p><p><i>This section is non-normative.</i></p><p>A basic HTML document looks like this:</p><pre>&lt;!DOCTYPE html&gt;
&lt;html&gt;
 &lt;head&gt;
  &lt;title&gt;Sample page&lt;/title&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;h1&gt;Sample page&lt;/h1&gt;
  &lt;p&gt;This is a &lt;a href="demo.html"&gt;simple&lt;/a&gt; sample.&lt;/p&gt;
  &lt;!-- this is a comment --&gt;
 &lt;/body&gt;
&lt;/html&gt;</pre><p>HTML documents consist of a tree of elements and text. Each
  element is denoted in the source by a <a href="syntax.html#syntax-start-tag" title="syntax-start-tag">start tag</a>, such as "<code title="">&lt;body&gt;</code>", and an <a href="syntax.html#syntax-end-tag" title="syntax-end-tag">end
  tag</a>, such as "<code title="">&lt;/body&gt;</code>". (Certain
  start tags and end tags can in certain cases be <a href="syntax.html#syntax-tag-omission" title="syntax-tag-omission">omitted</a> and are implied by other
  tags.)</p><p>Tags have to be nested such that elements are all completely
  within each other, without overlapping:</p><pre class="bad">&lt;p&gt;This is &lt;em&gt;very &lt;strong&gt;wrong&lt;/em&gt;!&lt;/strong&gt;&lt;/p&gt;</pre><pre>&lt;p&gt;This &lt;em&gt;is &lt;strong&gt;correct&lt;/strong&gt;.&lt;/em&gt;&lt;/p&gt;</pre><p>This specification defines a set of elements that can be used in
  HTML, along with rules about the ways in which the elements can be
  nested.</p><p>Elements can have attributes, which control how the elements
  work. In the example above, there is a <a href="history.html#hyperlink">hyperlink</a>,
  formed using the <code><a href="text-level-semantics.html#the-a-element">a</a></code> element and its <code title="attr-hyperlink-href"><a href="history.html#attr-hyperlink-href">href</a></code> attribute:</p><pre>&lt;a href="demo.html"&gt;simple&lt;/a&gt;</pre><p><a href="syntax.html#syntax-attributes" title="syntax-attributes">Attributes</a> are placed
  inside the start tag, and consist of a <a href="syntax.html#syntax-attribute-name" title="syntax-attribute-name">name</a> and a <a href="syntax.html#syntax-attribute-value" title="syntax-attribute-value">value</a>, separated by an "<code title="">=</code>" character. The attribute value can be <a href="syntax.html#unquoted">left unquoted</a> if it doesn't contain any special
  characters. Otherwise, it has to be quoted using either single or
  double quotes. The value, along with the "<code title="">=</code>"
  character, can be omitted altogether if the value is the empty
  string.</p><pre>&lt;!-- empty attributes --&gt;
&lt;input name=address disabled&gt;
&lt;input name=address disabled=""&gt;

&lt;!-- attributes with a value --&gt;
&lt;input name=address maxlength=200&gt;
&lt;input name=address maxlength='200'&gt;
&lt;input name=address maxlength="200"&gt;</pre><p>HTML user agents (e.g. Web browsers) then <i>parse</i> this
  markup, turning it into a DOM (Document Object Model) tree. A DOM
  tree is an in-memory representation of a document.</p><p>DOM trees contain several kinds of nodes, in particular a DOCTYPE
  node, elements, text nodes, and comment nodes.</p><p>The markup snippet at the top of this section would be turned
  into the following DOM tree:</p><ul class="domTree"><li class="t10">DOCTYPE: <code><a href="semantics.html#the-html-element-0">html</a></code></li><li class="t1"><code><a href="semantics.html#the-html-element-0">html</a></code><ul><li class="t1"><code><a href="semantics.html#the-head-element-0">head</a></code><ul><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;&#9251;</span></li><li class="t1"><code><a href="semantics.html#the-title-element-0">title</a></code><ul><li class="t3"><code>#text</code>: <span title="">Sample page</span></li></ul></li><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;</span></li></ul></li><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;</span></li><li class="t1"><code><a href="semantics.html#the-body-element-0">body</a></code><ul><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;&#9251;</span></li><li class="t1"><code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code><ul><li class="t3"><code>#text/code>: <span title="">Sample page</span></li></ul></li><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;&#9251;</span></li><li class="t1"><code><a href="semantics.html#the-p-element">p</a></code><ul><li class="t3"><code>#text</code>: <span title="">This is a </span></li><li class="t1"><code><a href="text-level-semantics.html#the-a-element">a</a></code> <span class="t2" title=""><code class="attribute name">href</code>="<code class="attribute value">demo.html</code>"</span><ul><li class="t3"><code>#text</code>: <span title="">simple</span></li></ul></li><li class="t3"><code>#text</code>: <span title=""> sample.</span></li></ul></li><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;&#9251;</span></li><li class="t8"><code>#comment</code>: <span title=""> this is a comment </span></li><li class="t3"><code>#text</code>: <span title="">&#9166;&#9251;&#9166;</span></li></ul></li></ul></li></ul><p>The <a href="infrastructure.html#root-element">root element</a> of this tree is the
  <code><a href="semantics.html#the-html-element-0">html</a></code> element, which is the element always found at the
  root of HTML documents. It contains two elements, <code><a href="semantics.html#the-head-element-0">head</a></code>
  and <code><a href="semantics.html#the-body-element-0">body</a></code>, as well as a text node between them.</p><p>There are many more text nodes in the DOM tree than one would
  initially expect, because the source contains a number of spaces
  (presented by "&#9251;") and line breaks ("&#9166;") that all end
  up as text nodes in the DOM.</p><p>The <code><a href="semantics.html#the-head-element-0">head</a></code> element contains a <code><a href="semantics.html#the-title-element-0">title</a></code>
  element, which itself contains a text node with the text "Sample
  page". Similarly, the <code><a href="semantics.html#the-body-element-0">body</a></code> element contains an
  <code><a href="semantics.html#the-h1-h2-h3-h4-h5-and-h6-elements">h1</a></code> element, a <code><a href="semantics.html#the-p-element">p</a></code> element, and a
  comment.</p><hr><p>This DOM tree can be manipulated from scripts in the
  page. Scripts (typically in JavaScript) are small programs that can
  be embedded using the <code><a href="semantics.html#script">script</a></code> element or using
  <a href="browsers.html#event-handler-content-attributes">event handler content attributes</a>. For example, here is
  a form with a script that sets the value of the form's
  <code><a href="forms.html#the-output-element">output</a></code> element to say "Hello World":</p><pre>&lt;<a href="forms.html#the-form-element">form</a> <a href="forms.html#attr-form-name" title="attr-form-name">name</a>="main"&gt;
 Result: &lt;<a href="forms.html#the-output-element">output</a> <a href="forms.html#attr-fe-name" title="attr-fe-name">name</a>="result"&gt;&lt;/output&gt;
 &lt;<a href="semantics.html#script">script</a>&gt;
  <a href="dom.html#htmldocument" title="HTMLDocument">document</a>.<a href="#dom-document-forms" title="dom-document-forms">forms</a>.main.<a href="#dom-form-elements" title="dom-form-elements">elements</a>.result.<a href="#dom-output-value" title="dom-output-value">value</a> = 'Hello World';
 &lt;/script&gt;
&lt;/form&gt;</pre><p>Each element in the DOM tree is represented by an object, and
  these objects have APIs so that they can be manipulated. For
  instance, a link (e.g. the <code><a href="text-level-semantics.html#the-a-element">a</a></code> element in the tree above)
  can have its "<code title="attr-hyperlink-href"><a href="history.html#attr-hyperlink-href">href</a></code>"
  attribute changed in several ways:</p><pre>var a = <a href="dom.html#htmldocument" title="HTMLDocument">document</a>.<a href="#dom-document-links" title="dom-document-links">links</a>[0]; // obtain the first link in the document
a.<a href="#dom-a-href" title="dom-a-href">href</a> = 'sample.html'; // change the destination URL of the link
a.<a href="#dom-uda-protocol" title="dom-uda-protocol">protocol</a> = 'https'; // change just the scheme part of the URL
a.setAttribute('href', 'http://example.com/'); // change the content attribute directly</pre><p>Since DOM trees are used as the way to represent HTML documents
  when they are processed and presented by implementations (especially
  interactive implementations like Web browsers), this specification
  is mostly phrased in terms of DOM trees, instead of the markup
  described above.</p><hr><p>HTML documents represent a media-independent description of
  interactive content. HTML documents might be rendered to a screen,
  or through a speech synthesizer, or on a braille display. To
  influence exactly how such rendering takes place, authors can use a
  styling language such as CSS.</p><p>In the following example, the page has been made yellow-on-blue
  using CSS.</p><pre>&lt;!DOCTYPE html&gt;
&lt;html&gt;
 &lt;head&gt;
  &lt;title&gt;Sample styled page&lt;/title&gt;
  &lt;style&gt;
   body { background: navy; color: yellow; }
  &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;
  &lt;h1&gt;Sample styled page&lt;/h1&gt;
  &lt;p&gt;This page is just a demo.&lt;/p&gt;
 &lt;/body&gt;
&lt;/html&gt;</pre><p>For more details on how to use HTML, authors are encouraged to
  consult tutorials and guides. Some of the examples included in this
  specification might also be of use, but the novice author is
  cautioned that this specification, by necessity, defines the
  language with a level of detail that may be difficult to understand
  at first.</p></body></html>
--- NEW FILE: no.html ---
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="en-US-x-Hixie"><head><title>12 Things that you can't do with this specification because they are better handled using other technologies that are further described herein &#8212; HTML 5</title><style type="text/css">
   pre { margin-left: 2em; white-space: pre-wrap; }
   h2 { margin: 3em 0 1em 0; }
   h3 { margin: 2.5em 0 1em 0; }
   h4 { margin: 2.5em 0 0.75em 0; }
   h5, h6 { margin: 2.5em 0 1em; }
   h1 + h2, h1 + h2 + h2 { margin: 0.75em 0 0.75em; }
   h2 + h3, h3 + h4, h4 + h5, h5 + h6 { margin-top: 0.5em; }
   p { margin: 1em 0; }
   hr:not(.top) { display: block; background: none; border: none; padding: 0; margin: 2em 0; height: auto; }
   dl, dd { margin-top: 0; margin-bottom: 0; }
   dt { margin-top: 0.75em; margin-bottom: 0.25em; clear: left; }
   dt + dt { margin-top: 0; }
   dd dt { margin-top: 0.25em; margin-bottom: 0; }
   dd p { margin-top: 0; }
   dd dl + p { margin-top: 1em; }
   dd table + p { margin-top: 1em; }
   p + * > li, dd li { margin: 1em 0; }
   dt, dfn { font-weight: bold; font-style: normal; }
   dt dfn { font-style: italic; }
   pre, code { font-size: inherit; font-family: monospace; font-variant: normal; }
   pre strong { color: black; font: inherit; font-weight: bold; background: yellow; }
   pre em { font-weight: bolder; font-style: normal; }
   @media screen { code { color: orangered; } code :link, code :visited { color: inherit; } }
   var sub { vertical-align: bottom; font-size: smaller; position: relative; top: 0.1em; }
   table { border-collapse: collapse; border-style: hidden hidden none hidden; }
   table thead { border-bottom: solid; }
   table tbody th:first-child { border-left: solid; }
   table td, table th { border-left: solid; border-right: solid; border-bottom: solid thin; vertical-align: top; padding: 0.2em; }
   blockquote { margin: 0 0 0 2em; border: 0; padding: 0; font-style: italic; }

   .bad, .bad *:not(.XXX) { color: gray; border-color: gray; background: transparent; }
   .matrix, .matrix td { border: none; text-align: right; }
   .matrix { margin-left: 2em; }
   .dice-example { border-collapse: collapse; border-style: hidden solid solid hidden; border-width: thin; margin-left: 3em; }
   .dice-example caption { width: 30em; font-size: smaller; font-style: italic; padding: 0.75em 0; text-align: left; }
   .dice-example td, .dice-example th { border: solid thin; width: 1.35em; height: 1.05em; text-align: center; padding: 0; }
   .applies th > * { display: block; }
   .applies thead code { display: block; }
   .applies td { text-align: center; }
   .applies .yes { background: yellow; }

   .toc dfn, h1 dfn, h2 dfn, h3 dfn, h4 dfn, h5 dfn, h6 dfn { font: inherit; }
   img.extra { float: right; }
   pre.idl { border: solid thin; background: #EEEEEE; color: black; padding: 0.5em 1em; }
   pre.idl :link, pre.idl :visited { color: inherit; background: transparent; }
   pre.css { border: solid thin; background: #FFFFEE; color: black; padding: 0.5em 1em; }
   pre.css:first-line { color: #AAAA50; }
   dl.domintro { color: green; margin: 2em 0 2em 2em; padding: 0.5em 1em; border: none; background: #EEFFEE; }
   hr + dl.domintro, div.impl + dl.domintro { margin-top: 2.5em; margin-bottom: 1.5em; }
   dl.domintro dt, dl.domintro dt * { color: black; text-decoration: none; }
   dl.domintro dd { margin: 0.5em 0 1em 2em; padding: 0; }
   dl.domintro dd p { margin: 0.5em 0; }
   dl.switch { padding-left: 2em; }
   dl.switch > dt { text-indent: -1.5em; }
   dl.switch > dt:before { content: '\21AA'; padding: 0 0.5em 0 0; display: inline-block; width: 1em; text-align: right; line-height: 0.5em; }
   dl.triple { padding: 0 0 0 1em; }
   dl.triple dt, dl.triple dd { margin: 0; display: inline }
   dl.triple dt:after { content: ':'; }
   dl.triple dd:after { content: '\A'; white-space: pre; }
   .diff-old { text-decoration: line-through; color: silver; background: transparent; }
   .diff-chg, .diff-new { text-decoration: underline; color: green; background: transparent; }
   a .diff-new { border-bottom: 1px blue solid; }

   h2 { page-break-before: always; }
   h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
   h1 + h2, hr + h2.no-toc { page-break-before: auto; }

   p > span:not([title=""]):not([class="XXX"]):not([class="impl"]), li > span:not([title=""]):not([class="XXX"]):not([class="impl"]) { border-bottom: solid #9999CC; }

   div.head { margin: 0 0 1em; padding: 1em 0 0 0; }
   div.head p { margin: 0; }
   div.head h1 { margin: 0; }
   div.head .logo { float: right; margin: 0 1em; }
   div.head .logo img { border: none } /* remove border from top image */
   div.head dl { margin: 1em 0; }
   p.copyright { font-size: x-small; font-style: oblique; margin: 0; }

   body > .toc > li { margin-top: 1em; margin-bottom: 1em; }
   body > .toc.brief > li { margin-top: 0.35em; margin-bottom: 0.35em; }
   body > .toc > li > * { margin-bottom: 0.5em; }
   body > .toc > li > * > li > * { margin-bottom: 0.25em; }
   .toc, .toc li { list-style: none; }

   .brief { margin-top: 1em; margin-bottom: 1em; line-height: 1.1; }
   .brief li { margin: 0; padding: 0; }
   .brief li p { margin: 0; padding: 0; }

   .category-list { margin-top: -0.75em; margin-bottom: 1em; line-height: 1.5; }
   .category-list::before { content: '\21D2\A0'; font-size: 1.2em; font-weight: 900; }
   .category-list li { display: inline; }
   .category-list li:not(:last-child)::after { content: ', '; }
   .category-list li > span, .category-list li > a { text-transform: lowercase; }
   .category-list li * { text-transform: none; } /* don't affect <code> nested in <a> */

   .XXX { color: #E50000; background: white; border: solid red; padding: 0.5em; margin: 1em 0; }
   .XXX > :first-child { margin-top: 0; }
   p .XXX { line-height: 3em; }
   .annotation { border: solid thin black; background: #0C479D; color: white; position: relative; margin: 8px 0 20px 0; }
   .annotation:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; margin: 6px -6px -6px 6px; background: #333333; z-index: -1; content: ''; }
   .annotation :link, .annotation :visited { color: inherit; }
   .annotation :link:hover, .annotation :visited:hover { background: transparent; }
   .annotation span { border: none ! important; }
   .note { color: green; background: transparent; font-family: sans-serif; }
   .warning { color: red; background: transparent; }
   .note, .warning { font-weight: bolder; font-style: italic; }
   p.note, div.note { padding: 0.5em 2em; }
   span.note { padding: 0 2em; }
   .note p:first-child, .warning p:first-child { margin-top: 0; }
   .note p:last-child, .warning p:last-child { margin-bottom: 0; }
   .warning:before { font-style: normal; }
   p.note:before { content: 'Note: '; }
   p.warning:before { content: '\26A0 Warning! '; }

   .bookkeeping:before { display: block; content: 'Bookkeeping details'; font-weight: bolder; font-style: italic; }
   .bookkeeping { font-size: 0.8em; margin: 2em 0; }
   .bookkeeping p { margin: 0.5em 2em; display: list-item; list-style: square; }

   h4 { position: relative; z-index: 3; }
   h4 + .element, h4 + div + .element { margin-top: -2.5em; padding-top: 2em; }
   .element {
     background: #EEEEFF;
     color: black;
     margin: 0 0 1em 0.15em;
     padding: 0 1em 0.25em 0.75em;
     border-left: solid #9999FF 0.25em;
     position: relative;
     z-index: 1;
   }
   .element:before {
     position: absolute;
     z-index: 2;
     top: 0;
     left: -1.15em;
     height: 2em;
     width: 0.9em;
     background: #EEEEFF;
     content: ' ';
     border-style: none none solid solid;
     border-color: #9999FF;
     border-width: 0.25em;
   }

   .example { display: block; color: #222222; background: #FCFCFC; border-left: double; margin-left: 2em; padding-left: 1em; }
   td > .example:only-child { margin: 0 0 0 0.1em; }

   .tall-and-narrow {
     font-size: 0.6em;
     column-width: 25em;
     column-gap: 1em;
     -moz-column-width: 25em;
     -moz-column-gap: 1em;
     -webkit-column-width: 25em;
     -webkit-column-gap: 1em;
   }

   ul.domTree, ul.domTree ul { padding: 0 0 0 1em; margin: 0; }
   ul.domTree li { padding: 0; margin: 0; list-style: none; position: relative; }
   ul.domTree li li { list-style: none; }
   ul.domTree li:first-child::before { position: absolute; top: 0; height: 0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree li:not(:last-child)::after { position: absolute; top: 0; bottom: -0.6em; left: -0.75em; width: 0.5em; border-style: none none solid solid; content: ''; border-width: 0.1em; }
   ul.domTree span { font-style: italic; font-family: serif; }
   ul.domTree .t1 code { color: purple; font-weight: bold; }
   ul.domTree .t2 { font-style: normal; font-family: monospace; }
   ul.domTree .t2 .name { color: black; font-weight: bold; }
   ul.domTree .t2 .value { color: blue; font-weight: normal; }
   ul.domTree .t3 code, .domTree .t4 code, .domTree .t5 code { color: gray; }
   ul.domTree .t7 code, .domTree .t8 code { color: green; }
   ul.domTree .t10 code { color: teal; }

  </style><link href="data:text/css," rel="stylesheet" title="Complete specification"><link href="data:text/css,.impl%20%7B%20display:%20none;%20%7D" rel="alternate stylesheet" title="Author documentation only"><link href="data:text/css,.impl%20%7B%20background:%20%23FFEEEE;%20%7D" rel="alternate stylesheet" title="Highlight implementation requirements"><link href="http://www.w3.org/StyleSheets/TR/W3C-WD" rel="stylesheet" type="text/css"><!-- ZZZ ED vs WD --><link href="obsolete.html" title="11 Obsolete features" rel="prev">
  <link href="Overview.html#contents" title="Table of contents" rel="index">
  <link href="iana-considerations.html" title="IANA considerations" rel="next">
  </head><body onload="fixBrokenLink(); fixBrokenLink()"><div class="head">
   <p><a href="http://www.w3.org/"><img alt="W3C" height="48" src="http://www.w3.org/Icons/w3c_home" width="72"></a></p>
   <h1>HTML 5</h1>
   <h2 class="no-num no-toc" id="a-vocabulary-and-associated-apis-for-html-and-xhtml">A vocabulary and associated APIs for HTML and XHTML</h2>
   </div><div>
   <a href="obsolete.html">&#8592; 11 Obsolete features</a> &#8211;
   <a href="Overview.html#contents">Table of contents</a> &#8211;
   <a href="iana-considerations.html">IANA considerations &#8594;</a>
  </div>

  <h2 id="no"><span class="secno">12 </span>Things that you can't do with this specification because
  they are better handled using other technologies that are further
  described herein</h2><p><i>This section is non-normative.</i></p><p>There are certain features that are not handled by this
  specification because a client side markup language is not the right
  level for them, or because the features exist in other languages
  that can be integrated into this one. This section covers some of
  the more common requests.</p><!-- There are also certain features that are not handled by this
  specification or any other, but that SHOULD be handled by another
  specification:

    * find object at (x,y)
      http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/elementfrompoint.asp
    * find mouse position
    * screen object: top left width height pixelDepth colorDepth
      availWidth availHeight availLeft availTop
    * methods/properties for managing scrolling, especially in <textarea>,
      such as .scrollTop and .scrollHeight in Mozilla
    * support access Array element via () instead of [] (IEism)
      https://bugzilla.mozilla.org/show_bug.cgi?id=289876
    * Need to say that NodeList's items are enumerable, so that
        for (var x in myNodeList) { }
      ...works. (ack Dethe Elza)
    * a way to show icons for file types
      e.g. http://www.gadgetopia.com/2004/05/04/FileIconTag.html
      (this should probably be a function for the 'content',
      'background-image' and 'list-style-image' properties in CSS)
    * custom syntax highlighting in <textarea>, <pre> (ack Ryan Johnson)
      (this would probably best be done as some sort of output filter
      at the CSS level, rather than anything HTML-specific. It would
      have to support both <textarea>, where the data isn't in the
      DOM proper, and <pre>, where it is.)

  XXX should ensure these are filed with the relevant people and groups
  --><h3 id="localization"><span class="secno">12.1 </span>Localization</h3><p>If you wish to create localized versions of an HTML application,
  the best solution is to preprocess the files on the server, and then
  use HTTP content negotiation to serve the appropriate language.</p><!-- <p>XXX example here</p> --><h3 id="declarative-3d-scenes"><span class="secno">12.2 </span>Declarative 3D scenes</h3><p>Embedding 3D imagery into XHTML documents is the domain of X3D,
  or technologies based on X3D that are namespace-aware.</p><!-- <p>XXX example here</p> --></body></html>

Received on Tuesday, 25 August 2009 23:22:04 UTC