[html5] r3074 - [] (0) Add the ability to annotate custom microdata in HTML.

whatwg at whatwg.org whatwg at whatwg.org
Sun May 10 03:32:36 PDT 2009


Author: ianh
Date: 2009-05-10 03:32:35 -0700 (Sun, 10 May 2009)
New Revision: 3074

Modified:
   index
   source
Log:
[] (0) Add the ability to annotate custom microdata in HTML.

Modified: index
===================================================================
--- index	2009-05-07 08:48:03 UTC (rev 3073)
+++ index	2009-05-10 10:32:35 UTC (rev 3074)
@@ -39,7 +39,7 @@
   <div class=head>
    <p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG src=/images/logo></a></p>
    <h1>HTML 5</h1>
-   <h2 class="no-num no-toc" id=draft-recommendation-—-date:-01-jan-1901>Draft Recommendation — 7 May 2009</h2>
+   <h2 class="no-num no-toc" id=draft-recommendation-—-date:-01-jan-1901>Draft Recommendation — 10 May 2009</h2>
    <p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
    <p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
    <dl><dt>Multiple-page version:</dt>
@@ -264,7 +264,8 @@
      <li><a href=#colors><span class=secno>2.4.6 </span>Colors</a></li>
      <li><a href=#space-separated-tokens><span class=secno>2.4.7 </span>Space-separated tokens</a></li>
      <li><a href=#comma-separated-tokens><span class=secno>2.4.8 </span>Comma-separated tokens</a></li>
-     <li><a href=#syntax-references><span class=secno>2.4.9 </span>References</a></ol></li>
+     <li><a href=#reversed-dns-identifiers><span class=secno>2.4.9 </span>Reversed DNS identifiers</a></li>
+     <li><a href=#syntax-references><span class=secno>2.4.10 </span>References</a></ol></li>
    <li><a href=#urls><span class=secno>2.5 </span>URLs</a>
     <ol>
      <li><a href=#terminology-0><span class=secno>2.5.1 </span>Terminology</a></li>
@@ -292,13 +293,15 @@
       <ol>
        <li><a href=#htmlcollection><span class=secno>2.9.2.1 </span>HTMLCollection</a></li>
        <li><a href=#htmlformcontrolscollection><span class=secno>2.9.2.2 </span>HTMLFormControlsCollection</a></li>
-       <li><a href=#htmloptionscollection><span class=secno>2.9.2.3 </span>HTMLOptionsCollection</a></ol></li>
+       <li><a href=#htmloptionscollection><span class=secno>2.9.2.3 </span>HTMLOptionsCollection</a></li>
+       <li><a href=#htmlpropertycollection><span class=secno>2.9.2.4 </span>HTMLPropertyCollection</a></ol></li>
      <li><a href=#domtokenlist><span class=secno>2.9.3 </span>DOMTokenList</a></li>
-     <li><a href=#safe-passing-of-structured-data><span class=secno>2.9.4 </span>Safe passing of structured data</a></li>
-     <li><a href=#domstringmap><span class=secno>2.9.5 </span>DOMStringMap</a></li>
-     <li><a href=#dom-feature-strings><span class=secno>2.9.6 </span>DOM feature strings</a></li>
-     <li><a href=#exceptions><span class=secno>2.9.7 </span>Exceptions</a></li>
-     <li><a href=#garbage-collection><span class=secno>2.9.8 </span>Garbage collection</a></ol></ol></li>
+     <li><a href=#domsettabletokenlist><span class=secno>2.9.4 </span>DOMSettableTokenList</a></li>
+     <li><a href=#safe-passing-of-structured-data><span class=secno>2.9.5 </span>Safe passing of structured data</a></li>
+     <li><a href=#domstringmap><span class=secno>2.9.6 </span>DOMStringMap</a></li>
+     <li><a href=#dom-feature-strings><span class=secno>2.9.7 </span>DOM feature strings</a></li>
+     <li><a href=#exceptions><span class=secno>2.9.8 </span>Exceptions</a></li>
+     <li><a href=#garbage-collection><span class=secno>2.9.9 </span>Garbage collection</a></ol></ol></li>
  <li><a href=#dom><span class=secno>3 </span>Semantics and structure of HTML documents</a>
   <ol>
    <li><a href=#semantics-intro><span class=secno>3.1 </span>Introduction</a></li>
@@ -660,391 +663,406 @@
      <li><a href=#the-legend-element><span class=secno>4.12.1 </span>The <code>legend</code> element</a></li>
      <li><a href=#the-div-element><span class=secno>4.12.2 </span>The <code>div</code> element</a></ol></li>
    <li><a href=#matching-html-elements-using-selectors><span class=secno>4.13 </span>Matching HTML elements using selectors</a></ol></li>
- <li><a href=#browsers><span class=secno>5 </span>Web browsers</a>
+ <li><a href=#microdata><span class=secno>5 </span>Microdata</a>
   <ol>
-   <li><a href=#windows><span class=secno>5.1 </span>Browsing contexts</a>
+   <li><a href=#introduction-2><span class=secno>5.1 </span>Introduction</a></li>
+   <li><a href=#encoding-microdata><span class=secno>5.2 </span>Encoding microdata</a>
     <ol>
-     <li><a href=#nested-browsing-contexts><span class=secno>5.1.1 </span>Nested browsing contexts</a>
+     <li><a href=#the-microdata-model><span class=secno>5.2.1 </span>The microdata model</a></li>
+     <li><a href=#items:-the-item-attribute><span class=secno>5.2.2 </span>Items: the <code>item</code> attribute</a></li>
+     <li><a href=#associating-names-with-items><span class=secno>5.2.3 </span>Associating names with items</a></li>
+     <li><a href=#names:-the-property-attribute><span class=secno>5.2.4 </span>Names: the <code>property</code> attribute</a></li>
+     <li><a href=#values><span class=secno>5.2.5 </span>Values</a></ol></li>
+   <li><a href=#microdata-dom-api><span class=secno>5.3 </span>Microdata DOM API</a></li>
+   <li><a href=#converting-html-to-oher-formats><span class=secno>5.4 </span>Converting HTML to oher formats</a>
+    <ol>
+     <li><a href=#json><span class=secno>5.4.1 </span>JSON</a></li>
+     <li><a href=#rdf><span class=secno>5.4.2 </span>RDF</a></ol></ol></li>
+ <li><a href=#browsers><span class=secno>6 </span>Web browsers</a>
+  <ol>
+   <li><a href=#windows><span class=secno>6.1 </span>Browsing contexts</a>
+    <ol>
+     <li><a href=#nested-browsing-contexts><span class=secno>6.1.1 </span>Nested browsing contexts</a>
       <ol>
-       <li><a href=#navigating-nested-browsing-contexts-in-the-dom><span class=secno>5.1.1.1 </span>Navigating nested browsing contexts in the DOM</a></ol></li>
-     <li><a href=#auxiliary-browsing-contexts><span class=secno>5.1.2 </span>Auxiliary browsing contexts</a>
+       <li><a href=#navigating-nested-browsing-contexts-in-the-dom><span class=secno>6.1.1.1 </span>Navigating nested browsing contexts in the DOM</a></ol></li>
+     <li><a href=#auxiliary-browsing-contexts><span class=secno>6.1.2 </span>Auxiliary browsing contexts</a>
       <ol>
-       <li><a href=#navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>5.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</a></ol></li>
-     <li><a href=#secondary-browsing-contexts><span class=secno>5.1.3 </span>Secondary browsing contexts</a></li>
-     <li><a href=#security-1><span class=secno>5.1.4 </span>Security</a></li>
-     <li><a href=#groupings-of-browsing-contexts><span class=secno>5.1.5 </span>Groupings of browsing contexts</a></li>
-     <li><a href=#browsing-context-names><span class=secno>5.1.6 </span>Browsing context names</a></ol></li>
-   <li><a href=#the-windowproxy-object><span class=secno>5.2 </span>The <code>WindowProxy</code> object</a></li>
-   <li><a href=#the-window-object><span class=secno>5.3 </span>The <code>Window</code> object</a>
+       <li><a href=#navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>6.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</a></ol></li>
+     <li><a href=#secondary-browsing-contexts><span class=secno>6.1.3 </span>Secondary browsing contexts</a></li>
+     <li><a href=#security-1><span class=secno>6.1.4 </span>Security</a></li>
+     <li><a href=#groupings-of-browsing-contexts><span class=secno>6.1.5 </span>Groupings of browsing contexts</a></li>
+     <li><a href=#browsing-context-names><span class=secno>6.1.6 </span>Browsing context names</a></ol></li>
+   <li><a href=#the-windowproxy-object><span class=secno>6.2 </span>The <code>WindowProxy</code> object</a></li>
+   <li><a href=#the-window-object><span class=secno>6.3 </span>The <code>Window</code> object</a>
     <ol>
-     <li><a href=#security-2><span class=secno>5.3.1 </span>Security</a></li>
-     <li><a href=#apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>5.3.2 </span>APIs for creating and navigating browsing contexts by name</a></li>
-     <li><a href=#accessing-other-browsing-contexts><span class=secno>5.3.3 </span>Accessing other browsing contexts</a></li>
-     <li><a href=#named-access-on-the-window-object><span class=secno>5.3.4 </span>Named access on the <code>Window</code> object</a></li>
-     <li><a href=#garbage-collection-and-browsing-contexts><span class=secno>5.3.5 </span>Garbage collection and browsing contexts</a></li>
-     <li><a href=#browser-interface-elements><span class=secno>5.3.6 </span>Browser interface elements</a></ol></li>
-   <li><a href=#origin><span class=secno>5.4 </span>Origin</a>
+     <li><a href=#security-2><span class=secno>6.3.1 </span>Security</a></li>
+     <li><a href=#apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>6.3.2 </span>APIs for creating and navigating browsing contexts by name</a></li>
+     <li><a href=#accessing-other-browsing-contexts><span class=secno>6.3.3 </span>Accessing other browsing contexts</a></li>
+     <li><a href=#named-access-on-the-window-object><span class=secno>6.3.4 </span>Named access on the <code>Window</code> object</a></li>
+     <li><a href=#garbage-collection-and-browsing-contexts><span class=secno>6.3.5 </span>Garbage collection and browsing contexts</a></li>
+     <li><a href=#browser-interface-elements><span class=secno>6.3.6 </span>Browser interface elements</a></ol></li>
+   <li><a href=#origin><span class=secno>6.4 </span>Origin</a>
     <ol>
-     <li><a href=#relaxing-the-same-origin-restriction><span class=secno>5.4.1 </span>Relaxing the same-origin restriction</a></ol></li>
-   <li><a href=#scripting><span class=secno>5.5 </span>Scripting</a>
+     <li><a href=#relaxing-the-same-origin-restriction><span class=secno>6.4.1 </span>Relaxing the same-origin restriction</a></ol></li>
+   <li><a href=#scripting><span class=secno>6.5 </span>Scripting</a>
     <ol>
-     <li><a href=#introduction-2><span class=secno>5.5.1 </span>Introduction</a></li>
-     <li><a href=#enabling-and-disabling-scripting><span class=secno>5.5.2 </span>Enabling and disabling scripting</a></li>
-     <li><a href=#processing-model-1><span class=secno>5.5.3 </span>Processing model</a>
+     <li><a href=#introduction-3><span class=secno>6.5.1 </span>Introduction</a></li>
+     <li><a href=#enabling-and-disabling-scripting><span class=secno>6.5.2 </span>Enabling and disabling scripting</a></li>
+     <li><a href=#processing-model-1><span class=secno>6.5.3 </span>Processing model</a>
       <ol>
-       <li><a href=#definitions-0><span class=secno>5.5.3.1 </span>Definitions</a></li>
-       <li><a href=#calling-scripts><span class=secno>5.5.3.2 </span>Calling scripts</a></li>
-       <li><a href=#creating-scripts><span class=secno>5.5.3.3 </span>Creating scripts</a></li>
-       <li><a href=#killing-scripts><span class=secno>5.5.3.4 </span>Killing scripts</a></ol></li>
-     <li><a href=#event-loops><span class=secno>5.5.4 </span>Event loops</a>
+       <li><a href=#definitions-0><span class=secno>6.5.3.1 </span>Definitions</a></li>
+       <li><a href=#calling-scripts><span class=secno>6.5.3.2 </span>Calling scripts</a></li>
+       <li><a href=#creating-scripts><span class=secno>6.5.3.3 </span>Creating scripts</a></li>
+       <li><a href=#killing-scripts><span class=secno>6.5.3.4 </span>Killing scripts</a></ol></li>
+     <li><a href=#event-loops><span class=secno>6.5.4 </span>Event loops</a>
       <ol>
-       <li><a href=#definitions-1><span class=secno>5.5.4.1 </span>Definitions</a></li>
-       <li><a href=#processing-model-2><span class=secno>5.5.4.2 </span>Processing model</a></li>
-       <li><a href=#generic-task-sources><span class=secno>5.5.4.3 </span>Generic task sources</a></ol></li>
-     <li><a href=#javascript-protocol><span class=secno>5.5.5 </span>The <code title="">javascript:</code> protocol</a></li>
-     <li><a href=#events><span class=secno>5.5.6 </span>Events</a>
+       <li><a href=#definitions-1><span class=secno>6.5.4.1 </span>Definitions</a></li>
+       <li><a href=#processing-model-2><span class=secno>6.5.4.2 </span>Processing model</a></li>
+       <li><a href=#generic-task-sources><span class=secno>6.5.4.3 </span>Generic task sources</a></ol></li>
+     <li><a href=#javascript-protocol><span class=secno>6.5.5 </span>The <code title="">javascript:</code> protocol</a></li>
+     <li><a href=#events><span class=secno>6.5.6 </span>Events</a>
       <ol>
-       <li><a href=#event-handler-attributes><span class=secno>5.5.6.1 </span>Event handler attributes</a></li>
-       <li><a href=#event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>5.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code>Window</code> objects</a></li>
-       <li><a href=#event-firing><span class=secno>5.5.6.3 </span>Event firing</a></li>
-       <li><a href=#events-and-the-window-object><span class=secno>5.5.6.4 </span>Events and the <code>Window</code> object</a></li>
-       <li><a href=#runtime-script-errors><span class=secno>5.5.6.5 </span>Runtime script errors</a></ol></ol></li>
-   <li><a href=#timers><span class=secno>5.6 </span>Timers</a></li>
-   <li><a href=#user-prompts><span class=secno>5.7 </span>User prompts</a>
+       <li><a href=#event-handler-attributes><span class=secno>6.5.6.1 </span>Event handler attributes</a></li>
+       <li><a href=#event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>6.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code>Window</code> objects</a></li>
+       <li><a href=#event-firing><span class=secno>6.5.6.3 </span>Event firing</a></li>
+       <li><a href=#events-and-the-window-object><span class=secno>6.5.6.4 </span>Events and the <code>Window</code> object</a></li>
+       <li><a href=#runtime-script-errors><span class=secno>6.5.6.5 </span>Runtime script errors</a></ol></ol></li>
+   <li><a href=#timers><span class=secno>6.6 </span>Timers</a></li>
+   <li><a href=#user-prompts><span class=secno>6.7 </span>User prompts</a>
     <ol>
-     <li><a href=#simple-dialogs><span class=secno>5.7.1 </span>Simple dialogs</a></li>
-     <li><a href=#printing><span class=secno>5.7.2 </span>Printing</a></li>
-     <li><a href=#dialogs-implemented-using-separate-documents><span class=secno>5.7.3 </span>Dialogs implemented using separate documents</a></ol></li>
-   <li><a href=#system-state-and-capabilities><span class=secno>5.8 </span>System state and capabilities</a>
+     <li><a href=#simple-dialogs><span class=secno>6.7.1 </span>Simple dialogs</a></li>
+     <li><a href=#printing><span class=secno>6.7.2 </span>Printing</a></li>
+     <li><a href=#dialogs-implemented-using-separate-documents><span class=secno>6.7.3 </span>Dialogs implemented using separate documents</a></ol></li>
+   <li><a href=#system-state-and-capabilities><span class=secno>6.8 </span>System state and capabilities</a>
     <ol>
-     <li><a href=#client-identification><span class=secno>5.8.1 </span>Client identification</a></li>
-     <li><a href=#custom-handlers><span class=secno>5.8.2 </span>Custom protocol and content handlers</a>
+     <li><a href=#client-identification><span class=secno>6.8.1 </span>Client identification</a></li>
+     <li><a href=#custom-handlers><span class=secno>6.8.2 </span>Custom protocol and content handlers</a>
       <ol>
-       <li><a href=#security-and-privacy><span class=secno>5.8.2.1 </span>Security and privacy</a></li>
-       <li><a href=#sample-handler-impl><span class=secno>5.8.2.2 </span>Sample user interface</a></ol></li>
-     <li><a href=#manually-releasing-the-storage-mutex><span class=secno>5.8.3 </span>Manually releasing the storage mutex</a></ol></li>
-   <li><a href=#offline><span class=secno>5.9 </span>Offline Web applications</a>
+       <li><a href=#security-and-privacy><span class=secno>6.8.2.1 </span>Security and privacy</a></li>
+       <li><a href=#sample-handler-impl><span class=secno>6.8.2.2 </span>Sample user interface</a></ol></li>
+     <li><a href=#manually-releasing-the-storage-mutex><span class=secno>6.8.3 </span>Manually releasing the storage mutex</a></ol></li>
+   <li><a href=#offline><span class=secno>6.9 </span>Offline Web applications</a>
     <ol>
-     <li><a href=#introduction-3><span class=secno>5.9.1 </span>Introduction</a></li>
-     <li><a href=#appcache><span class=secno>5.9.2 </span>Application caches</a></li>
-     <li><a href=#manifests><span class=secno>5.9.3 </span>The cache manifest syntax</a>
+     <li><a href=#introduction-4><span class=secno>6.9.1 </span>Introduction</a></li>
+     <li><a href=#appcache><span class=secno>6.9.2 </span>Application caches</a></li>
+     <li><a href=#manifests><span class=secno>6.9.3 </span>The cache manifest syntax</a>
       <ol>
-       <li><a href=#a-sample-manifest><span class=secno>5.9.3.1 </span>A sample manifest</a></li>
-       <li><a href=#writing-cache-manifests><span class=secno>5.9.3.2 </span>Writing cache manifests</a></li>
-       <li><a href=#parsing-cache-manifests><span class=secno>5.9.3.3 </span>Parsing cache manifests</a></ol></li>
-     <li><a href=#updating-an-application-cache><span class=secno>5.9.4 </span>Updating an application cache</a></li>
-     <li><a href=#matching-a-fallback-namespace><span class=secno>5.9.5 </span>Matching a fallback namespace</a></li>
-     <li><a href=#the-application-cache-selection-algorithm><span class=secno>5.9.6 </span>The application cache selection algorithm</a></li>
-     <li><a href=#changesToNetworkingModel><span class=secno>5.9.7 </span>Changes to the networking model</a></li>
-     <li><a href=#application-cache-api><span class=secno>5.9.8 </span>Application cache API</a></li>
-     <li><a href=#browser-state><span class=secno>5.9.9 </span>Browser state</a></ol></li>
-   <li><a href=#history><span class=secno>5.10 </span>Session history and navigation</a>
+       <li><a href=#a-sample-manifest><span class=secno>6.9.3.1 </span>A sample manifest</a></li>
+       <li><a href=#writing-cache-manifests><span class=secno>6.9.3.2 </span>Writing cache manifests</a></li>
+       <li><a href=#parsing-cache-manifests><span class=secno>6.9.3.3 </span>Parsing cache manifests</a></ol></li>
+     <li><a href=#updating-an-application-cache><span class=secno>6.9.4 </span>Updating an application cache</a></li>
+     <li><a href=#matching-a-fallback-namespace><span class=secno>6.9.5 </span>Matching a fallback namespace</a></li>
+     <li><a href=#the-application-cache-selection-algorithm><span class=secno>6.9.6 </span>The application cache selection algorithm</a></li>
+     <li><a href=#changesToNetworkingModel><span class=secno>6.9.7 </span>Changes to the networking model</a></li>
+     <li><a href=#application-cache-api><span class=secno>6.9.8 </span>Application cache API</a></li>
+     <li><a href=#browser-state><span class=secno>6.9.9 </span>Browser state</a></ol></li>
+   <li><a href=#history><span class=secno>6.10 </span>Session history and navigation</a>
     <ol>
-     <li><a href=#the-session-history-of-browsing-contexts><span class=secno>5.10.1 </span>The session history of browsing contexts</a></li>
-     <li><a href=#the-history-interface><span class=secno>5.10.2 </span>The <code>History</code> interface</a></li>
-     <li><a href=#activating-state-object-entries><span class=secno>5.10.3 </span>Activating state object entries</a></li>
-     <li><a href=#the-location-interface><span class=secno>5.10.4 </span>The <code>Location</code> interface</a>
+     <li><a href=#the-session-history-of-browsing-contexts><span class=secno>6.10.1 </span>The session history of browsing contexts</a></li>
+     <li><a href=#the-history-interface><span class=secno>6.10.2 </span>The <code>History</code> interface</a></li>
+     <li><a href=#activating-state-object-entries><span class=secno>6.10.3 </span>Activating state object entries</a></li>
+     <li><a href=#the-location-interface><span class=secno>6.10.4 </span>The <code>Location</code> interface</a>
       <ol>
-       <li><a href=#security-3><span class=secno>5.10.4.1 </span>Security</a></ol></li>
-     <li><a href=#history-notes><span class=secno>5.10.5 </span>Implementation notes for session history</a></ol></li>
-   <li><a href=#browsing-the-web><span class=secno>5.11 </span>Browsing the Web</a>
+       <li><a href=#security-3><span class=secno>6.10.4.1 </span>Security</a></ol></li>
+     <li><a href=#history-notes><span class=secno>6.10.5 </span>Implementation notes for session history</a></ol></li>
+   <li><a href=#browsing-the-web><span class=secno>6.11 </span>Browsing the Web</a>
     <ol>
-     <li><a href=#navigating-across-documents><span class=secno>5.11.1 </span>Navigating across documents</a></li>
-     <li><a href=#read-html><span class=secno>5.11.2 </span>Page load processing model for HTML files</a></li>
-     <li><a href=#read-xml><span class=secno>5.11.3 </span>Page load processing model for XML files</a></li>
-     <li><a href=#read-text><span class=secno>5.11.4 </span>Page load processing model for text files</a></li>
-     <li><a href=#read-image><span class=secno>5.11.5 </span>Page load processing model for images</a></li>
-     <li><a href=#read-plugin><span class=secno>5.11.6 </span>Page load processing model for content that uses plugins</a></li>
-     <li><a href=#read-ua-inline><span class=secno>5.11.7 </span>Page load processing model for inline content that doesn't have a DOM</a></li>
-     <li><a href=#scroll-to-fragid><span class=secno>5.11.8 </span>Navigating to a fragment identifier</a></li>
-     <li><a href=#history-traversal><span class=secno>5.11.9 </span>History traversal</a></li>
-     <li><a href=#unloading-documents><span class=secno>5.11.10 </span>Unloading documents</a>
+     <li><a href=#navigating-across-documents><span class=secno>6.11.1 </span>Navigating across documents</a></li>
+     <li><a href=#read-html><span class=secno>6.11.2 </span>Page load processing model for HTML files</a></li>
+     <li><a href=#read-xml><span class=secno>6.11.3 </span>Page load processing model for XML files</a></li>
+     <li><a href=#read-text><span class=secno>6.11.4 </span>Page load processing model for text files</a></li>
+     <li><a href=#read-image><span class=secno>6.11.5 </span>Page load processing model for images</a></li>
+     <li><a href=#read-plugin><span class=secno>6.11.6 </span>Page load processing model for content that uses plugins</a></li>
+     <li><a href=#read-ua-inline><span class=secno>6.11.7 </span>Page load processing model for inline content that doesn't have a DOM</a></li>
+     <li><a href=#scroll-to-fragid><span class=secno>6.11.8 </span>Navigating to a fragment identifier</a></li>
+     <li><a href=#history-traversal><span class=secno>6.11.9 </span>History traversal</a></li>
+     <li><a href=#unloading-documents><span class=secno>6.11.10 </span>Unloading documents</a>
       <ol>
-       <li><a href=#event-definition><span class=secno>5.11.10.1 </span>Event definition</a></ol></ol></li>
-   <li><a href=#links><span class=secno>5.12 </span>Links</a>
+       <li><a href=#event-definition><span class=secno>6.11.10.1 </span>Event definition</a></ol></ol></li>
+   <li><a href=#links><span class=secno>6.12 </span>Links</a>
     <ol>
-     <li><a href=#hyperlink-elements><span class=secno>5.12.1 </span>Hyperlink elements</a></li>
-     <li><a href=#following-hyperlinks><span class=secno>5.12.2 </span>Following hyperlinks</a>
+     <li><a href=#hyperlink-elements><span class=secno>6.12.1 </span>Hyperlink elements</a></li>
+     <li><a href=#following-hyperlinks><span class=secno>6.12.2 </span>Following hyperlinks</a>
       <ol>
-       <li><a href=#hyperlink-auditing><span class=secno>5.12.2.1 </span>Hyperlink auditing</a></ol></li>
-     <li><a href=#linkTypes><span class=secno>5.12.3 </span>Link types</a>
+       <li><a href=#hyperlink-auditing><span class=secno>6.12.2.1 </span>Hyperlink auditing</a></ol></li>
+     <li><a href=#linkTypes><span class=secno>6.12.3 </span>Link types</a>
       <ol>
-       <li><a href=#link-type-alternate><span class=secno>5.12.3.1 </span>Link type "<code>alternate</code>"</a></li>
-       <li><a href=#link-type-archives><span class=secno>5.12.3.2 </span>Link type "<code>archives</code>"</a></li>
-       <li><a href=#link-type-author><span class=secno>5.12.3.3 </span>Link type "<code>author</code>"</a></li>
-       <li><a href=#link-type-bookmark><span class=secno>5.12.3.4 </span>Link type "<code>bookmark</code>"</a></li>
-       <li><a href=#link-type-external><span class=secno>5.12.3.5 </span>Link type "<code>external</code>"</a></li>
-       <li><a href=#link-type-feed><span class=secno>5.12.3.6 </span>Link type "<code>feed</code>"</a></li>
-       <li><a href=#link-type-help><span class=secno>5.12.3.7 </span>Link type "<code>help</code>"</a></li>
-       <li><a href=#rel-icon><span class=secno>5.12.3.8 </span>Link type "<code>icon</code>"</a></li>
-       <li><a href=#link-type-license><span class=secno>5.12.3.9 </span>Link type "<code>license</code>"</a></li>
-       <li><a href=#link-type-nofollow><span class=secno>5.12.3.10 </span>Link type "<code>nofollow</code>"</a></li>
-       <li><a href=#link-type-noreferrer><span class=secno>5.12.3.11 </span>Link type "<code>noreferrer</code>"</a></li>
-       <li><a href=#link-type-pingback><span class=secno>5.12.3.12 </span>Link type "<code>pingback</code>"</a></li>
-       <li><a href=#link-type-prefetch><span class=secno>5.12.3.13 </span>Link type "<code>prefetch</code>"</a></li>
-       <li><a href=#link-type-search><span class=secno>5.12.3.14 </span>Link type "<code>search</code>"</a></li>
-       <li><a href=#link-type-stylesheet><span class=secno>5.12.3.15 </span>Link type "<code>stylesheet</code>"</a></li>
-       <li><a href=#link-type-sidebar><span class=secno>5.12.3.16 </span>Link type "<code>sidebar</code>"</a></li>
-       <li><a href=#link-type-tag><span class=secno>5.12.3.17 </span>Link type "<code>tag</code>"</a></li>
-       <li><a href=#hierarchical-link-types><span class=secno>5.12.3.18 </span>Hierarchical link types</a>
+       <li><a href=#link-type-alternate><span class=secno>6.12.3.1 </span>Link type "<code>alternate</code>"</a></li>
+       <li><a href=#link-type-archives><span class=secno>6.12.3.2 </span>Link type "<code>archives</code>"</a></li>
+       <li><a href=#link-type-author><span class=secno>6.12.3.3 </span>Link type "<code>author</code>"</a></li>
+       <li><a href=#link-type-bookmark><span class=secno>6.12.3.4 </span>Link type "<code>bookmark</code>"</a></li>
+       <li><a href=#link-type-external><span class=secno>6.12.3.5 </span>Link type "<code>external</code>"</a></li>
+       <li><a href=#link-type-feed><span class=secno>6.12.3.6 </span>Link type "<code>feed</code>"</a></li>
+       <li><a href=#link-type-help><span class=secno>6.12.3.7 </span>Link type "<code>help</code>"</a></li>
+       <li><a href=#rel-icon><span class=secno>6.12.3.8 </span>Link type "<code>icon</code>"</a></li>
+       <li><a href=#link-type-license><span class=secno>6.12.3.9 </span>Link type "<code>license</code>"</a></li>
+       <li><a href=#link-type-nofollow><span class=secno>6.12.3.10 </span>Link type "<code>nofollow</code>"</a></li>
+       <li><a href=#link-type-noreferrer><span class=secno>6.12.3.11 </span>Link type "<code>noreferrer</code>"</a></li>
+       <li><a href=#link-type-pingback><span class=secno>6.12.3.12 </span>Link type "<code>pingback</code>"</a></li>
+       <li><a href=#link-type-prefetch><span class=secno>6.12.3.13 </span>Link type "<code>prefetch</code>"</a></li>
+       <li><a href=#link-type-search><span class=secno>6.12.3.14 </span>Link type "<code>search</code>"</a></li>
+       <li><a href=#link-type-stylesheet><span class=secno>6.12.3.15 </span>Link type "<code>stylesheet</code>"</a></li>
+       <li><a href=#link-type-sidebar><span class=secno>6.12.3.16 </span>Link type "<code>sidebar</code>"</a></li>
+       <li><a href=#link-type-tag><span class=secno>6.12.3.17 </span>Link type "<code>tag</code>"</a></li>
+       <li><a href=#hierarchical-link-types><span class=secno>6.12.3.18 </span>Hierarchical link types</a>
         <ol>
-         <li><a href=#link-type-index><span class=secno>5.12.3.18.1 </span>Link type "<code>index</code>"</a></li>
-         <li><a href=#link-type-up><span class=secno>5.12.3.18.2 </span>Link type "<code>up</code>"</a></ol></li>
-       <li><a href=#sequential-link-types><span class=secno>5.12.3.19 </span>Sequential link types</a>
+         <li><a href=#link-type-index><span class=secno>6.12.3.18.1 </span>Link type "<code>index</code>"</a></li>
+         <li><a href=#link-type-up><span class=secno>6.12.3.18.2 </span>Link type "<code>up</code>"</a></ol></li>
+       <li><a href=#sequential-link-types><span class=secno>6.12.3.19 </span>Sequential link types</a>
         <ol>
-         <li><a href=#link-type-first><span class=secno>5.12.3.19.1 </span>Link type "<code>first</code>"</a></li>
-         <li><a href=#link-type-last><span class=secno>5.12.3.19.2 </span>Link type "<code>last</code>"</a></li>
-         <li><a href=#link-type-next><span class=secno>5.12.3.19.3 </span>Link type "<code>next</code>"</a></li>
-         <li><a href=#link-type-prev><span class=secno>5.12.3.19.4 </span>Link type "<code>prev</code>"</a></ol></li>
-       <li><a href=#other-link-types><span class=secno>5.12.3.20 </span>Other link types</a></ol></ol></ol></li>
- <li><a href=#editing><span class=secno>6 </span>User Interaction</a>
+         <li><a href=#link-type-first><span class=secno>6.12.3.19.1 </span>Link type "<code>first</code>"</a></li>
+         <li><a href=#link-type-last><span class=secno>6.12.3.19.2 </span>Link type "<code>last</code>"</a></li>
+         <li><a href=#link-type-next><span class=secno>6.12.3.19.3 </span>Link type "<code>next</code>"</a></li>
+         <li><a href=#link-type-prev><span class=secno>6.12.3.19.4 </span>Link type "<code>prev</code>"</a></ol></li>
+       <li><a href=#other-link-types><span class=secno>6.12.3.20 </span>Other link types</a></ol></ol></ol></li>
+ <li><a href=#editing><span class=secno>7 </span>User Interaction</a>
   <ol>
-   <li><a href=#editing-intro><span class=secno>6.1 </span>Introduction</a></li>
-   <li><a href=#the-hidden-attribute><span class=secno>6.2 </span>The <code>hidden</code> attribute</a></li>
-   <li><a href=#activation><span class=secno>6.3 </span>Activation</a></li>
-   <li><a href=#scrolling-elements-into-view><span class=secno>6.4 </span>Scrolling elements into view</a></li>
-   <li><a href=#focus><span class=secno>6.5 </span>Focus</a>
+   <li><a href=#editing-intro><span class=secno>7.1 </span>Introduction</a></li>
+   <li><a href=#the-hidden-attribute><span class=secno>7.2 </span>The <code>hidden</code> attribute</a></li>
+   <li><a href=#activation><span class=secno>7.3 </span>Activation</a></li>
+   <li><a href=#scrolling-elements-into-view><span class=secno>7.4 </span>Scrolling elements into view</a></li>
+   <li><a href=#focus><span class=secno>7.5 </span>Focus</a>
     <ol>
-     <li><a href=#sequential-focus-navigation><span class=secno>6.5.1 </span>Sequential focus navigation</a></li>
-     <li><a href=#focus-management><span class=secno>6.5.2 </span>Focus management</a></li>
-     <li><a href=#document-level-focus-apis><span class=secno>6.5.3 </span>Document-level focus APIs</a></li>
-     <li><a href=#element-level-focus-apis><span class=secno>6.5.4 </span>Element-level focus APIs</a></ol></li>
-   <li><a href=#the-accesskey-attribute><span class=secno>6.6 </span>The <code>accesskey</code> attribute</a></li>
-   <li><a href=#selection><span class=secno>6.7 </span>The text selection APIs</a>
+     <li><a href=#sequential-focus-navigation><span class=secno>7.5.1 </span>Sequential focus navigation</a></li>
+     <li><a href=#focus-management><span class=secno>7.5.2 </span>Focus management</a></li>
+     <li><a href=#document-level-focus-apis><span class=secno>7.5.3 </span>Document-level focus APIs</a></li>
+     <li><a href=#element-level-focus-apis><span class=secno>7.5.4 </span>Element-level focus APIs</a></ol></li>
+   <li><a href=#the-accesskey-attribute><span class=secno>7.6 </span>The <code>accesskey</code> attribute</a></li>
+   <li><a href=#selection><span class=secno>7.7 </span>The text selection APIs</a>
     <ol>
-     <li><a href=#documentSelection><span class=secno>6.7.1 </span>APIs for the browsing context selection</a></li>
-     <li><a href=#textFieldSelection><span class=secno>6.7.2 </span>APIs for the text field selections</a></ol></li>
-   <li><a href=#contenteditable><span class=secno>6.8 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
+     <li><a href=#documentSelection><span class=secno>7.7.1 </span>APIs for the browsing context selection</a></li>
+     <li><a href=#textFieldSelection><span class=secno>7.7.2 </span>APIs for the text field selections</a></ol></li>
+   <li><a href=#contenteditable><span class=secno>7.8 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
     <ol>
-     <li><a href=#user-editing-actions><span class=secno>6.8.1 </span>User editing actions</a></li>
-     <li><a href=#making-entire-documents-editable><span class=secno>6.8.2 </span>Making entire documents editable</a></ol></li>
-   <li><a href=#spelling-and-grammar-checking><span class=secno>6.9 </span>Spelling and grammar checking</a></li>
-   <li><a href=#dnd><span class=secno>6.10 </span>Drag and drop</a>
+     <li><a href=#user-editing-actions><span class=secno>7.8.1 </span>User editing actions</a></li>
+     <li><a href=#making-entire-documents-editable><span class=secno>7.8.2 </span>Making entire documents editable</a></ol></li>
+   <li><a href=#spelling-and-grammar-checking><span class=secno>7.9 </span>Spelling and grammar checking</a></li>
+   <li><a href=#dnd><span class=secno>7.10 </span>Drag and drop</a>
     <ol>
-     <li><a href=#introduction-4><span class=secno>6.10.1 </span>Introduction</a></li>
-     <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>6.10.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
-     <li><a href=#events-fired-during-a-drag-and-drop-action><span class=secno>6.10.3 </span>Events fired during a drag-and-drop action</a></li>
-     <li><a href=#drag-and-drop-processing-model><span class=secno>6.10.4 </span>Drag-and-drop processing model</a>
+     <li><a href=#introduction-5><span class=secno>7.10.1 </span>Introduction</a></li>
+     <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>7.10.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
+     <li><a href=#events-fired-during-a-drag-and-drop-action><span class=secno>7.10.3 </span>Events fired during a drag-and-drop action</a></li>
+     <li><a href=#drag-and-drop-processing-model><span class=secno>7.10.4 </span>Drag-and-drop processing model</a>
       <ol>
-       <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>6.10.4.1 </span>When the drag-and-drop operation starts or ends in another
+       <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>7.10.4.1 </span>When the drag-and-drop operation starts or ends in another
   document</a></li>
-       <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>6.10.4.2 </span>When the drag-and-drop operation starts or ends in another
+       <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>7.10.4.2 </span>When the drag-and-drop operation starts or ends in another
   application</a></ol></li>
-     <li><a href=#the-draggable-attribute><span class=secno>6.10.5 </span>The <code>draggable</code> attribute</a></li>
-     <li><a href=#copy-and-paste><span class=secno>6.10.6 </span>Copy and paste</a>
+     <li><a href=#the-draggable-attribute><span class=secno>7.10.5 </span>The <code>draggable</code> attribute</a></li>
+     <li><a href=#copy-and-paste><span class=secno>7.10.6 </span>Copy and paste</a>
       <ol>
-       <li><a href=#copy-to-clipboard><span class=secno>6.10.6.1 </span>Copy to clipboard</a></li>
-       <li><a href=#cut-to-clipboard><span class=secno>6.10.6.2 </span>Cut to clipboard</a></li>
-       <li><a href=#paste-from-clipboard><span class=secno>6.10.6.3 </span>Paste from clipboard</a></li>
-       <li><a href=#paste-from-selection><span class=secno>6.10.6.4 </span>Paste from selection</a></ol></li>
-     <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>6.10.7 </span>Security risks in the drag-and-drop model</a></ol></li>
-   <li><a href=#undo><span class=secno>6.11 </span>Undo history</a>
+       <li><a href=#copy-to-clipboard><span class=secno>7.10.6.1 </span>Copy to clipboard</a></li>
+       <li><a href=#cut-to-clipboard><span class=secno>7.10.6.2 </span>Cut to clipboard</a></li>
+       <li><a href=#paste-from-clipboard><span class=secno>7.10.6.3 </span>Paste from clipboard</a></li>
+       <li><a href=#paste-from-selection><span class=secno>7.10.6.4 </span>Paste from selection</a></ol></li>
+     <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>7.10.7 </span>Security risks in the drag-and-drop model</a></ol></li>
+   <li><a href=#undo><span class=secno>7.11 </span>Undo history</a>
     <ol>
-     <li><a href=#introduction-5><span class=secno>6.11.1 </span>Introduction</a></li>
-     <li><a href=#definitions-2><span class=secno>6.11.2 </span>Definitions</a></li>
-     <li><a href=#the-undomanager-interface><span class=secno>6.11.3 </span>The <code>UndoManager</code> interface</a></li>
-     <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>6.11.4 </span>Undo: moving back in the undo transaction history</a></li>
-     <li><a href=#redo:-moving-forward-in-the-undo-transaction-history><span class=secno>6.11.5 </span>Redo: moving forward in the undo transaction history</a></li>
-     <li><a href=#the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>6.11.6 </span>The <code>UndoManagerEvent</code> interface and the <code title=event-undo>undo</code> and <code title=event-redo>redo</code> events</a></li>
-     <li><a href=#implementation-notes><span class=secno>6.11.7 </span>Implementation notes</a></ol></li>
-   <li><a href=#editing-apis><span class=secno>6.12 </span>Editing APIs</a></ol></li>
- <li><a href=#comms><span class=secno>7 </span>Communication</a>
+     <li><a href=#introduction-6><span class=secno>7.11.1 </span>Introduction</a></li>
+     <li><a href=#definitions-2><span class=secno>7.11.2 </span>Definitions</a></li>
+     <li><a href=#the-undomanager-interface><span class=secno>7.11.3 </span>The <code>UndoManager</code> interface</a></li>
+     <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>7.11.4 </span>Undo: moving back in the undo transaction history</a></li>
+     <li><a href=#redo:-moving-forward-in-the-undo-transaction-history><span class=secno>7.11.5 </span>Redo: moving forward in the undo transaction history</a></li>
+     <li><a href=#the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>7.11.6 </span>The <code>UndoManagerEvent</code> interface and the <code title=event-undo>undo</code> and <code title=event-redo>redo</code> events</a></li>
+     <li><a href=#implementation-notes><span class=secno>7.11.7 </span>Implementation notes</a></ol></li>
+   <li><a href=#editing-apis><span class=secno>7.12 </span>Editing APIs</a></ol></li>
+ <li><a href=#comms><span class=secno>8 </span>Communication</a>
   <ol>
-   <li><a href=#event-definitions><span class=secno>7.1 </span>Event definitions</a></li>
-   <li><a href=#crossDocumentMessages><span class=secno>7.2 </span>Cross-document messaging</a>
+   <li><a href=#event-definitions><span class=secno>8.1 </span>Event definitions</a></li>
+   <li><a href=#crossDocumentMessages><span class=secno>8.2 </span>Cross-document messaging</a>
     <ol>
-     <li><a href=#introduction-6><span class=secno>7.2.1 </span>Introduction</a></li>
-     <li><a href=#security-4><span class=secno>7.2.2 </span>Security</a>
+     <li><a href=#introduction-7><span class=secno>8.2.1 </span>Introduction</a></li>
+     <li><a href=#security-4><span class=secno>8.2.2 </span>Security</a>
       <ol>
-       <li><a href=#authors><span class=secno>7.2.2.1 </span>Authors</a></li>
-       <li><a href=#user-agents><span class=secno>7.2.2.2 </span>User agents</a></ol></li>
-     <li><a href=#posting-messages><span class=secno>7.2.3 </span>Posting messages</a></li>
-     <li><a href=#posting-messages-with-message-ports><span class=secno>7.2.4 </span>Posting messages with message ports</a></ol></li>
-   <li><a href=#channel-messaging><span class=secno>7.3 </span>Channel messaging</a>
+       <li><a href=#authors><span class=secno>8.2.2.1 </span>Authors</a></li>
+       <li><a href=#user-agents><span class=secno>8.2.2.2 </span>User agents</a></ol></li>
+     <li><a href=#posting-messages><span class=secno>8.2.3 </span>Posting messages</a></li>
+     <li><a href=#posting-messages-with-message-ports><span class=secno>8.2.4 </span>Posting messages with message ports</a></ol></li>
+   <li><a href=#channel-messaging><span class=secno>8.3 </span>Channel messaging</a>
     <ol>
-     <li><a href=#introduction-7><span class=secno>7.3.1 </span>Introduction</a></li>
-     <li><a href=#message-channels><span class=secno>7.3.2 </span>Message channels</a></li>
-     <li><a href=#message-ports><span class=secno>7.3.3 </span>Message ports</a>
+     <li><a href=#introduction-8><span class=secno>8.3.1 </span>Introduction</a></li>
+     <li><a href=#message-channels><span class=secno>8.3.2 </span>Message channels</a></li>
+     <li><a href=#message-ports><span class=secno>8.3.3 </span>Message ports</a>
       <ol>
-       <li><a href=#ports-and-garbage-collection><span class=secno>7.3.3.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
- <li><a href=#syntax><span class=secno>8 </span>The HTML syntax</a>
+       <li><a href=#ports-and-garbage-collection><span class=secno>8.3.3.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
+ <li><a href=#syntax><span class=secno>9 </span>The HTML syntax</a>
   <ol>
-   <li><a href=#writing-html-documents><span class=secno>8.1 </span>Writing HTML documents</a>
+   <li><a href=#writing-html-documents><span class=secno>9.1 </span>Writing HTML documents</a>
     <ol>
-     <li><a href=#the-doctype><span class=secno>8.1.1 </span>The DOCTYPE</a></li>
-     <li><a href=#elements-0><span class=secno>8.1.2 </span>Elements</a>
+     <li><a href=#the-doctype><span class=secno>9.1.1 </span>The DOCTYPE</a></li>
+     <li><a href=#elements-0><span class=secno>9.1.2 </span>Elements</a>
       <ol>
-       <li><a href=#start-tags><span class=secno>8.1.2.1 </span>Start tags</a></li>
-       <li><a href=#end-tags><span class=secno>8.1.2.2 </span>End tags</a></li>
-       <li><a href=#attributes><span class=secno>8.1.2.3 </span>Attributes</a></li>
-       <li><a href=#optional-tags><span class=secno>8.1.2.4 </span>Optional tags</a></li>
-       <li><a href=#element-restrictions><span class=secno>8.1.2.5 </span>Restrictions on content models</a></li>
-       <li><a href=#cdata-rcdata-restrictions><span class=secno>8.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</a></ol></li>
-     <li><a href=#text-0><span class=secno>8.1.3 </span>Text</a>
+       <li><a href=#start-tags><span class=secno>9.1.2.1 </span>Start tags</a></li>
+       <li><a href=#end-tags><span class=secno>9.1.2.2 </span>End tags</a></li>
+       <li><a href=#attributes><span class=secno>9.1.2.3 </span>Attributes</a></li>
+       <li><a href=#optional-tags><span class=secno>9.1.2.4 </span>Optional tags</a></li>
+       <li><a href=#element-restrictions><span class=secno>9.1.2.5 </span>Restrictions on content models</a></li>
+       <li><a href=#cdata-rcdata-restrictions><span class=secno>9.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</a></ol></li>
+     <li><a href=#text-0><span class=secno>9.1.3 </span>Text</a>
       <ol>
-       <li><a href=#newlines><span class=secno>8.1.3.1 </span>Newlines</a></ol></li>
-     <li><a href=#character-references><span class=secno>8.1.4 </span>Character references</a></li>
-     <li><a href=#cdata-sections><span class=secno>8.1.5 </span>CDATA sections</a></li>
-     <li><a href=#comments><span class=secno>8.1.6 </span>Comments</a></ol></li>
-   <li><a href=#parsing><span class=secno>8.2 </span>Parsing HTML documents</a>
+       <li><a href=#newlines><span class=secno>9.1.3.1 </span>Newlines</a></ol></li>
+     <li><a href=#character-references><span class=secno>9.1.4 </span>Character references</a></li>
+     <li><a href=#cdata-sections><span class=secno>9.1.5 </span>CDATA sections</a></li>
+     <li><a href=#comments><span class=secno>9.1.6 </span>Comments</a></ol></li>
+   <li><a href=#parsing><span class=secno>9.2 </span>Parsing HTML documents</a>
     <ol>
-     <li><a href=#overview-of-the-parsing-model><span class=secno>8.2.1 </span>Overview of the parsing model</a></li>
-     <li><a href=#the-input-stream><span class=secno>8.2.2 </span>The input stream</a>
+     <li><a href=#overview-of-the-parsing-model><span class=secno>9.2.1 </span>Overview of the parsing model</a></li>
+     <li><a href=#the-input-stream><span class=secno>9.2.2 </span>The input stream</a>
       <ol>
-       <li><a href=#determining-the-character-encoding><span class=secno>8.2.2.1 </span>Determining the character encoding</a></li>
-       <li><a href=#preprocessing-the-input-stream><span class=secno>8.2.2.2 </span>Preprocessing the input stream</a></li>
-       <li><a href=#changing-the-encoding-while-parsing><span class=secno>8.2.2.3 </span>Changing the encoding while parsing</a></ol></li>
-     <li><a href=#parse-state><span class=secno>8.2.3 </span>Parse state</a>
+       <li><a href=#determining-the-character-encoding><span class=secno>9.2.2.1 </span>Determining the character encoding</a></li>
+       <li><a href=#preprocessing-the-input-stream><span class=secno>9.2.2.2 </span>Preprocessing the input stream</a></li>
+       <li><a href=#changing-the-encoding-while-parsing><span class=secno>9.2.2.3 </span>Changing the encoding while parsing</a></ol></li>
+     <li><a href=#parse-state><span class=secno>9.2.3 </span>Parse state</a>
       <ol>
-       <li><a href=#the-insertion-mode><span class=secno>8.2.3.1 </span>The insertion mode</a></li>
-       <li><a href=#the-stack-of-open-elements><span class=secno>8.2.3.2 </span>The stack of open elements</a></li>
-       <li><a href=#the-list-of-active-formatting-elements><span class=secno>8.2.3.3 </span>The list of active formatting elements</a></li>
-       <li><a href=#the-element-pointers><span class=secno>8.2.3.4 </span>The element pointers</a></li>
-       <li><a href=#other-parsing-state-flags><span class=secno>8.2.3.5 </span>Other parsing state flags</a></ol></li>
-     <li><a href=#tokenization><span class=secno>8.2.4 </span>Tokenization</a>
+       <li><a href=#the-insertion-mode><span class=secno>9.2.3.1 </span>The insertion mode</a></li>
+       <li><a href=#the-stack-of-open-elements><span class=secno>9.2.3.2 </span>The stack of open elements</a></li>
+       <li><a href=#the-list-of-active-formatting-elements><span class=secno>9.2.3.3 </span>The list of active formatting elements</a></li>
+       <li><a href=#the-element-pointers><span class=secno>9.2.3.4 </span>The element pointers</a></li>
+       <li><a href=#other-parsing-state-flags><span class=secno>9.2.3.5 </span>Other parsing state flags</a></ol></li>
+     <li><a href=#tokenization><span class=secno>9.2.4 </span>Tokenization</a>
       <ol>
-       <li><a href=#data-state><span class=secno>8.2.4.1 </span>Data state</a></li>
-       <li><a href=#character-reference-data-state><span class=secno>8.2.4.2 </span>Character reference data state</a></li>
-       <li><a href=#tag-open-state><span class=secno>8.2.4.3 </span>Tag open state</a></li>
-       <li><a href=#close-tag-open-state><span class=secno>8.2.4.4 </span>Close tag open state</a></li>
-       <li><a href=#tag-name-state><span class=secno>8.2.4.5 </span>Tag name state</a></li>
-       <li><a href=#before-attribute-name-state><span class=secno>8.2.4.6 </span>Before attribute name state</a></li>
-       <li><a href=#attribute-name-state><span class=secno>8.2.4.7 </span>Attribute name state</a></li>
-       <li><a href=#after-attribute-name-state><span class=secno>8.2.4.8 </span>After attribute name state</a></li>
-       <li><a href=#before-attribute-value-state><span class=secno>8.2.4.9 </span>Before attribute value state</a></li>
-       <li><a href=#attribute-value-(double-quoted)-state><span class=secno>8.2.4.10 </span>Attribute value (double-quoted) state</a></li>
-       <li><a href=#attribute-value-(single-quoted)-state><span class=secno>8.2.4.11 </span>Attribute value (single-quoted) state</a></li>
-       <li><a href=#attribute-value-(unquoted)-state><span class=secno>8.2.4.12 </span>Attribute value (unquoted) state</a></li>
-       <li><a href=#character-reference-in-attribute-value-state><span class=secno>8.2.4.13 </span>Character reference in attribute value state</a></li>
-       <li><a href=#after-attribute-value-(quoted)-state><span class=secno>8.2.4.14 </span>After attribute value (quoted) state</a></li>
-       <li><a href=#self-closing-start-tag-state><span class=secno>8.2.4.15 </span>Self-closing start tag state</a></li>
-       <li><a href=#bogus-comment-state><span class=secno>8.2.4.16 </span>Bogus comment state</a></li>
-       <li><a href=#markup-declaration-open-state><span class=secno>8.2.4.17 </span>Markup declaration open state</a></li>
-       <li><a href=#comment-start-state><span class=secno>8.2.4.18 </span>Comment start state</a></li>
-       <li><a href=#comment-start-dash-state><span class=secno>8.2.4.19 </span>Comment start dash state</a></li>
-       <li><a href=#comment-state><span class=secno>8.2.4.20 </span>Comment state</a></li>
-       <li><a href=#comment-end-dash-state><span class=secno>8.2.4.21 </span>Comment end dash state</a></li>
-       <li><a href=#comment-end-state><span class=secno>8.2.4.22 </span>Comment end state</a></li>
-       <li><a href=#doctype-state><span class=secno>8.2.4.23 </span>DOCTYPE state</a></li>
-       <li><a href=#before-doctype-name-state><span class=secno>8.2.4.24 </span>Before DOCTYPE name state</a></li>
-       <li><a href=#doctype-name-state><span class=secno>8.2.4.25 </span>DOCTYPE name state</a></li>
-       <li><a href=#after-doctype-name-state><span class=secno>8.2.4.26 </span>After DOCTYPE name state</a></li>
-       <li><a href=#before-doctype-public-identifier-state><span class=secno>8.2.4.27 </span>Before DOCTYPE public identifier state</a></li>
-       <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>8.2.4.28 </span>DOCTYPE public identifier (double-quoted) state</a></li>
-       <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>8.2.4.29 </span>DOCTYPE public identifier (single-quoted) state</a></li>
-       <li><a href=#after-doctype-public-identifier-state><span class=secno>8.2.4.30 </span>After DOCTYPE public identifier state</a></li>
-       <li><a href=#before-doctype-system-identifier-state><span class=secno>8.2.4.31 </span>Before DOCTYPE system identifier state</a></li>
-       <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>8.2.4.32 </span>DOCTYPE system identifier (double-quoted) state</a></li>
-       <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>8.2.4.33 </span>DOCTYPE system identifier (single-quoted) state</a></li>
-       <li><a href=#after-doctype-system-identifier-state><span class=secno>8.2.4.34 </span>After DOCTYPE system identifier state</a></li>
-       <li><a href=#bogus-doctype-state><span class=secno>8.2.4.35 </span>Bogus DOCTYPE state</a></li>
-       <li><a href=#cdata-section-state><span class=secno>8.2.4.36 </span>CDATA section state</a></li>
-       <li><a href=#tokenizing-character-references><span class=secno>8.2.4.37 </span>Tokenizing character references</a></ol></li>
-     <li><a href=#tree-construction><span class=secno>8.2.5 </span>Tree construction</a>
+       <li><a href=#data-state><span class=secno>9.2.4.1 </span>Data state</a></li>
+       <li><a href=#character-reference-data-state><span class=secno>9.2.4.2 </span>Character reference data state</a></li>
+       <li><a href=#tag-open-state><span class=secno>9.2.4.3 </span>Tag open state</a></li>
+       <li><a href=#close-tag-open-state><span class=secno>9.2.4.4 </span>Close tag open state</a></li>
+       <li><a href=#tag-name-state><span class=secno>9.2.4.5 </span>Tag name state</a></li>
+       <li><a href=#before-attribute-name-state><span class=secno>9.2.4.6 </span>Before attribute name state</a></li>
+       <li><a href=#attribute-name-state><span class=secno>9.2.4.7 </span>Attribute name state</a></li>
+       <li><a href=#after-attribute-name-state><span class=secno>9.2.4.8 </span>After attribute name state</a></li>
+       <li><a href=#before-attribute-value-state><span class=secno>9.2.4.9 </span>Before attribute value state</a></li>
+       <li><a href=#attribute-value-(double-quoted)-state><span class=secno>9.2.4.10 </span>Attribute value (double-quoted) state</a></li>
+       <li><a href=#attribute-value-(single-quoted)-state><span class=secno>9.2.4.11 </span>Attribute value (single-quoted) state</a></li>
+       <li><a href=#attribute-value-(unquoted)-state><span class=secno>9.2.4.12 </span>Attribute value (unquoted) state</a></li>
+       <li><a href=#character-reference-in-attribute-value-state><span class=secno>9.2.4.13 </span>Character reference in attribute value state</a></li>
+       <li><a href=#after-attribute-value-(quoted)-state><span class=secno>9.2.4.14 </span>After attribute value (quoted) state</a></li>
+       <li><a href=#self-closing-start-tag-state><span class=secno>9.2.4.15 </span>Self-closing start tag state</a></li>
+       <li><a href=#bogus-comment-state><span class=secno>9.2.4.16 </span>Bogus comment state</a></li>
+       <li><a href=#markup-declaration-open-state><span class=secno>9.2.4.17 </span>Markup declaration open state</a></li>
+       <li><a href=#comment-start-state><span class=secno>9.2.4.18 </span>Comment start state</a></li>
+       <li><a href=#comment-start-dash-state><span class=secno>9.2.4.19 </span>Comment start dash state</a></li>
+       <li><a href=#comment-state><span class=secno>9.2.4.20 </span>Comment state</a></li>
+       <li><a href=#comment-end-dash-state><span class=secno>9.2.4.21 </span>Comment end dash state</a></li>
+       <li><a href=#comment-end-state><span class=secno>9.2.4.22 </span>Comment end state</a></li>
+       <li><a href=#doctype-state><span class=secno>9.2.4.23 </span>DOCTYPE state</a></li>
+       <li><a href=#before-doctype-name-state><span class=secno>9.2.4.24 </span>Before DOCTYPE name state</a></li>
+       <li><a href=#doctype-name-state><span class=secno>9.2.4.25 </span>DOCTYPE name state</a></li>
+       <li><a href=#after-doctype-name-state><span class=secno>9.2.4.26 </span>After DOCTYPE name state</a></li>
+       <li><a href=#before-doctype-public-identifier-state><span class=secno>9.2.4.27 </span>Before DOCTYPE public identifier state</a></li>
+       <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>9.2.4.28 </span>DOCTYPE public identifier (double-quoted) state</a></li>
+       <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>9.2.4.29 </span>DOCTYPE public identifier (single-quoted) state</a></li>
+       <li><a href=#after-doctype-public-identifier-state><span class=secno>9.2.4.30 </span>After DOCTYPE public identifier state</a></li>
+       <li><a href=#before-doctype-system-identifier-state><span class=secno>9.2.4.31 </span>Before DOCTYPE system identifier state</a></li>
+       <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>9.2.4.32 </span>DOCTYPE system identifier (double-quoted) state</a></li>
+       <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>9.2.4.33 </span>DOCTYPE system identifier (single-quoted) state</a></li>
+       <li><a href=#after-doctype-system-identifier-state><span class=secno>9.2.4.34 </span>After DOCTYPE system identifier state</a></li>
+       <li><a href=#bogus-doctype-state><span class=secno>9.2.4.35 </span>Bogus DOCTYPE state</a></li>
+       <li><a href=#cdata-section-state><span class=secno>9.2.4.36 </span>CDATA section state</a></li>
+       <li><a href=#tokenizing-character-references><span class=secno>9.2.4.37 </span>Tokenizing character references</a></ol></li>
+     <li><a href=#tree-construction><span class=secno>9.2.5 </span>Tree construction</a>
       <ol>
-       <li><a href=#creating-and-inserting-elements><span class=secno>8.2.5.1 </span>Creating and inserting elements</a></li>
-       <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>8.2.5.2 </span>Closing elements that have implied end tags</a></li>
-       <li><a href=#foster-parenting><span class=secno>8.2.5.3 </span>Foster parenting</a></li>
-       <li><a href=#the-initial-insertion-mode><span class=secno>8.2.5.4 </span>The "initial" insertion mode</a></li>
-       <li><a href=#the-before-html-insertion-mode><span class=secno>8.2.5.5 </span>The "before html" insertion mode</a></li>
-       <li><a href=#the-before-head-insertion-mode><span class=secno>8.2.5.6 </span>The "before head" insertion mode</a></li>
-       <li><a href=#parsing-main-inhead><span class=secno>8.2.5.7 </span>The "in head" insertion mode</a></li>
-       <li><a href=#parsing-main-inheadnoscript><span class=secno>8.2.5.8 </span>The "in head noscript" insertion mode</a></li>
-       <li><a href=#the-after-head-insertion-mode><span class=secno>8.2.5.9 </span>The "after head" insertion mode</a></li>
-       <li><a href=#parsing-main-inbody><span class=secno>8.2.5.10 </span>The "in body" insertion mode</a></li>
-       <li><a href=#parsing-main-incdata><span class=secno>8.2.5.11 </span>The "in CDATA/RCDATA" insertion mode</a></li>
-       <li><a href=#parsing-main-intable><span class=secno>8.2.5.12 </span>The "in table" insertion mode</a></li>
-       <li><a href=#parsing-main-incaption><span class=secno>8.2.5.13 </span>The "in caption" insertion mode</a></li>
-       <li><a href=#parsing-main-incolgroup><span class=secno>8.2.5.14 </span>The "in column group" insertion mode</a></li>
-       <li><a href=#parsing-main-intbody><span class=secno>8.2.5.15 </span>The "in table body" insertion mode</a></li>
-       <li><a href=#parsing-main-intr><span class=secno>8.2.5.16 </span>The "in row" insertion mode</a></li>
-       <li><a href=#parsing-main-intd><span class=secno>8.2.5.17 </span>The "in cell" insertion mode</a></li>
-       <li><a href=#parsing-main-inselect><span class=secno>8.2.5.18 </span>The "in select" insertion mode</a></li>
-       <li><a href=#parsing-main-inselectintable><span class=secno>8.2.5.19 </span>The "in select in table" insertion mode</a></li>
-       <li><a href=#parsing-main-inforeign><span class=secno>8.2.5.20 </span>The "in foreign content" insertion mode</a></li>
-       <li><a href=#parsing-main-afterbody><span class=secno>8.2.5.21 </span>The "after body" insertion mode</a></li>
-       <li><a href=#parsing-main-inframeset><span class=secno>8.2.5.22 </span>The "in frameset" insertion mode</a></li>
-       <li><a href=#parsing-main-afterframeset><span class=secno>8.2.5.23 </span>The "after frameset" insertion mode</a></li>
-       <li><a href=#the-after-after-body-insertion-mode><span class=secno>8.2.5.24 </span>The "after after body" insertion mode</a></li>
-       <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>8.2.5.25 </span>The "after after frameset" insertion mode</a></ol></li>
-     <li><a href=#the-end><span class=secno>8.2.6 </span>The end</a></li>
-     <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>8.2.7 </span>Coercing an HTML DOM into an infoset</a></ol></li>
-   <li><a href=#namespaces><span class=secno>8.3 </span>Namespaces</a></li>
-   <li><a href=#serializing-html-fragments><span class=secno>8.4 </span>Serializing HTML fragments</a></li>
-   <li><a href=#parsing-html-fragments><span class=secno>8.5 </span>Parsing HTML fragments</a></li>
-   <li><a href=#named-character-references><span class=secno>8.6 </span>Named character references</a></ol></li>
- <li><a href=#the-xhtml-syntax><span class=secno>9 </span>The XHTML syntax</a>
+       <li><a href=#creating-and-inserting-elements><span class=secno>9.2.5.1 </span>Creating and inserting elements</a></li>
+       <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>9.2.5.2 </span>Closing elements that have implied end tags</a></li>
+       <li><a href=#foster-parenting><span class=secno>9.2.5.3 </span>Foster parenting</a></li>
+       <li><a href=#the-initial-insertion-mode><span class=secno>9.2.5.4 </span>The "initial" insertion mode</a></li>
+       <li><a href=#the-before-html-insertion-mode><span class=secno>9.2.5.5 </span>The "before html" insertion mode</a></li>
+       <li><a href=#the-before-head-insertion-mode><span class=secno>9.2.5.6 </span>The "before head" insertion mode</a></li>
+       <li><a href=#parsing-main-inhead><span class=secno>9.2.5.7 </span>The "in head" insertion mode</a></li>
+       <li><a href=#parsing-main-inheadnoscript><span class=secno>9.2.5.8 </span>The "in head noscript" insertion mode</a></li>
+       <li><a href=#the-after-head-insertion-mode><span class=secno>9.2.5.9 </span>The "after head" insertion mode</a></li>
+       <li><a href=#parsing-main-inbody><span class=secno>9.2.5.10 </span>The "in body" insertion mode</a></li>
+       <li><a href=#parsing-main-incdata><span class=secno>9.2.5.11 </span>The "in CDATA/RCDATA" insertion mode</a></li>
+       <li><a href=#parsing-main-intable><span class=secno>9.2.5.12 </span>The "in table" insertion mode</a></li>
+       <li><a href=#parsing-main-incaption><span class=secno>9.2.5.13 </span>The "in caption" insertion mode</a></li>
+       <li><a href=#parsing-main-incolgroup><span class=secno>9.2.5.14 </span>The "in column group" insertion mode</a></li>
+       <li><a href=#parsing-main-intbody><span class=secno>9.2.5.15 </span>The "in table body" insertion mode</a></li>
+       <li><a href=#parsing-main-intr><span class=secno>9.2.5.16 </span>The "in row" insertion mode</a></li>
+       <li><a href=#parsing-main-intd><span class=secno>9.2.5.17 </span>The "in cell" insertion mode</a></li>
+       <li><a href=#parsing-main-inselect><span class=secno>9.2.5.18 </span>The "in select" insertion mode</a></li>
+       <li><a href=#parsing-main-inselectintable><span class=secno>9.2.5.19 </span>The "in select in table" insertion mode</a></li>
+       <li><a href=#parsing-main-inforeign><span class=secno>9.2.5.20 </span>The "in foreign content" insertion mode</a></li>
+       <li><a href=#parsing-main-afterbody><span class=secno>9.2.5.21 </span>The "after body" insertion mode</a></li>
+       <li><a href=#parsing-main-inframeset><span class=secno>9.2.5.22 </span>The "in frameset" insertion mode</a></li>
+       <li><a href=#parsing-main-afterframeset><span class=secno>9.2.5.23 </span>The "after frameset" insertion mode</a></li>
+       <li><a href=#the-after-after-body-insertion-mode><span class=secno>9.2.5.24 </span>The "after after body" insertion mode</a></li>
+       <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>9.2.5.25 </span>The "after after frameset" insertion mode</a></ol></li>
+     <li><a href=#the-end><span class=secno>9.2.6 </span>The end</a></li>
+     <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>9.2.7 </span>Coercing an HTML DOM into an infoset</a></ol></li>
+   <li><a href=#namespaces><span class=secno>9.3 </span>Namespaces</a></li>
+   <li><a href=#serializing-html-fragments><span class=secno>9.4 </span>Serializing HTML fragments</a></li>
+   <li><a href=#parsing-html-fragments><span class=secno>9.5 </span>Parsing HTML fragments</a></li>
+   <li><a href=#named-character-references><span class=secno>9.6 </span>Named character references</a></ol></li>
+ <li><a href=#the-xhtml-syntax><span class=secno>10 </span>The XHTML syntax</a>
   <ol>
-   <li><a href=#writing-xhtml-documents><span class=secno>9.1 </span>Writing XHTML documents</a></li>
-   <li><a href=#parsing-xhtml-documents><span class=secno>9.2 </span>Parsing XHTML documents</a></li>
-   <li><a href=#serializing-xhtml-fragments><span class=secno>9.3 </span>Serializing XHTML fragments</a></li>
-   <li><a href=#parsing-xhtml-fragments><span class=secno>9.4 </span>Parsing XHTML fragments</a></ol></li>
- <li><a href=#rendering><span class=secno>10 </span>Rendering</a>
+   <li><a href=#writing-xhtml-documents><span class=secno>10.1 </span>Writing XHTML documents</a></li>
+   <li><a href=#parsing-xhtml-documents><span class=secno>10.2 </span>Parsing XHTML documents</a></li>
+   <li><a href=#serializing-xhtml-fragments><span class=secno>10.3 </span>Serializing XHTML fragments</a></li>
+   <li><a href=#parsing-xhtml-fragments><span class=secno>10.4 </span>Parsing XHTML fragments</a></ol></li>
+ <li><a href=#rendering><span class=secno>11 </span>Rendering</a>
   <ol>
-   <li><a href=#introduction-8><span class=secno>10.1 </span>Introduction</a></li>
-   <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>10.2 </span>The CSS user agent style sheet and presentational hints</a>
+   <li><a href=#introduction-9><span class=secno>11.1 </span>Introduction</a></li>
+   <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>11.2 </span>The CSS user agent style sheet and presentational hints</a>
     <ol>
-     <li><a href=#introduction-9><span class=secno>10.2.1 </span>Introduction</a></li>
-     <li><a href=#display-types><span class=secno>10.2.2 </span>Display types</a></li>
-     <li><a href=#margins-and-padding><span class=secno>10.2.3 </span>Margins and padding</a></li>
-     <li><a href=#alignment><span class=secno>10.2.4 </span>Alignment</a></li>
-     <li><a href=#fonts-and-colors><span class=secno>10.2.5 </span>Fonts and colors</a></li>
-     <li><a href=#punctuation-and-decorations><span class=secno>10.2.6 </span>Punctuation and decorations</a></li>
-     <li><a href=#resetting-rules-for-inherited-properties><span class=secno>10.2.7 </span>Resetting rules for inherited properties</a></li>
-     <li><a href=#the-hr-element-0><span class=secno>10.2.8 </span>The <code>hr</code> element</a></li>
-     <li><a href=#the-fieldset-element-0><span class=secno>10.2.9 </span>The <code>fieldset</code> element</a></ol></li>
-   <li><a href=#replaced-elements><span class=secno>10.3 </span>Replaced elements</a>
+     <li><a href=#introduction-10><span class=secno>11.2.1 </span>Introduction</a></li>
+     <li><a href=#display-types><span class=secno>11.2.2 </span>Display types</a></li>
+     <li><a href=#margins-and-padding><span class=secno>11.2.3 </span>Margins and padding</a></li>
+     <li><a href=#alignment><span class=secno>11.2.4 </span>Alignment</a></li>
+     <li><a href=#fonts-and-colors><span class=secno>11.2.5 </span>Fonts and colors</a></li>
+     <li><a href=#punctuation-and-decorations><span class=secno>11.2.6 </span>Punctuation and decorations</a></li>
+     <li><a href=#resetting-rules-for-inherited-properties><span class=secno>11.2.7 </span>Resetting rules for inherited properties</a></li>
+     <li><a href=#the-hr-element-0><span class=secno>11.2.8 </span>The <code>hr</code> element</a></li>
+     <li><a href=#the-fieldset-element-0><span class=secno>11.2.9 </span>The <code>fieldset</code> element</a></ol></li>
+   <li><a href=#replaced-elements><span class=secno>11.3 </span>Replaced elements</a>
     <ol>
-     <li><a href=#embedded-content-1><span class=secno>10.3.1 </span>Embedded content</a></li>
-     <li><a href=#images-0><span class=secno>10.3.2 </span>Images</a></li>
-     <li><a href=#attributes-for-embedded-content-and-images><span class=secno>10.3.3 </span>Attributes for embedded content and images</a></li>
-     <li><a href=#image-maps-0><span class=secno>10.3.4 </span>Image maps</a></li>
-     <li><a href=#tool-bars-0><span class=secno>10.3.5 </span>Tool bars</a></ol></li>
-   <li><a href=#bindings><span class=secno>10.4 </span>Bindings</a>
+     <li><a href=#embedded-content-1><span class=secno>11.3.1 </span>Embedded content</a></li>
+     <li><a href=#images-0><span class=secno>11.3.2 </span>Images</a></li>
+     <li><a href=#attributes-for-embedded-content-and-images><span class=secno>11.3.3 </span>Attributes for embedded content and images</a></li>
+     <li><a href=#image-maps-0><span class=secno>11.3.4 </span>Image maps</a></li>
+     <li><a href=#tool-bars-0><span class=secno>11.3.5 </span>Tool bars</a></ol></li>
+   <li><a href=#bindings><span class=secno>11.4 </span>Bindings</a>
     <ol>
-     <li><a href=#introduction-10><span class=secno>10.4.1 </span>Introduction</a></li>
-     <li><a href=#the-bb-element-0><span class=secno>10.4.2 </span>The <code>bb</code> element</a></li>
-     <li><a href=#the-button-element-0><span class=secno>10.4.3 </span>The <code>button</code> element</a></li>
-     <li><a href=#the-datagrid-element><span class=secno>10.4.4 </span>The <code>datagrid</code> element</a></li>
-     <li><a href=#the-details-element-0><span class=secno>10.4.5 </span>The <code>details</code> element</a></li>
-     <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>10.4.6 </span>The <code>input</code> element as a text entry widget</a></li>
-     <li><a href=#the-input-element-as-domain-specific-widgets><span class=secno>10.4.7 </span>The <code>input</code> element as domain-specific widgets</a></li>
-     <li><a href=#the-input-element-as-a-range-control><span class=secno>10.4.8 </span>The <code>input</code> element as a range control</a></li>
-     <li><a href=#the-input-element-as-a-color-well><span class=secno>10.4.9 </span>The <code>input</code> element as a color well</a></li>
-     <li><a href=#the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>10.4.10 </span>The <code>input</code> element as a check box and radio button widgets</a></li>
-     <li><a href=#the-input-element-as-a-file-upload-control><span class=secno>10.4.11 </span>The <code>input</code> element as a file upload control</a></li>
-     <li><a href=#the-input-element-as-a-button><span class=secno>10.4.12 </span>The <code>input</code> element as a button</a></li>
-     <li><a href=#the-marquee-element><span class=secno>10.4.13 </span>The <code>marquee</code> element</a></li>
-     <li><a href=#the-meter-element-0><span class=secno>10.4.14 </span>The <code>meter</code> element</a></li>
-     <li><a href=#the-progress-element-0><span class=secno>10.4.15 </span>The <code>progress</code> element</a></li>
-     <li><a href=#the-select-element-0><span class=secno>10.4.16 </span>The <code>select</code> element</a></li>
-     <li><a href=#the-textarea-element-0><span class=secno>10.4.17 </span>The <code>textarea</code> element</a></li>
-     <li><a href=#the-keygen-element-0><span class=secno>10.4.18 </span>The <code>keygen</code> element</a></li>
-     <li><a href=#the-time-element-0><span class=secno>10.4.19 </span>The <code>time</code> element</a></ol></li>
-   <li><a href=#frames-and-framesets><span class=secno>10.5 </span>Frames and framesets</a></li>
-   <li><a href=#interactive-media><span class=secno>10.6 </span>Interactive media</a>
+     <li><a href=#introduction-11><span class=secno>11.4.1 </span>Introduction</a></li>
+     <li><a href=#the-bb-element-0><span class=secno>11.4.2 </span>The <code>bb</code> element</a></li>
+     <li><a href=#the-button-element-0><span class=secno>11.4.3 </span>The <code>button</code> element</a></li>
+     <li><a href=#the-datagrid-element><span class=secno>11.4.4 </span>The <code>datagrid</code> element</a></li>
+     <li><a href=#the-details-element-0><span class=secno>11.4.5 </span>The <code>details</code> element</a></li>
+     <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>11.4.6 </span>The <code>input</code> element as a text entry widget</a></li>
+     <li><a href=#the-input-element-as-domain-specific-widgets><span class=secno>11.4.7 </span>The <code>input</code> element as domain-specific widgets</a></li>
+     <li><a href=#the-input-element-as-a-range-control><span class=secno>11.4.8 </span>The <code>input</code> element as a range control</a></li>
+     <li><a href=#the-input-element-as-a-color-well><span class=secno>11.4.9 </span>The <code>input</code> element as a color well</a></li>
+     <li><a href=#the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>11.4.10 </span>The <code>input</code> element as a check box and radio button widgets</a></li>
+     <li><a href=#the-input-element-as-a-file-upload-control><span class=secno>11.4.11 </span>The <code>input</code> element as a file upload control</a></li>
+     <li><a href=#the-input-element-as-a-button><span class=secno>11.4.12 </span>The <code>input</code> element as a button</a></li>
+     <li><a href=#the-marquee-element><span class=secno>11.4.13 </span>The <code>marquee</code> element</a></li>
+     <li><a href=#the-meter-element-0><span class=secno>11.4.14 </span>The <code>meter</code> element</a></li>
+     <li><a href=#the-progress-element-0><span class=secno>11.4.15 </span>The <code>progress</code> element</a></li>
+     <li><a href=#the-select-element-0><span class=secno>11.4.16 </span>The <code>select</code> element</a></li>
+     <li><a href=#the-textarea-element-0><span class=secno>11.4.17 </span>The <code>textarea</code> element</a></li>
+     <li><a href=#the-keygen-element-0><span class=secno>11.4.18 </span>The <code>keygen</code> element</a></li>
+     <li><a href=#the-time-element-0><span class=secno>11.4.19 </span>The <code>time</code> element</a></ol></li>
+   <li><a href=#frames-and-framesets><span class=secno>11.5 </span>Frames and framesets</a></li>
+   <li><a href=#interactive-media><span class=secno>11.6 </span>Interactive media</a>
     <ol>
-     <li><a href=#links,-forms,-and-navigation><span class=secno>10.6.1 </span>Links, forms, and navigation</a></li>
-     <li><a href=#the-mark-element-0><span class=secno>10.6.2 </span>The <code>mark</code> element</a></li>
-     <li><a href=#the-title-attribute-0><span class=secno>10.6.3 </span>The <code title=attr-title>title</code> attribute</a></ol></li>
-   <li><a href=#print-media><span class=secno>10.7 </span>Print media</a></li>
-   <li><a href=#interaction-with-css><span class=secno>10.8 </span>Interaction with CSS</a></ol></li>
- <li><a href=#obsolete-features><span class=secno>11 </span>Obsolete features</a>
+     <li><a href=#links,-forms,-and-navigation><span class=secno>11.6.1 </span>Links, forms, and navigation</a></li>
+     <li><a href=#the-mark-element-0><span class=secno>11.6.2 </span>The <code>mark</code> element</a></li>
+     <li><a href=#the-title-attribute-0><span class=secno>11.6.3 </span>The <code title=attr-title>title</code> attribute</a></ol></li>
+   <li><a href=#print-media><span class=secno>11.7 </span>Print media</a></li>
+   <li><a href=#interaction-with-css><span class=secno>11.8 </span>Interaction with CSS</a></ol></li>
+ <li><a href=#obsolete-features><span class=secno>12 </span>Obsolete features</a>
   <ol>
-   <li><a href=#self-contained-features><span class=secno>11.1 </span>Self-contained features</a>
+   <li><a href=#self-contained-features><span class=secno>12.1 </span>Self-contained features</a>
     <ol>
-     <li><a href=#the-applet-element><span class=secno>11.1.1 </span>The <code>applet</code> element</a></li>
-     <li><a href=#the-marquee-element-0><span class=secno>11.1.2 </span>The <code>marquee</code> element</a></ol></li>
-   <li><a href=#other-elements-and-attributes><span class=secno>11.2 </span>Other elements and attributes</a></li>
-   <li><a href=#other-dom-apis><span class=secno>11.3 </span>Other DOM APIs</a></li>
-   <li><a href=#conformance-checkers-0><span class=secno>11.4 </span>Conformance checkers</a></ol></li>
- <li><a href=#no><span class=secno>12 </span>Things that you can't do with this specification because
+     <li><a href=#the-applet-element><span class=secno>12.1.1 </span>The <code>applet</code> element</a></li>
+     <li><a href=#the-marquee-element-0><span class=secno>12.1.2 </span>The <code>marquee</code> element</a></ol></li>
+   <li><a href=#other-elements-and-attributes><span class=secno>12.2 </span>Other elements and attributes</a></li>
+   <li><a href=#other-dom-apis><span class=secno>12.3 </span>Other DOM APIs</a></li>
+   <li><a href=#conformance-checkers-0><span class=secno>12.4 </span>Conformance checkers</a></ol></li>
+ <li><a href=#no><span class=secno>13 </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=#localization><span class=secno>12.1 </span>Localization</a></li>
-   <li><a href=#declarative-3d-scenes><span class=secno>12.2 </span>Declarative 3D scenes</a></li>
-   <li><a href=#rendering-and-the-dom><span class=secno>12.3 </span>Rendering and the DOM</a></ol></li>
+   <li><a href=#localization><span class=secno>13.1 </span>Localization</a></li>
+   <li><a href=#declarative-3d-scenes><span class=secno>13.2 </span>Declarative 3D scenes</a></li>
+   <li><a href=#rendering-and-the-dom><span class=secno>13.3 </span>Rendering and the DOM</a></ol></li>
  <li><a class=no-num href=#index>Index</a></li>
  <li><a class=no-num href=#references>References</a></li>
  <li><a class=no-num href=#acknowledgements>Acknowledgements</a></ol>
@@ -4265,8 +4283,59 @@
   </ol></div>
 
 
-  <h4 id=syntax-references><span class=secno>2.4.9 </span>References</h4>
 
+  <h4 id=reversed-dns-identifiers><span class=secno>2.4.9 </span>Reversed DNS identifiers</h4>
+
+  <p>A <dfn id=valid-reversed-dns-identifier>valid reversed DNS identifier</dfn> is a string that
+  consists of a series of IDNA labels in reverse order (i.e. starting
+  with the top-level domain), the prefix of which, when reversed and
+  converted to ASCII, corresponds to a registered domain.</p>
+
+  <p class=example>For instance, the string "<code title="">com.example.xn--74h</code>" is a <a href=#valid-reversed-dns-identifier>valid reversed DNS
+  identifier</a> because the string "<code title="">example.com</code>" is a registered domain.</p>
+
+  <div class=impl>
+
+  <p>To check if a string is a <a href=#valid-reversed-dns-identifier>valid reversed DNS
+  identifier</a>, conformance checkers must run the following algorithm:</p>
+
+  <ol><li>
+
+    <p>Apply the IDNA ToASCII algorithm to the string, with both the
+    AllowUnassigned and UseSTD3ASCIIRules flags set, but between steps
+    2 and 3 of the general ToASCII/ToUnicode algorithm (i.e. after
+    splitting the domain name into individual labels), reverse the
+    order of the labels.</p>
+
+    <p>If ToASCII fails to convert one of the components of the
+    string, e.g. because it is too long or because it contains invalid
+    characters, then the string is not valid; abort these steps. <a href=#refsRFC3490>[RFC3490]</a></p>
+
+   </li>
+
+   <li>
+
+    <p>Check that the end of the resulting string matches a suffix in
+    the Public Suffix List, and that there is at least one domain
+    label before the matching substring. If it does not, or if there
+    is not, then the string is not valid; abort these steps. <a href=#refsPSL>[PSL]</a></p> <!-- [PSL] http://publicsuffix.org/
+    -->
+
+   </li>
+
+   <li>
+
+    <p>Check that the domain name up to the label before the prefix
+    that was matched in the previous string is a registered domain
+    name.</p>
+
+   </li>
+
+  </ol></div>
+
+
+  <h4 id=syntax-references><span class=secno>2.4.10 </span>References</h4>
+
   <p>A <dfn id=valid-hash-name-reference>valid hash-name reference</dfn> to an element of type <var title="">type</var> is a string consisting of a U+0023 NUMBER SIGN
   (<code title="">#</code>) character followed by a string which
   exactly matches the value of the <code title="">name</code>
@@ -5929,18 +5998,18 @@
   exception on setting, as defined by WebIDL. <a href=#refsWEBIDL>[WEBIDL]</a></p>
 
   <p>If a reflecting DOM attribute is of the type
-  <code><a href=#domtokenlist-0>DOMTokenList</a></code>, then on getting it must return a
-  <code><a href=#domtokenlist-0>DOMTokenList</a></code> object whose underlying string is the
-  element's corresponding content attribute. When the
-  <code><a href=#domtokenlist-0>DOMTokenList</a></code> object mutates its underlying string, the
+  <code><a href=#domtokenlist-0>DOMTokenList</a></code> or <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code>, then
+  on getting it must return a <code><a href=#domtokenlist-0>DOMTokenList</a></code> or
+  <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code> object (as appropriate) whose
+  underlying string is the element's corresponding content
+  attribute. When the object mutates its underlying string, the
   content attribute must itself be immediately mutated. When the
-  attribute is absent, then the string represented by the
-  <code><a href=#domtokenlist-0>DOMTokenList</a></code> object is the empty string; when the
-  object mutates this empty string, the user agent must first add the
-  corresponding content attribute, and then mutate that attribute
-  instead. <code><a href=#domtokenlist-0>DOMTokenList</a></code> attributes are always
-  read-only. The same <code><a href=#domtokenlist-0>DOMTokenList</a></code> object must be
-  returned every time for each attribute.</p>
+  attribute is absent, then the string represented by the object is
+  the empty string; when the object mutates this empty string, the
+  user agent must first add the corresponding content attribute, and
+  then mutate that attribute instead. The same
+  <code><a href=#domtokenlist-0>DOMTokenList</a></code> object must be returned every time for
+  each attribute.</p>
 
   <p>If a reflecting DOM attribute has the type
   <code><a href=#htmlelement>HTMLElement</a></code>, or an interface that descends from
@@ -5972,8 +6041,9 @@
   <h4 id=collections><span class=secno>2.9.2 </span>Collections</h4>
 
   <p>The <code><a href=#htmlcollection-0>HTMLCollection</a></code>,
-  <code><a href=#htmlformcontrolscollection-0>HTMLFormControlsCollection</a></code>, and
-  <code><a href=#htmloptionscollection-0>HTMLOptionsCollection</a></code> interfaces represent various
+  <code><a href=#htmlformcontrolscollection-0>HTMLFormControlsCollection</a></code>,
+  <code><a href=#htmloptionscollection-0>HTMLOptionsCollection</a></code>, and
+  <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> interfaces represent various
   lists of DOM nodes. Collectively, objects implementing these
   interfaces are called <dfn id=collections-0>collections</dfn>.</p>
 
@@ -6030,6 +6100,7 @@
 
    <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
    <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
    <dd>
     <p>Returns the first item with ID or name <var title="">name</var>
     from the collection.</p>
@@ -6115,6 +6186,7 @@
    <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLFormControlsCollection-item><a href=#dom-htmlformcontrolscollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
    <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title=dom-HTMLFormControlsCollection-item><a href=#dom-htmlformcontrolscollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
    <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
    <dd>
     <p>Returns the item with ID or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> <var title="">name</var> from the collection.</p>
     <p>If there are multiple matching items, then a <code><a href=#radionodelist>RadioNodeList</a></code> object containing all those elements is returned.</p>
@@ -6248,6 +6320,7 @@
 
    <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLOptionsCollection-item><a href=#dom-htmloptionscollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
    <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
    <dd>
     <p>Returns the item with ID or <code title=attr-option-name>name</code> <var title="">name</var> from the collection.</p>
     <p>If there are multiple matching items, then a <code>NodeList</code> object containing all those elements is returned.</p>
@@ -6376,6 +6449,119 @@
   </ol><!-- see also http://ln.hixie.ch/?start=1161042744&count=1 --></div>
 
 
+  <h5 id=htmlpropertycollection><span class=secno>2.9.2.4 </span>HTMLPropertyCollection</h5>
+
+  <p>The <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> interface represents a
+  <a href=#collections-0 title=collections>collection</a> of elements that add
+  name-value pairs to a particular <a href=#concept-item title=concept-item>item</a> in the <a href=#microdata>microdata</a>
+  model.</p>
+
+  <pre class=idl>[Callable=<a href=#dom-htmlpropertycollection-nameditem title=dom-HTMLPropertyCollection-namedItem>namedItem</a>]
+interface <dfn id=htmlpropertycollection-0>HTMLPropertyCollection</dfn> {
+  readonly attribute unsigned long <a href=#dom-htmlpropertycollection-length title=dom-HTMLPropertyCollection-length>length</a>;
+  readonly attribute <span>DOMStringList</span> <a href=#dom-htmlpropertycollection-names title=dom-HTMLPropertyCollection-names>names</a>;
+  [IndexGetter] <a href=#htmlelement>HTMLElement</a> <a href=#dom-htmlpropertycollection-item title=dom-HTMLPropertyCollection-item>item</a>(in unsigned long index);
+  [NameGetter] Object <a href=#dom-htmlpropertycollection-nameditem title=dom-HTMLPropertyCollection-namedItem>namedItem</a>(in DOMString name);
+};
+
+typedef sequence<DOMString> <dfn id=domstringarray>DOMStringArray</dfn>;
+
+interface <dfn id=propertynodelist>PropertyNodeList</dfn> : <span>NodeList</span> {
+          attribute <a href=#domstringarray>DOMStringArray</a> <a href=#dom-propertynodelist-content title=dom-PropertyNodeList-content>content</a>;
+};</pre>
+
+  <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLPropertyCollection-length><a href=#dom-htmlpropertycollection-length>length</a></code></dt>
+   <dd>
+    <p>Returns the number of elements in the collection.</p>
+   </dd>
+
+   <dt><var title="">collection</var> . <code title=dom-HTMLPropertyCollection-names><a href=#dom-htmlpropertycollection-names>names</a></code></dt>
+   <dd>
+    <p>Returns a <code>DOMStringList</code> with the <a href=#property-names>property names</a> of the elements in the collection.</p>
+   </dd>
+
+   <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLPropertyCollection-item><a href=#dom-htmlpropertycollection-item>item</a></code>(<var title="">index</var>)</dt>
+   <dt><var title="">collection</var>[<var title="">index</var>]</dt>
+   <dd>
+    <p>Returns the element with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
+    <p>Returns null if <var title="">index</var> is out of range.</p>
+   </dd>
+
+   <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLPropertyCollection-item><a href=#dom-htmlpropertycollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
+   <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title=dom-HTMLPropertyCollection-item><a href=#dom-htmlpropertycollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
+   <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
+   <dd>
+    <p>Returns the element with that adds the property named <var title="">name</var> from the collection.</p>
+    <p>If there are multiple matching elements, then a <code><a href=#propertynodelist>PropertyNodeList</a></code> object containing all those elements is returned.</p>
+    <p>Returns null if no element adds the property named <var title="">name</var>.</p>
+   </dd>
+
+   <dt><var title="">propertyNodeList</var> . <var title="">content</var></dt>
+
+   <dd>
+
+    <p>Returns an array of the various values that the relevant elements have.</p>
+
+   </dd>
+
+  </dl><div class=impl>
+
+  <hr><p>The object's <span>indices of the supported indexed
+  properties</span> are the numbers in the range zero to one less than
+  the number of nodes <a href=#represented-by-the-collection>represented by the collection</a>. If
+  there are no such elements, then there are no <span>supported
+  indexed properties</span>.</p>
+
+  <p>The <dfn id=dom-htmlpropertycollection-length title=dom-HTMLPropertyCollection-length><code>length</code></dfn>
+  attribute must return the number of nodes <a href=#represented-by-the-collection>represented by the
+  collection</a>.</p>
+
+  <p>The <dfn id=dom-htmlpropertycollection-names title=dom-HTMLPropertyCollection-names><code>names</code></dfn>
+  attribute must return a live <code>DOMStringList</code> object
+  giving the <a href=#property-names>property names</a> of all the elements
+  <a href=#represented-by-the-collection>represented by the collection</a>. The same object must be
+  returned each time.</p>
+
+  <p>The <dfn id=dom-htmlpropertycollection-item title=dom-HTMLPropertyCollection-item><code>item(<var title="">index</var>)</code></dfn> method must return the <var title="">index</var>th node in the collection. If there is no <var title="">index</var>th node in the collection, then the method must
+  return null.</p>
+
+  <p>The <span>names of the supported named properties</span> consist
+  of the <a href=#property-names>property names</a> of all the elements
+  <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+
+  <p>The <dfn id=dom-htmlpropertycollection-nameditem title=dom-HTMLPropertyCollection-namedItem><code>namedItem(<var title="">name</var>)</code></dfn> method must act according to the
+  following algorithm:</p>
+
+  <ol><li>If, at the time the method is called, there is exactly one node
+   in the collection that has a <a href=#property-names title="property names">property
+   name</a> equal to <var title="">name</var>, then return that
+   node and stop the algorithm.</li>
+
+   <li>Otherwise, if there are no nodes in the collection that have a
+   <a href=#property-names title="property names">property name</a> equal to <var title="">name</var>, then return null and stop the algorithm.</li>
+
+   <li>Otherwise, create a <code><a href=#propertynodelist>PropertyNodeList</a></code> object
+   representing a live view of the <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code>
+   object, further filtered so that the only nodes in the
+   <code><a href=#radionodelist>RadioNodeList</a></code> object are those that have a <a href=#property-names title="property names">property name</a> equal to <var title="">name</var>. The nodes in the <code><a href=#propertynodelist>PropertyNodeList</a></code>
+   object must be sorted in <a href=#tree-order>tree order</a>.</li>
+
+   <li>Return that <code><a href=#propertynodelist>PropertyNodeList</a></code> object.</li>
+
+  </ol><hr><p>A members of the <code><a href=#propertynodelist>PropertyNodeList</a></code> interface
+  inherited from the <code>NodeList</code> interface must behave as
+  they would on a <code>NodeList</code> object.</p>
+
+  <p>The <dfn id=dom-propertynodelist-content title=dom-PropertyNodeList-content><code>content</code></dfn> DOM
+  attribute on the <code><a href=#propertynodelist>PropertyNodeList</a></code> object, on getting,
+  must return a newly constructed <code><a href=#domstringarray>DOMStringArray</a></code> whose
+  values are the values obtained from the <code title=dom-content><a href=#dom-content>content</a></code> DOM property of each of the
+  elements represented by the object, in <a href=#tree-order>tree order</a>.</p>
+
+  </div>
+
+
   <h4 id=domtokenlist><span class=secno>2.9.3 </span>DOMTokenList</h4>
 
   <p>The <code><a href=#domtokenlist-0>DOMTokenList</a></code> interface represents an interface
@@ -6535,9 +6721,40 @@
 
   </div>
 
+
+  <h4 id=domsettabletokenlist><span class=secno>2.9.4 </span>DOMSettableTokenList</h4>
+
+  <p>The <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code> interface is the same as the
+  <code><a href=#domtokenlist-0>DOMTokenList</a></code> interface, except that it allows the
+  underlying string to be directly changed.</p>
+
+  <pre class=idl>[<a href=#dom-tokenlist-tostring title=dom-tokenlist-toString>Stringifies</a>] interface <dfn id=domsettabletokenlist-0>DOMSettableTokenList</dfn> : <a href=#domtokenlist-0>DOMTokenList</a> {
+            attribute DOMString <a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>;
+};</pre>
+
+  <dl class=domintro><dt><var title="">tokenlist</var> . <code title=dom-DOMSettableTokenList-value><a href=#dom-domsettabletokenlist-value>value</a></code></dt>
+   <dd>
+    <p>Returns the underlying string.</p>
+    <p>Can be set, to change the underlying string.</p>
+   </dd>
+
+  </dl><div class=impl>
+
+  <p>An object implementing the <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code>
+  interface must act as defined for the <code><a href=#domtokenlist-0>DOMTokenList</a></code>
+  interface, except for the <code title=dom-DOMSettableTokenList-value><a href=#dom-domsettabletokenlist-value>value</a></code> attribute defined
+  here.</p>
+
+  <p>The <dfn id=dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value><code>value</code></dfn>
+  attribute must return the underlying string on getting, and must
+  replace the underlying string with the new value on setting.</p>
+
+  </div>
+
+
   <div class=impl>
 
-  <h4 id=safe-passing-of-structured-data><span class=secno>2.9.4 </span>Safe passing of structured data</h4>
+  <h4 id=safe-passing-of-structured-data><span class=secno>2.9.5 </span>Safe passing of structured data</h4>
 
   <p>When a user agent is required to obtain a <dfn id=structured-clone>structured
   clone</dfn> of an object, it must run the following algorithm, which
@@ -6652,9 +6869,8 @@
   </dl></div>
 
 
+  <h4 id=domstringmap><span class=secno>2.9.6 </span>DOMStringMap</h4>
 
-  <h4 id=domstringmap><span class=secno>2.9.5 </span>DOMStringMap</h4>
-
   <p>The <code><a href=#domstringmap-0>DOMStringMap</a></code> interface represents a set of
   name-value pairs. It exposes these using the scripting language's
   native mechanisms for property access.</p>
@@ -6732,7 +6948,7 @@
   </div>
 
 
-  <h4 id=dom-feature-strings><span class=secno>2.9.6 </span>DOM feature strings</h4>
+  <h4 id=dom-feature-strings><span class=secno>2.9.7 </span>DOM feature strings</h4>
 
   <p>DOM3 Core defines mechanisms for checking for interface support,
   and for obtaining implementations of interfaces, using <a href=http://www.w3.org/TR/DOM-Level-3-Core/core.html#DOMFeatures>feature
@@ -6762,7 +6978,7 @@
   not guaranteed that an implementation that supports "<code title="">HTML</code>" "<code>5.0</code>" also supports "<code title="">HTML</code>" "<code>2.0</code>".</p>
 
 
-  <h4 id=exceptions><span class=secno>2.9.7 </span>Exceptions</h4>
+  <h4 id=exceptions><span class=secno>2.9.8 </span>Exceptions</h4>
 
   <p>The following <code>DOMException</code> codes are defined in DOM
   Core. <a href=#refsDOMCORE>[DOMCORE]</a></p>
@@ -6796,7 +7012,7 @@
    <li value=82><dfn id=serialise_err><code>SERIALISE_ERR</code></dfn></li> <!-- actually defined in dom3ls -->
   </ol><div class=impl>
 
-  <h4 id=garbage-collection><span class=secno>2.9.8 </span>Garbage collection</h4>
+  <h4 id=garbage-collection><span class=secno>2.9.9 </span>Garbage collection</h4>
 
   <p>There is an <dfn id=implied-strong-reference>implied strong reference</dfn> from any DOM
   attribute that returns a pre-existing object to that object.</p>
@@ -6909,6 +7125,7 @@
   readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-forms title=dom-document-forms>forms</a>;
   readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-anchors title=dom-document-anchors>anchors</a>;
   readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-scripts title=dom-document-scripts>scripts</a>;
+  readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-items title=dom-document-items>items</a>;
   NodeList <a href=#dom-document-getelementsbyname title=dom-document-getElementsByName>getElementsByName</a>(in DOMString elementName);
   NodeList <a href=#dom-document-getelementsbyclassname title=dom-document-getElementsByClassName>getElementsByClassName</a>(in DOMString classNames);
 
@@ -7803,6 +8020,13 @@
   readonly attribute <a href=#domtokenlist-0>DOMTokenList</a> <a href=#dom-classlist title=dom-classList>classList</a>;
   readonly attribute <a href=#domstringmap-0>DOMStringMap</a> <a href=#dom-dataset title=dom-dataset>dataset</a>;
 
+  // <a href=#microdata>microdata</a>
+  [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist-0>DOMSettableTokenList</a> <a href=#dom-item title=dom-item>item</a>;
+  [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist-0>DOMSettableTokenList</a> <a href=#dom-property title=dom-property>property</a>;
+  readonly attribute <a href=#htmlpropertycollection-0>HTMLPropertyCollection</a> <a href=#dom-properties title=dom-properties>properties</a>;
+           attribute DOMString <a href=#dom-content title=dom-content>content</a>;
+           attribute <a href=#htmlelement>HTMLElement</a> <a href=#dom-subject title=dom-subject>subject</a>;
+
   // <a href=#editing>user interaction</a>
            attribute boolean <a href=#dom-hidden title=dom-hidden>hidden</a>;
   void <a href=#dom-click title=dom-click>click</a>();
@@ -7908,10 +8132,13 @@
    <li><code title=attr-dir><a href=#the-dir-attribute>dir</a></code></li>
    <li><code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code></li>
    <li><code title=attr-id><a href=#the-id-attribute>id</a></code></li>
+   <li><code title=attr-item><a href=#items:-the-item-attribute>item</a></code></li>
    <li><code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code></li>
    <li><code title=attr-lang><a href=#the-lang-and-xml:lang-attributes>lang</a></code></li>
+   <li><code title=attr-property><a href=#names:-the-property-attribute>property</a></code></li>
+   <li><code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code></li>
    <li><code title=attr-style><a href=#the-style-attribute>style</a></code></li>
-   <li><code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code></li>
+   <li><code title=attr-subject><a href=#attr-subject>subject</a></code></li>
    <li><code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code></li>
    <li><code title=attr-title><a href=#the-title-attribute>title</a></code></li>
   </ul><p>In addition, unless otherwise specified, the following
@@ -10002,9 +10229,11 @@
 
   <dl class=element><dt>Categories</dt>
    <dd><a href=#metadata-content-0>Metadata content</a>.</dd>
+   <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: <a href=#flow-content-0>flow content</a>.</dd>
    <dt>Contexts in which this element may be used:</dt>
    <dd>Where <a href=#metadata-content-0>metadata content</a> is expected.</dd>
    <dd>In a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element>head</a></code> element.</dd>
+   <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: where <a href=#flow-content-0>flow content</a> is expected.</dd>
    <dt>Content model:</dt>
    <dd>Empty.</dd>
    <dt>Content attributes:</dt>
@@ -10313,11 +10542,13 @@
 
   <dl class=element><dt>Categories</dt>
    <dd><a href=#metadata-content-0>Metadata content</a>.</dd>
+   <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: <a href=#flow-content-0>flow content</a>.</dd>
    <dt>Contexts in which this element may be used:</dt>
    <dd>If the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute is present, or if the element is in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-head-element>head</a></code> element.</dd>
    <dd>If the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is present, and the element is not in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-head-element>head</a></code> element.</dd>
    <dd>If the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is present, and the element is not in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element>head</a></code> element.</dd>
    <dd>If the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute is present: where <a href=#metadata-content-0>metadata content</a> is expected.</dd>
+   <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: where <a href=#flow-content-0>flow content</a> is expected.</dd>
    <dt>Content model:</dt>
    <dd>Empty.</dd>
    <dt>Content attributes:</dt>
@@ -10329,7 +10560,6 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class=idl>interface <dfn id=htmlmetaelement>HTMLMetaElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
-           attribute DOMString <a href=#dom-meta-content title=dom-meta-content>content</a>;
            attribute DOMString <a href=#dom-meta-name title=dom-meta-name>name</a>;
            attribute DOMString <a href=#dom-meta-httpequiv title=dom-meta-httpEquiv>httpEquiv</a>;
 };</pre>
@@ -10347,12 +10577,11 @@
   the network or for disk storage) with the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute.</p>
 
   <p>Exactly one of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>,
-  <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, and <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attributes must be
+  <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code>, and <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attributes must be
   specified.</p>
 
-  <p>If either <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> or <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> is specified, then
-  the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must
-  also be specified. Otherwise, it must be omitted.</p>
+  <p>If either <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>, <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, or <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> is specified, then the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must also be
+  specified. Otherwise, it must be omitted.</p>
 
   <p>The <dfn id=attr-meta-charset title=attr-meta-charset><code>charset</code></dfn>
   attribute specifies the character encoding used by the
@@ -10389,17 +10618,11 @@
   then the value part of the metadata name/value pair is the empty
   string.</p>
 
-  <p>If a <code><a href=#meta>meta</a></code> element has the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute specified,
-  it must be either in a <code><a href=#the-head-element>head</a></code> element or in a
-  <code><a href=#the-noscript-element>noscript</a></code> element that itself is in a <code><a href=#the-head-element>head</a></code>
-  element. If a <code><a href=#meta>meta</a></code> element does not have the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute specified,
-  it must be in a <code><a href=#the-head-element>head</a></code> element.</p>
-
   <div class=impl>
 
-  <p>The DOM attributes <dfn id=dom-meta-name title=dom-meta-name><code>name</code></dfn> and <dfn id=dom-meta-content title=dom-meta-content><code>content</code></dfn> must
-  <a href=#reflect>reflect</a> the respective content attributes of the same
-  name. The DOM attribute <dfn id=dom-meta-httpequiv title=dom-meta-httpEquiv><code>httpEquiv</code></dfn> must
+  <p>The <dfn id=dom-meta-name title=dom-meta-name><code>name</code></dfn> DOM
+  attribute must <a href=#reflect>reflect</a> the content attribute of the
+  same name. The DOM attribute <dfn id=dom-meta-httpequiv title=dom-meta-httpEquiv><code>httpEquiv</code></dfn> must
   <a href=#reflect>reflect</a> the content attribute <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>.</p>
 
   </div>
@@ -40361,9 +40584,531 @@
 
 
 
+  <h2 id=microdata><span class=secno>5 </span><dfn>Microdata</dfn></h2>
 
-  <h2 id=browsers><span class=secno>5 </span>Web browsers</h2>
+  <h3 id=introduction-2><span class=secno>5.1 </span>Introduction</h3>
 
+  <p class=XXX>...</p>
+
+
+  <h3 id=encoding-microdata><span class=secno>5.2 </span>Encoding microdata</h3>
+
+  <h4 id=the-microdata-model><span class=secno>5.2.1 </span>The microdata model</h4>
+
+  <p>The microdata model consists of groups of name-value pairs known
+  as <dfn id=concept-item title=concept-item>items</dfn>.</p>
+
+  <p>Each group has zero or more types, each name has one or more
+  values, and each value is either a string or another group of
+  name-value pairs.</p>
+
+
+  <h4 id=items:-the-item-attribute><span class=secno>5.2.2 </span>Items: the <dfn title=attr-item><code>item</code></dfn> attribute</h4>
+
+  <p>Every <a href=#html-elements title="HTML elements">HTML element</a> may have an
+  <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified.</p>
+
+  <p>An element with the <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute
+  specified creates a new <a href=#concept-item title=concept-item>item</a>, a
+  group of name-value pairs.</p>
+
+  <p>The attribute, if specified, must have a value that is an
+  <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique space-separated tokens</a>
+  representing the types (if any) of the <a href=#concept-item title=concept-item>item</a>.</p>
+
+  <p>Each token must be either:</p>
+
+  <ul><li>A <a href=#valid-url>valid URL</a> that is an <a href=#absolute-url>absolute URL</a>,
+   or</li>
+
+   <li>A <a href=#valid-reversed-dns-identifier>valid reversed DNS identifier</a>, or</li>
+<!--
+   <li>A <span>predefined type</span>.</li>
+-->
+  </ul><!--
+  <p>If any of the tokens are a <span>predefined type</span>, then
+  there must not be any other tokens that are <span title="predefined
+  type">predefined types</span>.</p>
+--><p>The <dfn id=item-types>item types</dfn> of an element with a <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute are the tokens that the
+  element's <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute is found to
+  contain when its value is <a href=#split-a-string-on-spaces title="split a string on
+  spaces">split on spaces</a>.</p>
+
+
+  <h4 id=associating-names-with-items><span class=secno>5.2.3 </span>Associating names with items</h4>
+
+  <p>The <dfn id=attr-subject title=attr-subject><code>subject</code></dfn>
+  attribute may be specified on any <a href=#html-elements title="HTML elements">HTML
+  element</a> to associate the element with an element with an
+  <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute. If the <code title=attr-subject><a href=#attr-subject>subject</a></code> attribute is specified, the
+  attribute's value must be the ID of an element with an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute, in the same
+  <code>Document</code> as the element with the <code title=attr-subject><a href=#attr-subject>subject</a></code> attribute.</p>
+
+  <p>An element's <dfn id=concept-item-corresponding title=concept-item-corresponding>corresponding item</dfn> is
+  determined by its position in the DOM and by any <code title=attr-subject><a href=#attr-subject>subject</a></code> attributes on the element, and
+  is defined as follows:</p>
+
+  <dl><dt>If the element has neither <code title=attr-subject><a href=#attr-subject>subject</a></code> attribute nor an ancestor with
+   an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified</dt>
+
+   <dd><p>The element has no <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+   item</a>.</dd>
+
+   <dt>If the element has no <code title=attr-subject><a href=#attr-subject>subject</a></code>
+   attribute but does have an ancestor with an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified</dt>
+
+   <dd><p>The nearest ancestor element with the <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified is the element's
+   <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+   item</a>.</dd>
+
+   <dt>If the element has a <code title=attr-subject><a href=#attr-subject>subject</a></code>
+   attribute</dt>
+
+   <dd><p>If there is an element in the document with an ID equal to
+   the value of the <code title=attr-subject><a href=#attr-subject>subject</a></code>
+   attribute, and if the first such element has an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified, then that
+   element is the <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+   item</a>. Otherwise, there is no <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+   item</a>.</dd>
+
+  </dl><p>The list of elements that create <a href=#concept-item title=concept-item>items</a> but do not themselves have a <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> forms
+  the list of <dfn id=top-level-microdata-items>top-level microdata items</dfn>.</p>
+
+
+  <h4 id=names:-the-property-attribute><span class=secno>5.2.4 </span>Names: the <dfn title=attr-property><code>property</code></dfn> attribute</h4>
+
+  <p>Every <a href=#html-elements title="HTML elements">HTML element</a> that has a
+  <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a>
+  may have a <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute
+  specified.</p>
+
+  <p>An element with the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code>
+  attribute specified adds one or more name-value pairs to its
+  <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a>.</p>
+
+  <p>The <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute, if
+  specified, must have a value that is an <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of
+  unique space-separated tokens</a> representing the names of the
+  name-value pairs that it adds. The attribute's value must have at
+  least one token.</p>
+
+  <p>Each token must be either:</p>
+
+  <ul><li>A <a href=#valid-url>valid URL</a> that is an <a href=#absolute-url>absolute URL</a>,
+   or</li>
+
+   <li>A <a href=#valid-reversed-dns-identifier>valid reversed DNS identifier</a>, or</li>
+
+   <li>If its <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+   item</a>'s <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute has no
+   tokens: a string containing neither a U+003A COLON character (:), a
+   U+002E FULL STOP character (.), nor a U+0020 SPACE character, or</li>
+<!--
+   <li>If its <span title="concept-item-corresponding">corresponding
+   item</span>'s <code title="attr-item">item</code> attribute
+   included a <span>predefined type</span>: one of the <span
+   title="predefined name">predefined names</span> for that particular
+   <span>predefined type</span>.</li>
+-->
+  </ul><p>The <dfn id=property-names>property names</dfn> of an element are the tokens that
+  the element's <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute
+  is found to contain when its value is <a href=#split-a-string-on-spaces title="split a string on
+  spaces">split on spaces</a>.</p>
+
+
+  <h4 id=values><span class=secno>5.2.5 </span>Values</h4>
+
+  <p>The <dfn id=concept-property-value title=concept-property-value>property value</dfn> of a
+  name-value pair added by an element with a <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute depends on the
+  element, as follows:</p>
+
+  <dl><dt>If the element also has an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code>
+   attribute</dt>
+
+   <dd><p>The value is the <a href=#concept-item title=concept-item>item</a>
+   created by the element.</dd>
+
+
+   <dt>If the element is a <code><a href=#meta>meta</a></code> element</dt>
+
+   <dd><p>The value is the value of the element's <code title=attr-content>content</code> attribute, if any, or the empty
+   string if there is no such attribute.</dd>
+
+
+   <dt>If the element is an <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
+   <code><a href=#the-img-element>img</a></code>, <code><a href=#the-source-element>source</a></code>, or <code><a href=#video>video</a></code>
+   element</dt>
+
+   <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
+   <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
+   element's <code title="">src</code> attribute relative to the
+   element at the time the attribute is set, or the empty string if
+   there is no such attribute or if <a href=#resolve-a-url title="resolve a
+   url">resolving</a> it results in an error.</dd>
+
+
+   <dt>If the element is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, or
+   <code><a href=#the-link-element>link</a></code> element</dt>
+
+   <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
+   <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
+   element's <code title="">href</code> attribute relative to the
+   element at the time the attribute is set, or the empty string if
+   there is no such attribute or if <a href=#resolve-a-url title="resolve a
+   url">resolving</a> it results in an error.</dd>
+
+
+   <dt>If the element is an <code><a href=#the-object-element>object</a></code> element</dt>
+
+   <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
+   <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
+   element's <code title="">data</code> attribute relative to the
+   element at the time the attribute is set, or the empty string if
+   there is no such attribute or if <a href=#resolve-a-url title="resolve a
+   url">resolving</a> it results in an error.</dd>
+
+
+   <dt>If the element is a <code><a href=#the-time-element>time</a></code> element with a <code title=attr-datetime>datetime</code> attribute</dt>
+
+   <dd><p>The value is the value of the element's <code title=attr-datetime>datetime</code> attribute.</dd>
+
+
+   <dt>Otherwise</dt>
+
+   <dd><p>The value is the element's
+   <code><a href=#textcontent>textContent</a></code>.</dd>
+
+  </dl><h3 id=microdata-dom-api><span class=secno>5.3 </span>Microdata DOM API</h3>
+
+  <dl class=domintro><dt><var title="">document</var> . <code title=dom-items>items</code></dt>
+
+   <dd>
+
+    <p>Returns an <code><a href=#htmlcollection-0>HTMLCollection</a></code> of the elements in the <code>Document</code> that create <a href=#concept-item title=concept-item>items</a> and that are not part of other <a href=#concept-item title=concept-item>items</a>.</p>
+
+   </dd>
+
+   <dt><var title="">element</var> . <code title=dom-property><a href=#dom-property>properties</a></code></dt>
+
+   <dd>
+
+    <p>If the element has a <code title=attr-item><a href=#items:-the-item-attribute>item</a></code>
+    attribute, returns an <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> object
+    with all the element's properties. Otherwise, an empty
+    <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> object.</p>
+
+   </dd>
+
+   <dt><var title="">element</var> . <code title=dom-content><a href=#dom-content>content</a></code> [ = <var title="">value</var> ]</dt>
+
+   <dd>
+
+    <p>Returns the element's <a href=#concept-property-value title=concept-property-value>value</a>.</p>
+
+    <p>Can be set, to change the element's <a href=#concept-property-value title=concept-property-value>value</a>.</p>
+
+   </dd>
+
+  </dl><div class=impl>
+
+  <p>The <dfn id=dom-document-items title=dom-document-items><code>document.items</code></dfn>
+  attribute must return an <code><a href=#htmlcollection-0>HTMLCollection</a></code> rooted at the
+  <code>Document</code> node, whose filter matches only elements in
+  the list of <a href=#top-level-microdata-items>top-level microdata items</a>.</p>
+
+  <p>The <dfn id=dom-item title=dom-item><code>item</code></dfn> DOM attribute
+  on elements must <a href=#reflect>reflect</a> the element's <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> content attribute.</p>
+
+  <p>The <dfn id=dom-property title=dom-property><code>property</code></dfn> DOM
+  attribute on elements must <a href=#reflect>reflect</a> the element's <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> content attribute.</p>
+
+  <p>The <dfn id=dom-properties title=dom-properties><code>properties</code></dfn> DOM
+  attribute on elements must return an
+  <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> rooted at the
+  <code>Document</code> node, whose filter matches only elements that
+  have <a href=#property-names>property names</a> and have a <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> that is
+  equal to the element on which the attribute was invoked.</p>
+
+  <p>The <dfn id=dom-content title=dom-content><code>content</code></dfn> DOM
+  attribute's behavior depends on the element, as follows:</p>
+
+  <dl><dt>If the element is a <code><a href=#meta>meta</a></code> element</dt>
+
+   <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> content
+   attribute.</dd>
+
+
+   <dt>If the element is an <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
+   <code><a href=#the-img-element>img</a></code>, <code><a href=#the-source-element>source</a></code>, or <code><a href=#video>video</a></code>
+   element</dt>
+
+   <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">src</code> content attribute.</dd>
+
+
+   <dt>If the element is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, or
+   <code><a href=#the-link-element>link</a></code> element</dt>
+
+   <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">href</code> content attribute.</dd>
+
+
+   <dt>If the element is an <code><a href=#the-object-element>object</a></code> element</dt>
+
+   <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">data</code> content attribute.</dd>
+
+
+   <dt>If the element is a <code><a href=#the-time-element>time</a></code> element with a <code title=attr-datetime>datetime</code> attribute</dt>
+
+   <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">datetime</code> content attribute.</dd>
+
+
+   <dt>Otherwise</dt>
+
+   <dd><p>The attribute must act the same as the element's
+   <code><a href=#textcontent>textContent</a></code> attribute.</dd>
+
+  </dl><p>The <dfn id=dom-subject title=dom-subject><code>subject</code></dfn> DOM
+  attribute on elements must <a href=#reflect>reflect</a> the element's <code title=attr-subject><a href=#attr-subject>subject</a></code> content attribute.</p>
+
+  </div>
+
+
+
+  <h3 id=converting-html-to-oher-formats><span class=secno>5.4 </span>Converting HTML to oher formats</h3>
+
+
+  <h4 id=json><span class=secno>5.4.1 </span>JSON</h4>
+
+  <p>Given a node <var title="">node</var> in a <code>Document</code>,
+  a user agent must run the following algorithm to extract that node's
+  microdata into a JSON form:</p>
+
+  <ol><li><p>Let <var title="">result</var> be an empty object.</li>
+
+   <li><p>Let <var title="">items</var> be an empty array.</li>
+
+   <li><p>For <var title="">node</var> and each element that is a
+   descendant of <var title="">node</var>, check if the element is a
+   <a href=#top-level-microdata-items title="top-level microdata items">top-level microdata
+   item</a>, and if it is then <a href=#get-the-object>get the object</a> for that
+   element and add it to <var title="">items</var>.</li>
+
+   <li><p>Add an entry to <var title="">result</var> called "<code title="">items</code>" whose value is the array <var title="">items</var>.</li>
+
+   <li><p>Return the result of serializing <var title="">result</var>
+   to JSON.</li>
+
+  </ol><p>When the user agent is to <dfn id=get-the-object>get the object</dfn> for an item
+  <var title="">item</var>, it must run the following substeps:</p>
+
+  <ol><li><p>Let <var title="">result</var> be an empty object.</li>
+
+   <li><p>Let <var title="">types</var> be an empty array.</li>
+
+   <li><p>For each <a href=#item-types title="item types">item type</a> <var title="">type</var> of <var title="">item</var>, append <var title="">type</var> to <var title="">types</var>.</li>
+
+   <li><p>Add an entry to <var title="">result</var> called "<code title="">type</code>" whose value is the array <var title="">types</var>.</li>
+
+   <li><p>Let <var title="">properties</var> be an empty
+   object.</li>
+
+   <li>
+
+    <p>For each element <var title="">element</var> that has one or
+    more <a href=#property-names>property names</a> and whose <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> is
+    <var title="">item</var>, run the following substeps:</p>
+
+    <ol><li><p>Let <var title="">value</var> be the <a href=#concept-property-value title=concept-property-value>property value</a> of <var title="">element</var>.</li>
+
+     <li><p>If <var title="">value</var> is an element, then <a href=#get-the-object>get
+     the object</a> for the element <var title="">value</var>, and
+     then replace <var title="">value</var> with the object returned
+     from those steps.</li>
+
+     <li>
+
+      <p>For each name <var title="">name</var> in <var title="">element</var>'s <a href=#property-names>property names</a>, run the
+      following substeps:</p>
+
+      <ol><li><p>If there is no entry named <var title="">name</var> in
+       <var title="">properties</var>, then add an entry named <var title="">name</var> to <var title="">properties</var> whose
+       value is an empty array.</li>
+
+       <li><p>Append <var title="">value</var> to the entry named <var title="">name</var> in <var title="">properties</var>.</li>
+
+      </ol></li>
+
+    </ol></li>
+
+   <li><p>Add an entry to <var title="">result</var> called "<code title="">properties</code>" whose value is the array <var title="">properties</var>.</li>
+
+   <li><p>Return <var title="">result</var>.</li>
+
+  </ol><h4 id=rdf><span class=secno>5.4.2 </span>RDF</h4>
+
+  <p>To convert a <code>Document</code> to RDF, a user agent must run
+  the following algorithm:</p>
+
+  <ol><li>
+
+    <p>If <a href=#the-title-element-0>the <code>title</code> element</a> is not null,
+    then generate the following triple:</p>
+
+    <dl><dt>subject   <dd> <a href="#the-document's-current-address">the document's current address</a>
+     <dt>predicate <dd> <code title="">http://purl.org/dc/terms/title</code>
+     <dt>object    <dd> the <code><a href=#textcontent>textContent</a></code> of <a href=#the-title-element-0>the <code>title</code> element</a>
+    </dl></li>
+
+   <li>
+
+    <p>For each <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, and
+    <code><a href=#the-link-element>link</a></code> element in the <code>Document</code>, run these
+    substeps:</p>
+
+    <ol><li><p>If the element does not have a <code title="">rel</code>
+     attribute, then skip this element.</li>
+
+     <li><p>If the element does not have an <code title="">href</code>
+     attribute, then skip this element.</li>
+
+     <li><p>If <a href=#resolve-a-url title="resolve a URL">resolving</a> the
+     element's <code title="">href</code> attribute relative to the
+     element is not successful, then skip this element.</li>
+
+     <li><p>Otherwise, <a href=#split-a-string-on-spaces title="split a string on spaces">split
+     the value of the element's <code title="">rel</code> attribute on
+     spaces</a>, obtaining <var title="">list of tokens</var>.</li>
+
+     <li><p><a href=#converted-to-lowercase title="converted to lowercase">Convert each token in
+     <var title="">list of tokens</var> to lowercase</a>.</li>
+
+     <li><p>If <var title="">list of tokens</var> contains both the
+     tokens <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> and <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, then remove them both
+     and replace them with the single token <code title="">alternate-stylesheet</code>.</li>
+
+     <li><p>If <var title="">list of tokens</var> contains more than
+     one instance of the token <code title=rel-up><a href=#link-type-up>up</a></code>, then
+     remove all such tokens.</li>
+
+     <li>
+
+      <p>For each token <var title="">token</var> in <var title="">list of tokens</var> that contains neither a U+003A
+      COLON character (:) nor a U+002E FULL STOP character (.),
+      generate the following triple:</p>
+
+      <dl><dt>subject   <dd> <a href="#the-document's-current-address">the document's current address</a>
+       <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>
+       <dt>object    <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">href</code> attribute relative to the element
+      </dl></li>
+
+    </ol></li>
+
+   <li>
+
+    <p>For each <code><a href=#meta>meta</a></code> element in the <code>Document</code>
+    that has a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and
+    a <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, if the
+    value of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute
+    contains neither a U+003A COLON character (:) nor a U+002E FULL
+    STOP character (.), generate the following triple:</p>
+
+    <dl><dt>subject   <dd> <a href="#the-document's-current-address">the document's current address</a>
+     <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-lowercase>converted to lowercase</a>
+     <dt>object    <dd> the value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute
+    </dl></li>
+
+   <li>
+
+    <p>For each <code><a href=#the-article-element>article</a></code>, <code><a href=#the-section-element>section</a></code>,
+    <code><a href=#the-blockquote-element>blockquote</a></code>, and <code><a href=#the-q-element>q</a></code> element in the
+    <code>Document</code> that has a <code title="">cite</code>
+    attribute that <a href=#resolve-a-url title="resolve a url">resolves</a>
+    successfully relative to the element, generate the following
+    triple:</p>
+
+    <dl><dt>subject   <dd> <a href="#the-document's-current-address">the document's current address</a>
+     <dt>predicate <dd> <code title="">http://purl.org/dc/terms/source</code>
+     <dt>object    <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">cite</code> attribute relative to the element
+    </dl></li>
+
+   <li>
+
+    <p>For each element that is also a <a href=#top-level-microdata-items title="top-level
+    microdata items">top-level microdata item</a>, <a href=#generate-the-triples-for-an-item title="generate the triples for an item">generate the triples for
+    the item</a>. (Nothing is done with the returned subject.)</p>
+
+   </li>
+
+  </ol><p>When the user agent is to <dfn id=generate-the-triples-for-an-item>generate the triples for an
+  item</dfn> <var title="">item</var>, it must follow the following
+  steps:</p>
+
+  <ol><li><p>If there is exactly one element whose <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> is
+   <var title="">item</var> and that has as one of its <a href=#property-names>property
+   names</a> the string "<code title="">about</code>", and the
+   <a href=#concept-property-value title=concept-property-value>property value</a> of that
+   element is an <a href=#absolute-url>absolute URL</a>, let <var title="">subject</var> be that <a href=#absolute-url>absolute
+   URL</a>. Otherwise, let <var title="">subject</var> be a new
+   blank node.</li>
+
+   <li>
+
+    <p>For each <a href=#item-types title="item types">item type</a> <var title="">type</var> of <var title="">item</var>, run the following
+    substeps:</p>
+
+    <ol><li><p>If <var title="">type</var> is not an <a href=#absolute-url>absolute
+     URL</a>, then let <var title="">type</var> be the result of
+     concatenating the string "<code title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var title="">type</var>.</li>
+
+     <li>
+
+      <p>Generate the following triple:</p>
+
+      <dl><dt>subject   <dd> <var title="">subject</var>
+       <dt>predicate <dd> <code title="">http://www.w3.org/1999/02/22-rdf-syntax-ns#type</code>
+       <dt>object    <dd> <var title="">type</var>
+      </dl></li>
+
+    </ol></li>
+
+   <li>
+
+    <p>For each element <var title="">element</var> that has one or
+    more <a href=#property-names>property names</a> and whose <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> is
+    <var title="">item</var>, run the following substeps:</p>
+
+    <ol><li><p>Let <var title="">value</var> be the <a href=#concept-property-value title=concept-property-value>property value</a> of <var title="">element</var>.</li>
+
+     <li><p>If <var title="">value</var> is an element, then <a href=#generate-the-triples-for-an-item title="generate the triples for an item">generate the triples for
+     the element <var title="">value</var></a>, and then replace
+     <var title="">value</var> with the subject returned from those
+     steps.</li>
+
+     <li>
+
+      <p>For each name <var title="">name</var> in <var title="">element</var>'s <a href=#property-names>property names</a>, run the
+      following substeps:</p>
+
+      <ol><li><p>If <var title="">name</var> is not an <a href=#absolute-url>absolute
+       URL</a>, then let <var title="">name</var> be the result of
+       concatenating the string "<code title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var title="">name</var>.</li>
+
+       <li>
+
+        <p>Generate the following triple:</p>
+
+        <dl><dt>subject   <dd> <var title="">subject</var>
+         <dt>predicate <dd> <var title="">name</var>
+         <dt>object    <dd> <var title="">value</var>
+        </dl></li>
+
+      </ol></li>
+
+    </ol></li>
+
+   <li><p>Return <var title="">subject</var>.</li>
+
+  </ol><h2 id=browsers><span class=secno>6 </span>Web browsers</h2>
+
   <div class=impl>
 
   <p>This section describes features that apply most directly to Web
@@ -40375,7 +41120,7 @@
 
 
 
-  <h3 id=windows><span class=secno>5.1 </span>Browsing contexts</h3>
+  <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>
@@ -40488,7 +41233,7 @@
   </div>
 
 
-  <h4 id=nested-browsing-contexts><span class=secno>5.1.1 </span>Nested browsing contexts</h4>
+  <h4 id=nested-browsing-contexts><span class=secno>6.1.1 </span>Nested browsing contexts</h4>
 
   <p>Certain elements (for example, <code><a href=#the-iframe-element>iframe</a></code> elements) can
   instantiate further <a href=#browsing-context title="browsing context">browsing
@@ -40540,7 +41285,7 @@
   <code><a href=#the-iframe-element>iframe</a></code> element with a <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code> attribute.</p>
 
 
-  <h5 id=navigating-nested-browsing-contexts-in-the-dom><span class=secno>5.1.1.1 </span>Navigating nested browsing contexts in the DOM</h5>
+  <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>
 
@@ -40610,7 +41355,7 @@
 
 
 
-  <h4 id=auxiliary-browsing-contexts><span class=secno>5.1.2 </span>Auxiliary browsing contexts</h4>
+  <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
@@ -40627,7 +41372,7 @@
   context</a> was created.</p>
 
 
-  <h5 id=navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>5.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</h5>
+  <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
@@ -40639,7 +41384,7 @@
 
 
 
-  <h4 id=secondary-browsing-contexts><span class=secno>5.1.3 </span>Secondary browsing contexts</h4>
+  <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
@@ -40648,7 +41393,7 @@
 
   <div class=impl>
 
-  <h4 id=security-1><span class=secno>5.1.4 </span>Security</h4>
+  <h4 id=security-1><span class=secno>6.1.4 </span>Security</h4>
 
   <p>A <a href=#browsing-context>browsing context</a> <var title="">A</var> is
   <dfn id=allowed-to-navigate>allowed to navigate</dfn> a second <a href=#browsing-context>browsing
@@ -40682,7 +41427,7 @@
 
   <div class=impl>
 
-  <h4 id=groupings-of-browsing-contexts><span class=secno>5.1.5 </span>Groupings of browsing contexts</h4>
+  <h4 id=groupings-of-browsing-contexts><span class=secno>6.1.5 </span>Groupings of browsing contexts</h4>
 
   <p>Each <a href=#browsing-context>browsing context</a> is defined as having a list of
   zero or more <dfn id=directly-reachable-browsing-contexts>directly reachable browsing contexts</dfn>. These
@@ -40725,7 +41470,7 @@
 
 
 
-  <h4 id=browsing-context-names><span class=secno>5.1.6 </span>Browsing context names</h4>
+  <h4 id=browsing-context-names><span class=secno>6.1.6 </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>
@@ -40838,7 +41583,7 @@
 
   <div class=impl>
 
-  <h3 id=the-windowproxy-object><span class=secno>5.2 </span>The <code><a href=#windowproxy>WindowProxy</a></code> object</h3>
+  <h3 id=the-windowproxy-object><span class=secno>6.2 </span>The <code><a href=#windowproxy>WindowProxy</a></code> object</h3>
 
   <p>As mentioned earlier, each <a href=#browsing-context>browsing context</a> has a
   <dfn id=windowproxy><code>WindowProxy</code></dfn> object. This object is unusual
@@ -40852,7 +41597,7 @@
 
 
 
-  <h3 id=the-window-object><span class=secno>5.3 </span>The <code><a href=#window>Window</a></code> object</h3>
+  <h3 id=the-window-object><span class=secno>6.3 </span>The <code><a href=#window>Window</a></code> object</h3>
 
   <pre class=idl>[<a href=#dom-window-item title=dom-window-item>IndexGetter</a>, <a href=#dom-window-nameditem title=dom-window-namedItem>NameGetter</a>=OverrideBuiltins]
 interface <dfn id=window>Window</dfn> {
@@ -41003,7 +41748,7 @@
 
   <div class=impl>
 
-  <h4 id=security-2><span class=secno>5.3.1 </span>Security</h4>
+  <h4 id=security-2><span class=secno>6.3.1 </span>Security</h4>
 
   <p>User agents must raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception
   whenever any of the members of a <code><a href=#window>Window</a></code> object are
@@ -41030,7 +41775,7 @@
 
 
 
-  <h4 id=apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>5.3.2 </span>APIs for creating and navigating browsing contexts by name</h4>
+  <h4 id=apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>6.3.2 </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>
 
@@ -41154,7 +41899,7 @@
   </div>
 
 
-  <h4 id=accessing-other-browsing-contexts><span class=secno>5.3.3 </span>Accessing other browsing contexts</h4>
+  <h4 id=accessing-other-browsing-contexts><span class=secno>6.3.3 </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>
 
@@ -41201,7 +41946,7 @@
 
 
 
-  <h4 id=named-access-on-the-window-object><span class=secno>5.3.4 </span>Named access on the <code><a href=#window>Window</a></code> object</h4>
+  <h4 id=named-access-on-the-window-object><span class=secno>6.3.4 </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>
 
@@ -41285,7 +42030,7 @@
 
   <div class=impl>
 
-  <h4 id=garbage-collection-and-browsing-contexts><span class=secno>5.3.5 </span>Garbage collection and browsing contexts</h4>
+  <h4 id=garbage-collection-and-browsing-contexts><span class=secno>6.3.5 </span>Garbage collection and browsing contexts</h4>
 
   <p>A <a href=#browsing-context>browsing context</a> has a strong reference to each of
   its <code>Document</code>s and its <code><a href=#windowproxy>WindowProxy</a></code> object,
@@ -41327,7 +42072,7 @@
 
 
 
-  <h4 id=browser-interface-elements><span class=secno>5.3.6 </span>Browser interface elements</h4>
+  <h4 id=browser-interface-elements><span class=secno>6.3.6 </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
@@ -41462,7 +42207,7 @@
 
   <div class=impl>
 
-  <h3 id=origin><span class=secno>5.4 </span>Origin</h3>
+  <h3 id=origin><span class=secno>6.4 </span>Origin</h3>
   <!-- Hallowed are the Ori -->
 
   <p>The <dfn id=origin-0>origin</dfn> of a resource and the <dfn id=effective-script-origin>effective script
@@ -41791,7 +42536,7 @@
   </ol></div>
 
 
-  <h4 id=relaxing-the-same-origin-restriction><span class=secno>5.4.1 </span>Relaxing the same-origin restriction</h4>
+  <h4 id=relaxing-the-same-origin-restriction><span class=secno>6.4.1 </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>
 
@@ -41921,9 +42666,9 @@
 
 
 
-  <h3 id=scripting><span class=secno>5.5 </span>Scripting</h3>
+  <h3 id=scripting><span class=secno>6.5 </span>Scripting</h3>
 
-  <h4 id=introduction-2><span class=secno>5.5.1 </span>Introduction</h4>
+  <h4 id=introduction-3><span class=secno>6.5.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
@@ -41945,7 +42690,7 @@
 
   </ul><div class=impl>
 
-  <h4 id=enabling-and-disabling-scripting><span class=secno>5.5.2 </span>Enabling and disabling scripting</h4>
+  <h4 id=enabling-and-disabling-scripting><span class=secno>6.5.2 </span>Enabling and disabling scripting</h4>
 
   <p><dfn id=concept-bc-script title=concept-bc-script>Scripting is enabled</dfn> in a
   <em><a href=#browsing-context>browsing context</a></em> when all of the
@@ -41982,9 +42727,9 @@
   <div class=impl>
 
   <!-- SCRIPT EXEC (marks areas related to creation of scripts) -->
-  <h4 id=processing-model-1><span class=secno>5.5.3 </span>Processing model</h4>
+  <h4 id=processing-model-1><span class=secno>6.5.3 </span>Processing model</h4>
 
-  <h5 id=definitions-0><span class=secno>5.5.3.1 </span>Definitions</h5>
+  <h5 id=definitions-0><span class=secno>6.5.3.1 </span>Definitions</h5>
 
   <p>A <dfn id=concept-script title=concept-script>script</dfn> has:</p>
 
@@ -42093,7 +42838,7 @@
 
   <div class=impl>
 
-  <h5 id=calling-scripts><span class=secno>5.5.3.2 </span>Calling scripts</h5>
+  <h5 id=calling-scripts><span class=secno>6.5.3.2 </span>Calling scripts</h5>
 
   <p>When a user agent is to <dfn id=jump-to-a-code-entry-point>jump to a code entry-point</dfn> for
   a <a href=#concept-script title=concept-script>script</a>, for example to invoke
@@ -42121,7 +42866,7 @@
 
   <div class=impl>
 
-  <h5 id=creating-scripts><span class=secno>5.5.3.3 </span>Creating scripts</h5>
+  <h5 id=creating-scripts><span class=secno>6.5.3.3 </span>Creating scripts</h5>
 
   <p>When the specification says that a <a href=#concept-script title=concept-script>script</a> is to be <dfn id=create-a-script title="create a
   script">created</dfn>, given some script source, its scripting
@@ -42192,7 +42937,7 @@
 
   <div class=impl>
 
-  <h5 id=killing-scripts><span class=secno>5.5.3.4 </span>Killing scripts</h5>
+  <h5 id=killing-scripts><span class=secno>6.5.3.4 </span>Killing scripts</h5>
 
   <p>User agents may impose resource limitations on scripts, for
   example CPU quotas, memory limits, total execution time limits, or
@@ -42226,9 +42971,9 @@
 
   <div class=impl>
 
-  <h4 id=event-loops><span class=secno>5.5.4 </span>Event loops</h4>
+  <h4 id=event-loops><span class=secno>6.5.4 </span>Event loops</h4>
 
-  <h5 id=definitions-1><span class=secno>5.5.4.1 </span>Definitions</h5>
+  <h5 id=definitions-1><span class=secno>6.5.4.1 </span>Definitions</h5>
 
   <p>To coordinate events, user interaction, scripts, rendering,
   networking, and so forth, user agents must use <dfn id=event-loop title="event
@@ -42331,7 +43076,7 @@
 
 
 
-  <h5 id=processing-model-2><span class=secno>5.5.4.2 </span>Processing model</h5>
+  <h5 id=processing-model-2><span class=secno>6.5.4.2 </span>Processing model</h5>
 
   <p>An <a href=#event-loop>event loop</a> must continually run through the
   following steps for as long as it exists:</p>
@@ -42383,7 +43128,7 @@
 
   <div class=impl>
 
-  <h5 id=generic-task-sources><span class=secno>5.5.4.3 </span>Generic task sources</h5>
+  <h5 id=generic-task-sources><span class=secno>6.5.4.3 </span>Generic task sources</h5>
 
   <p>The following <a href=#task-source title="task source">task sources</a> are
   used by a number of mostly unrelated features in this and other
@@ -42439,7 +43184,7 @@
   <div class=impl>
 
   <!-- SCRIPT EXEC -->
-  <h4 id=javascript-protocol><span class=secno>5.5.5 </span><dfn title="javascript protocol">The <code title="">javascript:</code> protocol</dfn></h4>
+  <h4 id=javascript-protocol><span class=secno>6.5.5 </span><dfn title="javascript protocol">The <code title="">javascript:</code> protocol</dfn></h4>
 
   <p>When a <a href=#url>URL</a> using the <code title="">javascript:</code> protocol is <dfn id=concept-js-deref title=concept-js-deref>dereferenced</dfn>, the user agent must run
   the following steps:</p>
@@ -42563,11 +43308,11 @@
 
 
 
-  <h4 id=events><span class=secno>5.5.6 </span>Events</h4>
+  <h4 id=events><span class=secno>6.5.6 </span>Events</h4>
 
   <div class=impl>
 
-  <h5 id=event-handler-attributes><span class=secno>5.5.6.1 </span>Event handler attributes</h5>
+  <h5 id=event-handler-attributes><span class=secno>6.5.6.1 </span>Event handler attributes</h5>
 
   </div>
 
@@ -42752,7 +43497,7 @@
 
   <div class=impl>
 
-  <h5 id=event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>5.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code><a href=#window>Window</a></code> objects</h5>
+  <h5 id=event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>6.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code><a href=#window>Window</a></code> objects</h5>
 
   <p>The following are the <a href=#event-handler-attributes-0>event handler attributes</a> (and their corresponding <a href=#event-handler-event-type title="event handler event type">event handler event types</a>)
   that must be supported by all <a href=#html-elements>HTML elements</a>, as both
@@ -42859,7 +43604,7 @@
 
   <div class=impl>
 
-  <h5 id=event-firing><span class=secno>5.5.6.3 </span>Event firing</h5>
+  <h5 id=event-firing><span class=secno>6.5.6.3 </span>Event firing</h5>
 
   <p class=XXX>maybe this should be moved higher up
   (terminology? conformance? DOM?) Also, the whole terminology thing
@@ -42909,7 +43654,7 @@
 
   <div class=impl>
 
-  <h5 id=events-and-the-window-object><span class=secno>5.5.6.4 </span>Events and the <code><a href=#window>Window</a></code> object</h5>
+  <h5 id=events-and-the-window-object><span class=secno>6.5.6.4 </span>Events and the <code><a href=#window>Window</a></code> object</h5>
 
   <p>When an event is dispatched at a DOM node in a
   <code>Document</code> in a <a href=#browsing-context>browsing context</a>, if the
@@ -42930,7 +43675,7 @@
 
   <div class=impl>
 
-  <h5 id=runtime-script-errors><span class=secno>5.5.6.5 </span>Runtime script errors</h5>
+  <h5 id=runtime-script-errors><span class=secno>6.5.6.5 </span>Runtime script errors</h5>
 
   <p><em>This section only applies to user agents that support
   scripting in general and JavaScript in particular.</em></p>
@@ -42981,7 +43726,7 @@
   </dl></div>
 
 
-  <h3 id=timers><span class=secno>5.6 </span>Timers</h3>
+  <h3 id=timers><span class=secno>6.6 </span>Timers</h3>
 
   <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>
@@ -43243,7 +43988,7 @@
 
 
 
-  <h3 id=user-prompts><span class=secno>5.7 </span>User prompts</h3>
+  <h3 id=user-prompts><span class=secno>6.7 </span>User prompts</h3>
 
   <!--
    v2 ideas:
@@ -43254,7 +43999,7 @@
        - with a solution for the mobile space
   -->
 
-  <h4 id=simple-dialogs><span class=secno>5.7.1 </span>Simple dialogs</h4>
+  <h4 id=simple-dialogs><span class=secno>6.7.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>
@@ -43321,7 +44066,7 @@
   </div>
 
 
-  <h4 id=printing><span class=secno>5.7.2 </span>Printing</h4>
+  <h4 id=printing><span class=secno>6.7.2 </span>Printing</h4>
 
   <dl class=domintro><dt><var title="">window</var> . <code title=dom-print><a href=#dom-print>print</a></code>()</dt>
 
@@ -43415,7 +44160,7 @@
   </ol></div>
 
 
-  <h4 id=dialogs-implemented-using-separate-documents><span class=secno>5.7.3 </span>Dialogs implemented using separate documents</h4>
+  <h4 id=dialogs-implemented-using-separate-documents><span class=secno>6.7.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>
 
@@ -43635,7 +44380,7 @@
 
 
 
-  <h3 id=system-state-and-capabilities><span class=secno>5.8 </span>System state and capabilities</h3>
+  <h3 id=system-state-and-capabilities><span class=secno>6.8 </span>System state and capabilities</h3>
 
   <div class=impl>
 
@@ -43697,7 +44442,7 @@
   </div>
 
 
-  <h4 id=client-identification><span class=secno>5.8.1 </span>Client identification</h4>
+  <h4 id=client-identification><span class=secno>6.8.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
@@ -43767,7 +44512,7 @@
   </dl></div>
 
 
-  <h4 id=custom-handlers><span class=secno>5.8.2 </span>Custom protocol and content handlers</h4>
+  <h4 id=custom-handlers><span class=secno>6.8.2 </span>Custom protocol and content handlers</h4>
 
   <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
@@ -43949,7 +44694,7 @@
 
   <div class=impl>
 
-  <h5 id=security-and-privacy><span class=secno>5.8.2.1 </span>Security and privacy</h5>
+  <h5 id=security-and-privacy><span class=secno>6.8.2.1 </span>Security and privacy</h5>
 
   <p>These mechanisms can introduce a number of concerns, in
   particular privacy concerns.</p>
@@ -44033,7 +44778,7 @@
 
   <div class=impl>
 
-  <h5 id=sample-handler-impl><span class=secno>5.8.2.2 </span>Sample user interface</h5>
+  <h5 id=sample-handler-impl><span class=secno>6.8.2.2 </span>Sample user interface</h5>
 
   <p><em>This section is non-normative.</em></p>
 
@@ -44115,7 +44860,7 @@
 
 
 
-  <h4 id=manually-releasing-the-storage-mutex><span class=secno>5.8.3 </span>Manually releasing the storage mutex</h4>
+  <h4 id=manually-releasing-the-storage-mutex><span class=secno>6.8.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>
 
@@ -44148,9 +44893,9 @@
 
 
 
-  <h3 id=offline><span class=secno>5.9 </span>Offline Web applications</h3>
+  <h3 id=offline><span class=secno>6.9 </span>Offline Web applications</h3>
 
-  <h4 id=introduction-3><span class=secno>5.9.1 </span>Introduction</h4>
+  <h4 id=introduction-4><span class=secno>6.9.1 </span>Introduction</h4>
 
   <p><em>This section is non-normative.</em></p>
 
@@ -44159,7 +44904,7 @@
 
   <div class=impl>
 
-  <h4 id=appcache><span class=secno>5.9.2 </span>Application caches</h4>
+  <h4 id=appcache><span class=secno>6.9.2 </span>Application caches</h4>
 
   <p>An <dfn id=application-cache>application cache</dfn> is a set of cached resources
   consisting of:</p>
@@ -44285,10 +45030,10 @@
   </ul></div>
 
 
-  <h4 id=manifests><span class=secno>5.9.3 </span>The cache manifest syntax</h4>
+  <h4 id=manifests><span class=secno>6.9.3 </span>The cache manifest syntax</h4>
 
 
-  <h5 id=a-sample-manifest><span class=secno>5.9.3.1 </span>A sample manifest</h5>
+  <h5 id=a-sample-manifest><span class=secno>6.9.3.1 </span>A sample manifest</h5>
 
   <p><em>This section is non-normative.</em></p>
 
@@ -44324,7 +45069,7 @@
 style/default.css</pre>
 
 
-  <h5 id=writing-cache-manifests><span class=secno>5.9.3.2 </span>Writing cache manifests</h5>
+  <h5 id=writing-cache-manifests><span class=secno>6.9.3.2 </span>Writing cache manifests</h5>
 
   <p>Manifests must be served using the <code title="">text/cache-manifest</code> MIME type. All resources served
   using the <code title="">text/cache-manifest</code> MIME type must
@@ -44446,7 +45191,7 @@
 
   <div class=impl>
 
-  <h5 id=parsing-cache-manifests><span class=secno>5.9.3.3 </span>Parsing cache manifests</h5>
+  <h5 id=parsing-cache-manifests><span class=secno>6.9.3.3 </span>Parsing cache manifests</h5>
 
   <p>When a user agent is to <dfn id=parse-a-manifest>parse a manifest</dfn>, it means
   that the user agent must run the following steps:</p>
@@ -44685,7 +45430,7 @@
   will be ignored.</p>
 
 
-  <h4 id=updating-an-application-cache><span class=secno>5.9.4 </span>Updating an application cache</h4>
+  <h4 id=updating-an-application-cache><span class=secno>6.9.4 </span>Updating an application cache</h4>
 
   <p>When the user agent is required (by other parts of this
   specification) to start the <dfn id=application-cache-update-process>application cache update
@@ -45292,7 +46037,7 @@
 
 
 
-  <h4 id=matching-a-fallback-namespace><span class=secno>5.9.5 </span>Matching a fallback namespace</h4>
+  <h4 id=matching-a-fallback-namespace><span class=secno>6.9.5 </span>Matching a fallback namespace</h4>
 
   <p>A URL <dfn id=concept-appcache-matches-fallback title=concept-appcache-matches-fallback>matches a
   fallback namespace</dfn> if there exists a <a href=#relevant-application-cache>relevant
@@ -45320,7 +46065,7 @@
   </div>
 
 
-  <h4 id=the-application-cache-selection-algorithm><span class=secno>5.9.6 </span>The application cache selection algorithm</h4>
+  <h4 id=the-application-cache-selection-algorithm><span class=secno>6.9.6 </span>The application cache selection algorithm</h4>
 
   <p>When the <dfn id=concept-appcache-init title=concept-appcache-init>application cache
   selection algorithm</dfn> algorithm is invoked with a
@@ -45404,7 +46149,7 @@
 
    </dd>
 
-  </dl><h4 id=changesToNetworkingModel><span class=secno>5.9.7 </span>Changes to the networking model</h4>
+  </dl><h4 id=changesToNetworkingModel><span class=secno>6.9.7 </span>Changes to the networking model</h4>
 
   <p>When a <a href=#cache-host>cache host</a> is associated with an
   <a href=#application-cache>application cache</a> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
@@ -45463,7 +46208,7 @@
 
 
 
-  <h4 id=application-cache-api><span class=secno>5.9.8 </span>Application cache API</h4>
+  <h4 id=application-cache-api><span class=secno>6.9.8 </span>Application cache API</h4>
 
   <pre class=idl>interface <dfn id=applicationcache>ApplicationCache</dfn> {
 
@@ -45668,7 +46413,7 @@
   </table></div>
 
 
-  <h4 id=browser-state><span class=secno>5.9.9 </span>Browser state</h4>
+  <h4 id=browser-state><span class=secno>6.9.9 </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>
 
@@ -45706,9 +46451,9 @@
 
 
 
-  <h3 id=history><span class=secno>5.10 </span>Session history and navigation</h3>
+  <h3 id=history><span class=secno>6.10 </span>Session history and navigation</h3>
 
-  <h4 id=the-session-history-of-browsing-contexts><span class=secno>5.10.1 </span>The session history of browsing contexts</h4>
+  <h4 id=the-session-history-of-browsing-contexts><span class=secno>6.10.1 </span>The session history of browsing contexts</h4>
 
   <p>The sequence of <code>Document</code>s in a <a href=#browsing-context>browsing
   context</a> is its <dfn id=session-history>session history</dfn>.</p>
@@ -45803,7 +46548,7 @@
   <code>Document</code> is evicted.</p>
 
 
-  <h4 id=the-history-interface><span class=secno>5.10.2 </span>The <code><a href=#history-1>History</a></code> interface</h4>
+  <h4 id=the-history-interface><span class=secno>6.10.2 </span>The <code><a href=#history-1>History</a></code> interface</h4>
 
   <pre class=idl>interface <dfn id=history-1>History</dfn> {
   readonly attribute long <a href=#dom-history-length title=dom-history-length>length</a>;
@@ -45992,7 +46737,7 @@
   </div>
 
 
-  <h4 id=activating-state-object-entries><span class=secno>5.10.3 </span><dfn title="activate the state object">Activating state object entries</dfn></h4>
+  <h4 id=activating-state-object-entries><span class=secno>6.10.3 </span><dfn title="activate the state object">Activating state object entries</dfn></h4>
 
   <div class=impl>
 
@@ -46067,7 +46812,7 @@
 
 
 
-  <h4 id=the-location-interface><span class=secno>5.10.4 </span>The <code><a href=#location>Location</a></code> interface</h4>
+  <h4 id=the-location-interface><span class=secno>6.10.4 </span>The <code><a href=#location>Location</a></code> interface</h4>
 
   <p>Each <code>Document</code> object in a <a href=#browsing-context>browsing
   context</a>'s session history is associated with a unique
@@ -46249,7 +46994,7 @@
 
   <div class=impl>
 
-  <h5 id=security-3><span class=secno>5.10.4.1 </span>Security</h5>
+  <h5 id=security-3><span class=secno>6.10.4.1 </span>Security</h5>
 
   <p>User agents must raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception whenever
   any of the members of a <code><a href=#location>Location</a></code> object are accessed by
@@ -46269,7 +47014,7 @@
 
   <div class=impl>
 
-  <h4 id=history-notes><span class=secno>5.10.5 </span>Implementation notes for session history</h4>
+  <h4 id=history-notes><span class=secno>6.10.5 </span>Implementation notes for session history</h4>
   <!-- don't change the ID without updating multiple internal links -->
 
   <p><em>This section is non-normative.</em></p>
@@ -46308,11 +47053,11 @@
   </div>
 
 
-  <h3 id=browsing-the-web><span class=secno>5.11 </span>Browsing the Web</h3>
+  <h3 id=browsing-the-web><span class=secno>6.11 </span>Browsing the Web</h3>
 
   <div class=impl>
 
-  <h4 id=navigating-across-documents><span class=secno>5.11.1 </span>Navigating across documents</h4>
+  <h4 id=navigating-across-documents><span class=secno>6.11.1 </span>Navigating across documents</h4>
 
   <p>Certain actions cause the <a href=#browsing-context>browsing context</a> to
   <i><a href=#navigate>navigate</a></i> to a new resource. Navigation always involves
@@ -46668,7 +47413,7 @@
   source</a>.</p>
 
 
-  <h4 id=read-html><span class=secno>5.11.2 </span><dfn title=navigate-html>Page load processing model for HTML files</dfn></h4>
+  <h4 id=read-html><span class=secno>6.11.2 </span><dfn title=navigate-html>Page load processing model for HTML files</dfn></h4>
 
   <p>When an HTML document is to be loaded in a <a href=#browsing-context>browsing
   context</a>, the user agent must create a <code>Document</code>
@@ -46700,7 +47445,7 @@
 
 
 
-  <h4 id=read-xml><span class=secno>5.11.3 </span><dfn title=navigate-xml>Page load processing model for XML files</dfn></h4>
+  <h4 id=read-xml><span class=secno>6.11.3 </span><dfn title=navigate-xml>Page load processing model for XML files</dfn></h4>
 
   <p>When faced with displaying an XML file inline, user agents must
   first create a <code>Document</code> object, following the
@@ -46757,7 +47502,7 @@
   <code>Document</code>.</p>
 
 
-  <h4 id=read-text><span class=secno>5.11.4 </span><dfn title=navigate-text>Page load processing model for text files</dfn></h4>
+  <h4 id=read-text><span class=secno>6.11.4 </span><dfn title=navigate-text>Page load processing model for text files</dfn></h4>
 
   <p>When a plain text document is to be loaded in a <a href=#browsing-context>browsing
   context</a>, the user agent should create a <code>Document</code>
@@ -46799,7 +47544,7 @@
   etc.</p>
 
 
-  <h4 id=read-image><span class=secno>5.11.5 </span><dfn title=navigate-image>Page load processing model for images</dfn></h4>
+  <h4 id=read-image><span class=secno>6.11.5 </span><dfn title=navigate-image>Page load processing model for images</dfn></h4>
 
   <p>When an image resource is to be loaded in a <a href=#browsing-context>browsing
   context</a>, the user agent should create a <code>Document</code>
@@ -46832,7 +47577,7 @@
   script, to give the document a <code><a href=#the-title-element>title</a></code>, etc.</p>
 
 
-  <h4 id=read-plugin><span class=secno>5.11.6 </span><dfn title=navigate-plugin>Page load processing model for content that uses plugins</dfn></h4>
+  <h4 id=read-plugin><span class=secno>6.11.6 </span><dfn title=navigate-plugin>Page load processing model for content that uses plugins</dfn></h4>
 
   <p>When a resource that requires an external resource to be rendered
   is to be loaded in a <a href=#browsing-context>browsing context</a>, the user agent
@@ -46869,7 +47614,7 @@
   context</a>, the synthesized <code><a href=#the-embed-element>embed</a></code> element will <a href=#sandboxPluginEmbed>fail to render the content</a>.</p>
 
 
-  <h4 id=read-ua-inline><span class=secno>5.11.7 </span><dfn title=navigate-ua-inline>Page load processing model for inline content that doesn't have a DOM</dfn></h4>
+  <h4 id=read-ua-inline><span class=secno>6.11.7 </span><dfn title=navigate-ua-inline>Page load processing model for inline content that doesn't have a DOM</dfn></h4>
 
   <p>When the user agent is to display a user agent page inline in a
   <a href=#browsing-context>browsing context</a>, the user agent should create a
@@ -46897,7 +47642,7 @@
 
 
 
-  <h4 id=scroll-to-fragid><span class=secno>5.11.8 </span><dfn title=navigate-fragid>Navigating to a fragment identifier</dfn></h4>
+  <h4 id=scroll-to-fragid><span class=secno>6.11.8 </span><dfn title=navigate-fragid>Navigating to a fragment identifier</dfn></h4>
 
   <p>When a user agent is supposed to navigate to a fragment
   identifier, then the user agent must <a href=#queue-a-task>queue a task</a> to
@@ -46972,7 +47717,7 @@
   <i><a href=#target-element>target element</a></i>. <a href=#refsSELECTORS>[SELECTORS]</a></p>
 
 
-  <h4 id=history-traversal><span class=secno>5.11.9 </span>History traversal</h4>
+  <h4 id=history-traversal><span class=secno>6.11.9 </span>History traversal</h4>
 
   <p>When a user agent is required to <dfn id=traverse-the-history>traverse the history</dfn>
   to a <i>specified entry</i>, the user agent must act as
@@ -47069,7 +47814,7 @@
   </ol></div>
 
 
-  <h4 id=unloading-documents><span class=secno>5.11.10 </span>Unloading documents</h4>
+  <h4 id=unloading-documents><span class=secno>6.11.10 </span>Unloading documents</h4>
 
   <div class=impl>
 
@@ -47126,7 +47871,7 @@
    <li><p>If <var title="">salvageable</var> and <var title="">recycle</var> are both false, <a href=#discard-a-document title="discard a
    document">discard the <code>Document</code></a>.</li>
 
-  </ol><h5 id=event-definition><span class=secno>5.11.10.1 </span>Event definition</h5>
+  </ol><h5 id=event-definition><span class=secno>6.11.10.1 </span>Event definition</h5>
 
   </div>
 
@@ -47161,10 +47906,10 @@
 
 
 
-  <h3 id=links><span class=secno>5.12 </span>Links</h3>
+  <h3 id=links><span class=secno>6.12 </span>Links</h3>
 
 
-  <h4 id=hyperlink-elements><span class=secno>5.12.1 </span>Hyperlink elements</h4>
+  <h4 id=hyperlink-elements><span class=secno>6.12.1 </span>Hyperlink elements</h4>
 
   <p>The <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, and <code><a href=#the-link-element>link</a></code>
   elements can, in certain situations described in the definitions of
@@ -47241,7 +47986,7 @@
 
   <div class=impl>
 
-  <h4 id=following-hyperlinks><span class=secno>5.12.2 </span><dfn>Following hyperlinks</dfn></h4>
+  <h4 id=following-hyperlinks><span class=secno>6.12.2 </span><dfn>Following hyperlinks</dfn></h4>
 
   <p>When a user <em>follows a hyperlink</em>, the user agent must
   <a href=#resolve-a-url title="resolve a url">resolve</a> the <a href=#url>URL</a>
@@ -47299,7 +48044,7 @@
   <a href=#source-browsing-context>source browsing context</a>.</p>
 
 
-  <h5 id=hyperlink-auditing><span class=secno>5.12.2.1 </span><dfn>Hyperlink auditing</dfn></h5>
+  <h5 id=hyperlink-auditing><span class=secno>6.12.2.1 </span><dfn>Hyperlink auditing</dfn></h5>
 
   <p>If an <code><a href=#the-a-element>a</a></code> or <code><a href=#the-area-element>area</a></code> hyperlink element has a
   <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute, and the
@@ -47429,7 +48174,7 @@
 
 
 
-  <h4 id=linkTypes><span class=secno>5.12.3 </span>Link types</h4>
+  <h4 id=linkTypes><span class=secno>6.12.3 </span>Link types</h4>
 
   <p>The following table summarizes the link types that are defined by
   this specification. This table is non-normative; the actual
@@ -47607,7 +48352,7 @@
     -->
 
 
-  <h5 id=link-type-alternate><span class=secno>5.12.3.1 </span>Link type "<dfn title=rel-alternate><code>alternate</code></dfn>"</h5>
+  <h5 id=link-type-alternate><span class=secno>6.12.3.1 </span>Link type "<dfn title=rel-alternate><code>alternate</code></dfn>"</h5>
 
   <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword may be
   used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47672,7 +48417,7 @@
   alternative representations of each other.</p>
 
 
-  <h5 id=link-type-archives><span class=secno>5.12.3.2 </span>Link type "<dfn title=rel-archives><code>archives</code></dfn>"</h5>
+  <h5 id=link-type-archives><span class=secno>6.12.3.2 </span>Link type "<dfn title=rel-archives><code>archives</code></dfn>"</h5>
 
   <p>The <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword may be
   used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47694,7 +48439,7 @@
   </div>
 
 
-  <h5 id=link-type-author><span class=secno>5.12.3.3 </span>Link type "<dfn title=rel-author><code>author</code></dfn>"</h5>
+  <h5 id=link-type-author><span class=secno>6.12.3.3 </span>Link type "<dfn title=rel-author><code>author</code></dfn>"</h5>
 
   <p>The <code title=rel-author><a href=#link-type-author>author</a></code> keyword may be
   used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47723,7 +48468,7 @@
   </div>
 
 
-  <h5 id=link-type-bookmark><span class=secno>5.12.3.4 </span>Link type "<dfn title=rel-bookmark><code>bookmark</code></dfn>"</h5>
+  <h5 id=link-type-bookmark><span class=secno>6.12.3.4 </span>Link type "<dfn title=rel-bookmark><code>bookmark</code></dfn>"</h5>
 
   <p>The <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code> keyword may be
   used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -47789,7 +48534,7 @@
 -->
 
 
-  <h5 id=link-type-external><span class=secno>5.12.3.5 </span>Link type "<dfn title=rel-external><code>external</code></dfn>"</h5>
+  <h5 id=link-type-external><span class=secno>6.12.3.5 </span>Link type "<dfn title=rel-external><code>external</code></dfn>"</h5>
 
   <p>The <code title=rel-external><a href=#link-type-external>external</a></code> keyword may be
   used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -47799,7 +48544,7 @@
   that the current document forms a part of.</p>
 
 
-  <h5 id=link-type-feed><span class=secno>5.12.3.6 </span>Link type "<dfn title=rel-feed><code>feed</code></dfn>"</h5>
+  <h5 id=link-type-feed><span class=secno>6.12.3.6 </span>Link type "<dfn title=rel-feed><code>feed</code></dfn>"</h5>
 
   <p>The <code title=rel-feed><a href=#link-type-feed>feed</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47841,7 +48586,7 @@
   </div>
 
 
-  <h5 id=link-type-help><span class=secno>5.12.3.7 </span>Link type "<dfn title=rel-help><code>help</code></dfn>"</h5>
+  <h5 id=link-type-help><span class=secno>6.12.3.7 </span>Link type "<dfn title=rel-help><code>help</code></dfn>"</h5>
 
   <p>The <code title=rel-help><a href=#link-type-help>help</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47866,7 +48611,7 @@
   document provides help for the page as a whole.</p>
 
 
-  <h5 id=rel-icon><span class=secno>5.12.3.8 </span>Link type "<dfn title=rel-icon><code>icon</code></dfn>"</h5>
+  <h5 id=rel-icon><span class=secno>6.12.3.8 </span>Link type "<dfn title=rel-icon><code>icon</code></dfn>"</h5>
 
   <p>The <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
@@ -47992,7 +48737,7 @@
   </div>
 
 
-  <h5 id=link-type-license><span class=secno>5.12.3.9 </span>Link type "<dfn title=rel-license><code>license</code></dfn>"</h5>
+  <h5 id=link-type-license><span class=secno>6.12.3.9 </span>Link type "<dfn title=rel-license><code>license</code></dfn>"</h5>
 
   <p>The <code title=rel-license><a href=#link-type-license>license</a></code> keyword may be used
   with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48055,7 +48800,7 @@
   </div>
 
 
-  <h5 id=link-type-nofollow><span class=secno>5.12.3.10 </span>Link type "<dfn title=rel-nofollow><code>nofollow</code></dfn>"</h5>
+  <h5 id=link-type-nofollow><span class=secno>6.12.3.10 </span>Link type "<dfn title=rel-nofollow><code>nofollow</code></dfn>"</h5>
 
   <p>The <code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code> keyword may be
   used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -48067,7 +48812,7 @@
   affiliated with the two pages.</p>
 
 
-  <h5 id=link-type-noreferrer><span class=secno>5.12.3.11 </span>Link type "<dfn title=rel-noreferrer><code>noreferrer</code></dfn>"</h5>
+  <h5 id=link-type-noreferrer><span class=secno>6.12.3.11 </span>Link type "<dfn title=rel-noreferrer><code>noreferrer</code></dfn>"</h5>
 
   <p>The <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword may be
   used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -48089,7 +48834,7 @@
   </div>
 
 
-  <h5 id=link-type-pingback><span class=secno>5.12.3.12 </span>Link type "<dfn title=rel-pingback><code>pingback</code></dfn>"</h5>
+  <h5 id=link-type-pingback><span class=secno>6.12.3.12 </span>Link type "<dfn title=rel-pingback><code>pingback</code></dfn>"</h5>
 
   <p>The <code title=rel-pingback><a href=#link-type-pingback>pingback</a></code> keyword may be
   used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
@@ -48098,7 +48843,7 @@
   specification. <a href=#refsPINGBACK>[PINGBACK]</a></p>
 
 
-  <h5 id=link-type-prefetch><span class=secno>5.12.3.13 </span>Link type "<dfn title=rel-prefetch><code>prefetch</code></dfn>"</h5>
+  <h5 id=link-type-prefetch><span class=secno>6.12.3.13 </span>Link type "<dfn title=rel-prefetch><code>prefetch</code></dfn>"</h5>
 
   <p>The <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword may be
   used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
@@ -48111,7 +48856,7 @@
   <p>There is no default type for resources given by the <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword.</p>
 
 
-  <h5 id=link-type-search><span class=secno>5.12.3.14 </span>Link type "<dfn title=rel-search><code>search</code></dfn>"</h5>
+  <h5 id=link-type-search><span class=secno>6.12.3.14 </span>Link type "<dfn title=rel-search><code>search</code></dfn>"</h5>
 
   <p>The <code title=rel-search><a href=#link-type-search>search</a></code> keyword may be used
   with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48128,7 +48873,7 @@
   -->
 
 
-  <h5 id=link-type-stylesheet><span class=secno>5.12.3.15 </span>Link type "<dfn title=rel-stylesheet><code>stylesheet</code></dfn>"</h5>
+  <h5 id=link-type-stylesheet><span class=secno>6.12.3.15 </span>Link type "<dfn title=rel-stylesheet><code>stylesheet</code></dfn>"</h5>
 
   <p>The <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword may be
   used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a> that
@@ -48155,7 +48900,7 @@
   </div>
 
 
-  <h5 id=link-type-sidebar><span class=secno>5.12.3.16 </span>Link type "<dfn title=rel-sidebar><code>sidebar</code></dfn>"</h5>
+  <h5 id=link-type-sidebar><span class=secno>6.12.3.16 </span>Link type "<dfn title=rel-sidebar><code>sidebar</code></dfn>"</h5>
 
   <p>The <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword may be used
   with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48169,7 +48914,7 @@
   <p>A <a href=#hyperlink title=hyperlink>hyperlink element</a> with the <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword specified is a <dfn id=rel-sidebar-hyperlink title=rel-sidebar-hyperlink>sidebar hyperlink</dfn>.</p>
 
 
-  <h5 id=link-type-tag><span class=secno>5.12.3.17 </span>Link type "<dfn title=rel-tag><code>tag</code></dfn>"</h5>
+  <h5 id=link-type-tag><span class=secno>6.12.3.17 </span>Link type "<dfn title=rel-tag><code>tag</code></dfn>"</h5>
 
   <p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> keyword may be used
   with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48185,7 +48930,7 @@
   the popular tag across a set of pages.</p>
 
 
-  <h5 id=hierarchical-link-types><span class=secno>5.12.3.18 </span>Hierarchical link types</h5>
+  <h5 id=hierarchical-link-types><span class=secno>6.12.3.18 </span>Hierarchical link types</h5>
 
   <p>Some documents form part of a hierarchical structure of
   documents.</p>
@@ -48198,7 +48943,7 @@
   <p>A document may be part of multiple hierarchies.</p>
 
 
-  <h6 id=link-type-index><span class=secno>5.12.3.18.1 </span>Link type "<dfn title=rel-index><code>index</code></dfn>"</h6>
+  <h6 id=link-type-index><span class=secno>6.12.3.18.1 </span>Link type "<dfn title=rel-index><code>index</code></dfn>"</h6>
 
   <p>The <code title=rel-index><a href=#link-type-index>index</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48218,7 +48963,7 @@
   </div>
 
 
-  <h6 id=link-type-up><span class=secno>5.12.3.18.2 </span>Link type "<dfn title=rel-up><code>up</code></dfn>"</h6>
+  <h6 id=link-type-up><span class=secno>6.12.3.18.2 </span>Link type "<dfn title=rel-up><code>up</code></dfn>"</h6>
 
   <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48285,7 +49030,7 @@
   interface hides duplicates).</p>
 
 
-  <h5 id=sequential-link-types><span class=secno>5.12.3.19 </span>Sequential link types</h5>
+  <h5 id=sequential-link-types><span class=secno>6.12.3.19 </span>Sequential link types</h5>
 
   <p>Some documents form part of a sequence of documents.</p>
 
@@ -48297,7 +49042,7 @@
   <p>A document may be part of multiple sequences.</p>
 
 
-  <h6 id=link-type-first><span class=secno>5.12.3.19.1 </span>Link type "<dfn title=rel-first><code>first</code></dfn>"</h6>
+  <h6 id=link-type-first><span class=secno>6.12.3.19.1 </span>Link type "<dfn title=rel-first><code>first</code></dfn>"</h6>
 
   <p>The <code title=rel-first><a href=#link-type-first>first</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48316,7 +49061,7 @@
   </div>
 
 
-  <h6 id=link-type-last><span class=secno>5.12.3.19.2 </span>Link type "<dfn title=rel-last><code>last</code></dfn>"</h6>
+  <h6 id=link-type-last><span class=secno>6.12.3.19.2 </span>Link type "<dfn title=rel-last><code>last</code></dfn>"</h6>
 
   <p>The <code title=rel-last><a href=#link-type-last>last</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48335,7 +49080,7 @@
   </div>
 
 
-  <h6 id=link-type-next><span class=secno>5.12.3.19.3 </span>Link type "<dfn title=rel-next><code>next</code></dfn>"</h6>
+  <h6 id=link-type-next><span class=secno>6.12.3.19.3 </span>Link type "<dfn title=rel-next><code>next</code></dfn>"</h6>
 
   <p>The <code title=rel-next><a href=#link-type-next>next</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48346,7 +49091,7 @@
   document that is the next logical document in the sequence.</p>
 
 
-  <h6 id=link-type-prev><span class=secno>5.12.3.19.4 </span>Link type "<dfn title=rel-prev><code>prev</code></dfn>"</h6>
+  <h6 id=link-type-prev><span class=secno>6.12.3.19.4 </span>Link type "<dfn title=rel-prev><code>prev</code></dfn>"</h6>
 
   <p>The <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword may be used with
   <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48365,7 +49110,7 @@
   </div>
 
 
-  <h5 id=other-link-types><span class=secno>5.12.3.20 </span>Other link types</h5>
+  <h5 id=other-link-types><span class=secno>6.12.3.20 </span>Other link types</h5>
 
   <p>Other than the types defined above, only types defined as
   extensions in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
@@ -48503,7 +49248,7 @@
 
 
 
-  <h2 id=editing><span class=secno>6 </span><dfn>User Interaction</dfn></h2>
+  <h2 id=editing><span class=secno>7 </span><dfn>User Interaction</dfn></h2>
 
   <p>This section describes various features that allow authors to
   enable users to edit documents and parts of documents
@@ -48511,7 +49256,7 @@
 
 
 
-  <h3 id=editing-intro><span class=secno>6.1 </span>Introduction</h3>
+  <h3 id=editing-intro><span class=secno>7.1 </span>Introduction</h3>
 
   <p><em>This section is non-normative.</em></p>
 
@@ -48520,7 +49265,7 @@
 
 
 
-  <h3 id=the-hidden-attribute><span class=secno>6.2 </span>The <dfn title=attr-hidden><code>hidden</code></dfn> attribute</h3>
+  <h3 id=the-hidden-attribute><span class=secno>7.2 </span>The <dfn title=attr-hidden><code>hidden</code></dfn> attribute</h3>
 
   <p>All elements may have the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>
   content attribute set. The <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>
@@ -48582,7 +49327,7 @@
 
 
 
-  <h3 id=activation><span class=secno>6.3 </span>Activation</h3>
+  <h3 id=activation><span class=secno>7.3 </span>Activation</h3>
 
   <!-- v2 idea: HTMLImageElement.click(x, y); or clickPoint(), if
        click() can't be done in IE; can this be emulated in IE by
@@ -48623,7 +49368,7 @@
   </ol></div>
 
 
-  <h3 id=scrolling-elements-into-view><span class=secno>6.4 </span>Scrolling elements into view</h3>
+  <h3 id=scrolling-elements-into-view><span class=secno>7.4 </span>Scrolling elements into view</h3>
 
   <dl class=domintro><dt><var title="">element</var> . <code title=dom-scrollIntoView><a href=#dom-scrollintoview>scrollIntoView</a></code>( [ <var title="">top</var> ] )</dt>
 
@@ -48667,7 +49412,7 @@
   </div>
 
 
-  <h3 id=focus><span class=secno>6.5 </span>Focus</h3>
+  <h3 id=focus><span class=secno>7.5 </span>Focus</h3>
 
   <!-- http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%20%0A...%3Cform%3E%3Cinput%20name%3Da%20onfocus%3D%22value%2B%3D1%3Bd.name%3D%27a%27%3Bname%3D%27d%27%3Bb.focus()%22%3E%0A%3Cinput%20name%3Db%20onfocus%3D%22value%2B%3D1%3Bc.focus()%22%3E%0A%3Cinput%20name%3Dc%20onfocus%3D%22value%2B%3D1%3Bd.focus()%22%3E%0A%3Cinput%20name%3Dd%20onfocus%3D%22value%2B%3D1%3Ba.focus()%22%3E -->
 
@@ -48711,7 +49456,7 @@
   </div>
 
 
-  <h4 id=sequential-focus-navigation><span class=secno>6.5.1 </span>Sequential focus navigation</h4>
+  <h4 id=sequential-focus-navigation><span class=secno>7.5.1 </span>Sequential focus navigation</h4>
 
   <p>The <dfn id=attr-tabindex title=attr-tabindex><code>tabindex</code></dfn>
   content attribute specifies whether the element is focusable,
@@ -48858,7 +49603,7 @@
 
   <div class=impl>
 
-  <h4 id=focus-management><span class=secno>6.5.2 </span>Focus management</h4>
+  <h4 id=focus-management><span class=secno>7.5.2 </span>Focus management</h4>
 
   <p>The <dfn id=focusing-steps>focusing steps</dfn> are as follows:</p>
 
@@ -48916,7 +49661,7 @@
   </div>
 
 
-  <h4 id=document-level-focus-apis><span class=secno>6.5.3 </span>Document-level focus APIs</h4>
+  <h4 id=document-level-focus-apis><span class=secno>7.5.3 </span>Document-level focus APIs</h4>
 
   <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-activeElement><a href=#dom-document-activeelement>activeElement</a></code></dt>
 
@@ -48991,7 +49736,7 @@
   </div>
 
 
-  <h4 id=element-level-focus-apis><span class=secno>6.5.4 </span>Element-level focus APIs</h4>
+  <h4 id=element-level-focus-apis><span class=secno>7.5.4 </span>Element-level focus APIs</h4>
 
   <dl class=domintro><dt><var title="">element</var> . <code title=dom-focus><a href=#dom-focus>focus</a></code>()</dt>
 
@@ -49040,7 +49785,7 @@
 
 
 
-  <h3 id=the-accesskey-attribute><span class=secno>6.6 </span>The <dfn title=attr-accesskey><code>accesskey</code></dfn> attribute</h3>
+  <h3 id=the-accesskey-attribute><span class=secno>7.6 </span>The <dfn title=attr-accesskey><code>accesskey</code></dfn> attribute</h3>
 
   <p>All elements may have the <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> content attribute set. The
   <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> attribute's value is
@@ -49186,7 +49931,7 @@
 
 
 
-  <h3 id=selection><span class=secno>6.7 </span>The text selection APIs</h3>
+  <h3 id=selection><span class=secno>7.7 </span>The text selection APIs</h3>
 
   <p>Every <a href=#browsing-context>browsing context</a> has <dfn id=the-selection title="the
   selection">a selection</dfn>. The selection can be empty, and the
@@ -49259,7 +50004,7 @@
 
 
 
-  <h4 id=documentSelection><span class=secno>6.7.1 </span>APIs for the browsing context selection</h4>
+  <h4 id=documentSelection><span class=secno>7.7.1 </span>APIs for the browsing context selection</h4>
 
   <dl class=domintro><dt><var title="">window</var> . <code title=dom-getSelection><a href=#dom-getselection>getSelection</a></code>()</dt>
    <dt><var title="">document</var> . <code title=dom-document-getSelection><a href=#dom-document-getselection>getSelection</a></code>()</dt>
@@ -49579,7 +50324,7 @@
   -->
 
 
-  <h4 id=textFieldSelection><span class=secno>6.7.2 </span>APIs for the text field selections</h4>
+  <h4 id=textFieldSelection><span class=secno>7.7.2 </span>APIs for the text field selections</h4>
 
   <!-- v2 idea: DOM Range APIs to expose the textarea/input edited
   value (ack martijnw) -->
@@ -49703,7 +50448,7 @@
 
 
 
-  <h3 id=contenteditable><span class=secno>6.8 </span>The <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute</h3>
+  <h3 id=contenteditable><span class=secno>7.8 </span>The <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute</h3>
 
   <p>The <dfn id=attr-contenteditable title=attr-contenteditable><code>contenteditable</code></dfn>
   attribute is an <a href=#enumerated-attribute>enumerated attribute</a> whose keywords are
@@ -49812,7 +50557,7 @@
 
   <div class=impl>
 
-  <h4 id=user-editing-actions><span class=secno>6.8.1 </span>User editing actions</h4>
+  <h4 id=user-editing-actions><span class=secno>7.8.1 </span>User editing actions</h4>
 
   <p>There are several actions that the user agent should allow the
   user to perform while the user is interacting with an editing
@@ -49998,7 +50743,7 @@
 
 
 
-  <h4 id=making-entire-documents-editable><span class=secno>6.8.2 </span>Making entire documents editable</h4>
+  <h4 id=making-entire-documents-editable><span class=secno>7.8.2 </span>Making entire documents editable</h4>
 
   <div class=impl>
 
@@ -50040,7 +50785,7 @@
 
 
 
-  <h3 id=spelling-and-grammar-checking><span class=secno>6.9 </span>Spelling and grammar checking</h3>
+  <h3 id=spelling-and-grammar-checking><span class=secno>7.9 </span>Spelling and grammar checking</h3>
 
   <div class=impl>
 
@@ -50226,7 +50971,7 @@
 
 
 
-  <h3 id=dnd><span class=secno>6.10 </span><dfn>Drag and drop</dfn></h3>
+  <h3 id=dnd><span class=secno>7.10 </span><dfn>Drag and drop</dfn></h3>
 
 <!--XXX
 
@@ -50288,14 +51033,14 @@
   </div>
 
 
-  <h4 id=introduction-4><span class=secno>6.10.1 </span>Introduction</h4>
+  <h4 id=introduction-5><span class=secno>7.10.1 </span>Introduction</h4>
 
   <p><em>This section is non-normative.</em></p>
 
   <p class=XXX>It's also currently non-existent.</p>
 
 
-  <h4 id=the-dragevent-and-datatransfer-interfaces><span class=secno>6.10.2 </span>The <code><a href=#dragevent>DragEvent</a></code> and <code><a href=#datatransfer>DataTransfer</a></code> interfaces</h4>
+  <h4 id=the-dragevent-and-datatransfer-interfaces><span class=secno>7.10.2 </span>The <code><a href=#dragevent>DragEvent</a></code> and <code><a href=#datatransfer>DataTransfer</a></code> interfaces</h4>
 
   <p>The drag-and-drop processing model involves several events. They
   all use the <code><a href=#dragevent>DragEvent</a></code> interface.</p>
@@ -50513,7 +51258,7 @@
   </div>
 
 
-  <h4 id=events-fired-during-a-drag-and-drop-action><span class=secno>6.10.3 </span>Events fired during a drag-and-drop action</h4>
+  <h4 id=events-fired-during-a-drag-and-drop-action><span class=secno>7.10.3 </span>Events fired during a drag-and-drop action</h4>
 
   <p>The following events are involved in the drag-and-drop
   model. <span class=impl>Whenever the processing model described
@@ -50637,7 +51382,7 @@
 
   <div class=impl>
 
-  <h4 id=drag-and-drop-processing-model><span class=secno>6.10.4 </span>Drag-and-drop processing model</h4>
+  <h4 id=drag-and-drop-processing-model><span class=secno>7.10.4 </span>Drag-and-drop processing model</h4>
 
   <p>When the user attempts to begin a drag operation, the user agent
   must first determine what is being dragged. If the drag operation
@@ -51020,7 +51765,7 @@
 
   <div class=impl>
 
-  <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>6.10.4.1 </span>When the drag-and-drop operation starts or ends in another
+  <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>7.10.4.1 </span>When the drag-and-drop operation starts or ends in another
   document</h5>
 
   <p>The model described above is independent of which
@@ -51039,7 +51784,7 @@
 
   <div class=impl>
 
-  <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>6.10.4.2 </span>When the drag-and-drop operation starts or ends in another
+  <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>7.10.4.2 </span>When the drag-and-drop operation starts or ends in another
   application</h5>
 
   <p>If the drag is initiated in another application, the <a href=#source-node>source
@@ -51065,7 +51810,7 @@
   </div>
 
 
-  <h4 id=the-draggable-attribute><span class=secno>6.10.5 </span>The <dfn title=attr-draggable><code>draggable</code></dfn> attribute</h4>
+  <h4 id=the-draggable-attribute><span class=secno>7.10.5 </span>The <dfn title=attr-draggable><code>draggable</code></dfn> attribute</h4>
 
   <p>All elements may have the <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute set. The
   <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> attribute is an
@@ -51125,7 +51870,7 @@
 
 
 
-  <h4 id=copy-and-paste><span class=secno>6.10.6 </span>Copy and paste</h4>
+  <h4 id=copy-and-paste><span class=secno>7.10.6 </span>Copy and paste</h4>
 
   <p>Copy-and-paste is a form of drag-and-drop: the "copy" part is
   equivalent to dragging content to another application (the
@@ -51139,7 +51884,7 @@
 
   <div class=impl>
 
-  <h5 id=copy-to-clipboard><span class=secno>6.10.6.1 </span>Copy to clipboard</h5>
+  <h5 id=copy-to-clipboard><span class=secno>7.10.6.1 </span>Copy to clipboard</h5>
 
   <p>When the user invokes a copy operation, the user agent must act
   as if the user had invoked a drag on the current selection. If the
@@ -51153,14 +51898,14 @@
   operations (e.g. updating the clipboard).</p>
 
 
-  <h5 id=cut-to-clipboard><span class=secno>6.10.6.2 </span>Cut to clipboard</h5>
+  <h5 id=cut-to-clipboard><span class=secno>7.10.6.2 </span>Cut to clipboard</h5>
 
   <p>When the user invokes a cut operation, the user agent must act as
   if the user had invoked a copy operation (see the previous section),
   followed, if the copy was completed successfully, by <a href=#contenteditable-delete>a selection delete operation</a>.</p>
 
 
-  <h5 id=paste-from-clipboard><span class=secno>6.10.6.3 </span>Paste from clipboard</h5>
+  <h5 id=paste-from-clipboard><span class=secno>7.10.6.3 </span>Paste from clipboard</h5>
 
   <p>When the user invokes a clipboard paste operation, the user agent
   must act as if the user had invoked a drag on a hypothetical
@@ -51174,7 +51919,7 @@
   canceling it.</p>
 
 
-  <h5 id=paste-from-selection><span class=secno>6.10.6.4 </span>Paste from selection</h5>
+  <h5 id=paste-from-selection><span class=secno>7.10.6.4 </span>Paste from selection</h5>
 
   <p>When the user invokes a selection paste operation, the user agent
   must act as if the user had invoked a drag on the current selection,
@@ -51188,7 +51933,7 @@
 
   <div class=impl>
 
-  <h4 id=security-risks-in-the-drag-and-drop-model><span class=secno>6.10.7 </span>Security risks in the drag-and-drop model</h4>
+  <h4 id=security-risks-in-the-drag-and-drop-model><span class=secno>7.10.7 </span>Security risks in the drag-and-drop model</h4>
 
   <p>User agents must not make the data added to the
   <code><a href=#datatransfer>DataTransfer</a></code> object during the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event available to scripts
@@ -51214,19 +51959,19 @@
   </div>
 
 
-  <h3 id=undo><span class=secno>6.11 </span><dfn>Undo history</dfn></h3>
+  <h3 id=undo><span class=secno>7.11 </span><dfn>Undo history</dfn></h3>
 
   <p class=XXX>There has got to be a better way of doing this, surely.</p>
 
 
-  <h4 id=introduction-5><span class=secno>6.11.1 </span>Introduction</h4>
+  <h4 id=introduction-6><span class=secno>7.11.1 </span>Introduction</h4>
 
   <p class=XXX>...</p>
 
 
   <div class=impl>
 
-  <h4 id=definitions-2><span class=secno>6.11.2 </span>Definitions</h4>
+  <h4 id=definitions-2><span class=secno>7.11.2 </span>Definitions</h4>
 
   <p>The user agent must associate an <dfn id=undo-transaction-history>undo transaction
   history</dfn> with each <code><a href=#htmldocument>HTMLDocument</a></code> object.</p>
@@ -51267,7 +52012,7 @@
   </div>
 
 
-  <h4 id=the-undomanager-interface><span class=secno>6.11.3 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
+  <h4 id=the-undomanager-interface><span class=secno>7.11.3 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
 
   <div class=impl>
 
@@ -51473,7 +52218,7 @@
 
   <div class=impl>
 
-  <h4 id=undo:-moving-back-in-the-undo-transaction-history><span class=secno>6.11.4 </span><dfn title=do-undo>Undo: moving back in the undo transaction history</dfn></h4>
+  <h4 id=undo:-moving-back-in-the-undo-transaction-history><span class=secno>7.11.4 </span><dfn title=do-undo>Undo: moving back in the undo transaction history</dfn></h4>
 
   <p>When the user invokes an undo operation, or when the <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> method is
   called with the <code title=command-undo><a href=#command-undo>undo</a></code> command, the
@@ -51510,7 +52255,7 @@
   command to undo his undo.</p>
 
 
-  <h4 id=redo:-moving-forward-in-the-undo-transaction-history><span class=secno>6.11.5 </span><dfn title=do-redo>Redo: moving forward in the undo transaction history</dfn></h4>
+  <h4 id=redo:-moving-forward-in-the-undo-transaction-history><span class=secno>7.11.5 </span><dfn title=do-redo>Redo: moving forward in the undo transaction history</dfn></h4>
 
   <p>When the user invokes a redo operation, or when the <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> method is
   called with the <code title=command-redo><a href=#command-redo>redo</a></code> command, the
@@ -51547,7 +52292,7 @@
   </div>
 
 
-  <h4 id=the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>6.11.6 </span>The <code><a href=#undomanagerevent>UndoManagerEvent</a></code> interface and the <code title=event-undo><a href=#event-undo>undo</a></code> and <code title=event-redo><a href=#event-redo>redo</a></code> events</h4>
+  <h4 id=the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>7.11.6 </span>The <code><a href=#undomanagerevent>UndoManagerEvent</a></code> interface and the <code title=event-undo><a href=#event-undo>undo</a></code> and <code title=event-redo><a href=#event-redo>redo</a></code> events</h4>
 
   <pre class=idl>interface <dfn id=undomanagerevent>UndoManagerEvent</dfn> : Event {
   readonly attribute any <a href=#dom-undomanagerevent-data title=dom-UndoManagerEvent-data>data</a>;
@@ -51584,7 +52329,7 @@
 
   <div class=impl>
 
-  <h4 id=implementation-notes><span class=secno>6.11.7 </span>Implementation notes</h4>
+  <h4 id=implementation-notes><span class=secno>7.11.7 </span>Implementation notes</h4>
 
   <p>How user agents present the above conceptual model to the user is
   not defined. The undo interface could be a filtered view of the
@@ -51607,7 +52352,7 @@
 
 
 
-  <h3 id=editing-apis><span class=secno>6.12 </span>Editing APIs</h3>
+  <h3 id=editing-apis><span class=secno>7.12 </span>Editing APIs</h3>
 
   <dl class=domintro><dt><var title="">document</var> . <code title=dom-document-execCommand><a href=#execCommand>execCommand</a></code>(<var title="">commandId</var> [, <var title="">showUI</var> [, <var title="">value</var> ] ] )</dt>
 
@@ -52061,10 +52806,10 @@
 XXX Once we resolve the style="" issue, address these:
  "forecolor", "hilitecolor", "fontname", "fontsize", "justifyleft",
  "justifycenter", "justifyright", "justifyfull", "indent", "outdent"
---><h2 id=comms><span class=secno>7 </span>Communication</h2>
+--><h2 id=comms><span class=secno>8 </span>Communication</h2>
 
 
-  <h3 id=event-definitions><span class=secno>7.1 </span>Event definitions</h3>
+  <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
@@ -52176,7 +52921,7 @@
 
 
 
-  <h3 id=crossDocumentMessages><span class=secno>7.2 </span><dfn>Cross-document messaging</dfn></h3>
+  <h3 id=crossDocumentMessages><span class=secno>8.2 </span><dfn>Cross-document messaging</dfn></h3>
 
   <p>Web browsers, for security and privacy reasons, prevent documents
   in different domains from affecting each other; that is, cross-site
@@ -52197,7 +52942,7 @@
   </div>
 
 
-  <h4 id=introduction-6><span class=secno>7.2.1 </span>Introduction</h4>
+  <h4 id=introduction-7><span class=secno>8.2.1 </span>Introduction</h4>
 
   <p><em>This section is non-normative.</em></p>
 
@@ -52238,11 +52983,11 @@
   </div>
 
 
-  <h4 id=security-4><span class=secno>7.2.2 </span>Security</h4>
+  <h4 id=security-4><span class=secno>8.2.2 </span>Security</h4>
 
   <div class=impl>
 
-  <h5 id=authors><span class=secno>7.2.2.1 </span>Authors</h5>
+  <h5 id=authors><span class=secno>8.2.2.1 </span>Authors</h5>
 
   </div>
 
@@ -52270,7 +53015,7 @@
 
   <div class=impl>
 
-  <h5 id=user-agents><span class=secno>7.2.2.2 </span>User agents</h5>
+  <h5 id=user-agents><span class=secno>8.2.2.2 </span>User agents</h5>
 
   <p>The integrity of this API is based on the inability for scripts
   of one <a href=#origin-0>origin</a> to post arbitrary events (using <code title="">dispatchEvent()</code> or otherwise) to objects in other
@@ -52286,7 +53031,7 @@
   </div>
 
 
-  <h4 id=posting-messages><span class=secno>7.2.3 </span>Posting messages</h4>
+  <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>
 
@@ -52380,7 +53125,7 @@
 
   <div class=impl>
 
-  <h4 id=posting-messages-with-message-ports><span class=secno>7.2.4 </span>Posting messages with message ports</h4>
+  <h4 id=posting-messages-with-message-ports><span class=secno>8.2.4 </span>Posting messages with message ports</h4>
 
   <p>When a script invokes the <dfn id=dom-window-postmessage-3 title=dom-window-postMessage-3><code>postMessage(<var title="">message</var>, <var title="">ports</var>, <var title="">targetOrigin</var>)</code></dfn> method (with three
   arguments) on a <code><a href=#window>Window</a></code> object, the user agent must
@@ -52503,9 +53248,9 @@
 
 
 
-  <h3 id=channel-messaging><span class=secno>7.3 </span><dfn>Channel messaging</dfn></h3>
+  <h3 id=channel-messaging><span class=secno>8.3 </span><dfn>Channel messaging</dfn></h3>
 
-  <h4 id=introduction-7><span class=secno>7.3.1 </span>Introduction</h4>
+  <h4 id=introduction-8><span class=secno>8.3.1 </span>Introduction</h4>
 
   <p><em>This section is non-normative.</em></p>
 
@@ -52514,7 +53259,7 @@
 
 
 
-  <h4 id=message-channels><span class=secno>7.3.2 </span>Message channels</h4>
+  <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> {
@@ -52579,7 +53324,7 @@
 
 
 
-  <h4 id=message-ports><span class=secno>7.3.3 </span>Message ports</h4>
+  <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>
@@ -52869,7 +53614,7 @@
 
   <div class=impl>
 
-  <h5 id=ports-and-garbage-collection><span class=secno>7.3.3.1 </span>Ports and garbage collection</h5>
+  <h5 id=ports-and-garbage-collection><span class=secno>8.3.3.1 </span>Ports and garbage collection</h5>
 
   <p>User agents must act as if <code><a href=#messageport>MessagePort</a></code> objects have
   a strong reference to their entangled <code><a href=#messageport>MessagePort</a></code>
@@ -52905,13 +53650,13 @@
 
 
 
-  <h2 id=syntax><span class=secno>8 </span><dfn>The HTML syntax</dfn></h2>
+  <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 title="">text/html</code> resources. Rules for XML resources are
   discussed in the section below entitled "<a href=#the-xhtml-syntax>The XHTML
   syntax</a>".</p>
 
-  <h3 id=writing-html-documents><span class=secno>8.1 </span>Writing HTML documents</h3>
+  <h3 id=writing-html-documents><span class=secno>9.1 </span>Writing HTML documents</h3>
 
   <div class=impl>
 
@@ -52973,7 +53718,7 @@
   as "case-insensitive".</p>
 
 
-  <h4 id=the-doctype><span class=secno>8.1.1 </span>The DOCTYPE</h4>
+  <h4 id=the-doctype><span class=secno>9.1.1 </span>The DOCTYPE</h4>
 
   <p>A <dfn id=syntax-doctype title=syntax-doctype>DOCTYPE</dfn> is a mostly useless,
   but required, header.</p>
@@ -53021,7 +53766,7 @@
 
 
 
-  <h4 id=elements-0><span class=secno>8.1.2 </span>Elements</h4>
+  <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, CDATA
   elements, RCDATA elements, foreign elements, and normal
@@ -53121,7 +53866,7 @@
   names are case-insensitive.</p>
 
 
-  <h5 id=start-tags><span class=secno>8.1.2.1 </span>Start tags</h5>
+  <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>
@@ -53152,7 +53897,7 @@
    <li>Finally, start tags must be closed by a U+003E GREATER-THAN
    SIGN (<code>></code>) character.</li>
 
-  </ol><h5 id=end-tags><span class=secno>8.1.2.2 </span>End tags</h5>
+  </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>
@@ -53172,7 +53917,7 @@
    <li>Finally, end tags must be closed by a U+003E GREATER-THAN
    SIGN (<code>></code>) character.</li>
 
-  </ol><h5 id=attributes><span class=secno>8.1.2.3 </span>Attributes</h5>
+  </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>
@@ -53313,7 +54058,7 @@
   each other.</p>
 
 
-  <h5 id=optional-tags><span class=secno>8.1.2.4 </span>Optional tags</h5>
+  <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>
 
@@ -53491,7 +54236,7 @@
   tag</a> must never be omitted if it has any attributes.</p>
 
 
-  <h5 id=element-restrictions><span class=secno>8.1.2.5 </span>Restrictions on content models</h5>
+  <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>
@@ -53519,7 +54264,7 @@
   </div>
 
 
-  <h5 id=cdata-rcdata-restrictions><span class=secno>8.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</h5>
+  <h5 id=cdata-rcdata-restrictions><span class=secno>9.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</h5>
 
   <p>The text in CDATA and RCDATA elements must not contain any
   occurrences of the string "<code title=""></</code>" (U+003C
@@ -53560,7 +54305,7 @@
   span end</a>.</p>
 
 
-  <h4 id=text-0><span class=secno>8.1.3 </span>Text</h4>
+  <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.
@@ -53572,7 +54317,7 @@
   described in the other sections.</p>
 
 
-  <h5 id=newlines><span class=secno>8.1.3.1 </span>Newlines</h5>
+  <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
@@ -53580,7 +54325,7 @@
   U+000A LINE FEED (LF) characters in that order.</p>
 
 
-  <h4 id=character-references><span class=secno>8.1.4 </span>Character references</h4>
+  <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
@@ -53631,7 +54376,7 @@
   character.</p>
 
 
-  <h4 id=cdata-sections><span class=secno>8.1.5 </span>CDATA sections</h4>
+  <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
@@ -53648,7 +54393,7 @@
   SIGN (<code title="">]]></code>).</p>
 
 
-  <h4 id=comments><span class=secno>8.1.6 </span>Comments</h4>
+  <h4 id=comments><span class=secno>9.1.6 </span>Comments</h4>
 
   <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
@@ -53666,7 +54411,7 @@
 
   <div class=impl>
 
-  <h3 id=parsing><span class=secno>8.2 </span>Parsing HTML documents</h3>
+  <h3 id=parsing><span class=secno>9.2 </span>Parsing HTML documents</h3>
 
   <p><em>This section only applies to user agents, data mining tools,
   and conformance checkers.</em></p>
@@ -53726,7 +54471,7 @@
   specification.</p>
 
 
-  <h4 id=overview-of-the-parsing-model><span class=secno>8.2.1 </span>Overview of the parsing model</h4>
+  <h4 id=overview-of-the-parsing-model><span class=secno>9.2.1 </span>Overview of the parsing model</h4>
 
   <p>The input to the HTML parsing process consists of a stream of
   Unicode characters, which is passed through a
@@ -53771,7 +54516,7 @@
   pause flag</dfn>, which must be initially set to false.</p>
 
 
-  <h4 id=the-input-stream><span class=secno>8.2.2 </span>The <dfn>input stream</dfn></h4>
+  <h4 id=the-input-stream><span class=secno>9.2.2 </span>The <dfn>input stream</dfn></h4>
 
   <p>The stream of Unicode characters that comprises the input to the
   tokenization stage will be initially seen by the user agent as a
@@ -53785,7 +54530,7 @@
   specification. This section does not apply to XML documents. <a href=#refsXML>[XML]</a></p>
 
 
-  <h5 id=determining-the-character-encoding><span class=secno>8.2.2.1 </span>Determining the character encoding</h5>
+  <h5 id=determining-the-character-encoding><span class=secno>9.2.2.1 </span>Determining the character encoding</h5>
 
   <p>In some cases, it might be impractical to unambiguously determine
   the encoding before parsing the document. Because of this, this
@@ -54160,7 +54905,7 @@
 
 
 
-  <h5 id=preprocessing-the-input-stream><span class=secno>8.2.2.2 </span>Preprocessing the input stream</h5>
+  <h5 id=preprocessing-the-input-stream><span class=secno>9.2.2.2 </span>Preprocessing the input stream</h5>
 
   <p>Given an encoding, the bytes in the input stream must be
   converted to Unicode characters for the tokenizer, as described by
@@ -54235,7 +54980,7 @@
   the stream, but rather the lack of any further characters.</p>
 
 
-  <h5 id=changing-the-encoding-while-parsing><span class=secno>8.2.2.3 </span>Changing the encoding while parsing</h5>
+  <h5 id=changing-the-encoding-while-parsing><span class=secno>9.2.2.3 </span>Changing the encoding while parsing</h5>
 
   <p>When the parser requires the user agent to <dfn id=change-the-encoding>change the
   encoding</dfn>, it must run the following steps. This might happen
@@ -54281,9 +55026,9 @@
    misinterpreted. User agents may notify the user of the situation,
    to aid in application development.</li>
 
-  </ol><h4 id=parse-state><span class=secno>8.2.3 </span>Parse state</h4>
+  </ol><h4 id=parse-state><span class=secno>9.2.3 </span>Parse state</h4>
 
-  <h5 id=the-insertion-mode><span class=secno>8.2.3.1 </span>The insertion mode</h5>
+  <h5 id=the-insertion-mode><span class=secno>9.2.3.1 </span>The insertion mode</h5>
 
   <p>The <dfn id=insertion-mode>insertion mode</dfn> is a state variable that controls
   the primary operation of the tree construction stage.</p>
@@ -54430,7 +55175,7 @@
 
    <li>Return to step 3.</li>
 
-  </ol><h5 id=the-stack-of-open-elements><span class=secno>8.2.3.2 </span>The stack of open elements</h5>
+  </ol><h5 id=the-stack-of-open-elements><span class=secno>9.2.3.2 </span>The stack of open elements</h5>
 
   <p>Initially, the <dfn id=stack-of-open-elements>stack of open elements</dfn> is empty. The
   stack grows downwards; the topmost node on the stack is the first
@@ -54578,7 +55323,7 @@
   the stack is manipulated in a random-access fashion.</p>
 
 
-  <h5 id=the-list-of-active-formatting-elements><span class=secno>8.2.3.3 </span>The list of active formatting elements</h5>
+  <h5 id=the-list-of-active-formatting-elements><span class=secno>9.2.3.3 </span>The list of active formatting elements</h5>
 
   <p>Initially, the <dfn id=list-of-active-formatting-elements>list of active formatting elements</dfn> is
   empty. It is used to handle mis-nested <a href=#formatting title=formatting>formatting element tags</a>.</p>
@@ -54670,7 +55415,7 @@
 
    <li>Go to step 1.</li>
 
-  </ol><h5 id=the-element-pointers><span class=secno>8.2.3.4 </span>The element pointers</h5>
+  </ol><h5 id=the-element-pointers><span class=secno>9.2.3.4 </span>The element pointers</h5>
 
   <p>Initially, the <dfn id=head-element-pointer><code title="">head</code> element
   pointer</dfn> and the <dfn id=form-element-pointer><code title="">form</code> element
@@ -54687,7 +55432,7 @@
   markup, for historical reasons.</p>
 
 
-  <h5 id=other-parsing-state-flags><span class=secno>8.2.3.5 </span>Other parsing state flags</h5>
+  <h5 id=other-parsing-state-flags><span class=secno>9.2.3.5 </span>Other parsing state flags</h5>
 
   <p>The <dfn id=scripting-flag>scripting flag</dfn> is set to "enabled" if <a href=#concept-n-script title=concept-n-script>scripting was enabled</a> for the
   <code>Document</code> with which the parser is associated when the
@@ -54697,7 +55442,7 @@
   created. It is set to "not ok" after certain tokens are seen.</p>
 
 
-  <h4 id=tokenization><span class=secno>8.2.4 </span><dfn>Tokenization</dfn></h4>
+  <h4 id=tokenization><span class=secno>9.2.4 </span><dfn>Tokenization</dfn></h4>
 
   <p>Implementations must act as if they used the following state
   machine to tokenize HTML. The state machine must start in the
@@ -54773,7 +55518,7 @@
   they're in some consistent order, like, by Unicode, errors last, or
   something -->
 
-  <h5 id=data-state><span class=secno>8.2.4.1 </span><dfn>Data state</dfn></h5>
+  <h5 id=data-state><span class=secno>9.2.4.1 </span><dfn>Data state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -54835,7 +55580,7 @@
    <dd>Emit the input character as a character token. Stay in the
    <a href=#data-state>data state</a>.</dd>
 
-  </dl><h5 id=character-reference-data-state><span class=secno>8.2.4.2 </span><dfn>Character reference data state</dfn></h5>
+  </dl><h5 id=character-reference-data-state><span class=secno>9.2.4.2 </span><dfn>Character reference data state</dfn></h5>
 
   <p><em>(This cannot happen if the <a href=#content-model-flag>content model flag</a>
   is set to the CDATA state.)</em></p>
@@ -54851,7 +55596,7 @@
   <p>Finally, switch to the <a href=#data-state>data state</a>.</p>
 
 
-  <h5 id=tag-open-state><span class=secno>8.2.4.3 </span><dfn>Tag open state</dfn></h5>
+  <h5 id=tag-open-state><span class=secno>9.2.4.3 </span><dfn>Tag open state</dfn></h5>
 
   <p>The behavior of this state depends on the <a href=#content-model-flag>content model
   flag</a>.</p>
@@ -54911,7 +55656,7 @@
 
     </dl></dd>
 
-  </dl><h5 id=close-tag-open-state><span class=secno>8.2.4.4 </span><dfn>Close tag open state</dfn></h5>
+  </dl><h5 id=close-tag-open-state><span class=secno>9.2.4.4 </span><dfn>Close tag open state</dfn></h5>
 
   <p>If the <a href=#content-model-flag>content model flag</a> is set to the RCDATA or
   CDATA states but no start tag token has ever been emitted by this
@@ -54964,7 +55709,7 @@
    <dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#bogus-comment-state>bogus
    comment state</a>.</dd>
 
-  </dl><h5 id=tag-name-state><span class=secno>8.2.4.5 </span><dfn>Tag name state</dfn></h5>
+  </dl><h5 id=tag-name-state><span class=secno>9.2.4.5 </span><dfn>Tag name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -54995,7 +55740,7 @@
    <dd>Append the <a href=#current-input-character>current input character</a> to the current tag token's
    tag name. Stay in the <a href=#tag-name-state>tag name state</a>.</dd>
 
-  </dl><h5 id=before-attribute-name-state><span class=secno>8.2.4.6 </span><dfn>Before attribute name state</dfn></h5>
+  </dl><h5 id=before-attribute-name-state><span class=secno>9.2.4.6 </span><dfn>Before attribute name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55036,7 +55781,7 @@
    the empty string. Switch to the <a href=#attribute-name-state>attribute name
    state</a>.</dd>
 
-  </dl><h5 id=attribute-name-state><span class=secno>8.2.4.7 </span><dfn>Attribute name state</dfn></h5>
+  </dl><h5 id=attribute-name-state><span class=secno>9.2.4.7 </span><dfn>Attribute name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55085,7 +55830,7 @@
   associated with it (if any).</p>
 
 
-  <h5 id=after-attribute-name-state><span class=secno>8.2.4.8 </span><dfn>After attribute name state</dfn></h5>
+  <h5 id=after-attribute-name-state><span class=secno>9.2.4.8 </span><dfn>After attribute name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55128,7 +55873,7 @@
    the empty string. Switch to the <a href=#attribute-name-state>attribute name
    state</a>.</dd>
 
-  </dl><h5 id=before-attribute-value-state><span class=secno>8.2.4.9 </span><dfn>Before attribute value state</dfn></h5>
+  </dl><h5 id=before-attribute-value-state><span class=secno>9.2.4.9 </span><dfn>Before attribute value state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55166,7 +55911,7 @@
    value. Switch to the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted)
    state</a>.</dd>
 
-  </dl><h5 id=attribute-value-(double-quoted)-state><span class=secno>8.2.4.10 </span><dfn>Attribute value (double-quoted) state</dfn></h5>
+  </dl><h5 id=attribute-value-(double-quoted)-state><span class=secno>9.2.4.10 </span><dfn>Attribute value (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55188,7 +55933,7 @@
    value. Stay in the <a href=#attribute-value-(double-quoted)-state>attribute value (double-quoted)
    state</a>.</dd>
 
-  </dl><h5 id=attribute-value-(single-quoted)-state><span class=secno>8.2.4.11 </span><dfn>Attribute value (single-quoted) state</dfn></h5>
+  </dl><h5 id=attribute-value-(single-quoted)-state><span class=secno>9.2.4.11 </span><dfn>Attribute value (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55210,7 +55955,7 @@
    value. Stay in the <a href=#attribute-value-(single-quoted)-state>attribute value (single-quoted)
    state</a>.</dd>
 
-  </dl><h5 id=attribute-value-(unquoted)-state><span class=secno>8.2.4.12 </span><dfn>Attribute value (unquoted) state</dfn></h5>
+  </dl><h5 id=attribute-value-(unquoted)-state><span class=secno>9.2.4.12 </span><dfn>Attribute value (unquoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55245,7 +55990,7 @@
    value. Stay in the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted)
    state</a>.</dd>
 
-  </dl><h5 id=character-reference-in-attribute-value-state><span class=secno>8.2.4.13 </span><dfn>Character reference in attribute value state</dfn></h5>
+  </dl><h5 id=character-reference-in-attribute-value-state><span class=secno>9.2.4.13 </span><dfn>Character reference in attribute value state</dfn></h5>
 
   <p>Attempt to <a href=#consume-a-character-reference>consume a character reference</a>.</p>
 
@@ -55259,7 +56004,7 @@
   in when were switched into this state.</p>
 
 
-  <h5 id=after-attribute-value-(quoted)-state><span class=secno>8.2.4.14 </span><dfn>After attribute value (quoted) state</dfn></h5>
+  <h5 id=after-attribute-value-(quoted)-state><span class=secno>9.2.4.14 </span><dfn>After attribute value (quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55285,7 +56030,7 @@
    <dd><a href=#parse-error>Parse error</a>. Reconsume the character in
    the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
 
-  </dl><h5 id=self-closing-start-tag-state><span class=secno>8.2.4.15 </span><dfn>Self-closing start tag state</dfn></h5>
+  </dl><h5 id=self-closing-start-tag-state><span class=secno>9.2.4.15 </span><dfn>Self-closing start tag state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55302,7 +56047,7 @@
    <dd><a href=#parse-error>Parse error</a>. Reconsume the character in
    the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
 
-  </dl><h5 id=bogus-comment-state><span class=secno>8.2.4.16 </span><dfn>Bogus comment state</dfn></h5>
+  </dl><h5 id=bogus-comment-state><span class=secno>9.2.4.16 </span><dfn>Bogus comment state</dfn></h5>
 
   <p><em>(This can only happen if the <a href=#content-model-flag>content model
   flag</a> is set to the PCDATA state.)</em></p>
@@ -55323,7 +56068,7 @@
   character.</p>
 
 
-  <h5 id=markup-declaration-open-state><span class=secno>8.2.4.17 </span><dfn>Markup declaration open state</dfn></h5>
+  <h5 id=markup-declaration-open-state><span class=secno>9.2.4.17 </span><dfn>Markup declaration open state</dfn></h5>
 
   <p><em>(This can only happen if the <a href=#content-model-flag>content model
   flag</a> is set to the PCDATA state.)</em></p>
@@ -55352,7 +56097,7 @@
   comment.</p>
 
 
-  <h5 id=comment-start-state><span class=secno>8.2.4.18 </span><dfn>Comment start state</dfn></h5>
+  <h5 id=comment-start-state><span class=secno>9.2.4.18 </span><dfn>Comment start state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55371,7 +56116,7 @@
    <dd>Append the input character to the comment token's
    data. Switch to the <a href=#comment-state>comment state</a>.</dd>
 
-  </dl><h5 id=comment-start-dash-state><span class=secno>8.2.4.19 </span><dfn>Comment start dash state</dfn></h5>
+  </dl><h5 id=comment-start-dash-state><span class=secno>9.2.4.19 </span><dfn>Comment start dash state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55391,7 +56136,7 @@
    character to the comment token's data. Switch to the
    <a href=#comment-state>comment state</a>.</dd>
 
-  </dl><h5 id=comment-state><span class=secno>8.2.4.20 </span><dfn id=comment>Comment state</dfn></h5>
+  </dl><h5 id=comment-state><span class=secno>9.2.4.20 </span><dfn id=comment>Comment state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55410,7 +56155,7 @@
    <dd>Append the input character to the comment token's data. Stay
    in the <a href=#comment-state>comment state</a>.</dd>
 
-  </dl><h5 id=comment-end-dash-state><span class=secno>8.2.4.21 </span><dfn>Comment end dash state</dfn></h5>
+  </dl><h5 id=comment-end-dash-state><span class=secno>9.2.4.21 </span><dfn>Comment end dash state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55430,7 +56175,7 @@
    character to the comment token's data. Switch to the
    <a href=#comment-state>comment state</a>.</dd>
 
-  </dl><h5 id=comment-end-state><span class=secno>8.2.4.22 </span><dfn>Comment end state</dfn></h5>
+  </dl><h5 id=comment-end-state><span class=secno>9.2.4.22 </span><dfn>Comment end state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55456,7 +56201,7 @@
    characters and the input character to the comment token's
    data. Switch to the <a href=#comment-state>comment state</a>.</dd>
 
-  </dl><h5 id=doctype-state><span class=secno>8.2.4.23 </span><dfn>DOCTYPE state</dfn></h5>
+  </dl><h5 id=doctype-state><span class=secno>9.2.4.23 </span><dfn>DOCTYPE state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55471,7 +56216,7 @@
    <dd><a href=#parse-error>Parse error</a>. Reconsume the current
    character in the <a href=#before-doctype-name-state>before DOCTYPE name state</a>.</dd>
 
-  </dl><h5 id=before-doctype-name-state><span class=secno>8.2.4.24 </span><dfn>Before DOCTYPE name state</dfn></h5>
+  </dl><h5 id=before-doctype-name-state><span class=secno>9.2.4.24 </span><dfn>Before DOCTYPE name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55503,7 +56248,7 @@
    <a href=#current-input-character>current input character</a>. Switch to the <a href=#doctype-name-state>DOCTYPE name
    state</a>.</dd>
 
-  </dl><h5 id=doctype-name-state><span class=secno>8.2.4.25 </span><dfn>DOCTYPE name state</dfn></h5>
+  </dl><h5 id=doctype-name-state><span class=secno>9.2.4.25 </span><dfn>DOCTYPE name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55532,7 +56277,7 @@
    <dd>Append the <a href=#current-input-character>current input character</a> to the current DOCTYPE
    token's name. Stay in the <a href=#doctype-name-state>DOCTYPE name state</a>.</dd>
 
-  </dl><h5 id=after-doctype-name-state><span class=secno>8.2.4.26 </span><dfn>After DOCTYPE name state</dfn></h5>
+  </dl><h5 id=after-doctype-name-state><span class=secno>9.2.4.26 </span><dfn>After DOCTYPE name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55572,7 +56317,7 @@
 
    </dd>
 
-  </dl><h5 id=before-doctype-public-identifier-state><span class=secno>8.2.4.27 </span><dfn>Before DOCTYPE public identifier state</dfn></h5>
+  </dl><h5 id=before-doctype-public-identifier-state><span class=secno>9.2.4.27 </span><dfn>Before DOCTYPE public identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55608,7 +56353,7 @@
    <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
    DOCTYPE state</a>.</dd>
 
-  </dl><h5 id=doctype-public-identifier-(double-quoted)-state><span class=secno>8.2.4.28 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-public-identifier-(double-quoted)-state><span class=secno>9.2.4.28 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55630,7 +56375,7 @@
    token's public identifier. Stay in the <a href=#doctype-public-identifier-(double-quoted)-state>DOCTYPE public
    identifier (double-quoted) state</a>.</dd>
 
-  </dl><h5 id=doctype-public-identifier-(single-quoted)-state><span class=secno>8.2.4.29 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-public-identifier-(single-quoted)-state><span class=secno>9.2.4.29 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55652,7 +56397,7 @@
    token's public identifier. Stay in the <a href=#doctype-public-identifier-(single-quoted)-state>DOCTYPE public
    identifier (single-quoted) state</a>.</dd>
 
-  </dl><h5 id=after-doctype-public-identifier-state><span class=secno>8.2.4.30 </span><dfn>After DOCTYPE public identifier state</dfn></h5>
+  </dl><h5 id=after-doctype-public-identifier-state><span class=secno>9.2.4.30 </span><dfn>After DOCTYPE public identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55687,7 +56432,7 @@
    <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
    DOCTYPE state</a>.</dd>
 
-  </dl><h5 id=before-doctype-system-identifier-state><span class=secno>8.2.4.31 </span><dfn>Before DOCTYPE system identifier state</dfn></h5>
+  </dl><h5 id=before-doctype-system-identifier-state><span class=secno>9.2.4.31 </span><dfn>Before DOCTYPE system identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55723,7 +56468,7 @@
    <i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
    DOCTYPE state</a>.</dd>
 
-  </dl><h5 id=doctype-system-identifier-(double-quoted)-state><span class=secno>8.2.4.32 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-system-identifier-(double-quoted)-state><span class=secno>9.2.4.32 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55745,7 +56490,7 @@
    token's system identifier. Stay in the <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system
    identifier (double-quoted) state</a>.</dd>
 
-  </dl><h5 id=doctype-system-identifier-(single-quoted)-state><span class=secno>8.2.4.33 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-system-identifier-(single-quoted)-state><span class=secno>9.2.4.33 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55767,7 +56512,7 @@
    token's system identifier. Stay in the <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system
    identifier (single-quoted) state</a>.</dd>
 
-  </dl><h5 id=after-doctype-system-identifier-state><span class=secno>8.2.4.34 </span><dfn>After DOCTYPE system identifier state</dfn></h5>
+  </dl><h5 id=after-doctype-system-identifier-state><span class=secno>9.2.4.34 </span><dfn>After DOCTYPE system identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55792,7 +56537,7 @@
    state</a>. (This does <em>not</em> set the DOCTYPE token's
    <i>force-quirks flag</i> to <i>on</i>.)</dd>
 
-  </dl><h5 id=bogus-doctype-state><span class=secno>8.2.4.35 </span><dfn>Bogus DOCTYPE state</dfn></h5>
+  </dl><h5 id=bogus-doctype-state><span class=secno>9.2.4.35 </span><dfn>Bogus DOCTYPE state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -55807,7 +56552,7 @@
    <dt>Anything else</dt>
    <dd>Stay in the <a href=#bogus-doctype-state>bogus DOCTYPE state</a>.</dd>
 
-  </dl><h5 id=cdata-section-state><span class=secno>8.2.4.36 </span><dfn>CDATA section state</dfn></h5>
+  </dl><h5 id=cdata-section-state><span class=secno>9.2.4.36 </span><dfn>CDATA section state</dfn></h5>
 
   <p><em>(This can only happen if the <a href=#content-model-flag>content model
   flag</a> is set to the PCDATA state, and is unrelated to the
@@ -55828,7 +56573,7 @@
 
 
 
-  <h5 id=tokenizing-character-references><span class=secno>8.2.4.37 </span>Tokenizing character references</h5>
+  <h5 id=tokenizing-character-references><span class=secno>9.2.4.37 </span>Tokenizing character references</h5>
 
   <p>This section defines how to <dfn id=consume-a-character-reference>consume a character
   reference</dfn>. This definition is used when parsing character
@@ -56014,7 +56759,7 @@
 
    </dd>
 
-  </dl><h4 id=tree-construction><span class=secno>8.2.5 </span><dfn>Tree construction</dfn></h4>
+  </dl><h4 id=tree-construction><span class=secno>9.2.5 </span><dfn>Tree construction</dfn></h4>
 
   <p>The input to the tree construction stage is a sequence of tokens
   from the <a href=#tokenization>tokenization</a> stage. The tree construction
@@ -56087,7 +56832,7 @@
   depths.</p>
 
 
-  <h5 id=creating-and-inserting-elements><span class=secno>8.2.5.1 </span>Creating and inserting elements</h5>
+  <h5 id=creating-and-inserting-elements><span class=secno>9.2.5.1 </span>Creating and inserting elements</h5>
 
   <p>When the steps below require the UA to <dfn id=create-an-element-for-the-token title="create an
   element for the token">create an element for a token</dfn> in a
@@ -56266,7 +57011,7 @@
    <li><p>Then, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: in CDATA/RCDATA">in
    CDATA/RCDATA</a>".</li>
 
-  </ol><h5 id=closing-elements-that-have-implied-end-tags><span class=secno>8.2.5.2 </span>Closing elements that have implied end tags</h5>
+  </ol><h5 id=closing-elements-that-have-implied-end-tags><span class=secno>9.2.5.2 </span>Closing elements that have implied end tags</h5>
 
   <p>When the steps below require the UA to <dfn id=generate-implied-end-tags>generate implied end
   tags</dfn>, then, while the <a href=#current-node>current node</a> is a
@@ -56282,7 +57027,7 @@
   above steps as if that element was not in the above list.</p>
 
 
-  <h5 id=foster-parenting><span class=secno>8.2.5.3 </span>Foster parenting</h5>
+  <h5 id=foster-parenting><span class=secno>9.2.5.3 </span>Foster parenting</h5>
 
   <p>Foster parenting happens when content is misnested in tables.</p>
 
@@ -56320,7 +57065,7 @@
 
 
 
-  <h5 id=the-initial-insertion-mode><span class=secno>8.2.5.4 </span>The "<dfn title="insertion mode: initial">initial</dfn>" insertion mode</h5>
+  <h5 id=the-initial-insertion-mode><span class=secno>9.2.5.4 </span>The "<dfn title="insertion mode: initial">initial</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-initial-insertion-mode title="insertion
   mode: initial">initial</a>", tokens must be handled as follows:</p>
@@ -56480,7 +57225,7 @@
 
    </dd>
 
-  </dl><h5 id=the-before-html-insertion-mode><span class=secno>8.2.5.5 </span>The "<dfn title="insertion mode: before html">before html</dfn>" insertion mode</h5>
+  </dl><h5 id=the-before-html-insertion-mode><span class=secno>9.2.5.5 </span>The "<dfn title="insertion mode: before html">before html</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-html-insertion-mode title="insertion
   mode: before html">before html</a>", tokens must be handled as follows:</p>
@@ -56556,7 +57301,7 @@
   as described in the next section.</p>
 
 
-  <h5 id=the-before-head-insertion-mode><span class=secno>8.2.5.6 </span>The "<dfn title="insertion mode: before head">before head</dfn>" insertion mode</h5>
+  <h5 id=the-before-head-insertion-mode><span class=secno>9.2.5.6 </span>The "<dfn title="insertion mode: before head">before head</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-head-insertion-mode title="insertion
   mode: before head">before head</a>", tokens must be handled as follows:</p>
@@ -56627,7 +57372,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-inhead><span class=secno>8.2.5.7 </span>The "<dfn title="insertion mode: in head">in head</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inhead><span class=secno>9.2.5.7 </span>The "<dfn title="insertion mode: in head">in head</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inhead title="insertion
   mode: in head">in head</a>", tokens must be handled as follows:</p>
@@ -56793,7 +57538,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-inheadnoscript><span class=secno>8.2.5.8 </span>The "<dfn title="insertion mode: in head noscript">in head noscript</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inheadnoscript><span class=secno>9.2.5.8 </span>The "<dfn title="insertion mode: in head noscript">in head noscript</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inheadnoscript title="insertion
   mode: in head noscript">in head noscript</a>", tokens must be handled as follows:</p>
@@ -56853,7 +57598,7 @@
 
    </dd>
 
-  </dl><h5 id=the-after-head-insertion-mode><span class=secno>8.2.5.9 </span>The "<dfn title="insertion mode: after head">after head</dfn>" insertion mode</h5>
+  </dl><h5 id=the-after-head-insertion-mode><span class=secno>9.2.5.9 </span>The "<dfn title="insertion mode: after head">after head</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-head-insertion-mode title="insertion
   mode: after head">after head</a>", tokens must be handled as follows:</p>
@@ -56943,7 +57688,7 @@
     token.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-inbody><span class=secno>8.2.5.10 </span>The "<dfn title="insertion mode: in body">in body</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inbody><span class=secno>9.2.5.10 </span>The "<dfn title="insertion mode: in body">in body</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inbody title="insertion
   mode: in body">in body</a>", tokens must be handled as follows:</p>
@@ -58129,7 +58874,7 @@
 
     </ol></dd>
 
-  </dl><h5 id=parsing-main-incdata><span class=secno>8.2.5.11 </span>The "<dfn title="insertion mode: in CDATA/RCDATA">in CDATA/RCDATA</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-incdata><span class=secno>9.2.5.11 </span>The "<dfn title="insertion mode: in CDATA/RCDATA">in CDATA/RCDATA</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incdata title="insertion
   mode: in CDATA/RCDATA">in CDATA/RCDATA</a>", tokens must be
@@ -58256,7 +59001,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-intable><span class=secno>8.2.5.12 </span>The "<dfn title="insertion mode: in table">in table</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-intable><span class=secno>9.2.5.12 </span>The "<dfn title="insertion mode: in table">in table</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intable title="insertion
   mode: in table">in table</a>", tokens must be handled as follows:</p>
@@ -58437,7 +59182,7 @@
   case</a>.</p>
 
 
-  <h5 id=parsing-main-incaption><span class=secno>8.2.5.13 </span>The "<dfn title="insertion mode: in caption">in caption</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-incaption><span class=secno>9.2.5.13 </span>The "<dfn title="insertion mode: in caption">in caption</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incaption title="insertion
   mode: in caption">in caption</a>", tokens must be handled as follows:</p>
@@ -58495,7 +59240,7 @@
     mode</a>.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-incolgroup><span class=secno>8.2.5.14 </span>The "<dfn title="insertion mode: in column group">in column group</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-incolgroup><span class=secno>9.2.5.14 </span>The "<dfn title="insertion mode: in column group">in column group</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incolgroup title="insertion
   mode: in column group">in column group</a>", tokens must be handled as follows:</p>
@@ -58582,7 +59327,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-intbody><span class=secno>8.2.5.15 </span>The "<dfn title="insertion mode: in table body">in table body</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-intbody><span class=secno>9.2.5.15 </span>The "<dfn title="insertion mode: in table body">in table body</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intbody title="insertion
   mode: in table body">in table body</a>", tokens must be handled as follows:</p>
@@ -58671,7 +59416,7 @@
   case</a>.</p>
 
 
-  <h5 id=parsing-main-intr><span class=secno>8.2.5.16 </span>The "<dfn title="insertion mode: in row">in row</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-intr><span class=secno>9.2.5.16 </span>The "<dfn title="insertion mode: in row">in row</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intr title="insertion
   mode: in row">in row</a>", tokens must be handled as follows:</p>
@@ -58762,7 +59507,7 @@
   case</a>.</p>
 
 
-  <h5 id=parsing-main-intd><span class=secno>8.2.5.17 </span>The "<dfn title="insertion mode: in cell">in cell</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-intd><span class=secno>9.2.5.17 </span>The "<dfn title="insertion mode: in cell">in cell</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intd title="insertion
   mode: in cell">in cell</a>", tokens must be handled as follows:</p>
@@ -58856,7 +59601,7 @@
   cell</a>".</p>
 
 
-  <h5 id=parsing-main-inselect><span class=secno>8.2.5.18 </span>The "<dfn title="insertion mode: in select">in select</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-inselect><span class=secno>9.2.5.18 </span>The "<dfn title="insertion mode: in select">in select</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inselect title="insertion
   mode: in select">in select</a>", tokens must be handled as follows:</p>
@@ -58994,7 +59739,7 @@
     <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-inselectintable><span class=secno>8.2.5.19 </span>The "<dfn title="insertion mode: in select in table">in select in table</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inselectintable><span class=secno>9.2.5.19 </span>The "<dfn title="insertion mode: in select in table">in select in table</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inselectintable title="insertion
   mode: in select in table">in select in table</a>", tokens must be handled as follows:</p>
@@ -59026,7 +59771,7 @@
     mode</a>.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-inforeign><span class=secno>8.2.5.20 </span>The "<dfn title="insertion mode: in foreign content">in foreign content</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inforeign><span class=secno>9.2.5.20 </span>The "<dfn title="insertion mode: in foreign content">in foreign content</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inforeign title="insertion
   mode: in foreign content">in foreign content</a>", tokens must be
@@ -59220,7 +59965,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-afterbody><span class=secno>8.2.5.21 </span>The "<dfn title="insertion mode: after body">after body</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-afterbody><span class=secno>9.2.5.21 </span>The "<dfn title="insertion mode: after body">after body</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterbody title="insertion
   mode: after body">after body</a>", tokens must be handled as follows:</p>
@@ -59278,7 +60023,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-inframeset><span class=secno>8.2.5.22 </span>The "<dfn title="insertion mode: in frameset">in frameset</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inframeset><span class=secno>9.2.5.22 </span>The "<dfn title="insertion mode: in frameset">in frameset</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inframeset title="insertion
   mode: in frameset">in frameset</a>", tokens must be handled as follows:</p>
@@ -59371,7 +60116,7 @@
     <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-afterframeset><span class=secno>8.2.5.23 </span>The "<dfn title="insertion mode: after frameset">after frameset</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-afterframeset><span class=secno>9.2.5.23 </span>The "<dfn title="insertion mode: after frameset">after frameset</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterframeset title="insertion
   mode: after frameset">after frameset</a>", tokens must be handled as follows:</p>
@@ -59431,7 +60176,7 @@
   harder.</p>
 
 
-  <h5 id=the-after-after-body-insertion-mode><span class=secno>8.2.5.24 </span>The "<dfn title="insertion mode: after after body">after after body</dfn>" insertion mode</h5>
+  <h5 id=the-after-after-body-insertion-mode><span class=secno>9.2.5.24 </span>The "<dfn title="insertion mode: after after body">after after body</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-after-body-insertion-mode title="insertion
   mode: after after body">after after body</a>", tokens must be handled as follows:</p>
@@ -59465,7 +60210,7 @@
     reprocess the token.</p>
    </dd>
 
-  </dl><h5 id=the-after-after-frameset-insertion-mode><span class=secno>8.2.5.25 </span>The "<dfn title="insertion mode: after after frameset">after after frameset</dfn>" insertion mode</h5>
+  </dl><h5 id=the-after-after-frameset-insertion-mode><span class=secno>9.2.5.25 </span>The "<dfn title="insertion mode: after after frameset">after after frameset</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-after-frameset-insertion-mode title="insertion
   mode: after after frameset">after after frameset</a>", tokens must be handled as follows:</p>
@@ -59503,7 +60248,7 @@
     <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
    </dd>
 
-  </dl><h4 id=the-end><span class=secno>8.2.6 </span>The end</h4>
+  </dl><h4 id=the-end><span class=secno>9.2.6 </span>The end</h4>
 
   <p>Once the user agent <dfn id=stop-parsing title="stop parsing">stops parsing</dfn>
   the document, the user agent must follow the steps in this
@@ -59637,7 +60382,7 @@
 -->
 
 
-  <h4 id=coercing-an-html-dom-into-an-infoset><span class=secno>8.2.7 </span>Coercing an HTML DOM into an infoset</h4>
+  <h4 id=coercing-an-html-dom-into-an-infoset><span class=secno>9.2.7 </span>Coercing an HTML DOM into an infoset</h4>
 
   <p>When an application uses an <a href=#html-parser>HTML parser</a> in
   conjunction with an XML pipeline, it is possible that the
@@ -59723,7 +60468,7 @@
 
 
 
-  <h3 id=namespaces><span class=secno>8.3 </span>Namespaces</h3>
+  <h3 id=namespaces><span class=secno>9.3 </span>Namespaces</h3>
 
   <p>The <dfn id=html-namespace-0>HTML namespace</dfn> is: <code>http://www.w3.org/1999/xhtml</code></p>
 
@@ -59747,7 +60492,7 @@
 
 
 
-  <h3 id=serializing-html-fragments><span class=secno>8.4 </span>Serializing HTML fragments</h3>
+  <h3 id=serializing-html-fragments><span class=secno>9.4 </span>Serializing HTML fragments</h3>
 
   <p>The following steps form the <dfn id=html-fragment-serialization-algorithm>HTML fragment serialization
   algorithm</dfn>. The algorithm takes as input a DOM
@@ -59932,7 +60677,7 @@
   tag for the <code><a href=#the-p-element>p</a></code>).</p>
 
 
-  <h3 id=parsing-html-fragments><span class=secno>8.5 </span>Parsing HTML fragments</h3>
+  <h3 id=parsing-html-fragments><span class=secno>9.5 </span>Parsing HTML fragments</h3>
 
   <p>The following steps form the <dfn id=html-fragment-parsing-algorithm>HTML fragment parsing
   algorithm</dfn>. The algorithm optionally takes as input an
@@ -60096,7 +60841,7 @@
 
 
 
-  <h3 id=named-character-references><span class=secno>8.6 </span><dfn>Named character references</dfn></h3>
+  <h3 id=named-character-references><span class=secno>9.6 </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
@@ -62251,7 +62996,7 @@
 
 
 
-  <h2 id=the-xhtml-syntax><span class=secno>9 </span><dfn>The XHTML syntax</dfn></h2>
+  <h2 id=the-xhtml-syntax><span class=secno>10 </span><dfn>The XHTML syntax</dfn></h2>
 
   <p class=note>This section only describes the rules for XML
   resources. Rules for <code title="">text/html</code> resources are
@@ -62261,7 +63006,7 @@
 
   <div class=impl>
 
-  <h3 id=writing-xhtml-documents><span class=secno>9.1 </span>Writing XHTML documents</h3>
+  <h3 id=writing-xhtml-documents><span class=secno>10.1 </span>Writing XHTML documents</h3>
 
   </div>
 
@@ -62286,7 +63031,7 @@
 
   <div class=impl>
 
-  <h3 id=parsing-xhtml-documents><span class=secno>9.2 </span>Parsing XHTML documents</h3>
+  <h3 id=parsing-xhtml-documents><span class=secno>10.2 </span>Parsing XHTML documents</h3>
 
   <p>This section describes the relationship between XML and the DOM,
   with a particular emphasis on how this interacts with HTML.</p>
@@ -62341,7 +63086,7 @@
 
 
 
-  <h3 id=serializing-xhtml-fragments><span class=secno>9.3 </span>Serializing XHTML fragments</h3>
+  <h3 id=serializing-xhtml-fragments><span class=secno>10.3 </span>Serializing XHTML fragments</h3>
 
   <p>The <dfn id=xml-fragment-serialization-algorithm>XML fragment serialization algorithm</dfn> for a
   <code>Document</code> or <code>Element</code> node either returns a
@@ -62422,7 +63167,7 @@
 
 
 
-  <h3 id=parsing-xhtml-fragments><span class=secno>9.4 </span>Parsing XHTML fragments</h3>
+  <h3 id=parsing-xhtml-fragments><span class=secno>10.4 </span>Parsing XHTML fragments</h3>
 
   <p>The <dfn id=xml-fragment-parsing-algorithm>XML fragment parsing algorithm</dfn> for either returns
   a <code>Document</code> or raises a <code><a href=#syntax_err>SYNTAX_ERR</a></code>
@@ -62492,7 +63237,7 @@
 
   <div class=impl>
 
-  <h2 id=rendering><span class=secno>10 </span>Rendering</h2>
+  <h2 id=rendering><span class=secno>11 </span>Rendering</h2>
 
   <p><em>User agents are not required present HTML documents in any
   particular way. However, this section provides a set of suggestions
@@ -62504,7 +63249,7 @@
   lead to this experience.</em></p>
 
 
-  <h3 id=introduction-8><span class=secno>10.1 </span>Introduction</h3>
+  <h3 id=introduction-9><span class=secno>11.1 </span>Introduction</h3>
 
   <p>In general, user agents are expected to support CSS, and many of
   the suggestions in this section are expressed in CSS terms. User
@@ -62524,9 +63269,9 @@
   this section to their target media.</p>
 
 
-  <h3 id=the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>10.2 </span>The CSS user agent style sheet and presentational hints</h3>
+  <h3 id=the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>11.2 </span>The CSS user agent style sheet and presentational hints</h3>
 
-  <h4 id=introduction-9><span class=secno>10.2.1 </span>Introduction</h4>
+  <h4 id=introduction-10><span class=secno>11.2.1 </span>Introduction</h4>
 
   <p>The CSS rules given in these subsections are, unless otherwise
   specified, expected to be used as part of the user-agent level style
@@ -62560,7 +63305,7 @@
 
 
 
-  <h4 id=display-types><span class=secno>10.2.2 </span>Display types</h4>
+  <h4 id=display-types><span class=secno>11.2.2 </span>Display types</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -62631,7 +63376,7 @@
   irrespective of CSS rules.</p>
 
 
-  <h4 id=margins-and-padding><span class=secno>10.2.3 </span>Margins and padding</h4>
+  <h4 id=margins-and-padding><span class=secno>11.2.3 </span>Margins and padding</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -62802,7 +63547,7 @@
   <code><a href=#the-th-element>th</a></code> elements, are expected to be collapsed to zero.</p>
 
 
-  <h4 id=alignment><span class=secno>10.2.4 </span>Alignment</h4>
+  <h4 id=alignment><span class=secno>11.2.4 </span>Alignment</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -62902,7 +63647,7 @@
   value, and that do not themselves have an applicable <code title=attr-align>align</code> attribute.</p>
 
 
-  <h4 id=fonts-and-colors><span class=secno>10.2.5 </span>Fonts and colors</h4>
+  <h4 id=fonts-and-colors><span class=secno>11.2.5 </span>Fonts and colors</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63171,7 +63916,7 @@
 
    </li>
 
-  </ol><h4 id=punctuation-and-decorations><span class=secno>10.2.6 </span>Punctuation and decorations</h4>
+  </ol><h4 id=punctuation-and-decorations><span class=secno>11.2.6 </span>Punctuation and decorations</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63357,7 +64102,7 @@
   instead.</p>
 
 
-  <h4 id=resetting-rules-for-inherited-properties><span class=secno>10.2.7 </span>Resetting rules for inherited properties</h4>
+  <h4 id=resetting-rules-for-inherited-properties><span class=secno>11.2.7 </span>Resetting rules for inherited properties</h4>
 
   <p>The following rules are also expected to be in play, resetting
   certain properties to block inheritance by default.</p>
@@ -63390,7 +64135,7 @@
 input { box-sizing: border-box; }</pre>
 
 
-  <h4 id=the-hr-element-0><span class=secno>10.2.8 </span>The <code><a href=#the-hr-element>hr</a></code> element</h4>
+  <h4 id=the-hr-element-0><span class=secno>11.2.8 </span>The <code><a href=#the-hr-element>hr</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63440,7 +64185,7 @@
 
 
 
-  <h4 id=the-fieldset-element-0><span class=secno>10.2.9 </span>The <code><a href=#the-fieldset-element>fieldset</a></code> element</h4>
+  <h4 id=the-fieldset-element-0><span class=secno>11.2.9 </span>The <code><a href=#the-fieldset-element>fieldset</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63475,9 +64220,9 @@
      <td>On the right
     <tr><td><code title="">center</code>
      <td>In the middle
-  </table><h3 id=replaced-elements><span class=secno>10.3 </span>Replaced elements</h3>
+  </table><h3 id=replaced-elements><span class=secno>11.3 </span>Replaced elements</h3>
 
-  <h4 id=embedded-content-1><span class=secno>10.3.1 </span>Embedded content</h4>
+  <h4 id=embedded-content-1><span class=secno>11.3.1 </span>Embedded content</h4>
 
   <p>The <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-canvas-element>canvas</a></code>, <code><a href=#the-embed-element>embed</a></code>,
   <code><a href=#the-iframe-element>iframe</a></code>, and <code><a href=#video>video</a></code> elements are expected to
@@ -63515,7 +64260,7 @@
 iframe { border: 2px inset; }</pre>
 
 
-  <h4 id=images-0><span class=secno>10.3.2 </span>Images</h4>
+  <h4 id=images-0><span class=secno>11.3.2 </span>Images</h4>
 
   <p>When an <code><a href=#the-img-element>img</a></code> element or an <code><a href=#the-input-element>input</a></code> element
   when its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
@@ -63584,7 +64329,7 @@
 
 
 
-  <h4 id=attributes-for-embedded-content-and-images><span class=secno>10.3.3 </span>Attributes for embedded content and images</h4>
+  <h4 id=attributes-for-embedded-content-and-images><span class=secno>11.3.3 </span>Attributes for embedded content and images</h4>
 
   <p>The following CSS rules are expected to apply as
   <a href=#presentational-hints>presentational hints</a>:</p>
@@ -63678,7 +64423,7 @@
   respectively.</p>
 
 
-  <h4 id=image-maps-0><span class=secno>10.3.4 </span>Image maps</h4>
+  <h4 id=image-maps-0><span class=secno>11.3.4 </span>Image maps</h4>
 
   <p>Shapes on an <a href=#image-map>image map</a> are expected to act, for the
   purpose of the CSS cascade, as elements independent of the original
@@ -63703,7 +64448,7 @@
 
 
 
-  <h4 id=tool-bars-0><span class=secno>10.3.5 </span>Tool bars</h4>
+  <h4 id=tool-bars-0><span class=secno>11.3.5 </span>Tool bars</h4>
 
   <p>When a <code><a href=#menus>menu</a></code> element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#tool-bar-state title="tool bar state">tool bar</a> state, the element is
   expected to be treated as a replaced element with a height about two
@@ -63718,9 +64463,9 @@
 
 
 
-  <h3 id=bindings><span class=secno>10.4 </span>Bindings</h3>
+  <h3 id=bindings><span class=secno>11.4 </span>Bindings</h3>
 
-  <h4 id=introduction-10><span class=secno>10.4.1 </span>Introduction</h4>
+  <h4 id=introduction-11><span class=secno>11.4.1 </span>Introduction</h4>
 
   <p>A number of elements have their rendering defined in terms of the
   'binding' property. <a href=#refsBECSS>[BECSS]</a></p>
@@ -63748,7 +64493,7 @@
 
 
 
-  <h4 id=the-bb-element-0><span class=secno>10.4.2 </span>The <code><a href=#the-bb-element>bb</a></code> element</h4>
+  <h4 id=the-bb-element-0><span class=secno>11.4.2 </span>The <code><a href=#the-bb-element>bb</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63762,7 +64507,7 @@
 
 
 
-  <h4 id=the-button-element-0><span class=secno>10.4.3 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
+  <h4 id=the-button-element-0><span class=secno>11.4.3 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63775,7 +64520,7 @@
 
 
 
-  <h4 id=the-datagrid-element><span class=secno>10.4.4 </span>The <code><a href=#datagrid>datagrid</a></code> element</h4>
+  <h4 id=the-datagrid-element><span class=secno>11.4.4 </span>The <code><a href=#datagrid>datagrid</a></code> element</h4>
 
   <p class=XXX>This section will probably include details on how to
   render DATAGRID (including <span id=datagridPseudos>its
@@ -63784,7 +64529,7 @@
   section is filled in.</p>
 
 
-  <h4 id=the-details-element-0><span class=secno>10.4.5 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
+  <h4 id=the-details-element-0><span class=secno>11.4.5 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63817,7 +64562,7 @@
 
 
 
-  <h4 id=the-input-element-as-a-text-entry-widget><span class=secno>10.4.6 </span>The <code><a href=#the-input-element>input</a></code> element as a text entry widget</h4>
+  <h4 id=the-input-element-as-a-text-entry-widget><span class=secno>11.4.6 </span>The <code><a href=#the-input-element>input</a></code> element as a text entry widget</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63853,7 +64598,7 @@
 
 
 
-  <h4 id=the-input-element-as-domain-specific-widgets><span class=secno>10.4.7 </span>The <code><a href=#the-input-element>input</a></code> element as domain-specific widgets</h4>
+  <h4 id=the-input-element-as-domain-specific-widgets><span class=secno>11.4.7 </span>The <code><a href=#the-input-element>input</a></code> element as domain-specific widgets</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63905,7 +64650,7 @@
 
 
 
-  <h4 id=the-input-element-as-a-range-control><span class=secno>10.4.8 </span>The <code><a href=#the-input-element>input</a></code> element as a range control</h4>
+  <h4 id=the-input-element-as-a-range-control><span class=secno>11.4.8 </span>The <code><a href=#the-input-element>input</a></code> element as a range control</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63928,7 +64673,7 @@
 
 
 
-  <h4 id=the-input-element-as-a-color-well><span class=secno>10.4.9 </span>The <code><a href=#the-input-element>input</a></code> element as a color well</h4>
+  <h4 id=the-input-element-as-a-color-well><span class=secno>11.4.9 </span>The <code><a href=#the-input-element>input</a></code> element as a color well</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63947,7 +64692,7 @@
 
 
 
-  <h4 id=the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>10.4.10 </span>The <code><a href=#the-input-element>input</a></code> element as a check box and radio button widgets</h4>
+  <h4 id=the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>11.4.10 </span>The <code><a href=#the-input-element>input</a></code> element as a check box and radio button widgets</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63966,7 +64711,7 @@
 
 
 
-  <h4 id=the-input-element-as-a-file-upload-control><span class=secno>10.4.11 </span>The <code><a href=#the-input-element>input</a></code> element as a file upload control</h4>
+  <h4 id=the-input-element-as-a-file-upload-control><span class=secno>11.4.11 </span>The <code><a href=#the-input-element>input</a></code> element as a file upload control</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63981,7 +64726,7 @@
 
 
 
-  <h4 id=the-input-element-as-a-button><span class=secno>10.4.12 </span>The <code><a href=#the-input-element>input</a></code> element as a button</h4>
+  <h4 id=the-input-element-as-a-button><span class=secno>11.4.12 </span>The <code><a href=#the-input-element>input</a></code> element as a button</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -63999,14 +64744,14 @@
 
 
 
-  <h4 id=the-marquee-element><span class=secno>10.4.13 </span>The <code><a href=#the-marquee-element-0>marquee</a></code> element</h4>
+  <h4 id=the-marquee-element><span class=secno>11.4.13 </span>The <code><a href=#the-marquee-element-0>marquee</a></code> element</h4>
 
   <p class=XXX>...(Waiting til I've specced the DOM side of this)...</p>
   <!-- XXX attributes: height/width; direction is case insensitive; bgcolor; hspace/vspace -->
 
 
 
-  <h4 id=the-meter-element-0><span class=secno>10.4.14 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
+  <h4 id=the-meter-element-0><span class=secno>11.4.14 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -64036,7 +64781,7 @@
 
 
 
-  <h4 id=the-progress-element-0><span class=secno>10.4.15 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
+  <h4 id=the-progress-element-0><span class=secno>11.4.15 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -64072,7 +64817,7 @@
 
 
 
-  <h4 id=the-select-element-0><span class=secno>10.4.16 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
+  <h4 id=the-select-element-0><span class=secno>11.4.16 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -64128,7 +64873,7 @@
 
 
 
-  <h4 id=the-textarea-element-0><span class=secno>10.4.17 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
+  <h4 id=the-textarea-element-0><span class=secno>11.4.17 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -64161,7 +64906,7 @@
 
 
 
-  <h4 id=the-keygen-element-0><span class=secno>10.4.18 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
+  <h4 id=the-keygen-element-0><span class=secno>11.4.18 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -64174,7 +64919,7 @@
 
 
 
-  <h4 id=the-time-element-0><span class=secno>10.4.19 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
+  <h4 id=the-time-element-0><span class=secno>11.4.19 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -64188,7 +64933,7 @@
 
 
 
-  <h3 id=frames-and-framesets><span class=secno>10.5 </span>Frames and framesets</h3>
+  <h3 id=frames-and-framesets><span class=secno>11.5 </span>Frames and framesets</h3>
 
   <p>When an <code><a href=#the-html-element>html</a></code> element's second child element is a
   <code>frameset</code> element, the user agent is expected to render
@@ -64468,10 +65213,10 @@
 
 
 
-  <h3 id=interactive-media><span class=secno>10.6 </span>Interactive media</h3>
+  <h3 id=interactive-media><span class=secno>11.6 </span>Interactive media</h3>
 
 
-  <h4 id=links,-forms,-and-navigation><span class=secno>10.6.1 </span>Links, forms, and navigation</h4>
+  <h4 id=links,-forms,-and-navigation><span class=secno>11.6.1 </span>Links, forms, and navigation</h4>
 
   <p>User agents are expected to allow the user to control aspects of
   <a href=#hyperlink>hyperlink</a> activation and <a href=#form-submission-0>form submission</a>,
@@ -64504,7 +65249,7 @@
 
 
 
-  <h4 id=the-mark-element-0><span class=secno>10.6.2 </span>The <code><a href=#the-mark-element>mark</a></code> element</h4>
+  <h4 id=the-mark-element-0><span class=secno>11.6.2 </span>The <code><a href=#the-mark-element>mark</a></code> element</h4>
 
   <p>User agents are expected to allow the user to cycle through all
   the <code><a href=#the-mark-element>mark</a></code> elements in a <code>Document</code>. User
@@ -64515,7 +65260,7 @@
 
 
 
-  <h4 id=the-title-attribute-0><span class=secno>10.6.3 </span>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute</h4>
+  <h4 id=the-title-attribute-0><span class=secno>11.6.3 </span>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute</h4>
 
   <p>Given an element (e.g. the element designated by the mouse
   cursor), if the element, or one of its ancestors, has a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute, and the nearest such
@@ -64529,7 +65274,7 @@
 
 
 
-  <h3 id=print-media><span class=secno>10.7 </span>Print media</h3>
+  <h3 id=print-media><span class=secno>11.7 </span>Print media</h3>
 
   <p>User agents are expected to allow the user to request the
   opportunity to <dfn id=obtain-a-physical-form>obtain a physical form</dfn> (or a
@@ -64544,7 +65289,7 @@
   result, and the discard the view.</p>
 
 
-  <h3 id=interaction-with-css><span class=secno>10.8 </span>Interaction with CSS</h3>
+  <h3 id=interaction-with-css><span class=secno>11.8 </span>Interaction with CSS</h3>
 
   <!-- XXX this should be normative, so we'll have to move it out of
   this section -->
@@ -64568,7 +65313,7 @@
 
   <div class=impl>
 
-  <h2 id=obsolete-features><span class=secno>11 </span>Obsolete features</h2>
+  <h2 id=obsolete-features><span class=secno>12 </span>Obsolete features</h2>
 
   <p>Authors and documents must not use the features listed in this
   section. They are documented to enable user agents to support legacy
@@ -64579,9 +65324,9 @@
 S SPACER STRIKE TT U -->
 
 
-  <h3 id=self-contained-features><span class=secno>11.1 </span>Self-contained features</h3>
+  <h3 id=self-contained-features><span class=secno>12.1 </span>Self-contained features</h3>
 
-  <h4 id=the-applet-element><span class=secno>11.1.1 </span>The <dfn><code>applet</code></dfn> element</h4>
+  <h4 id=the-applet-element><span class=secno>12.1.1 </span>The <dfn><code>applet</code></dfn> element</h4>
 
   <p>The <code><a href=#the-applet-element>applet</a></code> element is a Java-specific variant of the
   <code><a href=#the-embed-element>embed</a></code> element. In HTML5 the <code><a href=#the-applet-element>applet</a></code> element
@@ -64609,12 +65354,12 @@
   <code><a href=#the-applet-element>applet</a></code> elements.</p>
 
 
-  <h4 id=the-marquee-element-0><span class=secno>11.1.2 </span>The <dfn><code>marquee</code></dfn> element</h4>
+  <h4 id=the-marquee-element-0><span class=secno>12.1.2 </span>The <dfn><code>marquee</code></dfn> element</h4>
 
   <p class=XXX>...</p>
 
 
-  <h3 id=other-elements-and-attributes><span class=secno>11.2 </span>Other elements and attributes</h3>
+  <h3 id=other-elements-and-attributes><span class=secno>12.2 </span>Other elements and attributes</h3>
 
   <p>The following elements are obsolete and either have no meaning
   whatsoever or have no requirements beyond those described elsewhere
@@ -64632,7 +65377,7 @@
    <li><dfn id=attr-body-link title=attr-body-link><code>link</code></dfn> on <code><a href=#the-body-element>body</a></code> elements</li>
    <li><dfn id=attr-body-text title=attr-body-text><code>text</code></dfn> on <code><a href=#the-body-element>body</a></code> elements</li>
    <li><dfn id=attr-body-vlink title=attr-body-vlink><code>vlink</code></dfn> on <code><a href=#the-body-element>body</a></code> elements</li>
-  </ul><h3 id=other-dom-apis><span class=secno>11.3 </span>Other DOM APIs</h3>
+  </ul><h3 id=other-dom-apis><span class=secno>12.3 </span>Other DOM APIs</h3>
 
   <p>These APIs expose obsolete content attributes.</p>
 
@@ -64715,7 +65460,7 @@
 
 
 
-  <h3 id=conformance-checkers-0><span class=secno>11.4 </span>Conformance checkers</h3>
+  <h3 id=conformance-checkers-0><span class=secno>12.4 </span>Conformance checkers</h3>
 
   <p>To ease the transition from HTML4 Transitional documents to the
   language defined in <em>this</em> specification, conformance
@@ -64791,7 +65536,7 @@
 
 
 
-  <h2 id=no><span class=secno>12 </span>Things that you can't do with this specification because
+  <h2 id=no><span class=secno>13 </span>Things that you can't do with this specification because
   they are better handled using other technologies that are further
   described herein</h2>
 
@@ -64833,7 +65578,7 @@
   XXX should ensure these are filed with the relevant people and groups
   -->
 
-  <h3 id=localization><span class=secno>12.1 </span>Localization</h3>
+  <h3 id=localization><span class=secno>13.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
@@ -64842,7 +65587,7 @@
   <!-- <p>XXX example here</p> -->
 
 
-  <h3 id=declarative-3d-scenes><span class=secno>12.2 </span>Declarative 3D scenes</h3>
+  <h3 id=declarative-3d-scenes><span class=secno>13.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>
@@ -64853,7 +65598,7 @@
 
 
 
-  <h3 id=rendering-and-the-dom><span class=secno>12.3 </span>Rendering and the DOM</h3>
+  <h3 id=rendering-and-the-dom><span class=secno>13.3 </span>Rendering and the DOM</h3>
 
   <p class=XXX>This section is expected to be moved to its own
   specification in due course. It needs a lot of work to actually make

Modified: source
===================================================================
--- source	2009-05-07 08:48:03 UTC (rev 3073)
+++ source	2009-05-10 10:32:35 UTC (rev 3074)
@@ -3842,6 +3842,65 @@
   </div>
 
 
+
+  <h4>Reversed DNS identifiers</h4>
+
+  <p>A <dfn>valid reversed DNS identifier</dfn> is a string that
+  consists of a series of IDNA labels in reverse order (i.e. starting
+  with the top-level domain), the prefix of which, when reversed and
+  converted to ASCII, corresponds to a registered domain.</p>
+
+  <p class="example">For instance, the string "<code
+  title="">com.example.xn--74h</code>" is a <span>valid reversed DNS
+  identifier</span> because the string "<code
+  title="">example.com</code>" is a registered domain.</p>
+
+  <div class="impl">
+
+  <p>To check if a string is a <span>valid reversed DNS
+  identifier</span>, conformance checkers must run the following algorithm:</p>
+
+  <ol>
+
+   <li>
+
+    <p>Apply the IDNA ToASCII algorithm to the string, with both the
+    AllowUnassigned and UseSTD3ASCIIRules flags set, but between steps
+    2 and 3 of the general ToASCII/ToUnicode algorithm (i.e. after
+    splitting the domain name into individual labels), reverse the
+    order of the labels.</p>
+
+    <p>If ToASCII fails to convert one of the components of the
+    string, e.g. because it is too long or because it contains invalid
+    characters, then the string is not valid; abort these steps. <a
+    href="#refsRFC3490">[RFC3490]</a></p>
+
+   </li>
+
+   <li>
+
+    <p>Check that the end of the resulting string matches a suffix in
+    the Public Suffix List, and that there is at least one domain
+    label before the matching substring. If it does not, or if there
+    is not, then the string is not valid; abort these steps. <a
+    href="#refsPSL">[PSL]</a></p> <!-- [PSL] http://publicsuffix.org/
+    -->
+
+   </li>
+
+   <li>
+
+    <p>Check that the domain name up to the label before the prefix
+    that was matched in the previous string is a registered domain
+    name.</p>
+
+   </li>
+
+  </ol>
+
+  </div>
+
+
   <h4 id="syntax-references">References</h4>
 
   <p>A <dfn>valid hash-name reference</dfn> to an element of type <var
@@ -5820,18 +5879,18 @@
   href="#refsWEBIDL">[WEBIDL]</a></p>
 
   <p>If a reflecting DOM attribute is of the type
-  <code>DOMTokenList</code>, then on getting it must return a
-  <code>DOMTokenList</code> object whose underlying string is the
-  element's corresponding content attribute. When the
-  <code>DOMTokenList</code> object mutates its underlying string, the
+  <code>DOMTokenList</code> or <code>DOMSettableTokenList</code>, then
+  on getting it must return a <code>DOMTokenList</code> or
+  <code>DOMSettableTokenList</code> object (as appropriate) whose
+  underlying string is the element's corresponding content
+  attribute. When the object mutates its underlying string, the
   content attribute must itself be immediately mutated. When the
-  attribute is absent, then the string represented by the
-  <code>DOMTokenList</code> object is the empty string; when the
-  object mutates this empty string, the user agent must first add the
-  corresponding content attribute, and then mutate that attribute
-  instead. <code>DOMTokenList</code> attributes are always
-  read-only. The same <code>DOMTokenList</code> object must be
-  returned every time for each attribute.</p>
+  attribute is absent, then the string represented by the object is
+  the empty string; when the object mutates this empty string, the
+  user agent must first add the corresponding content attribute, and
+  then mutate that attribute instead. The same
+  <code>DOMTokenList</code> object must be returned every time for
+  each attribute.</p>
 
   <p>If a reflecting DOM attribute has the type
   <code>HTMLElement</code>, or an interface that descends from
@@ -5869,8 +5928,9 @@
   <h4>Collections</h4>
 
   <p>The <code>HTMLCollection</code>,
-  <code>HTMLFormControlsCollection</code>, and
-  <code>HTMLOptionsCollection</code> interfaces represent various
+  <code>HTMLFormControlsCollection</code>,
+  <code>HTMLOptionsCollection</code>, and
+  <code>HTMLPropertyCollection</code> interfaces represent various
   lists of DOM nodes. Collectively, objects implementing these
   interfaces are called <dfn>collections</dfn>.</p>
 
@@ -5931,6 +5991,7 @@
 
    <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLCollection-item">namedItem</code>(<var title="">name</var>)</dt>
    <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
    <dd>
     <p>Returns the first item with ID or name <var title="">name</var>
     from the collection.</p>
@@ -6035,6 +6096,7 @@
    <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLFormControlsCollection-item">namedItem</code>(<var title="">name</var>)</dt>
    <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title="dom-HTMLFormControlsCollection-item">namedItem</code>(<var title="">name</var>)</dt>
    <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
    <dd>
     <p>Returns the item with ID or <code title="attr-fe-name">name</code> <var title="">name</var> from the collection.</p>
     <p>If there are multiple matching items, then a <code>RadioNodeList</code> object containing all those elements is returned.</p>
@@ -6205,6 +6267,7 @@
 
    <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLOptionsCollection-item">namedItem</code>(<var title="">name</var>)</dt>
    <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
    <dd>
     <p>Returns the item with ID or <code title="attr-option-name">name</code> <var title="">name</var> from the collection.</p>
     <p>If there are multiple matching items, then a <code>NodeList</code> object containing all those elements is returned.</p>
@@ -6379,6 +6442,145 @@
   </div>
 
 
+  <h5>HTMLPropertyCollection</h5>
+
+  <p>The <code>HTMLPropertyCollection</code> interface represents a
+  <span title="collections">collection</span> of elements that add
+  name-value pairs to a particular <span
+  title="concept-item">item</span> in the <span>microdata</span>
+  model.</p>
+
+  <pre class="idl">[Callable=<span title="dom-HTMLPropertyCollection-namedItem">namedItem</span>]
+interface <dfn>HTMLPropertyCollection</dfn> {
+  readonly attribute unsigned long <span title="dom-HTMLPropertyCollection-length">length</span>;
+  readonly attribute <span>DOMStringList</span> <span title="dom-HTMLPropertyCollection-names">names</span>;
+  [IndexGetter] <span>HTMLElement</span> <span title="dom-HTMLPropertyCollection-item">item</span>(in unsigned long index);
+  [NameGetter] Object <span title="dom-HTMLPropertyCollection-namedItem">namedItem</span>(in DOMString name);
+};
+
+typedef sequence<DOMString> <dfn>DOMStringArray</dfn>;
+
+interface <dfn>PropertyNodeList</dfn> : <span>NodeList</span> {
+          attribute <span>DOMStringArray</span> <span title="dom-PropertyNodeList-content">content</span>;
+};</pre>
+
+  <dl class="domintro">
+
+   <dt><var title="">collection</var> . <code title="dom-HTMLPropertyCollection-length">length</code></dt>
+   <dd>
+    <p>Returns the number of elements in the collection.</p>
+   </dd>
+
+   <dt><var title="">collection</var> . <code title="dom-HTMLPropertyCollection-names">names</code></dt>
+   <dd>
+    <p>Returns a <code>DOMStringList</code> with the <span>property names</span> of the elements in the collection.</p>
+   </dd>
+
+   <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLPropertyCollection-item">item</code>(<var title="">index</var>)</dt>
+   <dt><var title="">collection</var>[<var title="">index</var>]</dt>
+   <dd>
+    <p>Returns the element with index <var title="">index</var> from the collection. The items are sorted in <span>tree order</span>.</p>
+    <p>Returns null if <var title="">index</var> is out of range.</p>
+   </dd>
+
+   <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLPropertyCollection-item">namedItem</code>(<var title="">name</var>)</dt>
+   <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title="dom-HTMLPropertyCollection-item">namedItem</code>(<var title="">name</var>)</dt>
+   <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+   <dt><var title="">collection</var>(<var title="">name</var>)</dt>
+   <dd>
+    <p>Returns the element with that adds the property named <var title="">name</var> from the collection.</p>
+    <p>If there are multiple matching elements, then a <code>PropertyNodeList</code> object containing all those elements is returned.</p>
+    <p>Returns null if no element adds the property named <var title="">name</var>.</p>
+   </dd>
+
+   <dt><var title="">propertyNodeList</var> . <var title="">content</var></dt>
+
+   <dd>
+
+    <p>Returns an array of the various values that the relevant elements have.</p>
+
+   </dd>
+
+  </dl>
+
+  <div class="impl">
+
+  <hr>
+
+  <p>The object's <span>indices of the supported indexed
+  properties</span> are the numbers in the range zero to one less than
+  the number of nodes <span>represented by the collection</span>. If
+  there are no such elements, then there are no <span>supported
+  indexed properties</span>.</p>
+
+  <p>The <dfn
+  title="dom-HTMLPropertyCollection-length"><code>length</code></dfn>
+  attribute must return the number of nodes <span>represented by the
+  collection</span>.</p>
+
+  <p>The <dfn
+  title="dom-HTMLPropertyCollection-names"><code>names</code></dfn>
+  attribute must return a live <code>DOMStringList</code> object
+  giving the <span>property names</span> of all the elements
+  <span>represented by the collection</span>. The same object must be
+  returned each time.</p>
+
+  <p>The <dfn
+  title="dom-HTMLPropertyCollection-item"><code>item(<var
+  title="">index</var>)</code></dfn> method must return the <var
+  title="">index</var>th node in the collection. If there is no <var
+  title="">index</var>th node in the collection, then the method must
+  return null.</p>
+
+  <p>The <span>names of the supported named properties</span> consist
+  of the <span>property names</span> of all the elements
+  <span>represented by the collection</span>.</p>
+
+  <p>The <dfn
+  title="dom-HTMLPropertyCollection-namedItem"><code>namedItem(<var
+  title="">name</var>)</code></dfn> method must act according to the
+  following algorithm:</p>
+
+  <ol>
+
+   <li>If, at the time the method is called, there is exactly one node
+   in the collection that has a <span title="property names">property
+   name</span> equal to <var title="">name</var>, then return that
+   node and stop the algorithm.</li>
+
+   <li>Otherwise, if there are no nodes in the collection that have a
+   <span title="property names">property name</span> equal to <var
+   title="">name</var>, then return null and stop the algorithm.</li>
+
+   <li>Otherwise, create a <code>PropertyNodeList</code> object
+   representing a live view of the <code>HTMLPropertyCollection</code>
+   object, further filtered so that the only nodes in the
+   <code>RadioNodeList</code> object are those that have a <span
+   title="property names">property name</span> equal to <var
+   title="">name</var>. The nodes in the <code>PropertyNodeList</code>
+   object must be sorted in <span>tree order</span>.</li>
+
+   <li>Return that <code>PropertyNodeList</code> object.</li>
+
+  </ol>
+
+  <hr>
+
+  <p>A members of the <code>PropertyNodeList</code> interface
+  inherited from the <code>NodeList</code> interface must behave as
+  they would on a <code>NodeList</code> object.</p>
+
+  <p>The <dfn
+  title="dom-PropertyNodeList-content"><code>content</code></dfn> DOM
+  attribute on the <code>PropertyNodeList</code> object, on getting,
+  must return a newly constructed <code>DOMStringArray</code> whose
+  values are the values obtained from the <code
+  title="dom-content">content</code> DOM property of each of the
+  elements represented by the object, in <span>tree order</span>.</p>
+
+  </div>
+
+
   <h4>DOMTokenList</h4>
 
   <p>The <code>DOMTokenList</code> interface represents an interface
@@ -6572,8 +6774,45 @@
 
   </div>
 
+
+  <h4>DOMSettableTokenList</h4>
+
+  <p>The <code>DOMSettableTokenList</code> interface is the same as the
+  <code>DOMTokenList</code> interface, except that it allows the
+  underlying string to be directly changed.</p>
+
+  <pre class="idl">[<span title="dom-tokenlist-toString">Stringifies</span>] interface <dfn>DOMSettableTokenList</dfn> : <span>DOMTokenList</span> {
+            attribute DOMString <span title="dom-DOMSettableTokenList-value">value</span>;
+};</pre>
+
+  <dl class="domintro">
+
+   <dt><var title="">tokenlist</var> . <code title="dom-DOMSettableTokenList-value">value</code></dt>
+   <dd>
+    <p>Returns the underlying string.</p>
+    <p>Can be set, to change the underlying string.</p>
+   </dd>
+
+  </dl>
+
   <div class="impl">
 
+  <p>An object implementing the <code>DOMSettableTokenList</code>
+  interface must act as defined for the <code>DOMTokenList</code>
+  interface, except for the <code
+  title="dom-DOMSettableTokenList-value">value</code> attribute defined
+  here.</p>
+
+  <p>The <dfn
+  title="dom-DOMSettableTokenList-value"><code>value</code></dfn>
+  attribute must return the underlying string on getting, and must
+  replace the underlying string with the new value on setting.</p>
+
+  </div>
+
+
+  <div class="impl">
+
   <h4>Safe passing of structured data</h4>
 
   <p>When a user agent is required to obtain a <dfn>structured
@@ -6707,7 +6946,6 @@
   </div>
 
 
-
   <h4>DOMStringMap</h4>
 
   <p>The <code>DOMStringMap</code> interface represents a set of
@@ -6988,6 +7226,7 @@
   readonly attribute <span>HTMLCollection</span> <span title="dom-document-forms">forms</span>;
   readonly attribute <span>HTMLCollection</span> <span title="dom-document-anchors">anchors</span>;
   readonly attribute <span>HTMLCollection</span> <span title="dom-document-scripts">scripts</span>;
+  readonly attribute <span>HTMLCollection</span> <span title="dom-document-items">items</span>;
   NodeList <span title="dom-document-getElementsByName">getElementsByName</span>(in DOMString elementName);
   NodeList <span title="dom-document-getElementsByClassName">getElementsByClassName</span>(in DOMString classNames);
 
@@ -8019,6 +8258,13 @@
   readonly attribute <span>DOMTokenList</span> <span title="dom-classList">classList</span>;
   readonly attribute <span>DOMStringMap</span> <span title="dom-dataset">dataset</span>;
 
+  // <span>microdata</span>
+  [PutForwards=<span title="dom-DOMSettableTokenList-value">value</span>] readonly attribute <span>DOMSettableTokenList</span> <span title="dom-item">item</span>;
+  [PutForwards=<span title="dom-DOMSettableTokenList-value">value</span>] readonly attribute <span>DOMSettableTokenList</span> <span title="dom-property">property</span>;
+  readonly attribute <span>HTMLPropertyCollection</span> <span title="dom-properties">properties</span>;
+           attribute DOMString <span title="dom-content">content</span>;
+           attribute <span>HTMLElement</span> <span title="dom-subject">subject</span>;
+
   // <span>user interaction</span>
            attribute boolean <span title="dom-hidden">hidden</span>;
   void <span title="dom-click">click</span>();
@@ -8125,10 +8371,13 @@
    <li><code title="attr-dir">dir</code></li>
    <li><code title="attr-draggable">draggable</code></li>
    <li><code title="attr-id">id</code></li>
+   <li><code title="attr-item">item</code></li>
    <li><code title="attr-hidden">hidden</code></li>
    <li><code title="attr-lang">lang</code></li>
+   <li><code title="attr-property">property</code></li>
+   <li><code title="attr-spellcheck">spellcheck</code></li>
    <li><code title="attr-style">style</code></li>
-   <li><code title="attr-spellcheck">spellcheck</code></li>
+   <li><code title="attr-subject">subject</code></li>
    <li><code title="attr-tabindex">tabindex</code></li>
    <li><code title="attr-title">title</code></li>
   </ul>
@@ -10480,9 +10729,11 @@
   <dl class="element">
    <dt>Categories</dt>
    <dd><span>Metadata content</span>.</dd>
+   <dd>If the <code title="attr-property">property</code> attribute is present: <span>flow content</span>.</dd>
    <dt>Contexts in which this element may be used:</dt>
    <dd>Where <span>metadata content</span> is expected.</dd>
    <dd>In a <code>noscript</code> element that is a child of a <code>head</code> element.</dd>
+   <dd>If the <code title="attr-property">property</code> attribute is present: where <span>flow content</span> is expected.</dd>
    <dt>Content model:</dt>
    <dd>Empty.</dd>
    <dt>Content attributes:</dt>
@@ -10838,11 +11089,13 @@
   <dl class="element">
    <dt>Categories</dt>
    <dd><span>Metadata content</span>.</dd>
+   <dd>If the <code title="attr-property">property</code> attribute is present: <span>flow content</span>.</dd>
    <dt>Contexts in which this element may be used:</dt>
    <dd>If the <code title="attr-meta-charset">charset</code> attribute is present, or if the element is in the <span title="attr-meta-http-equiv-content-type">Encoding declaration state</span>: in a <code>head</code> element.</dd>
    <dd>If the <code title="attr-meta-http-equiv">http-equiv</code> attribute is present, and the element is not in the <span title="attr-meta-http-equiv-content-type">Encoding declaration state</span>: in a <code>head</code> element.</dd>
    <dd>If the <code title="attr-meta-http-equiv">http-equiv</code> attribute is present, and the element is not in the <span title="attr-meta-http-equiv-content-type">Encoding declaration state</span>: in a <code>noscript</code> element that is a child of a <code>head</code> element.</dd>
    <dd>If the <code title="attr-meta-name">name</code> attribute is present: where <span>metadata content</span> is expected.</dd>
+   <dd>If the <code title="attr-property">property</code> attribute is present: where <span>flow content</span> is expected.</dd>
    <dt>Content model:</dt>
    <dd>Empty.</dd>
    <dt>Content attributes:</dt>
@@ -10854,7 +11107,6 @@
    <dt>DOM interface:</dt>
    <dd>
 <pre class="idl">interface <dfn>HTMLMetaElement</dfn> : <span>HTMLElement</span> {
-           attribute DOMString <span title="dom-meta-content">content</span>;
            attribute DOMString <span title="dom-meta-name">name</span>;
            attribute DOMString <span title="dom-meta-httpEquiv">httpEquiv</span>;
 };</pre>
@@ -10876,14 +11128,16 @@
   title="attr-meta-charset">charset</code> attribute.</p>
 
   <p>Exactly one of the <code title="attr-meta-name">name</code>,
-  <code title="attr-meta-http-equiv">http-equiv</code>, and <code
-  title="attr-meta-charset">charset</code> attributes must be
+  <code title="attr-meta-http-equiv">http-equiv</code>, <code
+  title="attr-meta-charset">charset</code>, and <code
+  title="attr-property">property</code> attributes must be
   specified.</p>
 
-  <p>If either <code title="attr-meta-name">name</code> or <code
-  title="attr-meta-http-equiv">http-equiv</code> is specified, then
-  the <code title="attr-meta-content">content</code> attribute must
-  also be specified. Otherwise, it must be omitted.</p>
+  <p>If either <code title="attr-meta-name">name</code>, <code
+  title="attr-meta-http-equiv">http-equiv</code>, or <code
+  title="attr-property">property</code> is specified, then the <code
+  title="attr-meta-content">content</code> attribute must also be
+  specified. Otherwise, it must be omitted.</p>
 
   <p>The <dfn title="attr-meta-charset"><code>charset</code></dfn>
   attribute specifies the character encoding used by the
@@ -10922,21 +11176,11 @@
   then the value part of the metadata name/value pair is the empty
   string.</p>
 
-  <p>If a <code>meta</code> element has the <code
-  title="attr-meta-http-equiv">http-equiv</code> attribute specified,
-  it must be either in a <code>head</code> element or in a
-  <code>noscript</code> element that itself is in a <code>head</code>
-  element. If a <code>meta</code> element does not have the <code
-  title="attr-meta-http-equiv">http-equiv</code> attribute specified,
-  it must be in a <code>head</code> element.</p>
-
   <div class="impl">
 
-  <p>The DOM attributes <dfn
-  title="dom-meta-name"><code>name</code></dfn> and <dfn
-  title="dom-meta-content"><code>content</code></dfn> must
-  <span>reflect</span> the respective content attributes of the same
-  name. The DOM attribute <dfn
+  <p>The <dfn title="dom-meta-name"><code>name</code></dfn> DOM
+  attribute must <span>reflect</span> the content attribute of the
+  same name. The DOM attribute <dfn
   title="dom-meta-httpEquiv"><code>httpEquiv</code></dfn> must
   <span>reflect</span> the content attribute <code
   title="attr-meta-http-equiv">http-equiv</code>.</p>
@@ -45558,7 +45802,685 @@
 
 
 
+  <h2><dfn>Microdata</dfn></h2>
 
+  <h3>Introduction</h3>
+
+  <p class="XXX">...</p>
+
+
+  <h3>Encoding microdata</h3>
+
+  <h4>The microdata model</h4>
+
+  <p>The microdata model consists of groups of name-value pairs known
+  as <dfn title="concept-item">items</dfn>.</p>
+
+  <p>Each group has zero or more types, each name has one or more
+  values, and each value is either a string or another group of
+  name-value pairs.</p>
+
+
+  <h4>Items: the <dfn title="attr-item"><code>item</code></dfn> attribute</h4>
+
+  <p>Every <span title="HTML elements">HTML element</span> may have an
+  <code title="attr-item">item</code> attribute specified.</p>
+
+  <p>An element with the <code title="attr-item">item</code> attribute
+  specified creates a new <span title="concept-item">item</span>, a
+  group of name-value pairs.</p>
+
+  <p>The attribute, if specified, must have a value that is an
+  <span>unordered set of unique space-separated tokens</span>
+  representing the types (if any) of the <span
+  title="concept-item">item</span>.</p>
+
+  <p>Each token must be either:</p>
+
+  <ul>
+
+   <li>A <span>valid URL</span> that is an <span>absolute URL</span>,
+   or</li>
+
+   <li>A <span>valid reversed DNS identifier</span>, or</li>
+<!--
+   <li>A <span>predefined type</span>.</li>
+-->
+  </ul>
+<!--
+  <p>If any of the tokens are a <span>predefined type</span>, then
+  there must not be any other tokens that are <span title="predefined
+  type">predefined types</span>.</p>
+-->
+  <p>The <dfn>item types</dfn> of an element with a <code
+  title="attr-item">item</code> attribute are the tokens that the
+  element's <code title="attr-item">item</code> attribute is found to
+  contain when its value is <span title="split a string on
+  spaces">split on spaces</span>.</p>
+
+
+  <h4>Associating names with items</h4>
+
+  <p>The <dfn title="attr-subject"><code>subject</code></dfn>
+  attribute may be specified on any <span title="HTML elements">HTML
+  element</span> to associate the element with an element with an
+  <code title="attr-item">item</code> attribute. If the <code
+  title="attr-subject">subject</code> attribute is specified, the
+  attribute's value must be the ID of an element with an <code
+  title="attr-item">item</code> attribute, in the same
+  <code>Document</code> as the element with the <code
+  title="attr-subject">subject</code> attribute.</p>
+
+  <p>An element's <dfn
+  title="concept-item-corresponding">corresponding item</dfn> is
+  determined by its position in the DOM and by any <code
+  title="attr-subject">subject</code> attributes on the element, and
+  is defined as follows:</p>
+
+  <dl>
+
+   <dt>If the element has neither <code
+   title="attr-subject">subject</code> attribute nor an ancestor with
+   an <code title="attr-item">item</code> attribute specified</dt>
+
+   <dd><p>The element has no <span
+   title="concept-item-corresponding">corresponding
+   item</span>.</p></dd>
+
+   <dt>If the element has no <code title="attr-subject">subject</code>
+   attribute but does have an ancestor with an <code
+   title="attr-item">item</code> attribute specified</dt>
+
+   <dd><p>The nearest ancestor element with the <code
+   title="attr-item">item</code> attribute specified is the element's
+   <span title="concept-item-corresponding">corresponding
+   item</span>.</p></dd>
+
+   <dt>If the element has a <code title="attr-subject">subject</code>
+   attribute</dt>
+
+   <dd><p>If there is an element in the document with an ID equal to
+   the value of the <code title="attr-subject">subject</code>
+   attribute, and if the first such element has an <code
+   title="attr-item">item</code> attribute specified, then that
+   element is the <span
+   title="concept-item-corresponding">corresponding
+   item</span>. Otherwise, there is no <span
+   title="concept-item-corresponding">corresponding
+   item</span>.</p></dd>
+
+  </dl>
+
+  <p>The list of elements that create <span
+  title="concept-item">items</span> but do not themselves have a <span
+  title="concept-item-corresponding">corresponding item</span> forms
+  the list of <dfn>top-level microdata items</dfn>.</p>
+
+
+  <h4>Names: the <dfn title="attr-property"><code>property</code></dfn> attribute</h4>
+
+  <p>Every <span title="HTML elements">HTML element</span> that has a
+  <span title="concept-item-corresponding">corresponding item</span>
+  may have a <code title="attr-property">property</code> attribute
+  specified.</p>
+
+  <p>An element with the <code title="attr-property">property</code>
+  attribute specified adds one or more name-value pairs to its
+  <span title="concept-item-corresponding">corresponding item</span>.</p>
+
+  <p>The <code title="attr-property">property</code> attribute, if
+  specified, must have a value that is an <span>unordered set of
+  unique space-separated tokens</span> representing the names of the
+  name-value pairs that it adds. The attribute's value must have at
+  least one token.</p>
+
+  <p>Each token must be either:</p>
+
+  <ul>
+
+   <li>A <span>valid URL</span> that is an <span>absolute URL</span>,
+   or</li>
+
+   <li>A <span>valid reversed DNS identifier</span>, or</li>
+
+   <li>If its <span title="concept-item-corresponding">corresponding
+   item</span>'s <code title="attr-item">item</code> attribute has no
+   tokens: a string containing neither a U+003A COLON character (:), a
+   U+002E FULL STOP character (.), nor a U+0020 SPACE character, or</li>
+<!--
+   <li>If its <span title="concept-item-corresponding">corresponding
+   item</span>'s <code title="attr-item">item</code> attribute
+   included a <span>predefined type</span>: one of the <span
+   title="predefined name">predefined names</span> for that particular
+   <span>predefined type</span>.</li>
+-->
+  </ul>
+
+  <p>The <dfn>property names</dfn> of an element are the tokens that
+  the element's <code title="attr-property">property</code> attribute
+  is found to contain when its value is <span title="split a string on
+  spaces">split on spaces</span>.</p>
+
+
+  <h4>Values</h4>
+
+  <p>The <dfn title="concept-property-value">property value</dfn> of a
+  name-value pair added by an element with a <code
+  title="attr-property">property</code> attribute depends on the
+  element, as follows:</p>
+
+  <dl>
+
+   <dt>If the element also has an <code title="attr-item">item</code>
+   attribute</dt>
+
+   <dd><p>The value is the <span title="concept-item">item</span>
+   created by the element.</p></dd>
+
+
+   <dt>If the element is a <code>meta</code> element</dt>
+
+   <dd><p>The value is the value of the element's <code
+   title="attr-content">content</code> attribute, if any, or the empty
+   string if there is no such attribute.</p></dd>
+
+
+   <dt>If the element is an <code>embed</code>, <code>iframe</code>,
+   <code>img</code>, <code>source</code>, or <code>video</code>
+   element</dt>
+
+   <dd><p>The value is the <span>absolute URL</span> that results from
+   <span title="resolve a url">resolving</span> the value of the
+   element's <code title="">src</code> attribute relative to the
+   element at the time the attribute is set, or the empty string if
+   there is no such attribute or if <span title="resolve a
+   url">resolving</span> it results in an error.</p></dd>
+
+
+   <dt>If the element is an <code>a</code>, <code>area</code>, or
+   <code>link</code> element</dt>
+
+   <dd><p>The value is the <span>absolute URL</span> that results from
+   <span title="resolve a url">resolving</span> the value of the
+   element's <code title="">href</code> attribute relative to the
+   element at the time the attribute is set, or the empty string if
+   there is no such attribute or if <span title="resolve a
+   url">resolving</span> it results in an error.</p></dd>
+
+
+   <dt>If the element is an <code>object</code> element</dt>
+
+   <dd><p>The value is the <span>absolute URL</span> that results from
+   <span title="resolve a url">resolving</span> the value of the
+   element's <code title="">data</code> attribute relative to the
+   element at the time the attribute is set, or the empty string if
+   there is no such attribute or if <span title="resolve a
+   url">resolving</span> it results in an error.</p></dd>
+
+
+   <dt>If the element is a <code>time</code> element with a <code
+   title="attr-datetime">datetime</code> attribute</dt>
+
+   <dd><p>The value is the value of the element's <code
+   title="attr-datetime">datetime</code> attribute.</p></dd>
+
+
+   <dt>Otherwise</dt>
+
+   <dd><p>The value is the element's
+   <code>textContent</code>.</p></dd>
+
+  </dl>
+
+
+
+  <h3>Microdata DOM API</h3>
+
+  <dl class="domintro">
+
+   <dt><var title="">document</var> . <code title="dom-items">items</code></dt>
+
+   <dd>
+
+    <p>Returns an <code>HTMLCollection</code> of the elements in the <code>Document</code> that create <span title="concept-item">items</span> and that are not part of other <span title="concept-item">items</span>.</p>
+
+   </dd>
+
+   <dt><var title="">element</var> . <code title="dom-property">properties</code></dt>
+
+   <dd>
+
+    <p>If the element has a <code title="attr-item">item</code>
+    attribute, returns an <code>HTMLPropertyCollection</code> object
+    with all the element's properties. Otherwise, an empty
+    <code>HTMLPropertyCollection</code> object.</p>
+
+   </dd>
+
+   <dt><var title="">element</var> . <code title="dom-content">content</code> [ = <var title="">value</var> ]</dt>
+
+   <dd>
+
+    <p>Returns the element's <span
+    title="concept-property-value">value</span>.</p>
+
+    <p>Can be set, to change the element's <span
+    title="concept-property-value">value</span>.</p>
+
+   </dd>
+
+  </dl>
+
+  <div class="impl">
+
+  <p>The <dfn
+  title="dom-document-items"><code>document.items</code></dfn>
+  attribute must return an <code>HTMLCollection</code> rooted at the
+  <code>Document</code> node, whose filter matches only elements in
+  the list of <span>top-level microdata items</span>.</p>
+
+  <p>The <dfn title="dom-item"><code>item</code></dfn> DOM attribute
+  on elements must <span>reflect</span> the element's <code
+  title="attr-item">item</code> content attribute.</p>
+
+  <p>The <dfn title="dom-property"><code>property</code></dfn> DOM
+  attribute on elements must <span>reflect</span> the element's <code
+  title="attr-property">property</code> content attribute.</p>
+
+  <p>The <dfn title="dom-properties"><code>properties</code></dfn> DOM
+  attribute on elements must return an
+  <code>HTMLPropertyCollection</code> rooted at the
+  <code>Document</code> node, whose filter matches only elements that
+  have <span>property names</span> and have a <span
+  title="concept-item-corresponding">corresponding item</span> that is
+  equal to the element on which the attribute was invoked.</p>
+
+  <p>The <dfn title="dom-content"><code>content</code></dfn> DOM
+  attribute's behavior depends on the element, as follows:</p>
+
+  <dl>
+
+   <dt>If the element is a <code>meta</code> element</dt>
+
+   <dd><p>The attribute must act as it would if it was <span
+   title="reflect">reflecting</span> the element's <code
+   title="attr-meta-content">content</code> content
+   attribute.</p></dd>
+
+
+   <dt>If the element is an <code>embed</code>, <code>iframe</code>,
+   <code>img</code>, <code>source</code>, or <code>video</code>
+   element</dt>
+
+   <dd><p>The attribute must act as it would if it was <span
+   title="reflect">reflecting</span> the element's <code
+   title="">src</code> content attribute.</p></dd>
+
+
+   <dt>If the element is an <code>a</code>, <code>area</code>, or
+   <code>link</code> element</dt>
+
+   <dd><p>The attribute must act as it would if it was <span
+   title="reflect">reflecting</span> the element's <code
+   title="">href</code> content attribute.</p></dd>
+
+
+   <dt>If the element is an <code>object</code> element</dt>
+
+   <dd><p>The attribute must act as it would if it was <span
+   title="reflect">reflecting</span> the element's <code
+   title="">data</code> content attribute.</p></dd>
+
+
+   <dt>If the element is a <code>time</code> element with a <code
+   title="attr-datetime">datetime</code> attribute</dt>
+
+   <dd><p>The attribute must act as it would if it was <span
+   title="reflect">reflecting</span> the element's <code
+   title="">datetime</code> content attribute.</p></dd>
+
+
+   <dt>Otherwise</dt>
+
+   <dd><p>The attribute must act the same as the element's
+   <code>textContent</code> attribute.</p></dd>
+
+  </dl> 
+
+  <p>The <dfn title="dom-subject"><code>subject</code></dfn> DOM
+  attribute on elements must <span>reflect</span> the element's <code
+  title="attr-subject">subject</code> content attribute.</p>
+
+  </div>
+
+
+
+  <h3>Converting HTML to oher formats</h3>
+
+
+  <h4>JSON</h4>
+
+  <p>Given a node <var title="">node</var> in a <code>Document</code>,
+  a user agent must run the following algorithm to extract that node's
+  microdata into a JSON form:</p>
+
+  <ol>
+
+   <li><p>Let <var title="">result</var> be an empty object.</p></li>
+
+   <li><p>Let <var title="">items</var> be an empty array.</p></li>
+
+   <li><p>For <var title="">node</var> and each element that is a
+   descendant of <var title="">node</var>, check if the element is a
+   <span title="top-level microdata items">top-level microdata
+   item</span>, and if it is then <span>get the object</span> for that
+   element and add it to <var title="">items</var>.</p></li>
+
+   <li><p>Add an entry to <var title="">result</var> called "<code
+   title="">items</code>" whose value is the array <var
+   title="">items</var>.</p></li>
+
+   <li><p>Return the result of serializing <var title="">result</var>
+   to JSON.</p></li>
+
+  </ol>
+
+  <p>When the user agent is to <dfn>get the object</dfn> for an item
+  <var title="">item</var>, it must run the following substeps:</p>
+
+  <ol>
+
+   <li><p>Let <var title="">result</var> be an empty object.</p></li>
+
+   <li><p>Let <var title="">types</var> be an empty array.</p></li>
+
+   <li><p>For each <span title="item types">item type</span> <var
+   title="">type</var> of <var title="">item</var>, append <var
+   title="">type</var> to <var title="">types</var>.</p></li>
+
+   <li><p>Add an entry to <var title="">result</var> called "<code
+   title="">type</code>" whose value is the array <var
+   title="">types</var>.</p></li>
+
+   <li><p>Let <var title="">properties</var> be an empty
+   object.</p></li>
+
+   <li>
+
+    <p>For each element <var title="">element</var> that has one or
+    more <span>property names</span> and whose <span
+    title="concept-item-corresponding">corresponding item</span> is
+    <var title="">item</var>, run the following substeps:</p>
+
+    <ol>
+
+     <li><p>Let <var title="">value</var> be the <span
+     title="concept-property-value">property value</span> of <var
+     title="">element</var>.</p></li>
+
+     <li><p>If <var title="">value</var> is an element, then <span>get
+     the object</span> for the element <var title="">value</var>, and
+     then replace <var title="">value</var> with the object returned
+     from those steps.</p></li>
+
+     <li>
+
+      <p>For each name <var title="">name</var> in <var
+      title="">element</var>'s <span>property names</span>, run the
+      following substeps:</p>
+
+      <ol>
+
+       <li><p>If there is no entry named <var title="">name</var> in
+       <var title="">properties</var>, then add an entry named <var
+       title="">name</var> to <var title="">properties</var> whose
+       value is an empty array.</p></li>
+
+       <li><p>Append <var title="">value</var> to the entry named <var
+       title="">name</var> in <var title="">properties</var>.</p></li>
+
+      </ol>
+
+     </li>
+
+    </ol>
+
+   </li>
+
+   <li><p>Add an entry to <var title="">result</var> called "<code
+   title="">properties</code>" whose value is the array <var
+   title="">properties</var>.</p></li>
+
+   <li><p>Return <var title="">result</var>.</p></li>
+
+  </ol>
+
+
+  <h4>RDF</h4>
+
+  <p>To convert a <code>Document</code> to RDF, a user agent must run
+  the following algorithm:</p>
+
+  <ol>
+
+   <li>
+
+    <p>If <span>the <code>title</code> element</span> is not null,
+    then generate the following triple:</p>
+
+    <dl>
+     <dt>subject   <dd> <span>the document's current address</span>
+     <dt>predicate <dd> <code title="">http://purl.org/dc/terms/title</code>
+     <dt>object    <dd> the <code>textContent</code> of <span>the <code>title</code> element</span>
+    </dl>
+
+   </li>
+
+   <li>
+
+    <p>For each <code>a</code>, <code>area</code>, and
+    <code>link</code> element in the <code>Document</code>, run these
+    substeps:</p>
+
+    <ol>
+
+     <li><p>If the element does not have a <code title="">rel</code>
+     attribute, then skip this element.</p></li>
+
+     <li><p>If the element does not have an <code title="">href</code>
+     attribute, then skip this element.</p></li>
+
+     <li><p>If <span title="resolve a URL">resolving</span> the
+     element's <code title="">href</code> attribute relative to the
+     element is not successful, then skip this element.</p></li>
+
+     <li><p>Otherwise, <span title="split a string on spaces">split
+     the value of the element's <code title="">rel</code> attribute on
+     spaces</span>, obtaining <var title="">list of tokens</var>.</p></li>
+
+     <li><p><span title="converted to lowercase">Convert each token in
+     <var title="">list of tokens</var> to lowercase</span>.</p></li>
+
+     <li><p>If <var title="">list of tokens</var> contains both the
+     tokens <code title="rel-alternate">alternate</code> and <code
+     title="rel-stylesheet">stylesheet</code>, then remove them both
+     and replace them with the single token <code
+     title="">alternate-stylesheet</code>.</p></li>
+
+     <li><p>If <var title="">list of tokens</var> contains more than
+     one instance of the token <code title="rel-up">up</code>, then
+     remove all such tokens.</p></li>
+
+     <li>
+
+      <p>For each token <var title="">token</var> in <var
+      title="">list of tokens</var> that contains neither a U+003A
+      COLON character (:) nor a U+002E FULL STOP character (.),
+      generate the following triple:</p>
+
+      <dl>
+       <dt>subject   <dd> <span>the document's current address</span>
+       <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>
+       <dt>object    <dd> the <span>absolute URL</span> that results from <span title="resolve a URL">resolving</span> the value of the element's <code title="">href</code> attribute relative to the element
+      </dl>
+
+     </li>
+
+    </ol>
+
+   </li>
+
+   <li>
+
+    <p>For each <code>meta</code> element in the <code>Document</code>
+    that has a <code title="attr-meta-name">name</code> attribute and
+    a <code title="attr-meta-content">content</code> attribute, if the
+    value of the <code title="attr-meta-name">name</code> attribute
+    contains neither a U+003A COLON character (:) nor a U+002E FULL
+    STOP character (.), generate the following triple:</p>
+
+    <dl>
+     <dt>subject   <dd> <span>the document's current address</span>
+     <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and value of the element's <code title="attr-meta-name">name</code> attribute, <span>converted to lowercase</span>
+     <dt>object    <dd> the value of the element's <code title="attr-meta-content">content</code> attribute
+    </dl>
+
+   </li>
+
+   <li>
+
+    <p>For each <code>article</code>, <code>section</code>,
+    <code>blockquote</code>, and <code>q</code> element in the
+    <code>Document</code> that has a <code title="">cite</code>
+    attribute that <span title="resolve a url">resolves</span>
+    successfully relative to the element, generate the following
+    triple:</p>
+
+    <dl>
+     <dt>subject   <dd> <span>the document's current address</span>
+     <dt>predicate <dd> <code title="">http://purl.org/dc/terms/source</code>
+     <dt>object    <dd> the <span>absolute URL</span> that results from <span title="resolve a URL">resolving</span> the value of the element's <code title="">cite</code> attribute relative to the element
+    </dl>
+
+   </li>
+
+   <li>
+
+    <p>For each element that is also a <span title="top-level
+    microdata items">top-level microdata item</span>, <span
+    title="generate the triples for an item">generate the triples for
+    the item</span>. (Nothing is done with the returned subject.)</p>
+
+   </li>
+
+  </ol>
+
+  <p>When the user agent is to <dfn>generate the triples for an
+  item</dfn> <var title="">item</var>, it must follow the following
+  steps:</p>
+
+  <ol>
+
+   <li><p>If there is exactly one element whose <span
+   title="concept-item-corresponding">corresponding item</span> is
+   <var title="">item</var> and that has as one of its <span>property
+   names</span> the string "<code title="">about</code>", and the
+   <span title="concept-property-value">property value</span> of that
+   element is an <span>absolute URL</span>, let <var
+   title="">subject</var> be that <span>absolute
+   URL</span>. Otherwise, let <var title="">subject</var> be a new
+   blank node.</p></li>
+
+   <li>
+
+    <p>For each <span title="item types">item type</span> <var
+    title="">type</var> of <var title="">item</var>, run the following
+    substeps:</p>
+
+    <ol>
+
+     <li><p>If <var title="">type</var> is not an <span>absolute
+     URL</span>, then let <var title="">type</var> be the result of
+     concatenating the string "<code
+     title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var
+     title="">type</var>.</p></li>
+
+     <li>
+
+      <p>Generate the following triple:</p>
+
+      <dl>
+       <dt>subject   <dd> <var title="">subject</var>
+       <dt>predicate <dd> <code title="">http://www.w3.org/1999/02/22-rdf-syntax-ns#type</code>
+       <dt>object    <dd> <var title="">type</var>
+      </dl>
+
+     </li>
+
+    </ol>
+
+   </li>
+
+   <li>
+
+    <p>For each element <var title="">element</var> that has one or
+    more <span>property names</span> and whose <span
+    title="concept-item-corresponding">corresponding item</span> is
+    <var title="">item</var>, run the following substeps:</p>
+
+    <ol>
+
+     <li><p>Let <var title="">value</var> be the <span
+     title="concept-property-value">property value</span> of <var
+     title="">element</var>.</p></li>
+
+     <li><p>If <var title="">value</var> is an element, then <span
+     title="generate the triples for an item">generate the triples for
+     the element <var title="">value</var></span>, and then replace
+     <var title="">value</var> with the subject returned from those
+     steps.</p></li>
+
+     <li>
+
+      <p>For each name <var title="">name</var> in <var
+      title="">element</var>'s <span>property names</span>, run the
+      following substeps:</p>
+
+      <ol>
+
+       <li><p>If <var title="">name</var> is not an <span>absolute
+       URL</span>, then let <var title="">name</var> be the result of
+       concatenating the string "<code
+       title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var
+       title="">name</var>.</p></li>
+
+       <li>
+
+        <p>Generate the following triple:</p>
+
+        <dl>
+         <dt>subject   <dd> <var title="">subject</var>
+         <dt>predicate <dd> <var title="">name</var>
+         <dt>object    <dd> <var title="">value</var>
+        </dl>
+
+       </li>
+
+      </ol>
+
+     </li>
+
+    </ol>
+
+   </li>
+
+   <li><p>Return <var title="">subject</var>.</p></li>
+
+  </ol>
+
+
+
+
   <h2 id="browsers">Web browsers</h2>
 
   <div class="impl">




More information about the Commit-Watchers mailing list