[html5] r4121 - [e] (0) Update complete spec to have a separate section for Web Storage and Web [...]

whatwg at whatwg.org whatwg at whatwg.org
Mon Oct 12 21:03:55 PDT 2009


Author: ianh
Date: 2009-10-12 21:03:54 -0700 (Mon, 12 Oct 2009)
New Revision: 4121

Modified:
   complete.html
   index
   source
Log:
[e] (0) Update complete spec to have a separate section for Web Storage and Web Database.

Modified: complete.html
===================================================================
--- complete.html	2009-10-13 02:02:38 UTC (rev 4120)
+++ complete.html	2009-10-13 04:03:54 UTC (rev 4121)
@@ -766,445 +766,451 @@
       <ol>
        <li><a href=#event-definition><span class=secno>6.11.10.1 </span>Event definition</a></ol></li>
      <li><a href=#aborting-a-document-load><span class=secno>6.11.11 </span>Aborting a document load</a></ol></li>
-   <li><a href=#structured-client-side-storage><span class=secno>6.12 </span>Structured client-side storage</a>
+   <li><a href=#links><span class=secno>6.12 </span>Links</a>
     <ol>
-     <li><a href=#introduction-4><span class=secno>6.12.1 </span>Introduction</a></li>
-     <li><a href=#storage><span class=secno>6.12.2 </span>The API</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=#the-storage-interface><span class=secno>6.12.2.1 </span>The <code>Storage</code> interface</a></li>
-       <li><a href=#the-sessionstorage-attribute><span class=secno>6.12.2.2 </span>The <code title=dom-sessionStorage>sessionStorage</code> attribute</a></li>
-       <li><a href=#the-localstorage-attribute><span class=secno>6.12.2.3 </span>The <code title=dom-localStorage>localStorage</code> attribute</a></li>
-       <li><a href=#the-storage-event><span class=secno>6.12.2.4 </span>The <code title=event-storage>storage</code> event</a>
-        <ol>
-         <li><a href=#event-definition-0><span class=secno>6.12.2.4.1 </span>Event definition</a></ol></li>
-       <li><a href=#threads><span class=secno>6.12.2.5 </span>Threads</a></ol></li>
-     <li><a href=#introduction-5><span class=secno>6.12.3 </span>Introduction</a></li>
-     <li><a href=#sql><span class=secno>6.12.4 </span>The API</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=#databases><span class=secno>6.12.4.1 </span>Databases</a></li>
-       <li><a href=#parsing-and-processing-sql-statements><span class=secno>6.12.4.2 </span>Parsing and processing SQL statements</a></li>
-       <li><a href=#asynchronous-database-api><span class=secno>6.12.4.3 </span>Asynchronous database API</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-help><span class=secno>6.12.3.6 </span>Link type "<code>help</code>"</a></li>
+       <li><a href=#rel-icon><span class=secno>6.12.3.7 </span>Link type "<code>icon</code>"</a></li>
+       <li><a href=#link-type-license><span class=secno>6.12.3.8 </span>Link type "<code>license</code>"</a></li>
+       <li><a href=#link-type-nofollow><span class=secno>6.12.3.9 </span>Link type "<code>nofollow</code>"</a></li>
+       <li><a href=#link-type-noreferrer><span class=secno>6.12.3.10 </span>Link type "<code>noreferrer</code>"</a></li>
+       <li><a href=#link-type-pingback><span class=secno>6.12.3.11 </span>Link type "<code>pingback</code>"</a></li>
+       <li><a href=#link-type-prefetch><span class=secno>6.12.3.12 </span>Link type "<code>prefetch</code>"</a></li>
+       <li><a href=#link-type-search><span class=secno>6.12.3.13 </span>Link type "<code>search</code>"</a></li>
+       <li><a href=#link-type-stylesheet><span class=secno>6.12.3.14 </span>Link type "<code>stylesheet</code>"</a></li>
+       <li><a href=#link-type-sidebar><span class=secno>6.12.3.15 </span>Link type "<code>sidebar</code>"</a></li>
+       <li><a href=#link-type-tag><span class=secno>6.12.3.16 </span>Link type "<code>tag</code>"</a></li>
+       <li><a href=#hierarchical-link-types><span class=secno>6.12.3.17 </span>Hierarchical link types</a>
         <ol>
-         <li><a href=#executing-sql-statements><span class=secno>6.12.4.3.1 </span>Executing SQL statements</a></li>
-         <li><a href=#processing-model-3><span class=secno>6.12.4.3.2 </span>Processing model</a></ol></li>
-       <li><a href=#synchronous-database-api><span class=secno>6.12.4.4 </span>Synchronous database API</a>
+         <li><a href=#link-type-index><span class=secno>6.12.3.17.1 </span>Link type "<code>index</code>"</a></li>
+         <li><a href=#link-type-up><span class=secno>6.12.3.17.2 </span>Link type "<code>up</code>"</a></ol></li>
+       <li><a href=#sequential-link-types><span class=secno>6.12.3.18 </span>Sequential link types</a>
         <ol>
-         <li><a href=#executing-sql-statements-0><span class=secno>6.12.4.4.1 </span>Executing SQL statements</a></ol></li>
-       <li><a href=#database-query-results><span class=secno>6.12.4.5 </span>Database query results</a></li>
-       <li><a href=#errors-and-exceptions><span class=secno>6.12.4.6 </span>Errors and exceptions</a></ol></li>
-     <li><a href=#web-sql><span class=secno>6.12.5 </span>Web SQL</a></li>
-     <li><a href=#disk-space><span class=secno>6.12.6 </span>Disk space</a></li>
-     <li><a href=#privacy><span class=secno>6.12.7 </span>Privacy</a>
+         <li><a href=#link-type-first><span class=secno>6.12.3.18.1 </span>Link type "<code>first</code>"</a></li>
+         <li><a href=#link-type-last><span class=secno>6.12.3.18.2 </span>Link type "<code>last</code>"</a></li>
+         <li><a href=#link-type-next><span class=secno>6.12.3.18.3 </span>Link type "<code>next</code>"</a></li>
+         <li><a href=#link-type-prev><span class=secno>6.12.3.18.4 </span>Link type "<code>prev</code>"</a></ol></li>
+       <li><a href=#other-link-types><span class=secno>6.12.3.19 </span>Other link types</a></ol></ol></ol></li>
+ <li><a href=#structured-client-side-storage-apis><span class=secno>7 </span>Structured client-side storage APIs</a>
+  <ol>
+   <li><a href=#web-storage><span class=secno>7.1 </span>Web Storage</a>
+    <ol>
+     <li><a href=#introduction-4><span class=secno>7.1.1 </span>Introduction</a></li>
+     <li><a href=#storage><span class=secno>7.1.2 </span>The API</a>
       <ol>
-       <li><a href=#user-tracking><span class=secno>6.12.7.1 </span>User tracking</a></li>
-       <li><a href=#sensitivity-of-data><span class=secno>6.12.7.2 </span>Sensitivity of data</a></ol></li>
-     <li><a href=#security-4><span class=secno>6.12.8 </span>Security</a>
+       <li><a href=#the-storage-interface><span class=secno>7.1.2.1 </span>The <code>Storage</code> interface</a></li>
+       <li><a href=#the-sessionstorage-attribute><span class=secno>7.1.2.2 </span>The <code title=dom-sessionStorage>sessionStorage</code> attribute</a></li>
+       <li><a href=#the-localstorage-attribute><span class=secno>7.1.2.3 </span>The <code title=dom-localStorage>localStorage</code> attribute</a></li>
+       <li><a href=#the-storage-event><span class=secno>7.1.2.4 </span>The <code title=event-storage>storage</code> event</a>
+        <ol>
+         <li><a href=#event-definition-0><span class=secno>7.1.2.4.1 </span>Event definition</a></ol></li>
+       <li><a href=#threads><span class=secno>7.1.2.5 </span>Threads</a></ol></ol></li>
+   <li><a href=#web-database><span class=secno>7.2 </span>Web Database</a>
+    <ol>
+     <li><a href=#introduction-5><span class=secno>7.2.1 </span>Introduction</a></li>
+     <li><a href=#sql><span class=secno>7.2.2 </span>The API</a>
       <ol>
-       <li><a href=#dns-spoofing-attacks><span class=secno>6.12.8.1 </span>DNS spoofing attacks</a></li>
-       <li><a href=#cross-directory-attacks><span class=secno>6.12.8.2 </span>Cross-directory attacks</a></li>
-       <li><a href=#implementation-risks><span class=secno>6.12.8.3 </span>Implementation risks</a></li>
-       <li><a href=#sql-and-user-agents><span class=secno>6.12.8.4 </span>SQL and user agents</a></li>
-       <li><a href=#sql-injection><span class=secno>6.12.8.5 </span>SQL injection</a></ol></ol></li>
-   <li><a href=#links><span class=secno>6.13 </span>Links</a>
+       <li><a href=#databases><span class=secno>7.2.2.1 </span>Databases</a></li>
+       <li><a href=#parsing-and-processing-sql-statements><span class=secno>7.2.2.2 </span>Parsing and processing SQL statements</a></li>
+       <li><a href=#asynchronous-database-api><span class=secno>7.2.2.3 </span>Asynchronous database API</a>
+        <ol>
+         <li><a href=#executing-sql-statements><span class=secno>7.2.2.3.1 </span>Executing SQL statements</a></li>
+         <li><a href=#processing-model-3><span class=secno>7.2.2.3.2 </span>Processing model</a></ol></li>
+       <li><a href=#synchronous-database-api><span class=secno>7.2.2.4 </span>Synchronous database API</a>
+        <ol>
+         <li><a href=#executing-sql-statements-0><span class=secno>7.2.2.4.1 </span>Executing SQL statements</a></ol></li>
+       <li><a href=#database-query-results><span class=secno>7.2.2.5 </span>Database query results</a></li>
+       <li><a href=#errors-and-exceptions><span class=secno>7.2.2.6 </span>Errors and exceptions</a></ol></li>
+     <li><a href=#web-sql><span class=secno>7.2.3 </span>Web SQL</a></ol></li>
+   <li><a href=#common-concerns><span class=secno>7.3 </span>Common concerns</a>
     <ol>
-     <li><a href=#hyperlink-elements><span class=secno>6.13.1 </span>Hyperlink elements</a></li>
-     <li><a href=#following-hyperlinks><span class=secno>6.13.2 </span>Following hyperlinks</a>
+     <li><a href=#disk-space><span class=secno>7.3.1 </span>Disk space</a></li>
+     <li><a href=#privacy><span class=secno>7.3.2 </span>Privacy</a>
       <ol>
-       <li><a href=#hyperlink-auditing><span class=secno>6.13.2.1 </span>Hyperlink auditing</a></ol></li>
-     <li><a href=#linkTypes><span class=secno>6.13.3 </span>Link types</a>
+       <li><a href=#user-tracking><span class=secno>7.3.2.1 </span>User tracking</a></li>
+       <li><a href=#sensitivity-of-data><span class=secno>7.3.2.2 </span>Sensitivity of data</a></ol></li>
+     <li><a href=#security-4><span class=secno>7.3.3 </span>Security</a>
       <ol>
-       <li><a href=#link-type-alternate><span class=secno>6.13.3.1 </span>Link type "<code>alternate</code>"</a></li>
-       <li><a href=#link-type-archives><span class=secno>6.13.3.2 </span>Link type "<code>archives</code>"</a></li>
-       <li><a href=#link-type-author><span class=secno>6.13.3.3 </span>Link type "<code>author</code>"</a></li>
-       <li><a href=#link-type-bookmark><span class=secno>6.13.3.4 </span>Link type "<code>bookmark</code>"</a></li>
-       <li><a href=#link-type-external><span class=secno>6.13.3.5 </span>Link type "<code>external</code>"</a></li>
-       <li><a href=#link-type-help><span class=secno>6.13.3.6 </span>Link type "<code>help</code>"</a></li>
-       <li><a href=#rel-icon><span class=secno>6.13.3.7 </span>Link type "<code>icon</code>"</a></li>
-       <li><a href=#link-type-license><span class=secno>6.13.3.8 </span>Link type "<code>license</code>"</a></li>
-       <li><a href=#link-type-nofollow><span class=secno>6.13.3.9 </span>Link type "<code>nofollow</code>"</a></li>
-       <li><a href=#link-type-noreferrer><span class=secno>6.13.3.10 </span>Link type "<code>noreferrer</code>"</a></li>
-       <li><a href=#link-type-pingback><span class=secno>6.13.3.11 </span>Link type "<code>pingback</code>"</a></li>
-       <li><a href=#link-type-prefetch><span class=secno>6.13.3.12 </span>Link type "<code>prefetch</code>"</a></li>
-       <li><a href=#link-type-search><span class=secno>6.13.3.13 </span>Link type "<code>search</code>"</a></li>
-       <li><a href=#link-type-stylesheet><span class=secno>6.13.3.14 </span>Link type "<code>stylesheet</code>"</a></li>
-       <li><a href=#link-type-sidebar><span class=secno>6.13.3.15 </span>Link type "<code>sidebar</code>"</a></li>
-       <li><a href=#link-type-tag><span class=secno>6.13.3.16 </span>Link type "<code>tag</code>"</a></li>
-       <li><a href=#hierarchical-link-types><span class=secno>6.13.3.17 </span>Hierarchical link types</a>
-        <ol>
-         <li><a href=#link-type-index><span class=secno>6.13.3.17.1 </span>Link type "<code>index</code>"</a></li>
-         <li><a href=#link-type-up><span class=secno>6.13.3.17.2 </span>Link type "<code>up</code>"</a></ol></li>
-       <li><a href=#sequential-link-types><span class=secno>6.13.3.18 </span>Sequential link types</a>
-        <ol>
-         <li><a href=#link-type-first><span class=secno>6.13.3.18.1 </span>Link type "<code>first</code>"</a></li>
-         <li><a href=#link-type-last><span class=secno>6.13.3.18.2 </span>Link type "<code>last</code>"</a></li>
-         <li><a href=#link-type-next><span class=secno>6.13.3.18.3 </span>Link type "<code>next</code>"</a></li>
-         <li><a href=#link-type-prev><span class=secno>6.13.3.18.4 </span>Link type "<code>prev</code>"</a></ol></li>
-       <li><a href=#other-link-types><span class=secno>6.13.3.19 </span>Other link types</a></ol></ol></ol></li>
- <li><a href=#editing><span class=secno>7 </span>User Interaction</a>
+       <li><a href=#dns-spoofing-attacks><span class=secno>7.3.3.1 </span>DNS spoofing attacks</a></li>
+       <li><a href=#cross-directory-attacks><span class=secno>7.3.3.2 </span>Cross-directory attacks</a></li>
+       <li><a href=#implementation-risks><span class=secno>7.3.3.3 </span>Implementation risks</a></li>
+       <li><a href=#sql-and-user-agents><span class=secno>7.3.3.4 </span>SQL and user agents</a></li>
+       <li><a href=#sql-injection><span class=secno>7.3.3.5 </span>SQL injection</a></ol></ol></ol></li>
+ <li><a href=#editing><span class=secno>8 </span>User Interaction</a>
   <ol>
-   <li><a href=#the-hidden-attribute><span class=secno>7.1 </span>The <code>hidden</code> attribute</a></li>
-   <li><a href=#activation><span class=secno>7.2 </span>Activation</a></li>
-   <li><a href=#scrolling-elements-into-view><span class=secno>7.3 </span>Scrolling elements into view</a></li>
-   <li><a href=#focus><span class=secno>7.4 </span>Focus</a>
+   <li><a href=#the-hidden-attribute><span class=secno>8.1 </span>The <code>hidden</code> attribute</a></li>
+   <li><a href=#activation><span class=secno>8.2 </span>Activation</a></li>
+   <li><a href=#scrolling-elements-into-view><span class=secno>8.3 </span>Scrolling elements into view</a></li>
+   <li><a href=#focus><span class=secno>8.4 </span>Focus</a>
     <ol>
-     <li><a href=#sequential-focus-navigation><span class=secno>7.4.1 </span>Sequential focus navigation</a></li>
-     <li><a href=#focus-management><span class=secno>7.4.2 </span>Focus management</a></li>
-     <li><a href=#document-level-focus-apis><span class=secno>7.4.3 </span>Document-level focus APIs</a></li>
-     <li><a href=#element-level-focus-apis><span class=secno>7.4.4 </span>Element-level focus APIs</a></ol></li>
-   <li><a href=#the-accesskey-attribute><span class=secno>7.5 </span>The <code>accesskey</code> attribute</a></li>
-   <li><a href=#selection><span class=secno>7.6 </span>The text selection APIs</a>
+     <li><a href=#sequential-focus-navigation><span class=secno>8.4.1 </span>Sequential focus navigation</a></li>
+     <li><a href=#focus-management><span class=secno>8.4.2 </span>Focus management</a></li>
+     <li><a href=#document-level-focus-apis><span class=secno>8.4.3 </span>Document-level focus APIs</a></li>
+     <li><a href=#element-level-focus-apis><span class=secno>8.4.4 </span>Element-level focus APIs</a></ol></li>
+   <li><a href=#the-accesskey-attribute><span class=secno>8.5 </span>The <code>accesskey</code> attribute</a></li>
+   <li><a href=#selection><span class=secno>8.6 </span>The text selection APIs</a>
     <ol>
-     <li><a href=#documentSelection><span class=secno>7.6.1 </span>APIs for the browsing context selection</a></li>
-     <li><a href=#textFieldSelection><span class=secno>7.6.2 </span>APIs for the text field selections</a></ol></li>
-   <li><a href=#contenteditable><span class=secno>7.7 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
+     <li><a href=#documentSelection><span class=secno>8.6.1 </span>APIs for the browsing context selection</a></li>
+     <li><a href=#textFieldSelection><span class=secno>8.6.2 </span>APIs for the text field selections</a></ol></li>
+   <li><a href=#contenteditable><span class=secno>8.7 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
     <ol>
-     <li><a href=#user-editing-actions><span class=secno>7.7.1 </span>User editing actions</a></li>
-     <li><a href=#making-entire-documents-editable><span class=secno>7.7.2 </span>Making entire documents editable</a></ol></li>
-   <li><a href=#spelling-and-grammar-checking><span class=secno>7.8 </span>Spelling and grammar checking</a></li>
-   <li><a href=#dnd><span class=secno>7.9 </span>Drag and drop</a>
+     <li><a href=#user-editing-actions><span class=secno>8.7.1 </span>User editing actions</a></li>
+     <li><a href=#making-entire-documents-editable><span class=secno>8.7.2 </span>Making entire documents editable</a></ol></li>
+   <li><a href=#spelling-and-grammar-checking><span class=secno>8.8 </span>Spelling and grammar checking</a></li>
+   <li><a href=#dnd><span class=secno>8.9 </span>Drag and drop</a>
     <ol>
-     <li><a href=#introduction-6><span class=secno>7.9.1 </span>Introduction</a></li>
-     <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>7.9.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
-     <li><a href=#dndevents><span class=secno>7.9.3 </span>Events fired during a drag-and-drop action</a></li>
-     <li><a href=#drag-and-drop-processing-model><span class=secno>7.9.4 </span>Drag-and-drop processing model</a>
+     <li><a href=#introduction-6><span class=secno>8.9.1 </span>Introduction</a></li>
+     <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>8.9.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
+     <li><a href=#dndevents><span class=secno>8.9.3 </span>Events fired during a drag-and-drop action</a></li>
+     <li><a href=#drag-and-drop-processing-model><span class=secno>8.9.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>7.9.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>8.9.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>7.9.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>8.9.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>7.9.5 </span>The <code>draggable</code> attribute</a></li>
-     <li><a href=#copy-and-paste><span class=secno>7.9.6 </span>Copy and paste</a>
+     <li><a href=#the-draggable-attribute><span class=secno>8.9.5 </span>The <code>draggable</code> attribute</a></li>
+     <li><a href=#copy-and-paste><span class=secno>8.9.6 </span>Copy and paste</a>
       <ol>
-       <li><a href=#copy-to-clipboard><span class=secno>7.9.6.1 </span>Copy to clipboard</a></li>
-       <li><a href=#cut-to-clipboard><span class=secno>7.9.6.2 </span>Cut to clipboard</a></li>
-       <li><a href=#paste-from-clipboard><span class=secno>7.9.6.3 </span>Paste from clipboard</a></li>
-       <li><a href=#paste-from-selection><span class=secno>7.9.6.4 </span>Paste from selection</a></ol></li>
-     <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>7.9.7 </span>Security risks in the drag-and-drop model</a></ol></li>
-   <li><a href=#undo><span class=secno>7.10 </span>Undo history</a>
+       <li><a href=#copy-to-clipboard><span class=secno>8.9.6.1 </span>Copy to clipboard</a></li>
+       <li><a href=#cut-to-clipboard><span class=secno>8.9.6.2 </span>Cut to clipboard</a></li>
+       <li><a href=#paste-from-clipboard><span class=secno>8.9.6.3 </span>Paste from clipboard</a></li>
+       <li><a href=#paste-from-selection><span class=secno>8.9.6.4 </span>Paste from selection</a></ol></li>
+     <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>8.9.7 </span>Security risks in the drag-and-drop model</a></ol></li>
+   <li><a href=#undo><span class=secno>8.10 </span>Undo history</a>
     <ol>
-     <li><a href=#definitions-2><span class=secno>7.10.1 </span>Definitions</a></li>
-     <li><a href=#the-undomanager-interface><span class=secno>7.10.2 </span>The <code>UndoManager</code> interface</a></li>
-     <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>7.10.3 </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.10.4 </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.10.5 </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.10.6 </span>Implementation notes</a></ol></li>
-   <li><a href=#editing-apis><span class=secno>7.11 </span>Editing APIs</a></ol></li>
- <li><a href=#web-workers><span class=secno>8 </span>Web Workers</a>
+     <li><a href=#definitions-2><span class=secno>8.10.1 </span>Definitions</a></li>
+     <li><a href=#the-undomanager-interface><span class=secno>8.10.2 </span>The <code>UndoManager</code> interface</a></li>
+     <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>8.10.3 </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>8.10.4 </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>8.10.5 </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>8.10.6 </span>Implementation notes</a></ol></li>
+   <li><a href=#editing-apis><span class=secno>8.11 </span>Editing APIs</a></ol></li>
+ <li><a href=#web-workers><span class=secno>9 </span>Web Workers</a>
   <ol>
-   <li><a href=#introduction-7><span class=secno>8.1 </span>Introduction</a>
+   <li><a href=#introduction-7><span class=secno>9.1 </span>Introduction</a>
     <ol>
-     <li><a href=#scope-0><span class=secno>8.1.1 </span>Scope</a></li>
-     <li><a href=#tutorial><span class=secno>8.1.2 </span>Tutorial</a>
+     <li><a href=#scope-0><span class=secno>9.1.1 </span>Scope</a></li>
+     <li><a href=#tutorial><span class=secno>9.1.2 </span>Tutorial</a>
       <ol>
-       <li><a href=#a-background-number-crunching-worker><span class=secno>8.1.2.1 </span>A background number-crunching worker</a></li>
-       <li><a href=#a-worker-for-updating-a-client-side-database><span class=secno>8.1.2.2 </span>A worker for updating a client-side database</a></li>
-       <li><a href=#worker-used-for-background-i/o><span class=secno>8.1.2.3 </span>Worker used for background I/O</a></li>
-       <li><a href=#shared-workers><span class=secno>8.1.2.4 </span>Shared workers</a></li>
-       <li><a href=#delegation><span class=secno>8.1.2.5 </span>Delegation</a></li>
-       <li><a href=#providing-libraries><span class=secno>8.1.2.6 </span>Providing libraries</a></ol></ol></li>
-   <li><a href=#infrastructure-0><span class=secno>8.2 </span>Infrastructure</a>
+       <li><a href=#a-background-number-crunching-worker><span class=secno>9.1.2.1 </span>A background number-crunching worker</a></li>
+       <li><a href=#a-worker-for-updating-a-client-side-database><span class=secno>9.1.2.2 </span>A worker for updating a client-side database</a></li>
+       <li><a href=#worker-used-for-background-i/o><span class=secno>9.1.2.3 </span>Worker used for background I/O</a></li>
+       <li><a href=#shared-workers><span class=secno>9.1.2.4 </span>Shared workers</a></li>
+       <li><a href=#delegation><span class=secno>9.1.2.5 </span>Delegation</a></li>
+       <li><a href=#providing-libraries><span class=secno>9.1.2.6 </span>Providing libraries</a></ol></ol></li>
+   <li><a href=#infrastructure-0><span class=secno>9.2 </span>Infrastructure</a>
     <ol>
-     <li><a href=#the-global-scope><span class=secno>8.2.1 </span>The global scope</a>
+     <li><a href=#the-global-scope><span class=secno>9.2.1 </span>The global scope</a>
       <ol>
-       <li><a href=#the-workerglobalscope-abstract-interface><span class=secno>8.2.1.1 </span>The <code>WorkerGlobalScope</code> abstract interface</a></li>
-       <li><a href=#dedicated-workers-and-the-dedicatedworkerglobalscope-interface><span class=secno>8.2.1.2 </span>Dedicated workers and the <code>DedicatedWorkerGlobalScope</code> interface</a></li>
-       <li><a href=#shared-workers-and-the-sharedworkerglobalscope-inteface><span class=secno>8.2.1.3 </span>Shared workers and the <code>SharedWorkerGlobalScope</code> inteface</a></ol></li>
-     <li><a href=#origins-of-workers><span class=secno>8.2.2 </span>Origins of workers</a></li>
-     <li><a href=#decoding-scripts><span class=secno>8.2.3 </span>Decoding scripts</a></li>
-     <li><a href=#the-event-loop><span class=secno>8.2.4 </span>The event loop</a></li>
-     <li><a href="#the-worker's-lifetime"><span class=secno>8.2.5 </span>The worker's lifetime</a></li>
-     <li><a href=#processing-model-4><span class=secno>8.2.6 </span>Processing model</a></li>
-     <li><a href=#runtime-script-errors-0><span class=secno>8.2.7 </span>Runtime script errors</a></li>
-     <li><a href=#creating-workers><span class=secno>8.2.8 </span>Creating workers</a>
+       <li><a href=#the-workerglobalscope-abstract-interface><span class=secno>9.2.1.1 </span>The <code>WorkerGlobalScope</code> abstract interface</a></li>
+       <li><a href=#dedicated-workers-and-the-dedicatedworkerglobalscope-interface><span class=secno>9.2.1.2 </span>Dedicated workers and the <code>DedicatedWorkerGlobalScope</code> interface</a></li>
+       <li><a href=#shared-workers-and-the-sharedworkerglobalscope-inteface><span class=secno>9.2.1.3 </span>Shared workers and the <code>SharedWorkerGlobalScope</code> inteface</a></ol></li>
+     <li><a href=#origins-of-workers><span class=secno>9.2.2 </span>Origins of workers</a></li>
+     <li><a href=#decoding-scripts><span class=secno>9.2.3 </span>Decoding scripts</a></li>
+     <li><a href=#the-event-loop><span class=secno>9.2.4 </span>The event loop</a></li>
+     <li><a href="#the-worker's-lifetime"><span class=secno>9.2.5 </span>The worker's lifetime</a></li>
+     <li><a href=#processing-model-4><span class=secno>9.2.6 </span>Processing model</a></li>
+     <li><a href=#runtime-script-errors-0><span class=secno>9.2.7 </span>Runtime script errors</a></li>
+     <li><a href=#creating-workers><span class=secno>9.2.8 </span>Creating workers</a>
       <ol>
-       <li><a href=#the-abstractworker-abstract-interface><span class=secno>8.2.8.1 </span>The <code>AbstractWorker</code> abstract interface</a></li>
-       <li><a href=#dedicated-workers-and-the-worker-interface><span class=secno>8.2.8.2 </span>Dedicated workers and the <code>Worker</code> interface</a></li>
-       <li><a href=#shared-workers-and-the-sharedworker-interface><span class=secno>8.2.8.3 </span>Shared workers and the <code>SharedWorker</code> interface</a></ol></ol></li>
-   <li><a href=#apis-available-to-workers><span class=secno>8.3 </span>APIs available to workers</a>
+       <li><a href=#the-abstractworker-abstract-interface><span class=secno>9.2.8.1 </span>The <code>AbstractWorker</code> abstract interface</a></li>
+       <li><a href=#dedicated-workers-and-the-worker-interface><span class=secno>9.2.8.2 </span>Dedicated workers and the <code>Worker</code> interface</a></li>
+       <li><a href=#shared-workers-and-the-sharedworker-interface><span class=secno>9.2.8.3 </span>Shared workers and the <code>SharedWorker</code> interface</a></ol></ol></li>
+   <li><a href=#apis-available-to-workers><span class=secno>9.3 </span>APIs available to workers</a>
     <ol>
-     <li><a href=#importing-scripts-and-libraries><span class=secno>8.3.1 </span>Importing scripts and libraries</a></li>
-     <li><a href=#the-navigator-object><span class=secno>8.3.2 </span>The <code title=worker-Navigator>Navigator</code> object</a></li>
-     <li><a href=#apis-defined-in-other-specifications><span class=secno>8.3.3 </span>APIs defined in other specifications</a></li>
-     <li><a href=#interface-objects-and-constructors><span class=secno>8.3.4 </span>Interface objects and constructors</a></li>
-     <li><a href=#worker-locations><span class=secno>8.3.5 </span>Worker locations</a></ol></ol></li>
- <li><a href=#comms><span class=secno>9 </span>Communication</a>
+     <li><a href=#importing-scripts-and-libraries><span class=secno>9.3.1 </span>Importing scripts and libraries</a></li>
+     <li><a href=#the-navigator-object><span class=secno>9.3.2 </span>The <code title=worker-Navigator>Navigator</code> object</a></li>
+     <li><a href=#apis-defined-in-other-specifications><span class=secno>9.3.3 </span>APIs defined in other specifications</a></li>
+     <li><a href=#interface-objects-and-constructors><span class=secno>9.3.4 </span>Interface objects and constructors</a></li>
+     <li><a href=#worker-locations><span class=secno>9.3.5 </span>Worker locations</a></ol></ol></li>
+ <li><a href=#comms><span class=secno>10 </span>Communication</a>
   <ol>
-   <li><a href=#event-definitions><span class=secno>9.1 </span>Event definitions</a></li>
-   <li><a href=#server-sent-events><span class=secno>9.2 </span>Server-sent events</a>
+   <li><a href=#event-definitions><span class=secno>10.1 </span>Event definitions</a></li>
+   <li><a href=#server-sent-events><span class=secno>10.2 </span>Server-sent events</a>
     <ol>
-     <li><a href=#server-sent-events-intro><span class=secno>9.2.1 </span>Introduction</a></li>
-     <li><a href=#the-eventsource-interface><span class=secno>9.2.2 </span>The <code>EventSource</code> interface</a></li>
-     <li><a href=#processing-model-5><span class=secno>9.2.3 </span>Processing model</a></li>
-     <li><a href=#parsing-an-event-stream><span class=secno>9.2.4 </span>Parsing an event stream</a></li>
-     <li><a href=#event-stream-interpretation><span class=secno>9.2.5 </span>Interpreting an event stream</a></li>
-     <li><a href=#notes><span class=secno>9.2.6 </span>Notes</a></li>
-     <li><a href=#garbage-collection-0><span class=secno>9.2.7 </span>Garbage collection</a></li>
-     <li><a href=#iana-considerations><span class=secno>9.2.8 </span>IANA considerations</a>
+     <li><a href=#server-sent-events-intro><span class=secno>10.2.1 </span>Introduction</a></li>
+     <li><a href=#the-eventsource-interface><span class=secno>10.2.2 </span>The <code>EventSource</code> interface</a></li>
+     <li><a href=#processing-model-5><span class=secno>10.2.3 </span>Processing model</a></li>
+     <li><a href=#parsing-an-event-stream><span class=secno>10.2.4 </span>Parsing an event stream</a></li>
+     <li><a href=#event-stream-interpretation><span class=secno>10.2.5 </span>Interpreting an event stream</a></li>
+     <li><a href=#notes><span class=secno>10.2.6 </span>Notes</a></li>
+     <li><a href=#garbage-collection-0><span class=secno>10.2.7 </span>Garbage collection</a></li>
+     <li><a href=#iana-considerations><span class=secno>10.2.8 </span>IANA considerations</a>
       <ol>
-       <li><a href=#text/event-stream><span class=secno>9.2.8.1 </span><code>text/event-stream</code></a></li>
-       <li><a href=#last-event-id><span class=secno>9.2.8.2 </span><code>Last-Event-ID</code></a></ol></ol></li>
-   <li><a href=#network><span class=secno>9.3 </span>Web sockets</a>
+       <li><a href=#text/event-stream><span class=secno>10.2.8.1 </span><code>text/event-stream</code></a></li>
+       <li><a href=#last-event-id><span class=secno>10.2.8.2 </span><code>Last-Event-ID</code></a></ol></ol></li>
+   <li><a href=#network><span class=secno>10.3 </span>Web sockets</a>
     <ol>
-     <li><a href=#network-intro><span class=secno>9.3.1 </span>Introduction</a></li>
-     <li><a href=#the-websocket-interface><span class=secno>9.3.2 </span>The <code>WebSocket</code> interface</a></li>
-     <li><a href=#feedback-from-the-protocol><span class=secno>9.3.3 </span>Feedback from the protocol</a>
+     <li><a href=#network-intro><span class=secno>10.3.1 </span>Introduction</a></li>
+     <li><a href=#the-websocket-interface><span class=secno>10.3.2 </span>The <code>WebSocket</code> interface</a></li>
+     <li><a href=#feedback-from-the-protocol><span class=secno>10.3.3 </span>Feedback from the protocol</a>
       <ol>
-       <li><a href=#garbage-collection-1><span class=secno>9.3.3.1 </span>Garbage collection</a></ol></li>
+       <li><a href=#garbage-collection-1><span class=secno>10.3.3.1 </span>Garbage collection</a></ol></li>
      <li><a href=#websocket-protocol title="This protocol enables two-way
   communication between a user agent running untrusted code running in
   a controlled environment to a remote host that understands the
   protocol. It is intended to fail to communicate with servers of
   pre-existing protocols like SMTP or HTTP, while allowing HTTP
   servers to opt-in to supporting this protocol if desired. It is
-  designed to be easy to implement on the server side."><span class=secno>9.3.4 </span>The Web Socket
+  designed to be easy to implement on the server side."><span class=secno>10.3.4 </span>The Web Socket
   protocol</a>
       <ol>
-       <li><a href=#introduction-8><span class=secno>9.3.4.1 </span>Introduction</a>
+       <li><a href=#introduction-8><span class=secno>10.3.4.1 </span>Introduction</a>
         <ol>
-         <li><a href=#background-0><span class=secno>9.3.4.1.1 </span>Background</a></li>
-         <li><a href=#protocol-overview><span class=secno>9.3.4.1.2 </span>Protocol overview</a></li>
-         <li><a href=#design-philosophy><span class=secno>9.3.4.1.3 </span>Design philosophy</a></li>
-         <li><a href=#security-model><span class=secno>9.3.4.1.4 </span>Security model</a></li>
-         <li><a href=#relationship-to-tcp/ip-and-http><span class=secno>9.3.4.1.5 </span>Relationship to TCP/IP and HTTP</a></li>
-         <li><a href=#establishing-a-connection><span class=secno>9.3.4.1.6 </span>Establishing a connection</a></ol></li>
-       <li><a href=#web-socket-urls><span class=secno>9.3.4.2 </span>Web Socket URLs</a>
+         <li><a href=#background-0><span class=secno>10.3.4.1.1 </span>Background</a></li>
+         <li><a href=#protocol-overview><span class=secno>10.3.4.1.2 </span>Protocol overview</a></li>
+         <li><a href=#design-philosophy><span class=secno>10.3.4.1.3 </span>Design philosophy</a></li>
+         <li><a href=#security-model><span class=secno>10.3.4.1.4 </span>Security model</a></li>
+         <li><a href=#relationship-to-tcp/ip-and-http><span class=secno>10.3.4.1.5 </span>Relationship to TCP/IP and HTTP</a></li>
+         <li><a href=#establishing-a-connection><span class=secno>10.3.4.1.6 </span>Establishing a connection</a></ol></li>
+       <li><a href=#web-socket-urls><span class=secno>10.3.4.2 </span>Web Socket URLs</a>
         <ol>
-         <li><a href=#parsing-web-socket-urls><span class=secno>9.3.4.2.1 </span>Parsing Web Socket URLs</a></li>
-         <li><a href=#constructing-web-socket-urls><span class=secno>9.3.4.2.2 </span>Constructing Web Socket URLs</a></ol></li>
-       <li><a href=#client-side-requirements><span class=secno>9.3.4.3 </span>Client-side requirements</a>
+         <li><a href=#parsing-web-socket-urls><span class=secno>10.3.4.2.1 </span>Parsing Web Socket URLs</a></li>
+         <li><a href=#constructing-web-socket-urls><span class=secno>10.3.4.2.2 </span>Constructing Web Socket URLs</a></ol></li>
+       <li><a href=#client-side-requirements><span class=secno>10.3.4.3 </span>Client-side requirements</a>
         <ol>
-         <li><a href=#handshake><span class=secno>9.3.4.3.1 </span>Handshake</a></li>
-         <li><a href=#data-framing><span class=secno>9.3.4.3.2 </span>Data framing</a></li>
-         <li><a href=#closing-the-connection><span class=secno>9.3.4.3.3 </span>Closing the connection</a></li>
-         <li><a href=#handling-errors-in-utf-8><span class=secno>9.3.4.3.4 </span>Handling errors in UTF-8</a></ol></li>
-       <li><a href=#server-side-requirements><span class=secno>9.3.4.4 </span>Server-side requirements</a>
+         <li><a href=#handshake><span class=secno>10.3.4.3.1 </span>Handshake</a></li>
+         <li><a href=#data-framing><span class=secno>10.3.4.3.2 </span>Data framing</a></li>
+         <li><a href=#closing-the-connection><span class=secno>10.3.4.3.3 </span>Closing the connection</a></li>
+         <li><a href=#handling-errors-in-utf-8><span class=secno>10.3.4.3.4 </span>Handling errors in UTF-8</a></ol></li>
+       <li><a href=#server-side-requirements><span class=secno>10.3.4.4 </span>Server-side requirements</a>
         <ol>
-         <li><a href=#minimal-handshake><span class=secno>9.3.4.4.1 </span>Minimal handshake</a></li>
-         <li><a href=#handshake-details><span class=secno>9.3.4.4.2 </span>Handshake details</a></li>
-         <li><a href=#ws-sd-framing><span class=secno>9.3.4.4.3 </span>Data framing</a></ol></li>
-       <li><a href=#closing-the-connection-0><span class=secno>9.3.4.5 </span>Closing the connection</a></li>
-       <li><a href=#security-considerations><span class=secno>9.3.4.6 </span>Security considerations</a></li>
-       <li><a href=#iana-considerations-0><span class=secno>9.3.4.7 </span>IANA considerations</a>
+         <li><a href=#minimal-handshake><span class=secno>10.3.4.4.1 </span>Minimal handshake</a></li>
+         <li><a href=#handshake-details><span class=secno>10.3.4.4.2 </span>Handshake details</a></li>
+         <li><a href=#ws-sd-framing><span class=secno>10.3.4.4.3 </span>Data framing</a></ol></li>
+       <li><a href=#closing-the-connection-0><span class=secno>10.3.4.5 </span>Closing the connection</a></li>
+       <li><a href=#security-considerations><span class=secno>10.3.4.6 </span>Security considerations</a></li>
+       <li><a href=#iana-considerations-0><span class=secno>10.3.4.7 </span>IANA considerations</a>
         <ol>
-         <li><a href=#registration-of-ws:-scheme><span class=secno>9.3.4.7.1 </span>Registration of <code title="">ws:</code> scheme</a></li>
-         <li><a href=#registration-of-wss:-scheme><span class=secno>9.3.4.7.2 </span>Registration of <code title="">wss:</code> scheme</a></li>
-         <li><a href=#registration-of-the-websocket-http-upgrade-keyword><span class=secno>9.3.4.7.3 </span>Registration of the "<code title="">WebSocket</code>" HTTP Upgrade keyword</a></li>
-         <li><a href=#websocket-origin><span class=secno>9.3.4.7.4 </span><code>WebSocket-Origin</code></a></li>
-         <li><a href=#websocket-protocol-0><span class=secno>9.3.4.7.5 </span><code>WebSocket-Protocol</code></a></li>
-         <li><a href=#websocket-location><span class=secno>9.3.4.7.6 </span><code>WebSocket-Location</code></a></ol></li>
-       <li><a href=#using-the-web-socket-protocol-from-other-specifications><span class=secno>9.3.4.8 </span>Using the Web Socket protocol from other specifications</a></ol></ol></li>
-   <li><a href=#crossDocumentMessages><span class=secno>9.4 </span>Cross-document messaging</a>
+         <li><a href=#registration-of-ws:-scheme><span class=secno>10.3.4.7.1 </span>Registration of <code title="">ws:</code> scheme</a></li>
+         <li><a href=#registration-of-wss:-scheme><span class=secno>10.3.4.7.2 </span>Registration of <code title="">wss:</code> scheme</a></li>
+         <li><a href=#registration-of-the-websocket-http-upgrade-keyword><span class=secno>10.3.4.7.3 </span>Registration of the "<code title="">WebSocket</code>" HTTP Upgrade keyword</a></li>
+         <li><a href=#websocket-origin><span class=secno>10.3.4.7.4 </span><code>WebSocket-Origin</code></a></li>
+         <li><a href=#websocket-protocol-0><span class=secno>10.3.4.7.5 </span><code>WebSocket-Protocol</code></a></li>
+         <li><a href=#websocket-location><span class=secno>10.3.4.7.6 </span><code>WebSocket-Location</code></a></ol></li>
+       <li><a href=#using-the-web-socket-protocol-from-other-specifications><span class=secno>10.3.4.8 </span>Using the Web Socket protocol from other specifications</a></ol></ol></li>
+   <li><a href=#crossDocumentMessages><span class=secno>10.4 </span>Cross-document messaging</a>
     <ol>
-     <li><a href=#introduction-9><span class=secno>9.4.1 </span>Introduction</a></li>
-     <li><a href=#security-5><span class=secno>9.4.2 </span>Security</a>
+     <li><a href=#introduction-9><span class=secno>10.4.1 </span>Introduction</a></li>
+     <li><a href=#security-5><span class=secno>10.4.2 </span>Security</a>
       <ol>
-       <li><a href=#authors><span class=secno>9.4.2.1 </span>Authors</a></li>
-       <li><a href=#user-agents><span class=secno>9.4.2.2 </span>User agents</a></ol></li>
-     <li><a href=#posting-messages><span class=secno>9.4.3 </span>Posting messages</a></li>
-     <li><a href=#posting-messages-with-message-ports><span class=secno>9.4.4 </span>Posting messages with message ports</a></ol></li>
-   <li><a href=#channel-messaging><span class=secno>9.5 </span>Channel messaging</a>
+       <li><a href=#authors><span class=secno>10.4.2.1 </span>Authors</a></li>
+       <li><a href=#user-agents><span class=secno>10.4.2.2 </span>User agents</a></ol></li>
+     <li><a href=#posting-messages><span class=secno>10.4.3 </span>Posting messages</a></li>
+     <li><a href=#posting-messages-with-message-ports><span class=secno>10.4.4 </span>Posting messages with message ports</a></ol></li>
+   <li><a href=#channel-messaging><span class=secno>10.5 </span>Channel messaging</a>
     <ol>
-     <li><a href=#message-channels><span class=secno>9.5.1 </span>Message channels</a></li>
-     <li><a href=#message-ports><span class=secno>9.5.2 </span>Message ports</a>
+     <li><a href=#message-channels><span class=secno>10.5.1 </span>Message channels</a></li>
+     <li><a href=#message-ports><span class=secno>10.5.2 </span>Message ports</a>
       <ol>
-       <li><a href=#ports-and-garbage-collection><span class=secno>9.5.2.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
- <li><a href=#syntax><span class=secno>10 </span>The HTML syntax</a>
+       <li><a href=#ports-and-garbage-collection><span class=secno>10.5.2.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
+ <li><a href=#syntax><span class=secno>11 </span>The HTML syntax</a>
   <ol>
-   <li><a href=#writing><span class=secno>10.1 </span>Writing HTML documents</a>
+   <li><a href=#writing><span class=secno>11.1 </span>Writing HTML documents</a>
     <ol>
-     <li><a href=#the-doctype><span class=secno>10.1.1 </span>The DOCTYPE</a></li>
-     <li><a href=#elements-0><span class=secno>10.1.2 </span>Elements</a>
+     <li><a href=#the-doctype><span class=secno>11.1.1 </span>The DOCTYPE</a></li>
+     <li><a href=#elements-0><span class=secno>11.1.2 </span>Elements</a>
       <ol>
-       <li><a href=#start-tags><span class=secno>10.1.2.1 </span>Start tags</a></li>
-       <li><a href=#end-tags><span class=secno>10.1.2.2 </span>End tags</a></li>
-       <li><a href=#attributes><span class=secno>10.1.2.3 </span>Attributes</a></li>
-       <li><a href=#optional-tags><span class=secno>10.1.2.4 </span>Optional tags</a></li>
-       <li><a href=#element-restrictions><span class=secno>10.1.2.5 </span>Restrictions on content models</a></li>
-       <li><a href=#cdata-rcdata-restrictions><span class=secno>10.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</a></ol></li>
-     <li><a href=#text-0><span class=secno>10.1.3 </span>Text</a>
+       <li><a href=#start-tags><span class=secno>11.1.2.1 </span>Start tags</a></li>
+       <li><a href=#end-tags><span class=secno>11.1.2.2 </span>End tags</a></li>
+       <li><a href=#attributes><span class=secno>11.1.2.3 </span>Attributes</a></li>
+       <li><a href=#optional-tags><span class=secno>11.1.2.4 </span>Optional tags</a></li>
+       <li><a href=#element-restrictions><span class=secno>11.1.2.5 </span>Restrictions on content models</a></li>
+       <li><a href=#cdata-rcdata-restrictions><span class=secno>11.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</a></ol></li>
+     <li><a href=#text-0><span class=secno>11.1.3 </span>Text</a>
       <ol>
-       <li><a href=#newlines><span class=secno>10.1.3.1 </span>Newlines</a></ol></li>
-     <li><a href=#character-references><span class=secno>10.1.4 </span>Character references</a></li>
-     <li><a href=#cdata-sections><span class=secno>10.1.5 </span>CDATA sections</a></li>
-     <li><a href=#comments><span class=secno>10.1.6 </span>Comments</a></ol></li>
-   <li><a href=#parsing><span class=secno>10.2 </span>Parsing HTML documents</a>
+       <li><a href=#newlines><span class=secno>11.1.3.1 </span>Newlines</a></ol></li>
+     <li><a href=#character-references><span class=secno>11.1.4 </span>Character references</a></li>
+     <li><a href=#cdata-sections><span class=secno>11.1.5 </span>CDATA sections</a></li>
+     <li><a href=#comments><span class=secno>11.1.6 </span>Comments</a></ol></li>
+   <li><a href=#parsing><span class=secno>11.2 </span>Parsing HTML documents</a>
     <ol>
-     <li><a href=#overview-of-the-parsing-model><span class=secno>10.2.1 </span>Overview of the parsing model</a></li>
-     <li><a href=#the-input-stream><span class=secno>10.2.2 </span>The input stream</a>
+     <li><a href=#overview-of-the-parsing-model><span class=secno>11.2.1 </span>Overview of the parsing model</a></li>
+     <li><a href=#the-input-stream><span class=secno>11.2.2 </span>The input stream</a>
       <ol>
-       <li><a href=#determining-the-character-encoding><span class=secno>10.2.2.1 </span>Determining the character encoding</a></li>
-       <li><a href=#character-encodings-0><span class=secno>10.2.2.2 </span>Character encodings</a></li>
-       <li><a href=#preprocessing-the-input-stream><span class=secno>10.2.2.3 </span>Preprocessing the input stream</a></li>
-       <li><a href=#changing-the-encoding-while-parsing><span class=secno>10.2.2.4 </span>Changing the encoding while parsing</a></ol></li>
-     <li><a href=#parse-state><span class=secno>10.2.3 </span>Parse state</a>
+       <li><a href=#determining-the-character-encoding><span class=secno>11.2.2.1 </span>Determining the character encoding</a></li>
+       <li><a href=#character-encodings-0><span class=secno>11.2.2.2 </span>Character encodings</a></li>
+       <li><a href=#preprocessing-the-input-stream><span class=secno>11.2.2.3 </span>Preprocessing the input stream</a></li>
+       <li><a href=#changing-the-encoding-while-parsing><span class=secno>11.2.2.4 </span>Changing the encoding while parsing</a></ol></li>
+     <li><a href=#parse-state><span class=secno>11.2.3 </span>Parse state</a>
       <ol>
-       <li><a href=#the-insertion-mode><span class=secno>10.2.3.1 </span>The insertion mode</a></li>
-       <li><a href=#the-stack-of-open-elements><span class=secno>10.2.3.2 </span>The stack of open elements</a></li>
-       <li><a href=#the-list-of-active-formatting-elements><span class=secno>10.2.3.3 </span>The list of active formatting elements</a></li>
-       <li><a href=#the-element-pointers><span class=secno>10.2.3.4 </span>The element pointers</a></li>
-       <li><a href=#other-parsing-state-flags><span class=secno>10.2.3.5 </span>Other parsing state flags</a></ol></li>
-     <li><a href=#tokenization><span class=secno>10.2.4 </span>Tokenization</a>
+       <li><a href=#the-insertion-mode><span class=secno>11.2.3.1 </span>The insertion mode</a></li>
+       <li><a href=#the-stack-of-open-elements><span class=secno>11.2.3.2 </span>The stack of open elements</a></li>
+       <li><a href=#the-list-of-active-formatting-elements><span class=secno>11.2.3.3 </span>The list of active formatting elements</a></li>
+       <li><a href=#the-element-pointers><span class=secno>11.2.3.4 </span>The element pointers</a></li>
+       <li><a href=#other-parsing-state-flags><span class=secno>11.2.3.5 </span>Other parsing state flags</a></ol></li>
+     <li><a href=#tokenization><span class=secno>11.2.4 </span>Tokenization</a>
       <ol>
-       <li><a href=#data-state><span class=secno>10.2.4.1 </span>Data state</a></li>
-       <li><a href=#character-reference-in-data-state><span class=secno>10.2.4.2 </span>Character reference in data state</a></li>
-       <li><a href=#tag-open-state><span class=secno>10.2.4.3 </span>Tag open state</a></li>
-       <li><a href=#close-tag-open-state><span class=secno>10.2.4.4 </span>Close tag open state</a></li>
-       <li><a href=#tag-name-state><span class=secno>10.2.4.5 </span>Tag name state</a></li>
-       <li><a href=#before-attribute-name-state><span class=secno>10.2.4.6 </span>Before attribute name state</a></li>
-       <li><a href=#attribute-name-state><span class=secno>10.2.4.7 </span>Attribute name state</a></li>
-       <li><a href=#after-attribute-name-state><span class=secno>10.2.4.8 </span>After attribute name state</a></li>
-       <li><a href=#before-attribute-value-state><span class=secno>10.2.4.9 </span>Before attribute value state</a></li>
-       <li><a href=#attribute-value-(double-quoted)-state><span class=secno>10.2.4.10 </span>Attribute value (double-quoted) state</a></li>
-       <li><a href=#attribute-value-(single-quoted)-state><span class=secno>10.2.4.11 </span>Attribute value (single-quoted) state</a></li>
-       <li><a href=#attribute-value-(unquoted)-state><span class=secno>10.2.4.12 </span>Attribute value (unquoted) state</a></li>
-       <li><a href=#character-reference-in-attribute-value-state><span class=secno>10.2.4.13 </span>Character reference in attribute value state</a></li>
-       <li><a href=#after-attribute-value-(quoted)-state><span class=secno>10.2.4.14 </span>After attribute value (quoted) state</a></li>
-       <li><a href=#self-closing-start-tag-state><span class=secno>10.2.4.15 </span>Self-closing start tag state</a></li>
-       <li><a href=#bogus-comment-state><span class=secno>10.2.4.16 </span>Bogus comment state</a></li>
-       <li><a href=#markup-declaration-open-state><span class=secno>10.2.4.17 </span>Markup declaration open state</a></li>
-       <li><a href=#comment-start-state><span class=secno>10.2.4.18 </span>Comment start state</a></li>
-       <li><a href=#comment-start-dash-state><span class=secno>10.2.4.19 </span>Comment start dash state</a></li>
-       <li><a href=#comment-state><span class=secno>10.2.4.20 </span>Comment state</a></li>
-       <li><a href=#comment-end-dash-state><span class=secno>10.2.4.21 </span>Comment end dash state</a></li>
-       <li><a href=#comment-end-state><span class=secno>10.2.4.22 </span>Comment end state</a></li>
-       <li><a href=#comment-end-bang-state><span class=secno>10.2.4.23 </span>Comment end bang state</a></li>
-       <li><a href=#comment-end-space-state><span class=secno>10.2.4.24 </span>Comment end space state</a></li>
-       <li><a href=#doctype-state><span class=secno>10.2.4.25 </span>DOCTYPE state</a></li>
-       <li><a href=#before-doctype-name-state><span class=secno>10.2.4.26 </span>Before DOCTYPE name state</a></li>
-       <li><a href=#doctype-name-state><span class=secno>10.2.4.27 </span>DOCTYPE name state</a></li>
-       <li><a href=#after-doctype-name-state><span class=secno>10.2.4.28 </span>After DOCTYPE name state</a></li>
-       <li><a href=#after-doctype-public-keyword-state><span class=secno>10.2.4.29 </span>After DOCTYPE public keyword state</a></li>
-       <li><a href=#before-doctype-public-identifier-state><span class=secno>10.2.4.30 </span>Before DOCTYPE public identifier state</a></li>
-       <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>10.2.4.31 </span>DOCTYPE public identifier (double-quoted) state</a></li>
-       <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>10.2.4.32 </span>DOCTYPE public identifier (single-quoted) state</a></li>
-       <li><a href=#after-doctype-public-identifier-state><span class=secno>10.2.4.33 </span>After DOCTYPE public identifier state</a></li>
-       <li><a href=#between-doctype-public-and-system-identifiers-state><span class=secno>10.2.4.34 </span>Between DOCTYPE public and system identifiers state</a></li>
-       <li><a href=#after-doctype-system-keyword-state><span class=secno>10.2.4.35 </span>After DOCTYPE system keyword state</a></li>
-       <li><a href=#before-doctype-system-identifier-state><span class=secno>10.2.4.36 </span>Before DOCTYPE system identifier state</a></li>
-       <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>10.2.4.37 </span>DOCTYPE system identifier (double-quoted) state</a></li>
-       <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>10.2.4.38 </span>DOCTYPE system identifier (single-quoted) state</a></li>
-       <li><a href=#after-doctype-system-identifier-state><span class=secno>10.2.4.39 </span>After DOCTYPE system identifier state</a></li>
-       <li><a href=#bogus-doctype-state><span class=secno>10.2.4.40 </span>Bogus DOCTYPE state</a></li>
-       <li><a href=#cdata-section-state><span class=secno>10.2.4.41 </span>CDATA section state</a></li>
-       <li><a href=#tokenizing-character-references><span class=secno>10.2.4.42 </span>Tokenizing character references</a></ol></li>
-     <li><a href=#tree-construction><span class=secno>10.2.5 </span>Tree construction</a>
+       <li><a href=#data-state><span class=secno>11.2.4.1 </span>Data state</a></li>
+       <li><a href=#character-reference-in-data-state><span class=secno>11.2.4.2 </span>Character reference in data state</a></li>
+       <li><a href=#tag-open-state><span class=secno>11.2.4.3 </span>Tag open state</a></li>
+       <li><a href=#close-tag-open-state><span class=secno>11.2.4.4 </span>Close tag open state</a></li>
+       <li><a href=#tag-name-state><span class=secno>11.2.4.5 </span>Tag name state</a></li>
+       <li><a href=#before-attribute-name-state><span class=secno>11.2.4.6 </span>Before attribute name state</a></li>
+       <li><a href=#attribute-name-state><span class=secno>11.2.4.7 </span>Attribute name state</a></li>
+       <li><a href=#after-attribute-name-state><span class=secno>11.2.4.8 </span>After attribute name state</a></li>
+       <li><a href=#before-attribute-value-state><span class=secno>11.2.4.9 </span>Before attribute value state</a></li>
+       <li><a href=#attribute-value-(double-quoted)-state><span class=secno>11.2.4.10 </span>Attribute value (double-quoted) state</a></li>
+       <li><a href=#attribute-value-(single-quoted)-state><span class=secno>11.2.4.11 </span>Attribute value (single-quoted) state</a></li>
+       <li><a href=#attribute-value-(unquoted)-state><span class=secno>11.2.4.12 </span>Attribute value (unquoted) state</a></li>
+       <li><a href=#character-reference-in-attribute-value-state><span class=secno>11.2.4.13 </span>Character reference in attribute value state</a></li>
+       <li><a href=#after-attribute-value-(quoted)-state><span class=secno>11.2.4.14 </span>After attribute value (quoted) state</a></li>
+       <li><a href=#self-closing-start-tag-state><span class=secno>11.2.4.15 </span>Self-closing start tag state</a></li>
+       <li><a href=#bogus-comment-state><span class=secno>11.2.4.16 </span>Bogus comment state</a></li>
+       <li><a href=#markup-declaration-open-state><span class=secno>11.2.4.17 </span>Markup declaration open state</a></li>
+       <li><a href=#comment-start-state><span class=secno>11.2.4.18 </span>Comment start state</a></li>
+       <li><a href=#comment-start-dash-state><span class=secno>11.2.4.19 </span>Comment start dash state</a></li>
+       <li><a href=#comment-state><span class=secno>11.2.4.20 </span>Comment state</a></li>
+       <li><a href=#comment-end-dash-state><span class=secno>11.2.4.21 </span>Comment end dash state</a></li>
+       <li><a href=#comment-end-state><span class=secno>11.2.4.22 </span>Comment end state</a></li>
+       <li><a href=#comment-end-bang-state><span class=secno>11.2.4.23 </span>Comment end bang state</a></li>
+       <li><a href=#comment-end-space-state><span class=secno>11.2.4.24 </span>Comment end space state</a></li>
+       <li><a href=#doctype-state><span class=secno>11.2.4.25 </span>DOCTYPE state</a></li>
+       <li><a href=#before-doctype-name-state><span class=secno>11.2.4.26 </span>Before DOCTYPE name state</a></li>
+       <li><a href=#doctype-name-state><span class=secno>11.2.4.27 </span>DOCTYPE name state</a></li>
+       <li><a href=#after-doctype-name-state><span class=secno>11.2.4.28 </span>After DOCTYPE name state</a></li>
+       <li><a href=#after-doctype-public-keyword-state><span class=secno>11.2.4.29 </span>After DOCTYPE public keyword state</a></li>
+       <li><a href=#before-doctype-public-identifier-state><span class=secno>11.2.4.30 </span>Before DOCTYPE public identifier state</a></li>
+       <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>11.2.4.31 </span>DOCTYPE public identifier (double-quoted) state</a></li>
+       <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>11.2.4.32 </span>DOCTYPE public identifier (single-quoted) state</a></li>
+       <li><a href=#after-doctype-public-identifier-state><span class=secno>11.2.4.33 </span>After DOCTYPE public identifier state</a></li>
+       <li><a href=#between-doctype-public-and-system-identifiers-state><span class=secno>11.2.4.34 </span>Between DOCTYPE public and system identifiers state</a></li>
+       <li><a href=#after-doctype-system-keyword-state><span class=secno>11.2.4.35 </span>After DOCTYPE system keyword state</a></li>
+       <li><a href=#before-doctype-system-identifier-state><span class=secno>11.2.4.36 </span>Before DOCTYPE system identifier state</a></li>
+       <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>11.2.4.37 </span>DOCTYPE system identifier (double-quoted) state</a></li>
+       <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>11.2.4.38 </span>DOCTYPE system identifier (single-quoted) state</a></li>
+       <li><a href=#after-doctype-system-identifier-state><span class=secno>11.2.4.39 </span>After DOCTYPE system identifier state</a></li>
+       <li><a href=#bogus-doctype-state><span class=secno>11.2.4.40 </span>Bogus DOCTYPE state</a></li>
+       <li><a href=#cdata-section-state><span class=secno>11.2.4.41 </span>CDATA section state</a></li>
+       <li><a href=#tokenizing-character-references><span class=secno>11.2.4.42 </span>Tokenizing character references</a></ol></li>
+     <li><a href=#tree-construction><span class=secno>11.2.5 </span>Tree construction</a>
       <ol>
-       <li><a href=#creating-and-inserting-elements><span class=secno>10.2.5.1 </span>Creating and inserting elements</a></li>
-       <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>10.2.5.2 </span>Closing elements that have implied end tags</a></li>
-       <li><a href=#foster-parenting><span class=secno>10.2.5.3 </span>Foster parenting</a></li>
-       <li><a href=#the-initial-insertion-mode><span class=secno>10.2.5.4 </span>The "initial" insertion mode</a></li>
-       <li><a href=#the-before-html-insertion-mode><span class=secno>10.2.5.5 </span>The "before html" insertion mode</a></li>
-       <li><a href=#the-before-head-insertion-mode><span class=secno>10.2.5.6 </span>The "before head" insertion mode</a></li>
-       <li><a href=#parsing-main-inhead><span class=secno>10.2.5.7 </span>The "in head" insertion mode</a></li>
-       <li><a href=#parsing-main-inheadnoscript><span class=secno>10.2.5.8 </span>The "in head noscript" insertion mode</a></li>
-       <li><a href=#the-after-head-insertion-mode><span class=secno>10.2.5.9 </span>The "after head" insertion mode</a></li>
-       <li><a href=#parsing-main-inbody><span class=secno>10.2.5.10 </span>The "in body" insertion mode</a></li>
-       <li><a href=#parsing-main-incdata><span class=secno>10.2.5.11 </span>The "in RAWTEXT/RCDATA" insertion mode</a></li>
-       <li><a href=#parsing-main-intable><span class=secno>10.2.5.12 </span>The "in table" insertion mode</a></li>
-       <li><a href=#parsing-main-intabletext><span class=secno>10.2.5.13 </span>The "in table text" insertion mode</a></li>
-       <li><a href=#parsing-main-incaption><span class=secno>10.2.5.14 </span>The "in caption" insertion mode</a></li>
-       <li><a href=#parsing-main-incolgroup><span class=secno>10.2.5.15 </span>The "in column group" insertion mode</a></li>
-       <li><a href=#parsing-main-intbody><span class=secno>10.2.5.16 </span>The "in table body" insertion mode</a></li>
-       <li><a href=#parsing-main-intr><span class=secno>10.2.5.17 </span>The "in row" insertion mode</a></li>
-       <li><a href=#parsing-main-intd><span class=secno>10.2.5.18 </span>The "in cell" insertion mode</a></li>
-       <li><a href=#parsing-main-inselect><span class=secno>10.2.5.19 </span>The "in select" insertion mode</a></li>
-       <li><a href=#parsing-main-inselectintable><span class=secno>10.2.5.20 </span>The "in select in table" insertion mode</a></li>
-       <li><a href=#parsing-main-inforeign><span class=secno>10.2.5.21 </span>The "in foreign content" insertion mode</a></li>
-       <li><a href=#parsing-main-afterbody><span class=secno>10.2.5.22 </span>The "after body" insertion mode</a></li>
-       <li><a href=#parsing-main-inframeset><span class=secno>10.2.5.23 </span>The "in frameset" insertion mode</a></li>
-       <li><a href=#parsing-main-afterframeset><span class=secno>10.2.5.24 </span>The "after frameset" insertion mode</a></li>
-       <li><a href=#the-after-after-body-insertion-mode><span class=secno>10.2.5.25 </span>The "after after body" insertion mode</a></li>
-       <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>10.2.5.26 </span>The "after after frameset" insertion mode</a></ol></li>
-     <li><a href=#the-end><span class=secno>10.2.6 </span>The end</a></li>
-     <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>10.2.7 </span>Coercing an HTML DOM into an infoset</a></li>
-     <li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser><span class=secno>10.2.8 </span>An introduction to error handling and strange cases in the parser</a>
+       <li><a href=#creating-and-inserting-elements><span class=secno>11.2.5.1 </span>Creating and inserting elements</a></li>
+       <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>11.2.5.2 </span>Closing elements that have implied end tags</a></li>
+       <li><a href=#foster-parenting><span class=secno>11.2.5.3 </span>Foster parenting</a></li>
+       <li><a href=#the-initial-insertion-mode><span class=secno>11.2.5.4 </span>The "initial" insertion mode</a></li>
+       <li><a href=#the-before-html-insertion-mode><span class=secno>11.2.5.5 </span>The "before html" insertion mode</a></li>
+       <li><a href=#the-before-head-insertion-mode><span class=secno>11.2.5.6 </span>The "before head" insertion mode</a></li>
+       <li><a href=#parsing-main-inhead><span class=secno>11.2.5.7 </span>The "in head" insertion mode</a></li>
+       <li><a href=#parsing-main-inheadnoscript><span class=secno>11.2.5.8 </span>The "in head noscript" insertion mode</a></li>
+       <li><a href=#the-after-head-insertion-mode><span class=secno>11.2.5.9 </span>The "after head" insertion mode</a></li>
+       <li><a href=#parsing-main-inbody><span class=secno>11.2.5.10 </span>The "in body" insertion mode</a></li>
+       <li><a href=#parsing-main-incdata><span class=secno>11.2.5.11 </span>The "in RAWTEXT/RCDATA" insertion mode</a></li>
+       <li><a href=#parsing-main-intable><span class=secno>11.2.5.12 </span>The "in table" insertion mode</a></li>
+       <li><a href=#parsing-main-intabletext><span class=secno>11.2.5.13 </span>The "in table text" insertion mode</a></li>
+       <li><a href=#parsing-main-incaption><span class=secno>11.2.5.14 </span>The "in caption" insertion mode</a></li>
+       <li><a href=#parsing-main-incolgroup><span class=secno>11.2.5.15 </span>The "in column group" insertion mode</a></li>
+       <li><a href=#parsing-main-intbody><span class=secno>11.2.5.16 </span>The "in table body" insertion mode</a></li>
+       <li><a href=#parsing-main-intr><span class=secno>11.2.5.17 </span>The "in row" insertion mode</a></li>
+       <li><a href=#parsing-main-intd><span class=secno>11.2.5.18 </span>The "in cell" insertion mode</a></li>
+       <li><a href=#parsing-main-inselect><span class=secno>11.2.5.19 </span>The "in select" insertion mode</a></li>
+       <li><a href=#parsing-main-inselectintable><span class=secno>11.2.5.20 </span>The "in select in table" insertion mode</a></li>
+       <li><a href=#parsing-main-inforeign><span class=secno>11.2.5.21 </span>The "in foreign content" insertion mode</a></li>
+       <li><a href=#parsing-main-afterbody><span class=secno>11.2.5.22 </span>The "after body" insertion mode</a></li>
+       <li><a href=#parsing-main-inframeset><span class=secno>11.2.5.23 </span>The "in frameset" insertion mode</a></li>
+       <li><a href=#parsing-main-afterframeset><span class=secno>11.2.5.24 </span>The "after frameset" insertion mode</a></li>
+       <li><a href=#the-after-after-body-insertion-mode><span class=secno>11.2.5.25 </span>The "after after body" insertion mode</a></li>
+       <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>11.2.5.26 </span>The "after after frameset" insertion mode</a></ol></li>
+     <li><a href=#the-end><span class=secno>11.2.6 </span>The end</a></li>
+     <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>11.2.7 </span>Coercing an HTML DOM into an infoset</a></li>
+     <li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser><span class=secno>11.2.8 </span>An introduction to error handling and strange cases in the parser</a>
       <ol>
-       <li><a href=#misnested-tags:-b-i-/b-/i><span class=secno>10.2.8.1 </span>Misnested tags: <b><i></b></i></a></li>
-       <li><a href=#misnested-tags:-b-p-/b-/p><span class=secno>10.2.8.2 </span>Misnested tags: <b><p></b></p></a></li>
-       <li><a href=#unexpected-markup-in-tables><span class=secno>10.2.8.3 </span>Unexpected markup in tables</a></li>
-       <li><a href=#scripts-that-modify-the-page-as-it-is-being-parsed><span class=secno>10.2.8.4 </span>Scripts that modify the page as it is being parsed</a></ol></ol></li>
-   <li><a href=#namespaces><span class=secno>10.3 </span>Namespaces</a></li>
-   <li><a href=#serializing-html-fragments><span class=secno>10.4 </span>Serializing HTML fragments</a></li>
-   <li><a href=#parsing-html-fragments><span class=secno>10.5 </span>Parsing HTML fragments</a></li>
-   <li><a href=#named-character-references><span class=secno>10.6 </span>Named character references</a></ol></li>
- <li><a href=#the-xhtml-syntax><span class=secno>11 </span>The XHTML syntax</a>
+       <li><a href=#misnested-tags:-b-i-/b-/i><span class=secno>11.2.8.1 </span>Misnested tags: <b><i></b></i></a></li>
+       <li><a href=#misnested-tags:-b-p-/b-/p><span class=secno>11.2.8.2 </span>Misnested tags: <b><p></b></p></a></li>
+       <li><a href=#unexpected-markup-in-tables><span class=secno>11.2.8.3 </span>Unexpected markup in tables</a></li>
+       <li><a href=#scripts-that-modify-the-page-as-it-is-being-parsed><span class=secno>11.2.8.4 </span>Scripts that modify the page as it is being parsed</a></ol></ol></li>
+   <li><a href=#namespaces><span class=secno>11.3 </span>Namespaces</a></li>
+   <li><a href=#serializing-html-fragments><span class=secno>11.4 </span>Serializing HTML fragments</a></li>
+   <li><a href=#parsing-html-fragments><span class=secno>11.5 </span>Parsing HTML fragments</a></li>
+   <li><a href=#named-character-references><span class=secno>11.6 </span>Named character references</a></ol></li>
+ <li><a href=#the-xhtml-syntax><span class=secno>12 </span>The XHTML syntax</a>
   <ol>
-   <li><a href=#writing-xhtml-documents><span class=secno>11.1 </span>Writing XHTML documents</a></li>
-   <li><a href=#parsing-xhtml-documents><span class=secno>11.2 </span>Parsing XHTML documents</a></li>
-   <li><a href=#serializing-xhtml-fragments><span class=secno>11.3 </span>Serializing XHTML fragments</a></li>
-   <li><a href=#parsing-xhtml-fragments><span class=secno>11.4 </span>Parsing XHTML fragments</a></ol></li>
- <li><a href=#rendering><span class=secno>12 </span>Rendering</a>
+   <li><a href=#writing-xhtml-documents><span class=secno>12.1 </span>Writing XHTML documents</a></li>
+   <li><a href=#parsing-xhtml-documents><span class=secno>12.2 </span>Parsing XHTML documents</a></li>
+   <li><a href=#serializing-xhtml-fragments><span class=secno>12.3 </span>Serializing XHTML fragments</a></li>
+   <li><a href=#parsing-xhtml-fragments><span class=secno>12.4 </span>Parsing XHTML fragments</a></ol></li>
+ <li><a href=#rendering><span class=secno>13 </span>Rendering</a>
   <ol>
-   <li><a href=#introduction-10><span class=secno>12.1 </span>Introduction</a></li>
-   <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>12.2 </span>The CSS user agent style sheet and presentational hints</a>
+   <li><a href=#introduction-10><span class=secno>13.1 </span>Introduction</a></li>
+   <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>13.2 </span>The CSS user agent style sheet and presentational hints</a>
     <ol>
-     <li><a href=#introduction-11><span class=secno>12.2.1 </span>Introduction</a></li>
-     <li><a href=#display-types><span class=secno>12.2.2 </span>Display types</a></li>
-     <li><a href=#margins-and-padding><span class=secno>12.2.3 </span>Margins and padding</a></li>
-     <li><a href=#alignment><span class=secno>12.2.4 </span>Alignment</a></li>
-     <li><a href=#fonts-and-colors><span class=secno>12.2.5 </span>Fonts and colors</a></li>
-     <li><a href=#punctuation-and-decorations><span class=secno>12.2.6 </span>Punctuation and decorations</a></li>
-     <li><a href=#resetting-rules-for-inherited-properties><span class=secno>12.2.7 </span>Resetting rules for inherited properties</a></li>
-     <li><a href=#the-hr-element-0><span class=secno>12.2.8 </span>The <code>hr</code> element</a></li>
-     <li><a href=#the-fieldset-element-0><span class=secno>12.2.9 </span>The <code>fieldset</code> element</a></ol></li>
-   <li><a href=#replaced-elements><span class=secno>12.3 </span>Replaced elements</a>
+     <li><a href=#introduction-11><span class=secno>13.2.1 </span>Introduction</a></li>
+     <li><a href=#display-types><span class=secno>13.2.2 </span>Display types</a></li>
+     <li><a href=#margins-and-padding><span class=secno>13.2.3 </span>Margins and padding</a></li>
+     <li><a href=#alignment><span class=secno>13.2.4 </span>Alignment</a></li>
+     <li><a href=#fonts-and-colors><span class=secno>13.2.5 </span>Fonts and colors</a></li>
+     <li><a href=#punctuation-and-decorations><span class=secno>13.2.6 </span>Punctuation and decorations</a></li>
+     <li><a href=#resetting-rules-for-inherited-properties><span class=secno>13.2.7 </span>Resetting rules for inherited properties</a></li>
+     <li><a href=#the-hr-element-0><span class=secno>13.2.8 </span>The <code>hr</code> element</a></li>
+     <li><a href=#the-fieldset-element-0><span class=secno>13.2.9 </span>The <code>fieldset</code> element</a></ol></li>
+   <li><a href=#replaced-elements><span class=secno>13.3 </span>Replaced elements</a>
     <ol>
-     <li><a href=#embedded-content-2><span class=secno>12.3.1 </span>Embedded content</a></li>
-     <li><a href=#images-0><span class=secno>12.3.2 </span>Images</a></li>
-     <li><a href=#attributes-for-embedded-content-and-images><span class=secno>12.3.3 </span>Attributes for embedded content and images</a></li>
-     <li><a href=#image-maps-0><span class=secno>12.3.4 </span>Image maps</a></li>
-     <li><a href=#toolbars-0><span class=secno>12.3.5 </span>Toolbars</a></ol></li>
-   <li><a href=#bindings><span class=secno>12.4 </span>Bindings</a>
+     <li><a href=#embedded-content-2><span class=secno>13.3.1 </span>Embedded content</a></li>
+     <li><a href=#images-0><span class=secno>13.3.2 </span>Images</a></li>
+     <li><a href=#attributes-for-embedded-content-and-images><span class=secno>13.3.3 </span>Attributes for embedded content and images</a></li>
+     <li><a href=#image-maps-0><span class=secno>13.3.4 </span>Image maps</a></li>
+     <li><a href=#toolbars-0><span class=secno>13.3.5 </span>Toolbars</a></ol></li>
+   <li><a href=#bindings><span class=secno>13.4 </span>Bindings</a>
     <ol>
-     <li><a href=#introduction-12><span class=secno>12.4.1 </span>Introduction</a></li>
-     <li><a href=#the-button-element-0><span class=secno>12.4.2 </span>The <code>button</code> element</a></li>
-     <li><a href=#the-details-element-0><span class=secno>12.4.3 </span>The <code>details</code> element</a></li>
-     <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>12.4.4 </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>12.4.5 </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>12.4.6 </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>12.4.7 </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>12.4.8 </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>12.4.9 </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>12.4.10 </span>The <code>input</code> element as a button</a></li>
-     <li><a href=#the-marquee-element-0><span class=secno>12.4.11 </span>The <code>marquee</code> element</a></li>
-     <li><a href=#the-meter-element-0><span class=secno>12.4.12 </span>The <code>meter</code> element</a></li>
-     <li><a href=#the-progress-element-0><span class=secno>12.4.13 </span>The <code>progress</code> element</a></li>
-     <li><a href=#the-select-element-0><span class=secno>12.4.14 </span>The <code>select</code> element</a></li>
-     <li><a href=#the-textarea-element-0><span class=secno>12.4.15 </span>The <code>textarea</code> element</a></li>
-     <li><a href=#the-keygen-element-0><span class=secno>12.4.16 </span>The <code>keygen</code> element</a></li>
-     <li><a href=#the-time-element-0><span class=secno>12.4.17 </span>The <code>time</code> element</a></ol></li>
-   <li><a href=#frames-and-framesets><span class=secno>12.5 </span>Frames and framesets</a></li>
-   <li><a href=#interactive-media><span class=secno>12.6 </span>Interactive media</a>
+     <li><a href=#introduction-12><span class=secno>13.4.1 </span>Introduction</a></li>
+     <li><a href=#the-button-element-0><span class=secno>13.4.2 </span>The <code>button</code> element</a></li>
+     <li><a href=#the-details-element-0><span class=secno>13.4.3 </span>The <code>details</code> element</a></li>
+     <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>13.4.4 </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>13.4.5 </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>13.4.6 </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>13.4.7 </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>13.4.8 </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>13.4.9 </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>13.4.10 </span>The <code>input</code> element as a button</a></li>
+     <li><a href=#the-marquee-element-0><span class=secno>13.4.11 </span>The <code>marquee</code> element</a></li>
+     <li><a href=#the-meter-element-0><span class=secno>13.4.12 </span>The <code>meter</code> element</a></li>
+     <li><a href=#the-progress-element-0><span class=secno>13.4.13 </span>The <code>progress</code> element</a></li>
+     <li><a href=#the-select-element-0><span class=secno>13.4.14 </span>The <code>select</code> element</a></li>
+     <li><a href=#the-textarea-element-0><span class=secno>13.4.15 </span>The <code>textarea</code> element</a></li>
+     <li><a href=#the-keygen-element-0><span class=secno>13.4.16 </span>The <code>keygen</code> element</a></li>
+     <li><a href=#the-time-element-0><span class=secno>13.4.17 </span>The <code>time</code> element</a></ol></li>
+   <li><a href=#frames-and-framesets><span class=secno>13.5 </span>Frames and framesets</a></li>
+   <li><a href=#interactive-media><span class=secno>13.6 </span>Interactive media</a>
     <ol>
-     <li><a href=#links,-forms,-and-navigation><span class=secno>12.6.1 </span>Links, forms, and navigation</a></li>
-     <li><a href=#the-title-attribute-0><span class=secno>12.6.2 </span>The <code title=attr-title>title</code> attribute</a></li>
-     <li><a href=#editing-hosts><span class=secno>12.6.3 </span>Editing hosts</a></ol></li>
-   <li><a href=#print-media><span class=secno>12.7 </span>Print media</a></li>
-   <li><a href=#interaction-with-css><span class=secno>12.8 </span>Interaction with CSS</a>
+     <li><a href=#links,-forms,-and-navigation><span class=secno>13.6.1 </span>Links, forms, and navigation</a></li>
+     <li><a href=#the-title-attribute-0><span class=secno>13.6.2 </span>The <code title=attr-title>title</code> attribute</a></li>
+     <li><a href=#editing-hosts><span class=secno>13.6.3 </span>Editing hosts</a></ol></li>
+   <li><a href=#print-media><span class=secno>13.7 </span>Print media</a></li>
+   <li><a href=#interaction-with-css><span class=secno>13.8 </span>Interaction with CSS</a>
     <ol>
-     <li><a href=#selectors><span class=secno>12.8.1 </span>Selectors</a></ol></ol></li>
- <li><a href=#obsolete><span class=secno>13 </span>Obsolete features</a>
+     <li><a href=#selectors><span class=secno>13.8.1 </span>Selectors</a></ol></ol></li>
+ <li><a href=#obsolete><span class=secno>14 </span>Obsolete features</a>
   <ol>
-   <li><a href=#obsolete-but-conforming-features><span class=secno>13.1 </span>Obsolete but conforming features</a>
+   <li><a href=#obsolete-but-conforming-features><span class=secno>14.1 </span>Obsolete but conforming features</a>
     <ol>
-     <li><a href=#warnings-for-obsolete-but-conforming-features><span class=secno>13.1.1 </span>Warnings for obsolete but conforming features</a></ol></li>
-   <li><a href=#non-conforming-features><span class=secno>13.2 </span>Non-conforming features</a></li>
-   <li><a href=#requirements-for-implementations><span class=secno>13.3 </span>Requirements for implementations</a>
+     <li><a href=#warnings-for-obsolete-but-conforming-features><span class=secno>14.1.1 </span>Warnings for obsolete but conforming features</a></ol></li>
+   <li><a href=#non-conforming-features><span class=secno>14.2 </span>Non-conforming features</a></li>
+   <li><a href=#requirements-for-implementations><span class=secno>14.3 </span>Requirements for implementations</a>
     <ol>
-     <li><a href=#the-applet-element><span class=secno>13.3.1 </span>The <code>applet</code> element</a></li>
-     <li><a href=#the-marquee-element><span class=secno>13.3.2 </span>The <code>marquee</code> element</a></li>
-     <li><a href=#frames><span class=secno>13.3.3 </span>Frames</a></li>
-     <li><a href=#other-elements,-attributes-and-apis><span class=secno>13.3.4 </span>Other elements, attributes and APIs</a></ol></ol></li>
+     <li><a href=#the-applet-element><span class=secno>14.3.1 </span>The <code>applet</code> element</a></li>
+     <li><a href=#the-marquee-element><span class=secno>14.3.2 </span>The <code>marquee</code> element</a></li>
+     <li><a href=#frames><span class=secno>14.3.3 </span>Frames</a></li>
+     <li><a href=#other-elements,-attributes-and-apis><span class=secno>14.3.4 </span>Other elements, attributes and APIs</a></ol></ol></li>
  <li><a class=no-num href=#iana-considerations-1>IANA considerations</a>
   <ol>
-   <li><a href=#text/html><span class=secno>13.1 </span><code>text/html</code></a></li>
-   <li><a href=#application/xhtml+xml><span class=secno>13.2 </span><code>application/xhtml+xml</code></a></li>
-   <li><a href=#text/cache-manifest><span class=secno>13.3 </span><code>text/cache-manifest</code></a></li>
-   <li><a href=#text/ping><span class=secno>13.4 </span><code>text/ping</code></a></li>
-   <li><a href=#application/microdata+json><span class=secno>13.5 </span><code>application/microdata+json</code></a>
+   <li><a href=#text/html><span class=secno>14.1 </span><code>text/html</code></a></li>
+   <li><a href=#application/xhtml+xml><span class=secno>14.2 </span><code>application/xhtml+xml</code></a></li>
+   <li><a href=#text/cache-manifest><span class=secno>14.3 </span><code>text/cache-manifest</code></a></li>
+   <li><a href=#text/ping><span class=secno>14.4 </span><code>text/ping</code></a></li>
+   <li><a href=#application/microdata+json><span class=secno>14.5 </span><code>application/microdata+json</code></a>
     <ol>
-     <li><a href=#ping-from><span class=secno>13.5.1 </span><code>Ping-From</code></a></li>
-     <li><a href=#ping-to><span class=secno>13.5.2 </span><code>Ping-To</code></a></ol></ol></li>
+     <li><a href=#ping-from><span class=secno>14.5.1 </span><code>Ping-From</code></a></li>
+     <li><a href=#ping-to><span class=secno>14.5.2 </span><code>Ping-To</code></a></ol></ol></li>
  <li><a class=no-num href=#index>Index</a>
   <ol>
    <li><a class=no-num href=#elements-1>Elements</a></li>
@@ -56002,10 +56008,1338 @@
 
 
 
-  <h3 id=structured-client-side-storage><span class=secno>6.12 </span>Structured client-side storage</h3>  
+  <h3 id=links><span class=secno>6.12 </span>Links</h3>
 
-  <h4 id=introduction-4><span class=secno>6.12.1 </span>Introduction</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
+  those elements, represent <dfn id=hyperlink title=hyperlink>hyperlinks</dfn>.</p>
+
+  <p>The <dfn id=attr-hyperlink-href title=attr-hyperlink-href><code>href</code></dfn>
+  attribute on a hyperlink element must have a value that is a
+  <a href=#valid-url>valid URL</a>. This URL is the <em>destination
+  resource</em> of the hyperlink.</p>
+
+  <div class=note>
+
+   <p>The <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute on
+   <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements is not required; when
+   those elements do not have <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attributes they do not
+   represent hyperlinks.</p>
+
+   <p>The <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute on the
+   <code><a href=#the-link-element>link</a></code> element <em>is</em> required, but whether a
+   <code><a href=#the-link-element>link</a></code> element represents a hyperlink or not depends on
+   the value of the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute
+   of that element.</p>
+
+  </div>
+
+  <p>The <dfn id=attr-hyperlink-target title=attr-hyperlink-target><code>target</code></dfn>
+  attribute, if present, must be a <a href=#valid-browsing-context-name-or-keyword>valid browsing context name
+  or keyword</a>. It gives the name of the <a href=#browsing-context>browsing
+  context</a> that will be used. <span class=impl>User agents use
+  this name when <a href=#following-hyperlinks>following hyperlinks</a>.</span></p>
+
+  <p>The <dfn id=ping title=attr-hyperlink-ping><code>ping</code></dfn> attribute, if
+  present, gives the URLs of the resources that are interested in
+  being notified if the user follows the hyperlink. The value must be
+  a space separated list of one or more <span>valid URLs</span>. <span class=impl>The value is used by the user agent for <a href=#hyperlink-auditing>hyperlink
+  auditing</a>.</span></p>
+
+  <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements that represent
+  hyperlinks, the relationship between the document containing the
+  hyperlink and the destination resource indicated by the hyperlink is
+  given by the value of the element's <dfn id=attr-hyperlink-rel title=attr-hyperlink-rel><code>rel</code></dfn> attribute, which
+  must be a <a href=#set-of-space-separated-tokens>set of space-separated tokens</a>. The <a href=#linkTypes>allowed values and their meanings</a> are defined
+  below. The <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute has
+  no default value. If the attribute is omitted or if none of the
+  values in the attribute are recognized by the user agent, then the
+  document has no particular relationship with the destination
+  resource other than there being a hyperlink between the two.</p>
+
+  <p>The <dfn id=attr-hyperlink-media title=attr-hyperlink-media><code>media</code></dfn>
+  attribute describes for which media the target document was
+  designed. It is purely advisory. The value must be a <a href=#valid-media-query>valid
+  media query</a>. The default, if the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code> attribute is omitted, is
+  "<code title="">all</code>".</p>
+
+  <p>The <dfn id=attr-hyperlink-hreflang title=attr-hyperlink-hreflang><code>hreflang</code></dfn>
+  attribute on hyperlink elements, if present, gives the language of
+  the linked resource. It is purely advisory. The value must be a
+  valid BCP 47 language code. <a href=#refsBCP47>[BCP47]</a>
+  <span class=impl>User agents must not consider this attribute
+  authoritative — upon fetching the resource, user agents must
+  use only language information associated with the resource to
+  determine its language, not metadata included in the link to the
+  resource.</span></p>
+
+  <p>The <dfn id=attr-hyperlink-type title=attr-hyperlink-type><code>type</code></dfn>
+  attribute, if present, gives the <a href=#mime-type>MIME type</a> of the linked
+  resource. It is purely advisory. The value must be a <a href=#valid-mime-type>valid
+  MIME type</a>, optionally with parameters. <span class=impl>User agents must not consider the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attribute authoritative
+  — upon fetching the resource, user agents must not use
+  metadata included in the link to the resource to determine its
+  type.</span></p>
+
+
+  <div class=impl>
+
+  <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>
+  given by the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute
+  of that hyperlink, relative to the hyperlink element, and if that is
+  successful, must <a href=#navigate>navigate</a> a <a href=#browsing-context>browsing
+  context</a> to the resulting <a href=#absolute-url>absolute URL</a>. In the
+  case of server-side image maps, the URL of the hyperlink must
+  further have its <var><a href=#hyperlink-suffix>hyperlink suffix</a></var> appended to it.</p>
+
+  <p>If <a href=#resolve-a-url title="resolve a url">resolving</a> the
+  <a href=#url>URL</a> fails, the user agent may report the error to the
+  user in a user-agent-specific manner, may navigate to an error page
+  to report the error, or may ignore the error and do nothing.</p>
+
+  <p>If the user indicated a specific <a href=#browsing-context>browsing context</a>
+  when following the hyperlink, or if the user agent is configured to
+  follow hyperlinks by navigating a particular browsing context, then
+  that must be the <a href=#browsing-context>browsing context</a> that is
+  navigated.</p>
+
+  <p>Otherwise, if the hyperlink element is an <code><a href=#the-a-element>a</a></code> or
+  <code><a href=#the-area-element>area</a></code> element that has a <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute, then the
+  <a href=#browsing-context>browsing context</a> that is navigated must be chosen by
+  applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for choosing a browsing context given a
+  browsing context name</a>, using the value of the <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute as the
+  browsing context name. If these rules result in the creation of a
+  new <a href=#browsing-context>browsing context</a>, it must be navigated with
+  <a href=#replacement-enabled>replacement enabled</a>.</p>
+
+  <p>Otherwise, if the hyperlink element is a <a href=#rel-sidebar-hyperlink title=rel-sidebar-hyperlink>sidebar hyperlink</a> and the user
+  agent implements a feature that can be considered a secondary
+  browsing context, such a secondary browsing context may be selected
+  as the browsing context to be navigated.</p>
+
+  <p>Otherwise, if the hyperlink element is an <code><a href=#the-a-element>a</a></code> or
+  <code><a href=#the-area-element>area</a></code> element with no <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute, but one of
+  the child nodes of <a href=#the-head-element>the <code>head</code> element</a> is a
+  <code><a href=#the-base-element>base</a></code> element with a <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute, then the browsing
+  context that is navigated must be chosen by applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules
+  for choosing a browsing context given a browsing context name</a>,
+  using the value of the <code title=attr-base-target><a href=#attr-base-target>target</a></code>
+  attribute of the first such <code><a href=#the-base-element>base</a></code> element as the
+  browsing context name. If these rules result in the creation of a
+  new <a href=#browsing-context>browsing context</a>, it must be navigated with
+  <a href=#replacement-enabled>replacement enabled</a>.</p>
+
+  <p>Otherwise, the browsing context that must be navigated is the
+  same browsing context as the one which the hyperlink element itself
+  is in.</p>
+
+  <p>The navigation must be done with the <a href=#browsing-context>browsing
+  context</a> that contains the <code>Document</code> object with
+  which the hyperlink's element in question is associated as the
+  <a href=#source-browsing-context>source browsing context</a>.</p>
+
+
+  <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
+  user follows the hyperlink, and the hyperlink's <a href=#url>URL</a> can
+  be <a href=#resolve-a-url title="resolve a url">resolved</a>, relative to the
+  hyperlink element, without failure, then the user agent must take
+  the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute's value,
+  <a href=#split-a-string-on-spaces title="split a string on spaces">split that string on
+  spaces</a>, <a href=#resolve-a-url title="resolve a url">resolve</a> each
+  resulting token relative to the hyperlink element, and then should
+  send a request (as described below) to each of the resulting <a href=#absolute-url title="absolute URL">absolute URLs</a>. (Tokens that fail to
+  resolve are ignored.) This may be done in parallel with the primary
+  request, and is independent of the result of that request.</p>
+
+  <p>User agents should allow the user to adjust this behavior, for
+  example in conjunction with a setting that disables the sending of
+  HTTP <code title=http-referer>Referer</code> (sic) headers. Based
+  on the user's preferences, UAs may either <a href=#ignore>ignore</a> the
+  <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute altogether,
+  or selectively ignore URLs in the list (e.g. ignoring any
+  third-party URLs).</p>
+
+  <p>For URLs that are HTTP URLs, the requests must be performed by
+  <a href=#fetch title=fetch>fetching</a> the specified URLs using the
+  POST method, with an entity body with the <a href=#mime-type>MIME type</a>
+  <code><a href=#text/ping>text/ping</a></code> consisting of the four-character string
+  "<code title="">PING</code>", from the <a href=#origin>origin</a> of the
+  <code>Document</code> containing the <a href=#hyperlink>hyperlink</a>. <!--
+  not http-origin privacy sensitive --> All relevant cookie and HTTP
+  authentication headers must be included in the request. Which other
+  headers are required depends on the URLs involved.</p>
+
+  <dl class=switch><dt>If both the <a href="#the-document's-address" title="the document's address">address</a>
+   of the <code>Document</code> object containing the hyperlink being
+   audited and the ping URL have the <a href=#same-origin>same origin</a></dt>
+
+   <dd>The request must include a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header with, as its
+   value, the <a href="#the-document's-address" title="the document's address">address</a> of
+   the document containing the hyperlink, and a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header with, as its value,
+   the address of the <a href=#absolute-url>absolute URL</a> of the target of the
+   hyperlink. The request must not include a <code title=http-referer>Referer</code> (sic) HTTP header. <!-- because
+   otherwise it would look like a trustable same-origin POST --></dd>
+
+   <dt>Otherwise, if the origins are different, but the document
+   containing the hyperlink being audited was not retrieved over an
+   encrypted connection</dt>
+
+   <dd>The request must include a <code title="">Referer</code> (sic)
+   HTTP header [sic] with, as its value, the <a href="#the-document's-current-address" title="the
+   document's current address">current address</a> of the document
+   containing the hyperlink, a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header with the same
+   value, and a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header
+   with, as its value, the address of the target of the
+   hyperlink.</dd>
+
+   <dt>Otherwise, the origins are different and the document
+   containing the hyperlink being audited was retrieved over an
+   encrypted connection</dt>
+
+   <dd>The request must include a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header with, as its value,
+   the address of the target of the hyperlink. The request must
+   neither include a <code title="">Referer</code> (sic) HTTP header
+   nor include a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP
+   header.</dd>
+
+  </dl><p class=note>To save bandwidth, implementors might also wish to
+  consider omitting optional headers such as <code>Accept</code> from
+  these requests.</p>
+
+  <p>User agents must, unless otherwise specified by the user, honor
+  the HTTP headers (including, in particular, redirects and HTTP
+  cookie headers), but must ignore any entity bodies returned in the
+  responses. User agents may close the connection prematurely once
+  they start receiving an entity body. <a href=#refsCOOKIES>[COOKIES]</a></p>
+
+  <p>For URLs that are not HTTP URLs, the requests must be performed
+  by <a href=#fetch title=fetch>fetching</a> the specified URL normally,
+  and discarding the results.</p>
+
+  <p>When the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute is
+  present, user agents should clearly indicate to the user that
+  following the hyperlink will also cause secondary requests to be
+  sent in the background, possibly including listing the actual target
+  URLs.</p>
+
+  <p class=example>For example, a visual user agent could include
+  the hostnames of the target ping URLs along with the hyperlink's
+  actual URL in a status bar or tooltip.</p>
+
+  </div>
+
+  <div class=note>
+
+   <p>The <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute is redundant
+   with pre-existing technologies like HTTP redirects and JavaScript
+   in allowing Web pages to track which off-site links are most
+   popular or allowing advertisers to track click-through rates.</p>
+
+   <p>However, the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute
+   provides these advantages to the user over those alternatives:</p>
+
+   <ul><li>It allows the user to see the final target URL
+    unobscured.</li>
+
+    <li>It allows the UA to inform the user about the out-of-band
+    notifications.</li>
+
+    <li>It allows the user to disable the notifications without losing
+    the underlying link functionality.</li>
+
+    <li>It allows the UA to optimize the use of available network
+    bandwidth so that the target page loads faster.</li>
+
+   </ul><p>Thus, while it is possible to track users without this feature,
+   authors are encouraged to use the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute so that the user
+   agent can make the user experience more transparent.</p>
+
+  </div>
+
+  <!-- resolving ping urls happens at audit time, so base URL changes
+  affect the values of ping attributes -->
+
+
+
+  <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
+  definitions for the link types are given in the next few
+  sections.</p>
+
+  <p>In this section, the term <i>referenced document</i> refers to
+  the resource identified by the element representing the link, and
+  the term <i>current document</i> refers to the resource within
+  which the element representing the link finds itself.</p>
+
+  <div class=impl>
+
+  <p>To determine which link types apply to a <code><a href=#the-link-element>link</a></code>,
+  <code><a href=#the-a-element>a</a></code>, or <code><a href=#the-area-element>area</a></code> element, the element's <code title="">rel</code> attribute must be <a href=#split-a-string-on-spaces title="split a string on
+  spaces">split on spaces</a>. The resulting tokens are the link
+  types that apply to that element.</p>
+
+  </div>
+
+  <p>Except where otherwise specified, a keyword must not be specified
+  more than once per <code title=attr-rel-hyperlink>rel</code>
+  attribute.</p>
+
+  <p>The link types are <a href=#ascii-case-insensitive>ASCII case-insensitive</a>
+  values<span class=impl>, and must be compared as such</span>.</p>
+
+  <p class=example>Thus, <code title="">rel="next"</code> is the
+  same as <code title="">rel="NEXT"</code>.</p>
+
+  <table><thead><tr><th rowspan=2>Link type</th>
+     <th colspan=2>Effect on...</th>
+     <th rowspan=2>Brief description</th>
+    <tr><th><code><a href=#the-link-element>link</a></code></th>
+     <th><code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code></th>
+    <tbody><tr><td><code title=rel-alternate><a href=#link-type-alternate>alternate</a></code></td> <!-- second most used <link rel> value -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Gives alternate representations of the current document.</td>
+    <tr><td><code title=rel-archives><a href=#link-type-archives>archives</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Provides a link to a collection of records, documents, or other materials of historical interest.</td>
+    <tr><td><code title=rel-author><a href=#link-type-author>author</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Gives a link to the current document's author.</td>
+    <tr><td><code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code></td> <!-- fourth most used <a rel> value -->
+     <td><em>not allowed</em></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Gives the permalink for the nearest ancestor section.</td>
+    </tr><!-- (commented out on the assumption that rel=contact is really XFN)
+    <tr>
+     <td><code title="rel-contact">contact</code></td> <!- 8th most used <a rel> value ->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives a link to contact information for the current document.</td>
+    </tr>
+--><tr><td><code title=rel-external><a href=#link-type-external>external</a></code></td> <!-- fifth and sixth most used <a rel> value (sixth is "external nofollow") -->
+     <td><em>not allowed</em></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the referenced document is not part of the same site as the current document.</td>
+    <tr><td><code title=rel-first><a href=#link-type-first>first</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the current document is a part of a series, and that the first document in the series is the referenced document.</td>
+    <tr><td><code title=rel-help><a href=#link-type-help>help</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Provides a link to context-sensitive help.</td>
+    <tr><td><code title=rel-icon><a href=#rel-icon>icon</a></code></td> <!-- link rel="shortcut icon" and its ilk are the fourth, sixth, and ninth most used values -->
+     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
+     <td><em>not allowed</em></td>
+     <td>Imports an icon to represent the current document.</td>
+    <tr><td><code title=rel-index><a href=#link-type-index>index</a></code></td> <!-- used more than "top" and "contents" on <link> (though on <a>, "contents" wins) -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Gives a link to the document that provides a table of contents or index listing the current document.</td>
+    <tr><td><code title=rel-last><a href=#link-type-last>last</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the current document is a part of a series, and that the last document in the series is the referenced document.</td>
+    <tr><td><code title=rel-license><a href=#link-type-license>license</a></code></td> <!-- seventh most used <a rel> value -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the main content of the current document is covered by the copyright license described by the referenced document.</td>
+    <tr><td><code title=rel-next><a href=#link-type-next>next</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the current document is a part of a series, and that the next document in the series is the referenced document.</td>
+    <tr><td><code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code></td> <!-- most used <a rel> value (and sixth most used is "external nofollow") -->
+     <td><em>not allowed</em></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the current document's original author or publisher does not endorse the referenced document.</td>
+    <tr><td><code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code></td>
+     <td><em>not allowed</em></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Requires that the user agent not send an HTTP <code title="">Referer</code> (sic) header if the user follows the hyperlink.</td>
+    <tr><td><code title=rel-pingback><a href=#link-type-pingback>pingback</a></code></td>
+     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
+     <td><em>not allowed</em></td>
+     <td>Gives the address of the pingback server that handles pingbacks to the current document.</td>
+    <tr><td><code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code></td>
+     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
+     <td><em>not allowed</em></td>
+     <td>Specifies that the target resource should be preemptively cached.</td>
+    <tr><td><code title=rel-prev><a href=#link-type-prev>prev</a></code></td> <!-- prev is used more than previous -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Indicates that the current document is a part of a series, and that the previous document in the series is the referenced document.</td>
+    <tr><td><code title=rel-search><a href=#link-type-search>search</a></code></td> <!-- used quite a bit -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Gives a link to a resource that can be used to search through the current document and its related pages.</td>
+    <tr><td><code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code></td> <!-- most commonly used <link rel> value, variants came in 7th, 8th, 12th, 17th... -->
+     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
+     <td><em>not allowed</em></td>
+     <td>Imports a stylesheet.</td>
+    <tr><td><code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code></td> <!-- used quite a bit -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Specifies that the referenced document, if retrieved, is intended to be shown in the browser's sidebar (if it has one).</td>
+    <tr><td><code title=rel-tag><a href=#link-type-tag>tag</a></code></td> <!-- second and third most used <a rel> value (third is technically "category tag"). -->
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Gives a tag (identified by the given address) that applies to the current document.</td>
+    <tr><td><code title=rel-up><a href=#link-type-up>up</a></code></td>
+     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
+     <td><a href=#hyperlink>Hyperlink</a></td>
+     <td>Provides a link to a document giving the context for the current document.</td>
+    </table><div class=impl>
+
+  <p>Some of the types described below list synonyms for these
+  values. These <!--<span class="impl">-->are to be handled as
+  specified by user agents, but<!--</span>--> must not be used in
+  documents.</p>
+
+  </div>
+
+  <!-- v2 ideas:
+   * rel="script"
+   * rel="related" // see also
+   * http://microformats.org/wiki/rel-enclosure
+  -->
+
+
+  <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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, if the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute does not also contain the
+  keyword <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, it creates a
+  <a href=#hyperlink-link title="hyperlink link">hyperlink</a>; but if it
+  <em>does</em> also contain the keyword <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword instead modifies the
+  meaning of the <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>
+  keyword in the way described for that keyword, and the rest of this
+  subsection doesn't apply.</p>
+
+  <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword
+  indicates that the referenced document is an alternate
+  representation of the current document.</p>
+
+  <p>The nature of the referenced document is given by the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes.</p>
+
+  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
+  used with the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>
+  attribute, it indicates that the referenced document is intended for
+  use with the media specified.</p>
+
+  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
+  used with the <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>
+  attribute, and that attribute's value differs from the <a href=#root-element>root
+  element</a>'s <a href=#language>language</a>, it indicates that the
+  referenced document is a translation.</p>
+
+  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
+  used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
+  attribute, it indicates that the referenced document is a
+  reformulation of the current document in the specified format.</p>
+
+  <p>The <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes can be combined
+  when specified with the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code>
+  keyword.</p>
+
+  <div class=example>
+
+   <p>For example, the following link is a French translation that
+   uses the PDF format:</p>
+
+   <pre><link rel=alternate type=application/pdf hreflang=fr href=manual-fr></pre>
+
+  </div>
+
+  <div class=impl>
+
+  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
+  used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
+  attribute set to the value <code title="">application/rss+xml</code>
+  or the value <code title="">application/atom+xml</code>, then it
+  indicates that the referenced document is a syndication feed (though
+  not necessarily syndicating exactly the same content as the current
+  page).</p>
+
+  <div class=impl>
+
+  <p>The first <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, or <code><a href=#the-area-element>area</a></code>
+  element in the document (in tree order) with the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attribute set to the value
+  <code title="">application/rss+xml</code> or the value <code title="">application/atom+xml</code> must be treated as the default
+  syndication feed for the purposes of feed autodiscovery.</p>
+
+  <div class=example>
+   <p>The following <code><a href=#the-link-element>link</a></code> element gives the syndication
+   feed for the current page:</p>
+   <pre><link rel="alternate" type="application/atom+xml" href="data.xml"></pre>
+   <p>The following extract offers various different syndication
+   feeds:</p>
+   <pre><p>You can access the planets database using Atom feeds:</p>
+<ul>
+ <li><a href="recently-visited-planets.xml" rel="alternate" type="application/atom+xml">Recently Visited Planets</a></li>
+ <li><a href="known-bad-planets.xml" rel="alternate" type="application/atom+xml">Known Bad Planets</a></li>
+ <li><a href="unexplored-planets.xml" rel="alternate" type="application/atom+xml">Unexplored Planets</a></li>
+</ul></pre>
+  </div>
+
+  </div>
+
+
+
+
+  </div>
+
+  <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> link
+  relationship is transitive — that is, if a document links to
+  two other documents with the link type "<code title=rel-alternate><a href=#link-type-alternate>alternate</a></code>", then, in addition to
+  implying that those documents are alternative representations of the
+  first document, it is also implying that those two documents are
+  alternative representations of each other.</p>
+
+
+  <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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword indicates
+  that the referenced document describes a collection of records,
+  documents, or other materials of historical interest.</p>
+
+  <p class=example>A blog's index page could link to an index of the
+  blog's past posts with <code title="">rel="archives"</code>.</p>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">archive</code>" like the
+  <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword.</p>
+
+  </div>
+
+
+  <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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements, the <code title=rel-author><a href=#link-type-author>author</a></code> keyword indicates that the
+  referenced document provides further information about the author of
+  the nearest <code><a href=#the-article-element>article</a></code> element ancestor of the element
+  defining the hyperlink, if there is one, or of the page as a whole,
+  otherwise.</p>
+
+  <p>For <code><a href=#the-link-element>link</a></code> elements, the <code title=rel-author><a href=#link-type-author>author</a></code> keyword indicates that the
+  referenced document provides further information about the author
+  for the page as a whole.</p>
+
+  <p class=note>The "referenced document" can be, and often is, a
+  <code title="">mailto:</code> URL giving the e-mail address of the
+  author. <a href=#refsMAILTO>[MAILTO]</a></p>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat <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> elements that have a <code title="">rev</code>
+  attribute with the value "<code>made</code>" as having the <code title=rel-author><a href=#link-type-author>author</a></code> keyword specified as a link
+  relationship.</p>
+
+  </div>
+
+
+  <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>
+
+  <p>The <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code> keyword gives a
+  permalink for the nearest ancestor <code><a href=#the-article-element>article</a></code> element of
+  the linking element in question, or of <a href=#associatedSection>the section the linking element is most
+  closely associated with</a>, if there are no ancestor
+  <code><a href=#the-article-element>article</a></code> elements.</p>
+
+  <div class=example>
+   <p>The following snippet has three permalinks. A user agent could
+   determine which permalink applies to which part of the spec by
+   looking at where the permalinks are given.</p>
+   <pre> ...
+ <body>
+  <h1>Example of permalinks</h1>
+  <div id="a">
+   <h2>First example</h2>
+   <p><a href="a.html" rel="bookmark">This</a> permalink applies to
+   only the content from the first H2 to the second H2. The DIV isn't
+   exactly that section, but it roughly corresponds to it.</p>
+  </div>
+  <h2>Second example</h2>
+  <article id="b">
+   <p><a href="b.html" rel="bookmark">This</a> permalink applies to
+   the outer ARTICLE element (which could be, e.g., a blog post).</p>
+   <article id="c">
+    <p><a href="c.html" rel="bookmark">This</a> permalink applies to
+    the inner ARTICLE element (which could be, e.g., a blog comment).</p>
+   </article>
+  </article>
+ </body>
+ ...</pre>
+  </div>
+
+<!-- (commented out on the assumption that rel=contact is really XFN)
+  <h5>Link type "<dfn title="rel-contact"><code>contact</code></dfn>"</h5>
+
+  <p>The <code title="rel-contact">contact</code> keyword may be used
+  with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>For <code>a</code> and <code>area</code> elements, the <code
+  title="rel-contact">contact</code> keyword indicates that the
+  referenced document provides further contact information for the
+  author of the nearest <code>article</code> element ancestor of the
+  element defining the hyperlink, if there is one, or of the page as a
+  whole, otherwise.</p>
+
+  <div class="impl">
+
+  <p>User agents must treat any hyperlink in an <code>address</code>
+  element as having the <code title="rel-contact">contact</code> link
+  type specified.</p>
+
+  </div>
+
+  <p>For <code>link</code> elements, the <code
+  title="rel-contact">contact</code> keyword indicates that the
+  referenced document provides further contact information for the
+  page as a whole.</p>
+-->
+
+
+  <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>
+
+  <p>The <code title=rel-external><a href=#link-type-external>external</a></code> keyword indicates
+  that the link is leading to a document that is not part of the site
+  that the current document forms a part of.</p>
+
+
+  <h5 id=link-type-help><span class=secno>6.12.3.6 </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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements, the <code title=rel-help><a href=#link-type-help>help</a></code> keyword indicates that the referenced
+  document provides further help information for the parent of the
+  element defining the hyperlink, and its children.</p>
+
+  <div class=example>
+
+   <p>In the following example, the form control has associated
+   context-sensitive help. The user agent could use this information,
+   for example, displaying the referenced document if the user presses
+   the "Help" or "F1" key.</p>
+
+   <pre> <p><label> Topic: <input name=topic> <a href="help/topic.html" rel="help">(Help)</a></label></p></pre>
+
+  </div>
+
+  <p>For <code><a href=#the-link-element>link</a></code> elements, the <code title=rel-help><a href=#link-type-help>help</a></code> keyword indicates that the referenced
+  document provides help for the page as a whole.</p>
+
+
+  <h5 id=rel-icon><span class=secno>6.12.3.7 </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>
+
+  <div class=impl>
+
+  <p>The specified resource is an icon representing the page or site,
+  and should be used by the user agent when representing the page in
+  the user interface.</p>
+
+  </div>
+
+  <p>Icons could be auditory icons, visual icons, or other kinds of
+  icons. <span class=impl>If multiple icons are provided, the user
+  agent must select the most appropriate icon according to the <code title=attr-link-type><a href=#attr-link-type>type</a></code>, <code title=attr-link-media><a href=#attr-link-media>media</a></code>, and <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attributes. If there are
+  multiple equally appropriate icons, user agents must use the last
+  one declared in <a href=#tree-order>tree order</a>. If the user agent tries to
+  use an icon but that icon is determined, upon closer examination, to
+  in fact be inappropriate (e.g. because it uses an unsupported
+  format), then the user agent must try the next-most-appropriate icon
+  as determined by the attributes.</span></p>
+
+  <div class=impl>
+
+  <p>There is no default type for resources given by the <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword. However, for the purposes of
+  <a href=#concept-link-type-sniffing>determining the type of the
+  resource</a>, user agents must expect the resource to be an image.</p>
+
+  </div>
+
+  <p>The <dfn id=attr-link-sizes title=attr-link-sizes><code>sizes</code></dfn>
+  attribute gives the sizes of icons for visual media.</p>
+
+  <p>If specified, the attribute must have a value that is an
+  <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique space-separated tokens</a>. The
+  values must all be either <code title=attr-link-sizes-any><a href=#attr-link-sizes-any>any</a></code> or a value that consists of
+  two <a href=#valid-non-negative-integer title="valid non-negative integer">valid non-negative
+  integers</a> that do not have a leading U+0030 DIGIT ZERO (0)
+  character and that are separated by a single U+0078 LATIN SMALL
+  LETTER X character (x).</p>
+
+  <p>The keywords represent icon sizes.</p>
+
+  <div class=impl>
+
+  <p>To parse and process the attribute's value, the user agent must
+  first <a href=#split-a-string-on-spaces title="split a string on spaces">split the attribute's
+  value on spaces</a>, and must then parse each resulting keyword
+  to determine what it represents.</p>
+
+  </div>
+
+  <p>The <dfn id=attr-link-sizes-any title=attr-link-sizes-any><code>any</code></dfn> keyword
+  represents that the resource contains a scalable icon, e.g. as
+  provided by an SVG image.</p>
+
+  <div class=impl>
+
+  <p>Other keywords must be further parsed as follows to determine
+  what they represent:</p>
+
+  <ul><li><p>If the keyword doesn't contain exactly one U+0078 LATIN
+   SMALL LETTER X character (x), then this keyword doesn't represent
+   anything. Abort these steps for that keyword.</li>
+
+   <li><p>Let <var title="">width string</var> be the string before
+   the "<code title="">x</code>".</li>
+
+   <li><p>Let <var title="">height string</var> be the string after the
+   "<code title="">x</code>".</li>
+
+   <li><p>If either <var title="">width string</var> or <var title="">height string</var> start with a U+0030 DIGIT ZERO (0)
+   character or contain any characters other than characters in the
+   range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then this
+   keyword doesn't represent anything. Abort these steps for that
+   keyword.</li>
+
+   <li><p>Apply the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
+   integers</a> to <var title="">width string</var> to obtain <var title="">width</var>.</li>
+
+   <li><p>Apply the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
+   integers</a> to <var title="">height string</var> to obtain <var title="">height</var>.</li>
+
+   <li><p>The keyword represents that the resource contains a bitmap
+   icon with a width of <var title="">width</var> device pixels and a
+   height of <var title="">height</var> device pixels.</li>
+
+  </ul></div>
+
+  <p>The keywords specified on the <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attribute must not represent
+  icon sizes that are not actually available in the linked
+  resource.</p>
+
+  <div class=impl>
+
+  <p>If the attribute is not specified, then the user agent must
+  assume that the given icon is appropriate, but less appropriate than
+  an icon of a known and appropriate size.</p>
+
+  </div>
+
+  <div class=example>
+
+   <p>The following snippet shows the top part of an application with
+   several icons.</p>
+
+   <pre><!DOCTYPE HTML>
+<html>
+ <head>
+  <title>lsForums — Inbox</title>
+  <link rel=icon href=favicon.png sizes="16x16">
+  <link rel=icon href=windows.ico sizes="32x32 48x48">
+  <link rel=icon href=mac.icns sizes="128x128 512x512 8192x8192 32768x32768">
+  <link rel=icon href=iphone.png sizes="59x60">
+  <link rel=icon href=gnome.svg sizes="any">
+  <link rel=stylesheet href=lsforums.css>
+  <script src=lsforums.js></script>
+  <meta name=application-name content="lsForums">
+ </head>
+ <body>
+  ...</pre>
+
+  </div>
+
+
+  <h5 id=link-type-license><span class=secno>6.12.3.8 </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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-license><a href=#link-type-license>license</a></code> keyword indicates
+  that the referenced document provides the copyright license terms
+  under which the main content of the current document is
+  provided.</p>
+
+  <p>This specification does not specify how to distinguish between
+  the main content of a document and content that is not deemed to be
+  part of that main content. The distinction should be made clear to
+  the user.</p>
+
+  <div class=example>
+
+   <p>Consider a photo sharing site. A page on that site might
+   describe and show a photograph, and the page might be marked up as
+   follows:</p>
+
+   <pre><!DOCTYPE HTML>
+<html>
+ <head>
+  <title>Exampl Pictures: Kissat</title>
+  <link rel="stylesheet" href="/style/default">
+ </head>
+ <body>
+  <h1>Kissat</h1>
+  <nav>
+   <a href="../">Return to photo index</a>
+  </nav>
+  <figure>
+   <dd><img src="/pix/39627052_fd8dcd98b5.jpg">
+   <dt>Kissat
+  </figure>
+  <p>One of them has six toes!</p>
+  <p><small><a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT Licensed</a></small></p>
+  <footer>
+   <a href="/">Home</a> | <a href="../">Photo index</a>
+   <p><small>© copyright 2009 Exampl Pictures. All Rights Reserved.</small></p>
+  </footer>
+ </body>
+</html></pre>
+
+   <p>In this case the <code title=rel-license><a href=#link-type-license>license</a></code>
+   applies to just the photo (the main content of the document), not
+   the whole document. In particular not the design of the page
+   itself, which is covered by the copyright given at the bottom of
+   the document. This could be made clearer in the styling
+   (e.g. making the license link prominently positioned near the
+   photograph, while having the page copyright in light small text at
+   the foot of the page.</p>
+
+  </div>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">copyright</code>" like
+  the <code title=rel-license><a href=#link-type-license>license</a></code> keyword.</p>
+
+  </div>
+
+
+  <h5 id=link-type-nofollow><span class=secno>6.12.3.9 </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>
+
+  <p>The <code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code> keyword indicates
+  that the link is not endorsed by the original author or publisher of
+  the page, or that the link to the referenced document was included
+  primarily because of a commercial relationship between people
+  affiliated with the two pages.</p>
+
+
+  <h5 id=link-type-noreferrer><span class=secno>6.12.3.10 </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>
+
+  <p>It indicates that the no referrer information is to be leaked
+  when following the link.</p>
+
+  <div class=impl>
+
+  <p>If a user agent follows a link defined by an <code><a href=#the-a-element>a</a></code> or
+  <code><a href=#the-area-element>area</a></code> element that has the <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword, the user agent
+  must not include a <code title="">Referer</code> (sic) HTTP header
+  (<a href=#concept-http-equivalent-headers title=concept-http-equivalent-headers>or equivalent</a>
+  for other protocols) in the request.</p>
+
+  <p>This keyword also <a href=#noopener>causes the <code title=dom-opener>opener</code> attribute to remain null</a> if the
+  hyperlink creates a new <a href=#browsing-context>browsing context</a>.</p>
+
+  </div>
+
+  <!-- v2: Would be nice to apply this to other elements too,
+  e.g. letting <img> or CSS or <video> hide the referrer -->
+
+
+  <h5 id=link-type-pingback><span class=secno>6.12.3.11 </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>
+
+  <p>For the semantics of the <code title=rel-pingback><a href=#link-type-pingback>pingback</a></code> keyword, see the Pingback 1.0
+  specification. <a href=#refsPINGBACK>[PINGBACK]</a></p>
+
+
+  <h5 id=link-type-prefetch><span class=secno>6.12.3.12 </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>
+
+  <p>The <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword indicates
+  that preemptively fetching and caching the specified resource is
+  likely to be beneficial, as it is highly likely that the user will
+  require this resource.</p>
+
+  <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>6.12.3.13 </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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-search><a href=#link-type-search>search</a></code> keyword indicates that
+  the referenced document provides an interface specifically for
+  searching the document and its related resources.</p>
+
+  <p class=note>OpenSearch description documents can be used with
+  <code><a href=#the-link-element>link</a></code> elements and the <code title=rel-search><a href=#link-type-search>search</a></code> link type to enable user agents to
+  autodiscover search interfaces. <a href=#refsOPENSEARCH>[OPENSEARCH]</a></p>
+
+
+  <h5 id=link-type-stylesheet><span class=secno>6.12.3.14 </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
+  contributes to the <a href=#styling>styling processing model</a>.</p>
+
+  <p>The specified resource is a resource that describes how to
+  present the document. Exactly how the resource is to be processed
+  depends on the actual type of the resource.</p>
+
+  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
+  also specified on the <code><a href=#the-link-element>link</a></code> element, then <dfn id=the-link-is-an-alternative-stylesheet>the link
+  is an alternative stylesheet</dfn>; in this case, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute must be specified on the
+  <code><a href=#the-link-element>link</a></code> element, with a non-empty value.</p>
+
+  <p>The default type for resources given by the <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword is <code title="">text/css</code>.</p>
+
+  <div class=impl>
+
+  <p><strong>Quirk</strong>: If the document has been set to
+  <a href=#quirks-mode>quirks mode</a> and the <a href=#content-type title=Content-Type>Content-Type metadata</a> of the external
+  resource is not a supported style sheet type, the user agent must
+  instead assume it to be <code title="">text/css</code>.</p>
+
+  </div>
+
+
+  <h5 id=link-type-sidebar><span class=secno>6.12.3.15 </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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword indicates
+  that the referenced document, if retrieved, is intended to be shown
+  in a <a href=#secondary-browsing-context>secondary browsing context</a> (if possible), instead
+  of in the current <a href=#browsing-context>browsing context</a>.</p>
+
+  <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>6.12.3.16 </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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> keyword indicates that the
+  <em>tag</em> that the referenced document represents applies to the
+  current document.</p>
+
+  <p class=note>Since it indicates that the tag <em>applies to the
+  current document</em>, it would be inappropriate to use this keyword
+  in the markup of a <a href=#tag-cloud>tag cloud</a>, which lists
+  the popular tag across a set of pages.</p>
+
+
+  <h5 id=hierarchical-link-types><span class=secno>6.12.3.17 </span>Hierarchical link types</h5>
+
+  <p>Some documents form part of a hierarchical structure of
+  documents.</p>
+
+  <p>A hierarchical structure of documents is one where each document
+  can have various subdocuments. The document of which a document is a
+  subdocument is said to be the document's <em>parent</em>. A document
+  with no parent forms the top of the hierarchy.</p>
+
+  <p>A document may be part of multiple hierarchies.</p>
+
+
+  <h6 id=link-type-index><span class=secno>6.12.3.17.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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-index><a href=#link-type-index>index</a></code> keyword indicates that
+  the document is part of a hierarchical structure, and that the link
+  is leading to the document that is the top of the hierarchy. It
+  conveys more information when used with the <code title=rel-up><a href=#link-type-up>up</a></code> keyword (q.v.).</p>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keywords "<code title="">top</code>", "<code title="">contents</code>", and "<code title="">toc</code>" like the
+  <code title=rel-index><a href=#link-type-index>index</a></code> keyword.</p>
+
+  </div>
+
+
+  <h6 id=link-type-up><span class=secno>6.12.3.17.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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword indicates that the
+  document is part of a hierarchical structure, and that the link is
+  leading to a document that is an ancestor of the current
+  document.</p>
+
+  <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword may be repeated within
+  a <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute to indicate
+  the hierarchical distance from the current document to the
+  referenced document. If it occurs only once, then the link is
+  leading to the current document's parent; each additional occurrence
+  of the keyword represents one further level. If the <code title=rel-index><a href=#link-type-index>index</a></code> keyword is also present, then the
+  number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords is the depth of
+  the current page relative to the top of the hierarchy. Only one link
+  is created for the set of one or more <code title=rel-up><a href=#link-type-up>up</a></code>
+  keywords and, if present, the <code title=rel-index><a href=#link-type-index>index</a></code>
+  keyword.</p>
+
+  <p>If the page is part of multiple hierarchies, then they should be
+  described in different <a href=#paragraph title=paragraph>paragraphs</a>. <span class=impl>User agents
+  must scope any interpretation of the <code title=rel-up><a href=#link-type-up>up</a></code>
+  and <code title=rel-index><a href=#link-type-index>index</a></code> keywords together
+  indicating the depth of the hierarchy to the <a href=#paragraph>paragraph</a>
+  in which the link finds itself, if any, or to the document
+  otherwise.</span></p>
+
+  <div class=impl>
+
+  <p>When two links have both the <code title=rel-up><a href=#link-type-up>up</a></code> and
+  <code title=rel-index><a href=#link-type-index>index</a></code> keywords specified together in
+  the same scope and contradict each other by having a different
+  number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords, the link with the
+  greater number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords must be
+  taken as giving the depth of the document.</p>
+
+  </div>
+
+  <div class=example>
+
+   <p>This can be used to mark up a navigation style sometimes known
+   as bread crumbs. In the following example, the current page can be
+   reached via two paths.</p>
+
+   <pre><nav>
+ <p>
+  <a href="/" rel="index up up up">Main</a> >
+  <a href="/products/" rel="up up">Products</a> >
+  <a href="/products/dishwashers/" rel="up">Dishwashers</a> >
+  <a>Second hand</a>
+ </p>
+ <p>
+  <a href="/" rel="index up up">Main</a> >
+  <a href="/second-hand/" rel="up">Second hand</a> >
+  <a>Dishwashers</a>
+ </p>
+</nav></pre>
+
+  </div>
+
+  <p class=note>The <code title=dom-a-relList><a href=#dom-a-rellist>relList</a></code> IDL
+  attribute (e.g. on the <code><a href=#the-a-element>a</a></code> element) does not currently
+  represent multiple <code title=rel-up><a href=#link-type-up>up</a></code> keywords (the
+  interface hides duplicates).</p>
+
+
+  <h5 id=sequential-link-types><span class=secno>6.12.3.18 </span>Sequential link types</h5>
+
+  <p>Some documents form part of a sequence of documents.</p>
+
+  <p>A sequence of documents is one where each document can have a
+  <em>previous sibling</em> and a <em>next sibling</em>. A document
+  with no previous sibling is the start of its sequence, a document
+  with no next sibling is the end of its sequence.</p>
+
+  <p>A document may be part of multiple sequences.</p>
+
+
+  <h6 id=link-type-first><span class=secno>6.12.3.18.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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-first><a href=#link-type-first>first</a></code> keyword indicates that
+  the document is part of a sequence, and that the link is leading to
+  the document that is the first logical document in the sequence.</p>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keywords "<code title="">begin</code>" and
+  "<code title="">start</code>" like the <code title=rel-first><a href=#link-type-first>first</a></code> keyword.</p>
+
+  </div>
+
+
+  <h6 id=link-type-last><span class=secno>6.12.3.18.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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-last><a href=#link-type-last>last</a></code> keyword indicates that the
+  document is part of a sequence, and that the link is leading to the
+  document that is the last logical document in the sequence.</p>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">end</code>" like the
+  <code title=rel-last><a href=#link-type-last>last</a></code> keyword.</p>
+
+  </div>
+
+
+  <h6 id=link-type-next><span class=secno>6.12.3.18.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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-next><a href=#link-type-next>next</a></code> keyword indicates that the
+  document is part of a sequence, and that the link is leading to the
+  document that is the next logical document in the sequence.</p>
+
+
+  <h6 id=link-type-prev><span class=secno>6.12.3.18.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>
+  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
+
+  <p>The <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword indicates that the
+  document is part of a sequence, and that the link is leading to the
+  document that is the previous logical document in the sequence.</p>
+
+  <div class=impl>
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">previous</code>" like
+  the <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword.</p>
+
+  </div>
+
+
+  <h5 id=other-link-types><span class=secno>6.12.3.19 </span>Other link types</h5>
+
+  <p><dfn id=concept-rel-extensions title=concept-rel-extensions>Extensions to the predefined
+  set of link types</dfn> may be registered in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
+  RelExtensions page</a>. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
+
+  <p>Anyone is free to edit the WHATWG Wiki RelExtensions page at any
+  time to add a type. Extension types must be specified with the
+  following information:</p>
+
+  <dl><dt>Keyword</dt>
+
+   <dd><p>The actual value being defined. The value should not be
+   confusingly similar to any other defined value (e.g. differing only
+   in case).</dd>
+
+
+   <dt>Effect on... <code><a href=#the-link-element>link</a></code></dt>
+
+   <dd>
+
+    <p>One of the following:</p>
+
+    <dl><dt>not allowed</dt>
+
+     <dd>The keyword is not allowed to be specified on
+     <code><a href=#the-link-element>link</a></code> elements.</dd>
+
+     <dt>Hyperlink</dt>
+
+     <dd>The keyword may be specified on a <code><a href=#the-link-element>link</a></code> element;
+     it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink
+     link</a>.</dd>
+
+     <dt>External Resource</dt>
+
+     <dd>The keyword may be specified on a <code><a href=#the-link-element>link</a></code> element;
+     it creates a <a href=#external-resource-link title="external resource link">external
+     resource link</a>.</dd>
+
+    </dl></dd>
+
+
+   <dt>Effect on... <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code></dt>
+
+   <dd>
+
+    <p>One of the following:</p>
+
+    <dl><dt>not allowed</dt>
+
+     <dd>The keyword is not allowed to be specified on <code><a href=#the-a-element>a</a></code>
+     and <code><a href=#the-area-element>area</a></code> elements.</dd>
+
+     <dt>Hyperlink</dt>
+
+     <dd>The keyword may be specified on <code><a href=#the-a-element>a</a></code> and
+     <code><a href=#the-area-element>area</a></code> elements.</dd>
+
+    </dl></dd>
+
+
+   <dt>Brief description</dt>
+
+   <dd><p>A short non-normative description of what the keyword's
+   meaning is.</dd>
+
+
+   <dt>Specification</dt>
+
+   <dd><p>A link to a more detailed description of the keyword's
+   semantics and requirements. It could be another page on the Wiki,
+   or a link to an external page.</dd>
+
+
+   <dt>Synonyms</dt>
+
+   <dd><p>A list of other keyword values that have exactly the same
+   processing requirements. Authors should not use the values defined
+   to be synonyms, they are only intended to allow user agents to
+   support legacy content. Anyone may remove synonyms that are not
+   used in practice; only names that need to be processed as synonyms
+   for compatibility with legacy content are to be registered in this
+   way.</dd>
+
+
+   <dt>Status</dt>
+
+   <dd>
+
+    <p>One of the following:</p>
+
+    <dl><dt>Proposed</dt>
+
+     <dd>The keyword has not received wide peer review and
+     approval. Someone has proposed it and is, or soon will be, using
+     it.</dd>
+
+     <dt>Ratified</dt>
+
+     <dd>The keyword has received wide peer review and approval. It
+     has a specification that unambiguously defines how to handle
+     pages that use the keyword, including when they use it in
+     incorrect ways.</dd>
+
+     <dt>Discontinued</dt>
+
+     <dd>The keyword has received wide peer review and it has been
+     found wanting. Existing pages are using this keyword, but new
+     pages should avoid it. The "brief description" and
+     "specification" entries will give details of what authors should
+     use instead, if anything.</dd>
+
+    </dl><p>If a keyword is found to be redundant with existing values, it
+    should be removed and listed as a synonym for the existing
+    value.</p>
+
+    <p>If a keyword is registered in the "proposed" state for a
+    period of a month or more without being used or specified, then it
+    may be removed from the registry.</p>
+
+    <p>If a keyword is added with the "proposed" status and found to
+    be redundant with existing values, it should be removed and listed
+    as a synonym for the existing value. If a keyword is added with
+    the "proposed" status and found to be harmful, then it should be
+    changed to "discontinued" status.</p>
+
+    <p>Anyone can change the status at any time, but should only do so
+    in accordance with the definitions above.</p>
+
+   </dd>
+
+  </dl><div class=impl>
+
+  <p>Conformance checkers must use the information given on the WHATWG
+  Wiki RelExtensions page to establish if a value is allowed or not:
+  values defined in this specification or marked as "proposed" or
+  "ratified" must be accepted when used on the elements for which they
+  apply as described in the "Effect on..." field, whereas values
+  marked as "discontinued" or not listed in either this specification
+  or on the aforementioned page must be rejected as invalid.
+  Conformance checkers may cache this information (e.g. for
+  performance reasons or to avoid the use of unreliable network
+  connectivity).</p>
+
+  <p>When an author uses a new type not defined by either this
+  specification or the Wiki page, conformance checkers should offer to
+  add the value to the Wiki, with the details described above, with
+  the "proposed" status.</p>
+
+  </div>
+
+  <p>Types defined as extensions in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
+  RelExtensions page</a> with the status "proposed" or "ratified" may
+  be used with the <code title="">rel</code> attribute on
+  <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> elements in
+  accordance to the "Effect on..." field. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
+
+
+
+
+  <h2 id=structured-client-side-storage-apis><span class=secno>7 </span>Structured client-side storage APIs</h2>
+
+  <h3 id=web-storage><span class=secno>7.1 </span>Web Storage</h3>
+
+
+
+  <h4 id=introduction-4><span class=secno>7.1.1 </span>Introduction</h4>
+
   <p><i>This section is non-normative.</i></p>
 
   <p>This specification introduces two related mechanisms, similar to
@@ -56100,9 +57434,9 @@
 
 
 
-  <h4 id=storage><span class=secno>6.12.2 </span>The API</h4>
+  <h4 id=storage><span class=secno>7.1.2 </span>The API</h4>
 
-  <h5 id=the-storage-interface><span class=secno>6.12.2.1 </span>The <code><a href=#storage-0>Storage</a></code> interface</h5>
+  <h5 id=the-storage-interface><span class=secno>7.1.2.1 </span>The <code><a href=#storage-0>Storage</a></code> interface</h5>
 
   <pre class=idl>interface <dfn id=storage-0>Storage</dfn> {
   readonly attribute unsigned long <a href=#dom-storage-length title=dom-Storage-length>length</a>;
@@ -56224,7 +57558,7 @@
   underlying list of key/value pairs see is required.</p>
 
 
-  <h5 id=the-sessionstorage-attribute><span class=secno>6.12.2.2 </span>The <code title=dom-sessionStorage><a href=#dom-sessionstorage>sessionStorage</a></code> attribute</h5>
+  <h5 id=the-sessionstorage-attribute><span class=secno>7.1.2.2 </span>The <code title=dom-sessionStorage><a href=#dom-sessionstorage>sessionStorage</a></code> attribute</h5>
 
   <pre class=idl>[Supplemental, NoInterfaceObject]
 interface <span>WindowSessionStorage</span> {
@@ -56290,7 +57624,7 @@
   storage area, other than <var title="">x</var>, a <code title=event-storage><a href=#event-storage>storage</a></code> event must be fired, as <a href=#event-storage title=event-storage>described below</a>.</p>
 
 
-  <h5 id=the-localstorage-attribute><span class=secno>6.12.2.3 </span>The <code title=dom-localStorage><a href=#dom-localstorage>localStorage</a></code> attribute</h5>
+  <h5 id=the-localstorage-attribute><span class=secno>7.1.2.3 </span>The <code title=dom-localStorage><a href=#dom-localstorage>localStorage</a></code> attribute</h5>
 
   <pre class=idl>[Supplemental, NoInterfaceObject]
 interface <span>WindowLocalStorage</span> {
@@ -56347,7 +57681,7 @@
 
 
 
-  <h5 id=the-storage-event><span class=secno>6.12.2.4 </span>The <code title=event-storage><a href=#event-storage>storage</a></code> event</h5>
+  <h5 id=the-storage-event><span class=secno>7.1.2.4 </span>The <code title=event-storage><a href=#event-storage>storage</a></code> event</h5>
 
   <p>The <dfn id=event-storage title=event-storage><code>storage</code></dfn> event
   is fired when a storage area changes, as described in the previous
@@ -56395,7 +57729,7 @@
   local).</p>
 
 
-  <h6 id=event-definition-0><span class=secno>6.12.2.4.1 </span>Event definition</h6>
+  <h6 id=event-definition-0><span class=secno>7.1.2.4.1 </span>Event definition</h6>
 
   <pre class=idl>interface <dfn id=storageevent>StorageEvent</dfn> : Event {
   readonly attribute DOMString <a href=#dom-storageevent-key title=dom-StorageEvent-key>key</a>;
@@ -56436,7 +57770,7 @@
 
 
 
-  <h5 id=threads><span class=secno>6.12.2.5 </span>Threads</h5>
+  <h5 id=threads><span class=secno>7.1.2.5 </span>Threads</h5>
 
   <p>Because of <a href=#localStorageMutex>the use</a> of the
   <a href=#storage-mutex>storage mutex</a>, multiple browsing contexts will be able
@@ -56450,6 +57784,9 @@
   itself.</p>
 
   
+
+  <h3 id=web-database><span class=secno>7.2 </span>Web Database</h3>
+
   
 
   <!-- Feature requests for future versions (v2):
@@ -56458,7 +57795,7 @@
         * handling the database getting corrupted
   -->
 
-  <h4 id=introduction-5><span class=secno>6.12.3 </span>Introduction</h4>
+  <h4 id=introduction-5><span class=secno>7.2.1 </span>Introduction</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -56532,9 +57869,9 @@
 }</pre>
 
 
-  <h4 id=sql><span class=secno>6.12.4 </span>The API</h4>
+  <h4 id=sql><span class=secno>7.2.2 </span>The API</h4>
 
-  <h5 id=databases><span class=secno>6.12.4.1 </span>Databases</h5>
+  <h5 id=databases><span class=secno>7.2.2.1 </span>Databases</h5>
 
   <p>Each <i><a href=#origin>origin</a></i> has an associated set of databases. Each
   database has a name and a current version. There is no way to
@@ -56684,7 +58021,7 @@
   increase the quota every five megabytes.</p>
 
 
-  <h5 id=parsing-and-processing-sql-statements><span class=secno>6.12.4.2 </span>Parsing and processing SQL statements</h5>
+  <h5 id=parsing-and-processing-sql-statements><span class=secno>7.2.2.2 </span>Parsing and processing SQL statements</h5>
 
   <p>When the user agent is to <dfn id=preprocess-the-sql-statement title="preprocess the SQL
   statement">preprocess a SQL statement</dfn> <var title="">sqlStatement</var> with an array of arguments <var title="">arguments</var>, it must run the following steps:</p>
@@ -56766,7 +58103,7 @@
 
 
 
-  <h5 id=asynchronous-database-api><span class=secno>6.12.4.3 </span>Asynchronous database API</h5>
+  <h5 id=asynchronous-database-api><span class=secno>7.2.2.3 </span>Asynchronous database API</h5>
 
   <pre class=idl>interface <dfn id=database>Database</dfn> {
   void <a href=#dom-database-transaction title=dom-database-transaction>transaction</a>(in <a href=#sqltransactioncallback>SQLTransactionCallback</a> callback, in optional <a href=#sqltransactionerrorcallback>SQLTransactionErrorCallback</a> errorCallback, in optional <a href=#sqlvoidcallback>SQLVoidCallback</a> successCallback);
@@ -56840,7 +58177,7 @@
   treated as if they were null.</p>
 
 
-  <h6 id=executing-sql-statements><span class=secno>6.12.4.3.1 </span>Executing SQL statements</h6>
+  <h6 id=executing-sql-statements><span class=secno>7.2.2.3.1 </span>Executing SQL statements</h6>
 
   <p>The <code title=dom-database-transaction><a href=#dom-database-transaction>transaction()</a></code>,
   <code title=dom-database-readTransaction><a href=#dom-database-readtransaction>readTransaction()</a></code>,
@@ -56896,7 +58233,7 @@
    statement's result set callback and the fourth argument (if any) as
    the error callback.</li>
 
-  </ol><h6 id=processing-model-3><span class=secno>6.12.4.3.2 </span>Processing model</h6>
+  </ol><h6 id=processing-model-3><span class=secno>7.2.2.3.2 </span>Processing model</h6>
 
   <p>The <dfn id=transaction-steps>transaction steps</dfn> are as follows. These steps must
   be run asynchronously. These steps are invoked with a <i>transaction
@@ -57013,7 +58350,7 @@
 
 
 
-  <h5 id=synchronous-database-api><span class=secno>6.12.4.4 </span>Synchronous database API</h5>
+  <h5 id=synchronous-database-api><span class=secno>7.2.2.4 </span>Synchronous database API</h5>
 
   <pre class=idl>interface <dfn id=databasesync>DatabaseSync</dfn> {
   void <a href=#dom-database-sync-transaction title=dom-database-sync-transaction>transaction</a>(in <a href=#sqltransactionsynccallback>SQLTransactionSyncCallback</a> callback);
@@ -57126,7 +58463,7 @@
    <li><p>Return the newly created <code><a href=#sqltransactionsync>SQLTransactionSync</a></code>
    object.</li>
 
-  </ol><h6 id=executing-sql-statements-0><span class=secno>6.12.4.4.1 </span>Executing SQL statements</h6>
+  </ol><h6 id=executing-sql-statements-0><span class=secno>7.2.2.4.1 </span>Executing SQL statements</h6>
 
   <p>The <code title=dom-database-sync-transaction><a href=#dom-database-sync-transaction>transaction()</a></code>, <code title=dom-database-sync-readTransaction><a href=#dom-database-sync-readtransaction>readTransaction()</a></code>,
   and <code title=dom-database-sync-changeVersion><a href=#dom-database-sync-changeversion>changeVersion()</a></code>
@@ -57174,7 +58511,7 @@
    <li><p>Return the newly created <code><a href=#sqlresultset>SQLResultSet</a></code>
    object.</li>
 
-  </ol><h5 id=database-query-results><span class=secno>6.12.4.5 </span>Database query results</h5>
+  </ol><h5 id=database-query-results><span class=secno>7.2.2.5 </span>Database query results</h5>
 
   <p>The <code title=dom-sqltransaction-executeSql><a href=#dom-sqltransaction-executesql>executeSql()</a></code>
   method invokes its callback with a <code><a href=#sqlresultset>SQLResultSet</a></code> object
@@ -57244,7 +58581,7 @@
   by the database.</p>
 
 
-  <h5 id=errors-and-exceptions><span class=secno>6.12.4.6 </span>Errors and exceptions</h5>
+  <h5 id=errors-and-exceptions><span class=secno>7.2.2.6 </span>Errors and exceptions</h5>
 
   <p>Errors in the asynchronous database API are reported using
   callbacks that have a <code><a href=#sqlerror>SQLError</a></code> object as one of their
@@ -57355,14 +58692,18 @@
      <td>A lock for the transaction could not be obtained in a
      reasonable time.
 
-  </table><h4 id=web-sql><span class=secno>6.12.5 </span>Web SQL</h4>
+  </table><h4 id=web-sql><span class=secno>7.2.3 </span>Web SQL</h4>
 
   <p class=XXX>Need to define the SQL dialect.</p>
 
+  
 
+  <h3 id=common-concerns><span class=secno>7.3 </span>Common concerns</h3>
+
   
+  
 
-  <h4 id=disk-space><span class=secno>6.12.6 </span>Disk space</h4>
+  <h4 id=disk-space><span class=secno>7.3.1 </span>Disk space</h4>
 
   <p>User agents should limit the total amount of space allowed for
   these storage features.
@@ -57395,9 +58736,9 @@
   future.</p>
 
 
-  <h4 id=privacy><span class=secno>6.12.7 </span>Privacy</h4>
+  <h4 id=privacy><span class=secno>7.3.2 </span>Privacy</h4>
 
-  <h5 id=user-tracking><span class=secno>6.12.7.1 </span>User tracking</h5>
+  <h5 id=user-tracking><span class=secno>7.3.2.1 </span>User tracking</h5>
 
   <p>A third-party advertiser (or any entity capable of getting
   content distributed to multiple sites) could use a unique identifier
@@ -57553,7 +58894,7 @@
   separate sessions into coherent user profiles.</p>
 
 
-  <h5 id=sensitivity-of-data><span class=secno>6.12.7.2 </span>Sensitivity of data</h5>
+  <h5 id=sensitivity-of-data><span class=secno>7.3.2.2 </span>Sensitivity of data</h5>
 
   <p>User agents should treat persistently stored data as potentially
   sensitive; it's quite possible for e-mails, calendar appointments,
@@ -57564,9 +58905,9 @@
   it is promptly deleted from the underlying storage.</p>
 
 
-  <h4 id=security-4><span class=secno>6.12.8 </span>Security</h4>
+  <h4 id=security-4><span class=secno>7.3.3 </span>Security</h4>
 
-  <h5 id=dns-spoofing-attacks><span class=secno>6.12.8.1 </span>DNS spoofing attacks</h5>
+  <h5 id=dns-spoofing-attacks><span class=secno>7.3.3.1 </span>DNS spoofing attacks</h5>
 
   <p>Because of the potential for DNS spoofing attacks, one cannot
   guarantee that a host claiming to be in a certain domain really is
@@ -57579,7 +58920,7 @@
   </p>
 
 
-  <h5 id=cross-directory-attacks><span class=secno>6.12.8.2 </span>Cross-directory attacks</h5>
+  <h5 id=cross-directory-attacks><span class=secno>7.3.3.2 </span>Cross-directory attacks</h5>
 
   <p>Different authors sharing one host name, for example users
   hosting content on <code>geocities.com</code>, all share one
@@ -57597,7 +58938,7 @@
   path.</p>
 
 
-  <h5 id=implementation-risks><span class=secno>6.12.8.3 </span>Implementation risks</h5>
+  <h5 id=implementation-risks><span class=secno>7.3.3.3 </span>Implementation risks</h5>
 
   <p>The two primary risks when implementing these persistent storage
   features are letting hostile sites read information from other
@@ -57624,7 +58965,7 @@
 
   
 
-  <h5 id=sql-and-user-agents><span class=secno>6.12.8.4 </span>SQL and user agents</h5>
+  <h5 id=sql-and-user-agents><span class=secno>7.3.3.4 </span>SQL and user agents</h5>
 
   <p>User agent implementors are strongly encouraged to audit all
   their supported SQL statements for security implications. For
@@ -57638,7 +58979,7 @@
   JavaScript is implicitly UTF-16.</p>
 
 
-  <h5 id=sql-injection><span class=secno>6.12.8.5 </span>SQL injection</h5>
+  <h5 id=sql-injection><span class=secno>7.3.3.5 </span>SQL injection</h5>
 
   <p>Authors are strongly recommended to make use of the <code title="">?</code> placeholder feature of the <code title=dom-sqltransaction-executeSql><a href=#dom-sqltransaction-executesql>executeSql()</a></code> method,
   and to never construct SQL statements on the fly.</p>
@@ -57649,1338 +58990,15 @@
   
 
 
-  <h3 id=links><span class=secno>6.13 </span>Links</h3>
+  <h2 id=editing><span class=secno>8 </span><dfn>User Interaction</dfn></h2>
 
-
-  <h4 id=hyperlink-elements><span class=secno>6.13.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
-  those elements, represent <dfn id=hyperlink title=hyperlink>hyperlinks</dfn>.</p>
-
-  <p>The <dfn id=attr-hyperlink-href title=attr-hyperlink-href><code>href</code></dfn>
-  attribute on a hyperlink element must have a value that is a
-  <a href=#valid-url>valid URL</a>. This URL is the <em>destination
-  resource</em> of the hyperlink.</p>
-
-  <div class=note>
-
-   <p>The <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute on
-   <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements is not required; when
-   those elements do not have <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attributes they do not
-   represent hyperlinks.</p>
-
-   <p>The <code title=attr-link-href><a href=#attr-link-href>href</a></code> attribute on the
-   <code><a href=#the-link-element>link</a></code> element <em>is</em> required, but whether a
-   <code><a href=#the-link-element>link</a></code> element represents a hyperlink or not depends on
-   the value of the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute
-   of that element.</p>
-
-  </div>
-
-  <p>The <dfn id=attr-hyperlink-target title=attr-hyperlink-target><code>target</code></dfn>
-  attribute, if present, must be a <a href=#valid-browsing-context-name-or-keyword>valid browsing context name
-  or keyword</a>. It gives the name of the <a href=#browsing-context>browsing
-  context</a> that will be used. <span class=impl>User agents use
-  this name when <a href=#following-hyperlinks>following hyperlinks</a>.</span></p>
-
-  <p>The <dfn id=ping title=attr-hyperlink-ping><code>ping</code></dfn> attribute, if
-  present, gives the URLs of the resources that are interested in
-  being notified if the user follows the hyperlink. The value must be
-  a space separated list of one or more <span>valid URLs</span>. <span class=impl>The value is used by the user agent for <a href=#hyperlink-auditing>hyperlink
-  auditing</a>.</span></p>
-
-  <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements that represent
-  hyperlinks, the relationship between the document containing the
-  hyperlink and the destination resource indicated by the hyperlink is
-  given by the value of the element's <dfn id=attr-hyperlink-rel title=attr-hyperlink-rel><code>rel</code></dfn> attribute, which
-  must be a <a href=#set-of-space-separated-tokens>set of space-separated tokens</a>. The <a href=#linkTypes>allowed values and their meanings</a> are defined
-  below. The <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute has
-  no default value. If the attribute is omitted or if none of the
-  values in the attribute are recognized by the user agent, then the
-  document has no particular relationship with the destination
-  resource other than there being a hyperlink between the two.</p>
-
-  <p>The <dfn id=attr-hyperlink-media title=attr-hyperlink-media><code>media</code></dfn>
-  attribute describes for which media the target document was
-  designed. It is purely advisory. The value must be a <a href=#valid-media-query>valid
-  media query</a>. The default, if the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code> attribute is omitted, is
-  "<code title="">all</code>".</p>
-
-  <p>The <dfn id=attr-hyperlink-hreflang title=attr-hyperlink-hreflang><code>hreflang</code></dfn>
-  attribute on hyperlink elements, if present, gives the language of
-  the linked resource. It is purely advisory. The value must be a
-  valid BCP 47 language code. <a href=#refsBCP47>[BCP47]</a>
-  <span class=impl>User agents must not consider this attribute
-  authoritative — upon fetching the resource, user agents must
-  use only language information associated with the resource to
-  determine its language, not metadata included in the link to the
-  resource.</span></p>
-
-  <p>The <dfn id=attr-hyperlink-type title=attr-hyperlink-type><code>type</code></dfn>
-  attribute, if present, gives the <a href=#mime-type>MIME type</a> of the linked
-  resource. It is purely advisory. The value must be a <a href=#valid-mime-type>valid
-  MIME type</a>, optionally with parameters. <span class=impl>User agents must not consider the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attribute authoritative
-  — upon fetching the resource, user agents must not use
-  metadata included in the link to the resource to determine its
-  type.</span></p>
-
-
-  <div class=impl>
-
-  <h4 id=following-hyperlinks><span class=secno>6.13.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>
-  given by the <code title=attr-hyperlink-href><a href=#attr-hyperlink-href>href</a></code> attribute
-  of that hyperlink, relative to the hyperlink element, and if that is
-  successful, must <a href=#navigate>navigate</a> a <a href=#browsing-context>browsing
-  context</a> to the resulting <a href=#absolute-url>absolute URL</a>. In the
-  case of server-side image maps, the URL of the hyperlink must
-  further have its <var><a href=#hyperlink-suffix>hyperlink suffix</a></var> appended to it.</p>
-
-  <p>If <a href=#resolve-a-url title="resolve a url">resolving</a> the
-  <a href=#url>URL</a> fails, the user agent may report the error to the
-  user in a user-agent-specific manner, may navigate to an error page
-  to report the error, or may ignore the error and do nothing.</p>
-
-  <p>If the user indicated a specific <a href=#browsing-context>browsing context</a>
-  when following the hyperlink, or if the user agent is configured to
-  follow hyperlinks by navigating a particular browsing context, then
-  that must be the <a href=#browsing-context>browsing context</a> that is
-  navigated.</p>
-
-  <p>Otherwise, if the hyperlink element is an <code><a href=#the-a-element>a</a></code> or
-  <code><a href=#the-area-element>area</a></code> element that has a <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute, then the
-  <a href=#browsing-context>browsing context</a> that is navigated must be chosen by
-  applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules for choosing a browsing context given a
-  browsing context name</a>, using the value of the <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute as the
-  browsing context name. If these rules result in the creation of a
-  new <a href=#browsing-context>browsing context</a>, it must be navigated with
-  <a href=#replacement-enabled>replacement enabled</a>.</p>
-
-  <p>Otherwise, if the hyperlink element is a <a href=#rel-sidebar-hyperlink title=rel-sidebar-hyperlink>sidebar hyperlink</a> and the user
-  agent implements a feature that can be considered a secondary
-  browsing context, such a secondary browsing context may be selected
-  as the browsing context to be navigated.</p>
-
-  <p>Otherwise, if the hyperlink element is an <code><a href=#the-a-element>a</a></code> or
-  <code><a href=#the-area-element>area</a></code> element with no <code title=attr-hyperlink-target><a href=#attr-hyperlink-target>target</a></code> attribute, but one of
-  the child nodes of <a href=#the-head-element>the <code>head</code> element</a> is a
-  <code><a href=#the-base-element>base</a></code> element with a <code title=attr-base-target><a href=#attr-base-target>target</a></code> attribute, then the browsing
-  context that is navigated must be chosen by applying <a href=#the-rules-for-choosing-a-browsing-context-given-a-browsing-context-name>the rules
-  for choosing a browsing context given a browsing context name</a>,
-  using the value of the <code title=attr-base-target><a href=#attr-base-target>target</a></code>
-  attribute of the first such <code><a href=#the-base-element>base</a></code> element as the
-  browsing context name. If these rules result in the creation of a
-  new <a href=#browsing-context>browsing context</a>, it must be navigated with
-  <a href=#replacement-enabled>replacement enabled</a>.</p>
-
-  <p>Otherwise, the browsing context that must be navigated is the
-  same browsing context as the one which the hyperlink element itself
-  is in.</p>
-
-  <p>The navigation must be done with the <a href=#browsing-context>browsing
-  context</a> that contains the <code>Document</code> object with
-  which the hyperlink's element in question is associated as the
-  <a href=#source-browsing-context>source browsing context</a>.</p>
-
-
-  <h5 id=hyperlink-auditing><span class=secno>6.13.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
-  user follows the hyperlink, and the hyperlink's <a href=#url>URL</a> can
-  be <a href=#resolve-a-url title="resolve a url">resolved</a>, relative to the
-  hyperlink element, without failure, then the user agent must take
-  the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute's value,
-  <a href=#split-a-string-on-spaces title="split a string on spaces">split that string on
-  spaces</a>, <a href=#resolve-a-url title="resolve a url">resolve</a> each
-  resulting token relative to the hyperlink element, and then should
-  send a request (as described below) to each of the resulting <a href=#absolute-url title="absolute URL">absolute URLs</a>. (Tokens that fail to
-  resolve are ignored.) This may be done in parallel with the primary
-  request, and is independent of the result of that request.</p>
-
-  <p>User agents should allow the user to adjust this behavior, for
-  example in conjunction with a setting that disables the sending of
-  HTTP <code title=http-referer>Referer</code> (sic) headers. Based
-  on the user's preferences, UAs may either <a href=#ignore>ignore</a> the
-  <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute altogether,
-  or selectively ignore URLs in the list (e.g. ignoring any
-  third-party URLs).</p>
-
-  <p>For URLs that are HTTP URLs, the requests must be performed by
-  <a href=#fetch title=fetch>fetching</a> the specified URLs using the
-  POST method, with an entity body with the <a href=#mime-type>MIME type</a>
-  <code><a href=#text/ping>text/ping</a></code> consisting of the four-character string
-  "<code title="">PING</code>", from the <a href=#origin>origin</a> of the
-  <code>Document</code> containing the <a href=#hyperlink>hyperlink</a>. <!--
-  not http-origin privacy sensitive --> All relevant cookie and HTTP
-  authentication headers must be included in the request. Which other
-  headers are required depends on the URLs involved.</p>
-
-  <dl class=switch><dt>If both the <a href="#the-document's-address" title="the document's address">address</a>
-   of the <code>Document</code> object containing the hyperlink being
-   audited and the ping URL have the <a href=#same-origin>same origin</a></dt>
-
-   <dd>The request must include a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header with, as its
-   value, the <a href="#the-document's-address" title="the document's address">address</a> of
-   the document containing the hyperlink, and a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header with, as its value,
-   the address of the <a href=#absolute-url>absolute URL</a> of the target of the
-   hyperlink. The request must not include a <code title=http-referer>Referer</code> (sic) HTTP header. <!-- because
-   otherwise it would look like a trustable same-origin POST --></dd>
-
-   <dt>Otherwise, if the origins are different, but the document
-   containing the hyperlink being audited was not retrieved over an
-   encrypted connection</dt>
-
-   <dd>The request must include a <code title="">Referer</code> (sic)
-   HTTP header [sic] with, as its value, the <a href="#the-document's-current-address" title="the
-   document's current address">current address</a> of the document
-   containing the hyperlink, a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP header with the same
-   value, and a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header
-   with, as its value, the address of the target of the
-   hyperlink.</dd>
-
-   <dt>Otherwise, the origins are different and the document
-   containing the hyperlink being audited was retrieved over an
-   encrypted connection</dt>
-
-   <dd>The request must include a <code title=http-ping-to><a href=#ping-to>Ping-To</a></code> HTTP header with, as its value,
-   the address of the target of the hyperlink. The request must
-   neither include a <code title="">Referer</code> (sic) HTTP header
-   nor include a <code title=http-ping-from><a href=#ping-from>Ping-From</a></code> HTTP
-   header.</dd>
-
-  </dl><p class=note>To save bandwidth, implementors might also wish to
-  consider omitting optional headers such as <code>Accept</code> from
-  these requests.</p>
-
-  <p>User agents must, unless otherwise specified by the user, honor
-  the HTTP headers (including, in particular, redirects and HTTP
-  cookie headers), but must ignore any entity bodies returned in the
-  responses. User agents may close the connection prematurely once
-  they start receiving an entity body. <a href=#refsCOOKIES>[COOKIES]</a></p>
-
-  <p>For URLs that are not HTTP URLs, the requests must be performed
-  by <a href=#fetch title=fetch>fetching</a> the specified URL normally,
-  and discarding the results.</p>
-
-  <p>When the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute is
-  present, user agents should clearly indicate to the user that
-  following the hyperlink will also cause secondary requests to be
-  sent in the background, possibly including listing the actual target
-  URLs.</p>
-
-  <p class=example>For example, a visual user agent could include
-  the hostnames of the target ping URLs along with the hyperlink's
-  actual URL in a status bar or tooltip.</p>
-
-  </div>
-
-  <div class=note>
-
-   <p>The <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute is redundant
-   with pre-existing technologies like HTTP redirects and JavaScript
-   in allowing Web pages to track which off-site links are most
-   popular or allowing advertisers to track click-through rates.</p>
-
-   <p>However, the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute
-   provides these advantages to the user over those alternatives:</p>
-
-   <ul><li>It allows the user to see the final target URL
-    unobscured.</li>
-
-    <li>It allows the UA to inform the user about the out-of-band
-    notifications.</li>
-
-    <li>It allows the user to disable the notifications without losing
-    the underlying link functionality.</li>
-
-    <li>It allows the UA to optimize the use of available network
-    bandwidth so that the target page loads faster.</li>
-
-   </ul><p>Thus, while it is possible to track users without this feature,
-   authors are encouraged to use the <code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute so that the user
-   agent can make the user experience more transparent.</p>
-
-  </div>
-
-  <!-- resolving ping urls happens at audit time, so base URL changes
-  affect the values of ping attributes -->
-
-
-
-  <h4 id=linkTypes><span class=secno>6.13.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
-  definitions for the link types are given in the next few
-  sections.</p>
-
-  <p>In this section, the term <i>referenced document</i> refers to
-  the resource identified by the element representing the link, and
-  the term <i>current document</i> refers to the resource within
-  which the element representing the link finds itself.</p>
-
-  <div class=impl>
-
-  <p>To determine which link types apply to a <code><a href=#the-link-element>link</a></code>,
-  <code><a href=#the-a-element>a</a></code>, or <code><a href=#the-area-element>area</a></code> element, the element's <code title="">rel</code> attribute must be <a href=#split-a-string-on-spaces title="split a string on
-  spaces">split on spaces</a>. The resulting tokens are the link
-  types that apply to that element.</p>
-
-  </div>
-
-  <p>Except where otherwise specified, a keyword must not be specified
-  more than once per <code title=attr-rel-hyperlink>rel</code>
-  attribute.</p>
-
-  <p>The link types are <a href=#ascii-case-insensitive>ASCII case-insensitive</a>
-  values<span class=impl>, and must be compared as such</span>.</p>
-
-  <p class=example>Thus, <code title="">rel="next"</code> is the
-  same as <code title="">rel="NEXT"</code>.</p>
-
-  <table><thead><tr><th rowspan=2>Link type</th>
-     <th colspan=2>Effect on...</th>
-     <th rowspan=2>Brief description</th>
-    <tr><th><code><a href=#the-link-element>link</a></code></th>
-     <th><code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code></th>
-    <tbody><tr><td><code title=rel-alternate><a href=#link-type-alternate>alternate</a></code></td> <!-- second most used <link rel> value -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Gives alternate representations of the current document.</td>
-    <tr><td><code title=rel-archives><a href=#link-type-archives>archives</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Provides a link to a collection of records, documents, or other materials of historical interest.</td>
-    <tr><td><code title=rel-author><a href=#link-type-author>author</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Gives a link to the current document's author.</td>
-    <tr><td><code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code></td> <!-- fourth most used <a rel> value -->
-     <td><em>not allowed</em></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Gives the permalink for the nearest ancestor section.</td>
-    </tr><!-- (commented out on the assumption that rel=contact is really XFN)
-    <tr>
-     <td><code title="rel-contact">contact</code></td> <!- 8th most used <a rel> value ->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives a link to contact information for the current document.</td>
-    </tr>
---><tr><td><code title=rel-external><a href=#link-type-external>external</a></code></td> <!-- fifth and sixth most used <a rel> value (sixth is "external nofollow") -->
-     <td><em>not allowed</em></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the referenced document is not part of the same site as the current document.</td>
-    <tr><td><code title=rel-first><a href=#link-type-first>first</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the current document is a part of a series, and that the first document in the series is the referenced document.</td>
-    <tr><td><code title=rel-help><a href=#link-type-help>help</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Provides a link to context-sensitive help.</td>
-    <tr><td><code title=rel-icon><a href=#rel-icon>icon</a></code></td> <!-- link rel="shortcut icon" and its ilk are the fourth, sixth, and ninth most used values -->
-     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
-     <td><em>not allowed</em></td>
-     <td>Imports an icon to represent the current document.</td>
-    <tr><td><code title=rel-index><a href=#link-type-index>index</a></code></td> <!-- used more than "top" and "contents" on <link> (though on <a>, "contents" wins) -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Gives a link to the document that provides a table of contents or index listing the current document.</td>
-    <tr><td><code title=rel-last><a href=#link-type-last>last</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the current document is a part of a series, and that the last document in the series is the referenced document.</td>
-    <tr><td><code title=rel-license><a href=#link-type-license>license</a></code></td> <!-- seventh most used <a rel> value -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the main content of the current document is covered by the copyright license described by the referenced document.</td>
-    <tr><td><code title=rel-next><a href=#link-type-next>next</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the current document is a part of a series, and that the next document in the series is the referenced document.</td>
-    <tr><td><code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code></td> <!-- most used <a rel> value (and sixth most used is "external nofollow") -->
-     <td><em>not allowed</em></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the current document's original author or publisher does not endorse the referenced document.</td>
-    <tr><td><code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code></td>
-     <td><em>not allowed</em></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Requires that the user agent not send an HTTP <code title="">Referer</code> (sic) header if the user follows the hyperlink.</td>
-    <tr><td><code title=rel-pingback><a href=#link-type-pingback>pingback</a></code></td>
-     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
-     <td><em>not allowed</em></td>
-     <td>Gives the address of the pingback server that handles pingbacks to the current document.</td>
-    <tr><td><code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code></td>
-     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
-     <td><em>not allowed</em></td>
-     <td>Specifies that the target resource should be preemptively cached.</td>
-    <tr><td><code title=rel-prev><a href=#link-type-prev>prev</a></code></td> <!-- prev is used more than previous -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Indicates that the current document is a part of a series, and that the previous document in the series is the referenced document.</td>
-    <tr><td><code title=rel-search><a href=#link-type-search>search</a></code></td> <!-- used quite a bit -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Gives a link to a resource that can be used to search through the current document and its related pages.</td>
-    <tr><td><code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code></td> <!-- most commonly used <link rel> value, variants came in 7th, 8th, 12th, 17th... -->
-     <td><a href=#external-resource-link title="external resource link">External Resource</a></td>
-     <td><em>not allowed</em></td>
-     <td>Imports a stylesheet.</td>
-    <tr><td><code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code></td> <!-- used quite a bit -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Specifies that the referenced document, if retrieved, is intended to be shown in the browser's sidebar (if it has one).</td>
-    <tr><td><code title=rel-tag><a href=#link-type-tag>tag</a></code></td> <!-- second and third most used <a rel> value (third is technically "category tag"). -->
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Gives a tag (identified by the given address) that applies to the current document.</td>
-    <tr><td><code title=rel-up><a href=#link-type-up>up</a></code></td>
-     <td><a href=#hyperlink-link title="hyperlink link">Hyperlink</a></td>
-     <td><a href=#hyperlink>Hyperlink</a></td>
-     <td>Provides a link to a document giving the context for the current document.</td>
-    </table><div class=impl>
-
-  <p>Some of the types described below list synonyms for these
-  values. These <!--<span class="impl">-->are to be handled as
-  specified by user agents, but<!--</span>--> must not be used in
-  documents.</p>
-
-  </div>
-
-  <!-- v2 ideas:
-   * rel="script"
-   * rel="related" // see also
-   * http://microformats.org/wiki/rel-enclosure
-  -->
-
-
-  <h5 id=link-type-alternate><span class=secno>6.13.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, if the <code title=attr-link-rel><a href=#attr-link-rel>rel</a></code> attribute does not also contain the
-  keyword <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, it creates a
-  <a href=#hyperlink-link title="hyperlink link">hyperlink</a>; but if it
-  <em>does</em> also contain the keyword <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword instead modifies the
-  meaning of the <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>
-  keyword in the way described for that keyword, and the rest of this
-  subsection doesn't apply.</p>
-
-  <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword
-  indicates that the referenced document is an alternate
-  representation of the current document.</p>
-
-  <p>The nature of the referenced document is given by the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes.</p>
-
-  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
-  used with the <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>
-  attribute, it indicates that the referenced document is intended for
-  use with the media specified.</p>
-
-  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
-  used with the <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>
-  attribute, and that attribute's value differs from the <a href=#root-element>root
-  element</a>'s <a href=#language>language</a>, it indicates that the
-  referenced document is a translation.</p>
-
-  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
-  used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
-  attribute, it indicates that the referenced document is a
-  reformulation of the current document in the specified format.</p>
-
-  <p>The <code title=attr-hyperlink-media><a href=#attr-hyperlink-media>media</a></code>, <code title=attr-hyperlink-hreflang><a href=#attr-hyperlink-hreflang>hreflang</a></code>, and <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attributes can be combined
-  when specified with the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code>
-  keyword.</p>
-
-  <div class=example>
-
-   <p>For example, the following link is a French translation that
-   uses the PDF format:</p>
-
-   <pre><link rel=alternate type=application/pdf hreflang=fr href=manual-fr></pre>
-
-  </div>
-
-  <div class=impl>
-
-  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
-  used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code>
-  attribute set to the value <code title="">application/rss+xml</code>
-  or the value <code title="">application/atom+xml</code>, then it
-  indicates that the referenced document is a syndication feed (though
-  not necessarily syndicating exactly the same content as the current
-  page).</p>
-
-  <div class=impl>
-
-  <p>The first <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, or <code><a href=#the-area-element>area</a></code>
-  element in the document (in tree order) with the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword used with the <code title=attr-hyperlink-type><a href=#attr-hyperlink-type>type</a></code> attribute set to the value
-  <code title="">application/rss+xml</code> or the value <code title="">application/atom+xml</code> must be treated as the default
-  syndication feed for the purposes of feed autodiscovery.</p>
-
-  <div class=example>
-   <p>The following <code><a href=#the-link-element>link</a></code> element gives the syndication
-   feed for the current page:</p>
-   <pre><link rel="alternate" type="application/atom+xml" href="data.xml"></pre>
-   <p>The following extract offers various different syndication
-   feeds:</p>
-   <pre><p>You can access the planets database using Atom feeds:</p>
-<ul>
- <li><a href="recently-visited-planets.xml" rel="alternate" type="application/atom+xml">Recently Visited Planets</a></li>
- <li><a href="known-bad-planets.xml" rel="alternate" type="application/atom+xml">Known Bad Planets</a></li>
- <li><a href="unexplored-planets.xml" rel="alternate" type="application/atom+xml">Unexplored Planets</a></li>
-</ul></pre>
-  </div>
-
-  </div>
-
-
-
-
-  </div>
-
-  <p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> link
-  relationship is transitive — that is, if a document links to
-  two other documents with the link type "<code title=rel-alternate><a href=#link-type-alternate>alternate</a></code>", then, in addition to
-  implying that those documents are alternative representations of the
-  first document, it is also implying that those two documents are
-  alternative representations of each other.</p>
-
-
-  <h5 id=link-type-archives><span class=secno>6.13.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword indicates
-  that the referenced document describes a collection of records,
-  documents, or other materials of historical interest.</p>
-
-  <p class=example>A blog's index page could link to an index of the
-  blog's past posts with <code title="">rel="archives"</code>.</p>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">archive</code>" like the
-  <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword.</p>
-
-  </div>
-
-
-  <h5 id=link-type-author><span class=secno>6.13.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements, the <code title=rel-author><a href=#link-type-author>author</a></code> keyword indicates that the
-  referenced document provides further information about the author of
-  the nearest <code><a href=#the-article-element>article</a></code> element ancestor of the element
-  defining the hyperlink, if there is one, or of the page as a whole,
-  otherwise.</p>
-
-  <p>For <code><a href=#the-link-element>link</a></code> elements, the <code title=rel-author><a href=#link-type-author>author</a></code> keyword indicates that the
-  referenced document provides further information about the author
-  for the page as a whole.</p>
-
-  <p class=note>The "referenced document" can be, and often is, a
-  <code title="">mailto:</code> URL giving the e-mail address of the
-  author. <a href=#refsMAILTO>[MAILTO]</a></p>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat <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> elements that have a <code title="">rev</code>
-  attribute with the value "<code>made</code>" as having the <code title=rel-author><a href=#link-type-author>author</a></code> keyword specified as a link
-  relationship.</p>
-
-  </div>
-
-
-  <h5 id=link-type-bookmark><span class=secno>6.13.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>
-
-  <p>The <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code> keyword gives a
-  permalink for the nearest ancestor <code><a href=#the-article-element>article</a></code> element of
-  the linking element in question, or of <a href=#associatedSection>the section the linking element is most
-  closely associated with</a>, if there are no ancestor
-  <code><a href=#the-article-element>article</a></code> elements.</p>
-
-  <div class=example>
-   <p>The following snippet has three permalinks. A user agent could
-   determine which permalink applies to which part of the spec by
-   looking at where the permalinks are given.</p>
-   <pre> ...
- <body>
-  <h1>Example of permalinks</h1>
-  <div id="a">
-   <h2>First example</h2>
-   <p><a href="a.html" rel="bookmark">This</a> permalink applies to
-   only the content from the first H2 to the second H2. The DIV isn't
-   exactly that section, but it roughly corresponds to it.</p>
-  </div>
-  <h2>Second example</h2>
-  <article id="b">
-   <p><a href="b.html" rel="bookmark">This</a> permalink applies to
-   the outer ARTICLE element (which could be, e.g., a blog post).</p>
-   <article id="c">
-    <p><a href="c.html" rel="bookmark">This</a> permalink applies to
-    the inner ARTICLE element (which could be, e.g., a blog comment).</p>
-   </article>
-  </article>
- </body>
- ...</pre>
-  </div>
-
-<!-- (commented out on the assumption that rel=contact is really XFN)
-  <h5>Link type "<dfn title="rel-contact"><code>contact</code></dfn>"</h5>
-
-  <p>The <code title="rel-contact">contact</code> keyword may be used
-  with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>For <code>a</code> and <code>area</code> elements, the <code
-  title="rel-contact">contact</code> keyword indicates that the
-  referenced document provides further contact information for the
-  author of the nearest <code>article</code> element ancestor of the
-  element defining the hyperlink, if there is one, or of the page as a
-  whole, otherwise.</p>
-
-  <div class="impl">
-
-  <p>User agents must treat any hyperlink in an <code>address</code>
-  element as having the <code title="rel-contact">contact</code> link
-  type specified.</p>
-
-  </div>
-
-  <p>For <code>link</code> elements, the <code
-  title="rel-contact">contact</code> keyword indicates that the
-  referenced document provides further contact information for the
-  page as a whole.</p>
--->
-
-
-  <h5 id=link-type-external><span class=secno>6.13.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>
-
-  <p>The <code title=rel-external><a href=#link-type-external>external</a></code> keyword indicates
-  that the link is leading to a document that is not part of the site
-  that the current document forms a part of.</p>
-
-
-  <h5 id=link-type-help><span class=secno>6.13.3.6 </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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>For <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements, the <code title=rel-help><a href=#link-type-help>help</a></code> keyword indicates that the referenced
-  document provides further help information for the parent of the
-  element defining the hyperlink, and its children.</p>
-
-  <div class=example>
-
-   <p>In the following example, the form control has associated
-   context-sensitive help. The user agent could use this information,
-   for example, displaying the referenced document if the user presses
-   the "Help" or "F1" key.</p>
-
-   <pre> <p><label> Topic: <input name=topic> <a href="help/topic.html" rel="help">(Help)</a></label></p></pre>
-
-  </div>
-
-  <p>For <code><a href=#the-link-element>link</a></code> elements, the <code title=rel-help><a href=#link-type-help>help</a></code> keyword indicates that the referenced
-  document provides help for the page as a whole.</p>
-
-
-  <h5 id=rel-icon><span class=secno>6.13.3.7 </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>
-
-  <div class=impl>
-
-  <p>The specified resource is an icon representing the page or site,
-  and should be used by the user agent when representing the page in
-  the user interface.</p>
-
-  </div>
-
-  <p>Icons could be auditory icons, visual icons, or other kinds of
-  icons. <span class=impl>If multiple icons are provided, the user
-  agent must select the most appropriate icon according to the <code title=attr-link-type><a href=#attr-link-type>type</a></code>, <code title=attr-link-media><a href=#attr-link-media>media</a></code>, and <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attributes. If there are
-  multiple equally appropriate icons, user agents must use the last
-  one declared in <a href=#tree-order>tree order</a>. If the user agent tries to
-  use an icon but that icon is determined, upon closer examination, to
-  in fact be inappropriate (e.g. because it uses an unsupported
-  format), then the user agent must try the next-most-appropriate icon
-  as determined by the attributes.</span></p>
-
-  <div class=impl>
-
-  <p>There is no default type for resources given by the <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword. However, for the purposes of
-  <a href=#concept-link-type-sniffing>determining the type of the
-  resource</a>, user agents must expect the resource to be an image.</p>
-
-  </div>
-
-  <p>The <dfn id=attr-link-sizes title=attr-link-sizes><code>sizes</code></dfn>
-  attribute gives the sizes of icons for visual media.</p>
-
-  <p>If specified, the attribute must have a value that is an
-  <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique space-separated tokens</a>. The
-  values must all be either <code title=attr-link-sizes-any><a href=#attr-link-sizes-any>any</a></code> or a value that consists of
-  two <a href=#valid-non-negative-integer title="valid non-negative integer">valid non-negative
-  integers</a> that do not have a leading U+0030 DIGIT ZERO (0)
-  character and that are separated by a single U+0078 LATIN SMALL
-  LETTER X character (x).</p>
-
-  <p>The keywords represent icon sizes.</p>
-
-  <div class=impl>
-
-  <p>To parse and process the attribute's value, the user agent must
-  first <a href=#split-a-string-on-spaces title="split a string on spaces">split the attribute's
-  value on spaces</a>, and must then parse each resulting keyword
-  to determine what it represents.</p>
-
-  </div>
-
-  <p>The <dfn id=attr-link-sizes-any title=attr-link-sizes-any><code>any</code></dfn> keyword
-  represents that the resource contains a scalable icon, e.g. as
-  provided by an SVG image.</p>
-
-  <div class=impl>
-
-  <p>Other keywords must be further parsed as follows to determine
-  what they represent:</p>
-
-  <ul><li><p>If the keyword doesn't contain exactly one U+0078 LATIN
-   SMALL LETTER X character (x), then this keyword doesn't represent
-   anything. Abort these steps for that keyword.</li>
-
-   <li><p>Let <var title="">width string</var> be the string before
-   the "<code title="">x</code>".</li>
-
-   <li><p>Let <var title="">height string</var> be the string after the
-   "<code title="">x</code>".</li>
-
-   <li><p>If either <var title="">width string</var> or <var title="">height string</var> start with a U+0030 DIGIT ZERO (0)
-   character or contain any characters other than characters in the
-   range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then this
-   keyword doesn't represent anything. Abort these steps for that
-   keyword.</li>
-
-   <li><p>Apply the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
-   integers</a> to <var title="">width string</var> to obtain <var title="">width</var>.</li>
-
-   <li><p>Apply the <a href=#rules-for-parsing-non-negative-integers>rules for parsing non-negative
-   integers</a> to <var title="">height string</var> to obtain <var title="">height</var>.</li>
-
-   <li><p>The keyword represents that the resource contains a bitmap
-   icon with a width of <var title="">width</var> device pixels and a
-   height of <var title="">height</var> device pixels.</li>
-
-  </ul></div>
-
-  <p>The keywords specified on the <code title=attr-link-sizes><a href=#attr-link-sizes>sizes</a></code> attribute must not represent
-  icon sizes that are not actually available in the linked
-  resource.</p>
-
-  <div class=impl>
-
-  <p>If the attribute is not specified, then the user agent must
-  assume that the given icon is appropriate, but less appropriate than
-  an icon of a known and appropriate size.</p>
-
-  </div>
-
-  <div class=example>
-
-   <p>The following snippet shows the top part of an application with
-   several icons.</p>
-
-   <pre><!DOCTYPE HTML>
-<html>
- <head>
-  <title>lsForums — Inbox</title>
-  <link rel=icon href=favicon.png sizes="16x16">
-  <link rel=icon href=windows.ico sizes="32x32 48x48">
-  <link rel=icon href=mac.icns sizes="128x128 512x512 8192x8192 32768x32768">
-  <link rel=icon href=iphone.png sizes="59x60">
-  <link rel=icon href=gnome.svg sizes="any">
-  <link rel=stylesheet href=lsforums.css>
-  <script src=lsforums.js></script>
-  <meta name=application-name content="lsForums">
- </head>
- <body>
-  ...</pre>
-
-  </div>
-
-
-  <h5 id=link-type-license><span class=secno>6.13.3.8 </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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-license><a href=#link-type-license>license</a></code> keyword indicates
-  that the referenced document provides the copyright license terms
-  under which the main content of the current document is
-  provided.</p>
-
-  <p>This specification does not specify how to distinguish between
-  the main content of a document and content that is not deemed to be
-  part of that main content. The distinction should be made clear to
-  the user.</p>
-
-  <div class=example>
-
-   <p>Consider a photo sharing site. A page on that site might
-   describe and show a photograph, and the page might be marked up as
-   follows:</p>
-
-   <pre><!DOCTYPE HTML>
-<html>
- <head>
-  <title>Exampl Pictures: Kissat</title>
-  <link rel="stylesheet" href="/style/default">
- </head>
- <body>
-  <h1>Kissat</h1>
-  <nav>
-   <a href="../">Return to photo index</a>
-  </nav>
-  <figure>
-   <dd><img src="/pix/39627052_fd8dcd98b5.jpg">
-   <dt>Kissat
-  </figure>
-  <p>One of them has six toes!</p>
-  <p><small><a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT Licensed</a></small></p>
-  <footer>
-   <a href="/">Home</a> | <a href="../">Photo index</a>
-   <p><small>© copyright 2009 Exampl Pictures. All Rights Reserved.</small></p>
-  </footer>
- </body>
-</html></pre>
-
-   <p>In this case the <code title=rel-license><a href=#link-type-license>license</a></code>
-   applies to just the photo (the main content of the document), not
-   the whole document. In particular not the design of the page
-   itself, which is covered by the copyright given at the bottom of
-   the document. This could be made clearer in the styling
-   (e.g. making the license link prominently positioned near the
-   photograph, while having the page copyright in light small text at
-   the foot of the page.</p>
-
-  </div>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">copyright</code>" like
-  the <code title=rel-license><a href=#link-type-license>license</a></code> keyword.</p>
-
-  </div>
-
-
-  <h5 id=link-type-nofollow><span class=secno>6.13.3.9 </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>
-
-  <p>The <code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code> keyword indicates
-  that the link is not endorsed by the original author or publisher of
-  the page, or that the link to the referenced document was included
-  primarily because of a commercial relationship between people
-  affiliated with the two pages.</p>
-
-
-  <h5 id=link-type-noreferrer><span class=secno>6.13.3.10 </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>
-
-  <p>It indicates that the no referrer information is to be leaked
-  when following the link.</p>
-
-  <div class=impl>
-
-  <p>If a user agent follows a link defined by an <code><a href=#the-a-element>a</a></code> or
-  <code><a href=#the-area-element>area</a></code> element that has the <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword, the user agent
-  must not include a <code title="">Referer</code> (sic) HTTP header
-  (<a href=#concept-http-equivalent-headers title=concept-http-equivalent-headers>or equivalent</a>
-  for other protocols) in the request.</p>
-
-  <p>This keyword also <a href=#noopener>causes the <code title=dom-opener>opener</code> attribute to remain null</a> if the
-  hyperlink creates a new <a href=#browsing-context>browsing context</a>.</p>
-
-  </div>
-
-  <!-- v2: Would be nice to apply this to other elements too,
-  e.g. letting <img> or CSS or <video> hide the referrer -->
-
-
-  <h5 id=link-type-pingback><span class=secno>6.13.3.11 </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>
-
-  <p>For the semantics of the <code title=rel-pingback><a href=#link-type-pingback>pingback</a></code> keyword, see the Pingback 1.0
-  specification. <a href=#refsPINGBACK>[PINGBACK]</a></p>
-
-
-  <h5 id=link-type-prefetch><span class=secno>6.13.3.12 </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>
-
-  <p>The <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword indicates
-  that preemptively fetching and caching the specified resource is
-  likely to be beneficial, as it is highly likely that the user will
-  require this resource.</p>
-
-  <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>6.13.3.13 </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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-search><a href=#link-type-search>search</a></code> keyword indicates that
-  the referenced document provides an interface specifically for
-  searching the document and its related resources.</p>
-
-  <p class=note>OpenSearch description documents can be used with
-  <code><a href=#the-link-element>link</a></code> elements and the <code title=rel-search><a href=#link-type-search>search</a></code> link type to enable user agents to
-  autodiscover search interfaces. <a href=#refsOPENSEARCH>[OPENSEARCH]</a></p>
-
-
-  <h5 id=link-type-stylesheet><span class=secno>6.13.3.14 </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
-  contributes to the <a href=#styling>styling processing model</a>.</p>
-
-  <p>The specified resource is a resource that describes how to
-  present the document. Exactly how the resource is to be processed
-  depends on the actual type of the resource.</p>
-
-  <p>If the <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword is
-  also specified on the <code><a href=#the-link-element>link</a></code> element, then <dfn id=the-link-is-an-alternative-stylesheet>the link
-  is an alternative stylesheet</dfn>; in this case, the <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute must be specified on the
-  <code><a href=#the-link-element>link</a></code> element, with a non-empty value.</p>
-
-  <p>The default type for resources given by the <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword is <code title="">text/css</code>.</p>
-
-  <div class=impl>
-
-  <p><strong>Quirk</strong>: If the document has been set to
-  <a href=#quirks-mode>quirks mode</a> and the <a href=#content-type title=Content-Type>Content-Type metadata</a> of the external
-  resource is not a supported style sheet type, the user agent must
-  instead assume it to be <code title="">text/css</code>.</p>
-
-  </div>
-
-
-  <h5 id=link-type-sidebar><span class=secno>6.13.3.15 </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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword indicates
-  that the referenced document, if retrieved, is intended to be shown
-  in a <a href=#secondary-browsing-context>secondary browsing context</a> (if possible), instead
-  of in the current <a href=#browsing-context>browsing context</a>.</p>
-
-  <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>6.13.3.16 </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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> keyword indicates that the
-  <em>tag</em> that the referenced document represents applies to the
-  current document.</p>
-
-  <p class=note>Since it indicates that the tag <em>applies to the
-  current document</em>, it would be inappropriate to use this keyword
-  in the markup of a <a href=#tag-cloud>tag cloud</a>, which lists
-  the popular tag across a set of pages.</p>
-
-
-  <h5 id=hierarchical-link-types><span class=secno>6.13.3.17 </span>Hierarchical link types</h5>
-
-  <p>Some documents form part of a hierarchical structure of
-  documents.</p>
-
-  <p>A hierarchical structure of documents is one where each document
-  can have various subdocuments. The document of which a document is a
-  subdocument is said to be the document's <em>parent</em>. A document
-  with no parent forms the top of the hierarchy.</p>
-
-  <p>A document may be part of multiple hierarchies.</p>
-
-
-  <h6 id=link-type-index><span class=secno>6.13.3.17.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-index><a href=#link-type-index>index</a></code> keyword indicates that
-  the document is part of a hierarchical structure, and that the link
-  is leading to the document that is the top of the hierarchy. It
-  conveys more information when used with the <code title=rel-up><a href=#link-type-up>up</a></code> keyword (q.v.).</p>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keywords "<code title="">top</code>", "<code title="">contents</code>", and "<code title="">toc</code>" like the
-  <code title=rel-index><a href=#link-type-index>index</a></code> keyword.</p>
-
-  </div>
-
-
-  <h6 id=link-type-up><span class=secno>6.13.3.17.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword indicates that the
-  document is part of a hierarchical structure, and that the link is
-  leading to a document that is an ancestor of the current
-  document.</p>
-
-  <p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword may be repeated within
-  a <code title=attr-hyperlink-rel><a href=#attr-hyperlink-rel>rel</a></code> attribute to indicate
-  the hierarchical distance from the current document to the
-  referenced document. If it occurs only once, then the link is
-  leading to the current document's parent; each additional occurrence
-  of the keyword represents one further level. If the <code title=rel-index><a href=#link-type-index>index</a></code> keyword is also present, then the
-  number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords is the depth of
-  the current page relative to the top of the hierarchy. Only one link
-  is created for the set of one or more <code title=rel-up><a href=#link-type-up>up</a></code>
-  keywords and, if present, the <code title=rel-index><a href=#link-type-index>index</a></code>
-  keyword.</p>
-
-  <p>If the page is part of multiple hierarchies, then they should be
-  described in different <a href=#paragraph title=paragraph>paragraphs</a>. <span class=impl>User agents
-  must scope any interpretation of the <code title=rel-up><a href=#link-type-up>up</a></code>
-  and <code title=rel-index><a href=#link-type-index>index</a></code> keywords together
-  indicating the depth of the hierarchy to the <a href=#paragraph>paragraph</a>
-  in which the link finds itself, if any, or to the document
-  otherwise.</span></p>
-
-  <div class=impl>
-
-  <p>When two links have both the <code title=rel-up><a href=#link-type-up>up</a></code> and
-  <code title=rel-index><a href=#link-type-index>index</a></code> keywords specified together in
-  the same scope and contradict each other by having a different
-  number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords, the link with the
-  greater number of <code title=rel-up><a href=#link-type-up>up</a></code> keywords must be
-  taken as giving the depth of the document.</p>
-
-  </div>
-
-  <div class=example>
-
-   <p>This can be used to mark up a navigation style sometimes known
-   as bread crumbs. In the following example, the current page can be
-   reached via two paths.</p>
-
-   <pre><nav>
- <p>
-  <a href="/" rel="index up up up">Main</a> >
-  <a href="/products/" rel="up up">Products</a> >
-  <a href="/products/dishwashers/" rel="up">Dishwashers</a> >
-  <a>Second hand</a>
- </p>
- <p>
-  <a href="/" rel="index up up">Main</a> >
-  <a href="/second-hand/" rel="up">Second hand</a> >
-  <a>Dishwashers</a>
- </p>
-</nav></pre>
-
-  </div>
-
-  <p class=note>The <code title=dom-a-relList><a href=#dom-a-rellist>relList</a></code> IDL
-  attribute (e.g. on the <code><a href=#the-a-element>a</a></code> element) does not currently
-  represent multiple <code title=rel-up><a href=#link-type-up>up</a></code> keywords (the
-  interface hides duplicates).</p>
-
-
-  <h5 id=sequential-link-types><span class=secno>6.13.3.18 </span>Sequential link types</h5>
-
-  <p>Some documents form part of a sequence of documents.</p>
-
-  <p>A sequence of documents is one where each document can have a
-  <em>previous sibling</em> and a <em>next sibling</em>. A document
-  with no previous sibling is the start of its sequence, a document
-  with no next sibling is the end of its sequence.</p>
-
-  <p>A document may be part of multiple sequences.</p>
-
-
-  <h6 id=link-type-first><span class=secno>6.13.3.18.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-first><a href=#link-type-first>first</a></code> keyword indicates that
-  the document is part of a sequence, and that the link is leading to
-  the document that is the first logical document in the sequence.</p>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keywords "<code title="">begin</code>" and
-  "<code title="">start</code>" like the <code title=rel-first><a href=#link-type-first>first</a></code> keyword.</p>
-
-  </div>
-
-
-  <h6 id=link-type-last><span class=secno>6.13.3.18.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-last><a href=#link-type-last>last</a></code> keyword indicates that the
-  document is part of a sequence, and that the link is leading to the
-  document that is the last logical document in the sequence.</p>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">end</code>" like the
-  <code title=rel-last><a href=#link-type-last>last</a></code> keyword.</p>
-
-  </div>
-
-
-  <h6 id=link-type-next><span class=secno>6.13.3.18.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-next><a href=#link-type-next>next</a></code> keyword indicates that the
-  document is part of a sequence, and that the link is leading to the
-  document that is the next logical document in the sequence.</p>
-
-
-  <h6 id=link-type-prev><span class=secno>6.13.3.18.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>
-  elements. For <code><a href=#the-link-element>link</a></code> elements, it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink</a>.</p>
-
-  <p>The <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword indicates that the
-  document is part of a sequence, and that the link is leading to the
-  document that is the previous logical document in the sequence.</p>
-
-  <div class=impl>
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">previous</code>" like
-  the <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword.</p>
-
-  </div>
-
-
-  <h5 id=other-link-types><span class=secno>6.13.3.19 </span>Other link types</h5>
-
-  <p><dfn id=concept-rel-extensions title=concept-rel-extensions>Extensions to the predefined
-  set of link types</dfn> may be registered in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
-  RelExtensions page</a>. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
-
-  <p>Anyone is free to edit the WHATWG Wiki RelExtensions page at any
-  time to add a type. Extension types must be specified with the
-  following information:</p>
-
-  <dl><dt>Keyword</dt>
-
-   <dd><p>The actual value being defined. The value should not be
-   confusingly similar to any other defined value (e.g. differing only
-   in case).</dd>
-
-
-   <dt>Effect on... <code><a href=#the-link-element>link</a></code></dt>
-
-   <dd>
-
-    <p>One of the following:</p>
-
-    <dl><dt>not allowed</dt>
-
-     <dd>The keyword is not allowed to be specified on
-     <code><a href=#the-link-element>link</a></code> elements.</dd>
-
-     <dt>Hyperlink</dt>
-
-     <dd>The keyword may be specified on a <code><a href=#the-link-element>link</a></code> element;
-     it creates a <a href=#hyperlink-link title="hyperlink link">hyperlink
-     link</a>.</dd>
-
-     <dt>External Resource</dt>
-
-     <dd>The keyword may be specified on a <code><a href=#the-link-element>link</a></code> element;
-     it creates a <a href=#external-resource-link title="external resource link">external
-     resource link</a>.</dd>
-
-    </dl></dd>
-
-
-   <dt>Effect on... <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code></dt>
-
-   <dd>
-
-    <p>One of the following:</p>
-
-    <dl><dt>not allowed</dt>
-
-     <dd>The keyword is not allowed to be specified on <code><a href=#the-a-element>a</a></code>
-     and <code><a href=#the-area-element>area</a></code> elements.</dd>
-
-     <dt>Hyperlink</dt>
-
-     <dd>The keyword may be specified on <code><a href=#the-a-element>a</a></code> and
-     <code><a href=#the-area-element>area</a></code> elements.</dd>
-
-    </dl></dd>
-
-
-   <dt>Brief description</dt>
-
-   <dd><p>A short non-normative description of what the keyword's
-   meaning is.</dd>
-
-
-   <dt>Specification</dt>
-
-   <dd><p>A link to a more detailed description of the keyword's
-   semantics and requirements. It could be another page on the Wiki,
-   or a link to an external page.</dd>
-
-
-   <dt>Synonyms</dt>
-
-   <dd><p>A list of other keyword values that have exactly the same
-   processing requirements. Authors should not use the values defined
-   to be synonyms, they are only intended to allow user agents to
-   support legacy content. Anyone may remove synonyms that are not
-   used in practice; only names that need to be processed as synonyms
-   for compatibility with legacy content are to be registered in this
-   way.</dd>
-
-
-   <dt>Status</dt>
-
-   <dd>
-
-    <p>One of the following:</p>
-
-    <dl><dt>Proposed</dt>
-
-     <dd>The keyword has not received wide peer review and
-     approval. Someone has proposed it and is, or soon will be, using
-     it.</dd>
-
-     <dt>Ratified</dt>
-
-     <dd>The keyword has received wide peer review and approval. It
-     has a specification that unambiguously defines how to handle
-     pages that use the keyword, including when they use it in
-     incorrect ways.</dd>
-
-     <dt>Discontinued</dt>
-
-     <dd>The keyword has received wide peer review and it has been
-     found wanting. Existing pages are using this keyword, but new
-     pages should avoid it. The "brief description" and
-     "specification" entries will give details of what authors should
-     use instead, if anything.</dd>
-
-    </dl><p>If a keyword is found to be redundant with existing values, it
-    should be removed and listed as a synonym for the existing
-    value.</p>
-
-    <p>If a keyword is registered in the "proposed" state for a
-    period of a month or more without being used or specified, then it
-    may be removed from the registry.</p>
-
-    <p>If a keyword is added with the "proposed" status and found to
-    be redundant with existing values, it should be removed and listed
-    as a synonym for the existing value. If a keyword is added with
-    the "proposed" status and found to be harmful, then it should be
-    changed to "discontinued" status.</p>
-
-    <p>Anyone can change the status at any time, but should only do so
-    in accordance with the definitions above.</p>
-
-   </dd>
-
-  </dl><div class=impl>
-
-  <p>Conformance checkers must use the information given on the WHATWG
-  Wiki RelExtensions page to establish if a value is allowed or not:
-  values defined in this specification or marked as "proposed" or
-  "ratified" must be accepted when used on the elements for which they
-  apply as described in the "Effect on..." field, whereas values
-  marked as "discontinued" or not listed in either this specification
-  or on the aforementioned page must be rejected as invalid.
-  Conformance checkers may cache this information (e.g. for
-  performance reasons or to avoid the use of unreliable network
-  connectivity).</p>
-
-  <p>When an author uses a new type not defined by either this
-  specification or the Wiki page, conformance checkers should offer to
-  add the value to the Wiki, with the details described above, with
-  the "proposed" status.</p>
-
-  </div>
-
-  <p>Types defined as extensions in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
-  RelExtensions page</a> with the status "proposed" or "ratified" may
-  be used with the <code title="">rel</code> attribute on
-  <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> elements in
-  accordance to the "Effect on..." field. <a href=#refsWHATWGWIKI>[WHATWGWIKI]</a></p>
-
-
-
-  <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
   interactively.</p>
 
 
 
-  <h3 id=the-hidden-attribute><span class=secno>7.1 </span>The <dfn title=attr-hidden><code>hidden</code></dfn> attribute</h3>
+  <h3 id=the-hidden-attribute><span class=secno>8.1 </span>The <dfn title=attr-hidden><code>hidden</code></dfn> attribute</h3>
 
   <p>All <a href=#html-elements>HTML elements</a> 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> attribute is a <a href=#boolean-attribute>boolean
   attribute</a>. When specified on an element, it indicates that
@@ -59036,7 +59054,7 @@
 
 
 
-  <h3 id=activation><span class=secno>7.2 </span>Activation</h3>
+  <h3 id=activation><span class=secno>8.2 </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
@@ -59077,7 +59095,7 @@
   </ol></div>
 
 
-  <h3 id=scrolling-elements-into-view><span class=secno>7.3 </span>Scrolling elements into view</h3> <!-- maybe this should move to [CSSOM] -->
+  <h3 id=scrolling-elements-into-view><span class=secno>8.3 </span>Scrolling elements into view</h3> <!-- maybe this should move to [CSSOM] -->
 
   <dl class=domintro><dt><var title="">element</var> . <code title=dom-scrollIntoView><a href=#dom-scrollintoview>scrollIntoView</a></code>( [ <var title="">top</var> ] )</dt>
 
@@ -59119,7 +59137,7 @@
   </div>
 
 
-  <h3 id=focus><span class=secno>7.4 </span>Focus</h3>
+  <h3 id=focus><span class=secno>8.4 </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 -->
 
@@ -59163,7 +59181,7 @@
   </div>
 
 
-  <h4 id=sequential-focus-navigation><span class=secno>7.4.1 </span>Sequential focus navigation</h4>
+  <h4 id=sequential-focus-navigation><span class=secno>8.4.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,
@@ -59277,7 +59295,7 @@
 
   <div class=impl>
 
-  <h4 id=focus-management><span class=secno>7.4.2 </span>Focus management</h4>
+  <h4 id=focus-management><span class=secno>8.4.2 </span>Focus management</h4>
 
   <p>An element is <dfn id=focusable>focusable</dfn> if the user agent's default
   behavior allows it to be focusable or if the element is
@@ -59372,7 +59390,7 @@
   </div>
 
 
-  <h4 id=document-level-focus-apis><span class=secno>7.4.3 </span>Document-level focus APIs</h4>
+  <h4 id=document-level-focus-apis><span class=secno>8.4.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>
 
@@ -59447,7 +59465,7 @@
   </div>
 
 
-  <h4 id=element-level-focus-apis><span class=secno>7.4.4 </span>Element-level focus APIs</h4>
+  <h4 id=element-level-focus-apis><span class=secno>8.4.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>
 
@@ -59496,7 +59514,7 @@
 
 
 
-  <h3 id=the-accesskey-attribute><span class=secno>7.5 </span>The <dfn title=attr-accesskey><code>accesskey</code></dfn> attribute</h3>
+  <h3 id=the-accesskey-attribute><span class=secno>8.5 </span>The <dfn title=attr-accesskey><code>accesskey</code></dfn> attribute</h3>
 
   <p>All <a href=#html-elements>HTML elements</a> 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
@@ -59645,7 +59663,7 @@
 
 
 
-  <h3 id=selection><span class=secno>7.6 </span>The text selection APIs</h3>
+  <h3 id=selection><span class=secno>8.6 </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
@@ -59718,7 +59736,7 @@
 
 
 
-  <h4 id=documentSelection><span class=secno>7.6.1 </span>APIs for the browsing context selection</h4>
+  <h4 id=documentSelection><span class=secno>8.6.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>
@@ -60038,7 +60056,7 @@
   -->
 
 
-  <h4 id=textFieldSelection><span class=secno>7.6.2 </span>APIs for the text field selections</h4>
+  <h4 id=textFieldSelection><span class=secno>8.6.2 </span>APIs for the text field selections</h4>
 
   <!-- v2 idea: DOM Range APIs to expose the textarea/input edited
   value (ack martijnw) -->
@@ -60162,7 +60180,7 @@
 
 
 
-  <h3 id=contenteditable><span class=secno>7.7 </span>The <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute</h3>
+  <h3 id=contenteditable><span class=secno>8.7 </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
@@ -60268,7 +60286,7 @@
 
   <div class=impl>
 
-  <h4 id=user-editing-actions><span class=secno>7.7.1 </span>User editing actions</h4>
+  <h4 id=user-editing-actions><span class=secno>8.7.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
@@ -60457,7 +60475,7 @@
 
 
 
-  <h4 id=making-entire-documents-editable><span class=secno>7.7.2 </span>Making entire documents editable</h4>
+  <h4 id=making-entire-documents-editable><span class=secno>8.7.2 </span>Making entire documents editable</h4>
 
   <div class=impl>
 
@@ -60499,7 +60517,7 @@
 
 
 
-  <h3 id=spelling-and-grammar-checking><span class=secno>7.8 </span>Spelling and grammar checking</h3>
+  <h3 id=spelling-and-grammar-checking><span class=secno>8.8 </span>Spelling and grammar checking</h3>
 
   <div class=impl>
 
@@ -60692,7 +60710,7 @@
 
 
 
-  <h3 id=dnd><span class=secno>7.9 </span><dfn>Drag and drop</dfn></h3>
+  <h3 id=dnd><span class=secno>8.9 </span><dfn>Drag and drop</dfn></h3>
 
 <!-- v2 ideas for drag and drop:
 
@@ -60766,7 +60784,7 @@
   </div>
 
 
-  <h4 id=introduction-6><span class=secno>7.9.1 </span>Introduction</h4>
+  <h4 id=introduction-6><span class=secno>8.9.1 </span>Introduction</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -60875,7 +60893,7 @@
 
 
 
-  <h4 id=the-dragevent-and-datatransfer-interfaces><span class=secno>7.9.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>8.9.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>
@@ -61126,7 +61144,7 @@
   </div>
 
 
-  <h4 id=dndevents><span class=secno>7.9.3 </span>Events fired during a drag-and-drop action</h4>
+  <h4 id=dndevents><span class=secno>8.9.3 </span>Events fired during a drag-and-drop action</h4>
 
   <p>The following events are involved in the drag-and-drop
   model.</p>
@@ -61261,7 +61279,7 @@
 
   <div class=impl>
 
-  <h4 id=drag-and-drop-processing-model><span class=secno>7.9.4 </span>Drag-and-drop processing model</h4>
+  <h4 id=drag-and-drop-processing-model><span class=secno>8.9.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
@@ -61733,7 +61751,7 @@
 
   <div class=impl>
 
-  <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>7.9.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>8.9.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
@@ -61752,7 +61770,7 @@
 
   <div class=impl>
 
-  <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>7.9.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>8.9.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
@@ -61778,7 +61796,7 @@
   </div>
 
 
-  <h4 id=the-draggable-attribute><span class=secno>7.9.5 </span>The <dfn title=attr-draggable><code>draggable</code></dfn> attribute</h4>
+  <h4 id=the-draggable-attribute><span class=secno>8.9.5 </span>The <dfn title=attr-draggable><code>draggable</code></dfn> attribute</h4>
 
   <p>All <a href=#html-elements>HTML elements</a> 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
@@ -61838,7 +61856,7 @@
 
 
 
-  <h4 id=copy-and-paste><span class=secno>7.9.6 </span>Copy and paste</h4>
+  <h4 id=copy-and-paste><span class=secno>8.9.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
@@ -61852,7 +61870,7 @@
 
   <div class=impl>
 
-  <h5 id=copy-to-clipboard><span class=secno>7.9.6.1 </span>Copy to clipboard</h5>
+  <h5 id=copy-to-clipboard><span class=secno>8.9.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
@@ -61868,7 +61886,7 @@
   <p>The events involved in this process are the <code title=event-drag><a href=#event-drag>drag</a></code>, <code title=event-dragend><a href=#event-dragend>dragend</a></code>, and <code title=event-drop><a href=#event-drop>drop</a></code> events.</p>
 
 
-  <h5 id=cut-to-clipboard><span class=secno>7.9.6.2 </span>Cut to clipboard</h5>
+  <h5 id=cut-to-clipboard><span class=secno>8.9.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),
@@ -61877,7 +61895,7 @@
   <p>The events involved in this process are the <code title=event-drag><a href=#event-drag>drag</a></code>, <code title=event-dragend><a href=#event-dragend>dragend</a></code>, and <code title=event-drop><a href=#event-drop>drop</a></code> events.</p>
 
 
-  <h5 id=paste-from-clipboard><span class=secno>7.9.6.3 </span>Paste from clipboard</h5>
+  <h5 id=paste-from-clipboard><span class=secno>8.9.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
@@ -61893,7 +61911,7 @@
   <p>The events involved in this process are the <code title=event-dragenter><a href=#event-dragenter>dragenter</a></code>, <code title=event-dragover><a href=#event-dragover>dragover</a></code>, <code title=event-dragleave><a href=#event-dragleave>dragleave</a></code>, and <code title=event-drop><a href=#event-drop>drop</a></code> events.</p>
 
 
-  <h5 id=paste-from-selection><span class=secno>7.9.6.4 </span>Paste from selection</h5>
+  <h5 id=paste-from-selection><span class=secno>8.9.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,
@@ -61909,7 +61927,7 @@
 
   <div class=impl>
 
-  <h4 id=security-risks-in-the-drag-and-drop-model><span class=secno>7.9.7 </span>Security risks in the drag-and-drop model</h4>
+  <h4 id=security-risks-in-the-drag-and-drop-model><span class=secno>8.9.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
@@ -61935,11 +61953,11 @@
   </div>
 
 
-  <h3 id=undo><span class=secno>7.10 </span><dfn>Undo history</dfn></h3>
+  <h3 id=undo><span class=secno>8.10 </span><dfn>Undo history</dfn></h3>
 
   <div class=impl>
 
-  <h4 id=definitions-2><span class=secno>7.10.1 </span>Definitions</h4>
+  <h4 id=definitions-2><span class=secno>8.10.1 </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>
@@ -61979,7 +61997,7 @@
   </div>
 
 
-  <h4 id=the-undomanager-interface><span class=secno>7.10.2 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
+  <h4 id=the-undomanager-interface><span class=secno>8.10.2 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
 
   <p>To manage <a href=#undo-object>undo object</a> entries in the <a href=#undo-transaction-history>undo
   transaction history</a>, the <code><a href=#undomanager>UndoManager</a></code>
@@ -62146,7 +62164,7 @@
 
   <div class=impl>
 
-  <h4 id=undo:-moving-back-in-the-undo-transaction-history><span class=secno>7.10.3 </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>8.10.3 </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
@@ -62183,7 +62201,7 @@
   command to undo his undo.</p>
 
 
-  <h4 id=redo:-moving-forward-in-the-undo-transaction-history><span class=secno>7.10.4 </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>8.10.4 </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
@@ -62220,7 +62238,7 @@
   </div>
 
 
-  <h4 id=the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>7.10.5 </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>8.10.5 </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>;
@@ -62257,7 +62275,7 @@
 
   <div class=impl>
 
-  <h4 id=implementation-notes><span class=secno>7.10.6 </span>Implementation notes</h4>
+  <h4 id=implementation-notes><span class=secno>8.10.6 </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
@@ -62280,7 +62298,7 @@
 
 
 
-  <h3 id=editing-apis><span class=secno>7.11 </span>Editing APIs</h3>
+  <h3 id=editing-apis><span class=secno>8.11 </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>
 
@@ -62734,11 +62752,11 @@
 v2 (well, really v0):
  "forecolor", "hilitecolor", "fontname", "fontsize", "justifyleft",
  "justifycenter", "justifyright", "justifyfull", "indent", "outdent"
---><h2 id=web-workers><span class=secno>8 </span>Web Workers</h2> 
+--><h2 id=web-workers><span class=secno>9 </span>Web Workers</h2> 
 
-  <h3 id=introduction-7><span class=secno>8.1 </span>Introduction</h3>
+  <h3 id=introduction-7><span class=secno>9.1 </span>Introduction</h3>
 
-  <h4 id=scope-0><span class=secno>8.1.1 </span>Scope</h4>
+  <h4 id=scope-0><span class=secno>9.1.1 </span>Scope</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -62760,14 +62778,14 @@
   start-up performance cost, and a high per-instance memory cost.</p>
 
 
-  <h4 id=tutorial><span class=secno>8.1.2 </span>Tutorial</h4>
+  <h4 id=tutorial><span class=secno>9.1.2 </span>Tutorial</h4>
 
   <p><i>This section is non-normative.</i></p>
 
   <p>There are a variety of uses that workers can be put to. The
   following subsections show various examples of this use.</p>
 
-  <h5 id=a-background-number-crunching-worker><span class=secno>8.1.2.1 </span>A background number-crunching worker</h5>
+  <h5 id=a-background-number-crunching-worker><span class=secno>9.1.2.1 </span>A background number-crunching worker</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -62821,7 +62839,7 @@
 
 
 
-  <h5 id=a-worker-for-updating-a-client-side-database><span class=secno>8.1.2.2 </span>A worker for updating a client-side database</h5>
+  <h5 id=a-worker-for-updating-a-client-side-database><span class=secno>9.1.2.2 </span>A worker for updating a client-side database</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -62869,7 +62887,7 @@
 
 
 
-  <h5 id=worker-used-for-background-i/o><span class=secno>8.1.2.3 </span>Worker used for background I/O</h5>
+  <h5 id=worker-used-for-background-i/o><span class=secno>9.1.2.3 </span>Worker used for background I/O</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -62976,7 +62994,7 @@
   <p><a href=http://www.whatwg.org/demos/workers/stocks/page.html>View this example online</a>.</p>
 
 
-  <h5 id=shared-workers><span class=secno>8.1.2.4 </span>Shared workers</h5>
+  <h5 id=shared-workers><span class=secno>9.1.2.4 </span>Shared workers</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -63258,7 +63276,7 @@
   <p><a href=http://www.whatwg.org/demos/workers/multiviewer/page.html>View this example online</a>.</p>
 
 
-  <h5 id=delegation><span class=secno>8.1.2.5 </span>Delegation</h5>
+  <h5 id=delegation><span class=secno>9.1.2.5 </span>Delegation</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -63346,7 +63364,7 @@
   <p><a href=http://www.whatwg.org/demos/workers/multicore/page.html>View this example online</a>.</p>
 
 
-  <h5 id=providing-libraries><span class=secno>8.1.2.6 </span>Providing libraries</h5>
+  <h5 id=providing-libraries><span class=secno>9.1.2.6 </span>Providing libraries</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -63582,7 +63600,7 @@
   <p><a href=http://www.whatwg.org/demos/workers/crypto/page.html>View this example online</a>.</p>
 
 
-  <h3 id=infrastructure-0><span class=secno>8.2 </span>Infrastructure</h3>
+  <h3 id=infrastructure-0><span class=secno>9.2 </span>Infrastructure</h3>
 
   <p>There are two kinds of workers; dedicated workers, and shared
   workers. Dedicated workers, once created, and are linked to their
@@ -63593,11 +63611,11 @@
   obtain a reference to that worker and communicate with it.</p>
 
 
-  <h4 id=the-global-scope><span class=secno>8.2.1 </span>The global scope</h4>
+  <h4 id=the-global-scope><span class=secno>9.2.1 </span>The global scope</h4>
 
   <p>The global scope is the "inside" of a worker.</p>
 
-  <h5 id=the-workerglobalscope-abstract-interface><span class=secno>8.2.1.1 </span>The <code><a href=#workerglobalscope>WorkerGlobalScope</a></code> abstract interface</h5>
+  <h5 id=the-workerglobalscope-abstract-interface><span class=secno>9.2.1.1 </span>The <code><a href=#workerglobalscope>WorkerGlobalScope</a></code> abstract interface</h5>
 
   <pre class=idl>interface <dfn id=workerglobalscope>WorkerGlobalScope</dfn> {
   readonly attribute <a href=#workerglobalscope>WorkerGlobalScope</a> <a href=#dom-workerglobalscope-self title=dom-WorkerGlobalScope-self>self</a>;
@@ -63648,7 +63666,7 @@
 
   <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
    <tbody><!-- v2-onclose    <tr><td><dfn title="handler-WorkerGlobalScope-onclose"><code>onclose</code></dfn> <td> <code title="event-close">close</code> --><tr><td><dfn id=handler-workerglobalscope-onerror title=handler-WorkerGlobalScope-onerror><code>onerror</code></dfn> <td> <code title=event-error>error</code>
-  </table><h5 id=dedicated-workers-and-the-dedicatedworkerglobalscope-interface><span class=secno>8.2.1.2 </span>Dedicated workers and the <code><a href=#dedicatedworkerglobalscope>DedicatedWorkerGlobalScope</a></code> interface</h5>
+  </table><h5 id=dedicated-workers-and-the-dedicatedworkerglobalscope-interface><span class=secno>9.2.1.2 </span>Dedicated workers and the <code><a href=#dedicatedworkerglobalscope>DedicatedWorkerGlobalScope</a></code> interface</h5>
 
   <pre class=idl>[Supplemental, NoInterfaceObject]
 interface <dfn id=dedicatedworkerglobalscope>DedicatedWorkerGlobalScope</dfn> : <a href=#workerglobalscope>WorkerGlobalScope</a> {
@@ -63689,7 +63707,7 @@
 
 
 
-  <h5 id=shared-workers-and-the-sharedworkerglobalscope-inteface><span class=secno>8.2.1.3 </span>Shared workers and the <code><a href=#sharedworkerglobalscope>SharedWorkerGlobalScope</a></code> inteface</h5>
+  <h5 id=shared-workers-and-the-sharedworkerglobalscope-inteface><span class=secno>9.2.1.3 </span>Shared workers and the <code><a href=#sharedworkerglobalscope>SharedWorkerGlobalScope</a></code> inteface</h5>
 
   <pre class=idl>[Supplemental, NoInterfaceObject]
 interface <dfn id=sharedworkerglobalscope>SharedWorkerGlobalScope</dfn> : <a href=#workerglobalscope>WorkerGlobalScope</a> {
@@ -63727,7 +63745,7 @@
   -->
 
 
-  <h4 id=origins-of-workers><span class=secno>8.2.2 </span>Origins of workers</h4>
+  <h4 id=origins-of-workers><span class=secno>9.2.2 </span>Origins of workers</h4>
 
   <p>Both the <a href=#origin>origin</a> and <a href=#effective-script-origin>effective script
   origin</a> of scripts running in workers are the
@@ -63736,7 +63754,7 @@
   represents.</p>
 
 
-  <h4 id=decoding-scripts><span class=secno>8.2.3 </span>Decoding scripts</h4>
+  <h4 id=decoding-scripts><span class=secno>9.2.3 </span>Decoding scripts</h4>
 
   <p>When a user agent is to <dfn id=decode-a-script-resource>decode a script resource</dfn> to
   obtain its source in Unicode, it must run the following steps:</p>
@@ -63807,7 +63825,7 @@
 
    </li>
 
-  </ol><h4 id=the-event-loop><span class=secno>8.2.4 </span>The event loop</h4>
+  </ol><h4 id=the-event-loop><span class=secno>9.2.4 </span>The event loop</h4>
 
   <p>Each <code><a href=#workerglobalscope>WorkerGlobalScope</a></code> object has an <a href=#event-loop>event
   loop</a> distinct from those defined for <a href=#unit-of-related-similar-origin-browsing-contexts title="unit of
@@ -63833,7 +63851,7 @@
 
 
 
-  <h4 id="the-worker's-lifetime"><span class=secno>8.2.5 </span>The worker's lifetime</h4>
+  <h4 id="the-worker's-lifetime"><span class=secno>9.2.5 </span>The worker's lifetime</h4>
 
   <p>Workers communicate with other workers and with <a href=#browsing-context title="browsing context">browsing contexts</a> through <a href=#channel-messaging title="channel messaging">message channels</a> and their
   <code><a href=#messageport>MessagePort</a></code> objects.</p>
@@ -63905,7 +63923,7 @@
   <a href=#permissible-worker>permissible worker</a>.</p>
 
 
-  <h4 id=processing-model-4><span class=secno>8.2.6 </span>Processing model</h4>
+  <h4 id=processing-model-4><span class=secno>9.2.6 </span>Processing model</h4>
 
   <p>When a user agent is to <dfn id=run-a-worker>run a worker</dfn> for a script with
   <a href=#url>URL</a> <var title="">url</var>, a browsing context <var title="">owner browsing context</var>, an origin <var title="">owner
@@ -64172,7 +64190,7 @@
   <a href=#dom-manipulation-task-source>DOM manipulation task source</a>.</p>
 
 
-  <h4 id=runtime-script-errors-0><span class=secno>8.2.7 </span>Runtime script errors</h4>
+  <h4 id=runtime-script-errors-0><span class=secno>9.2.7 </span>Runtime script errors</h4>
 
   <p>Whenever an uncaught runtime script error occurs in one of the
   worker's scripts, if the error did not occur while handling a
@@ -64231,9 +64249,9 @@
 
 
 
-  <h4 id=creating-workers><span class=secno>8.2.8 </span>Creating workers</h4>
+  <h4 id=creating-workers><span class=secno>9.2.8 </span>Creating workers</h4>
 
-  <h5 id=the-abstractworker-abstract-interface><span class=secno>8.2.8.1 </span>The <code><a href=#abstractworker>AbstractWorker</a></code> abstract interface</h5>
+  <h5 id=the-abstractworker-abstract-interface><span class=secno>9.2.8.1 </span>The <code><a href=#abstractworker>AbstractWorker</a></code> abstract interface</h5>
 
   <pre class=idl>interface <dfn id=abstractworker>AbstractWorker</dfn> {
            attribute <a href=#function>Function</a> <a href=#handler-abstractworker-onerror title=handler-AbstractWorker-onerror>onerror</a>;
@@ -64249,7 +64267,7 @@
   <table><thead><tr><th><a href=#event-handlers title="event handlers">Event handler</a> <th><a href=#event-handler-event-type>Event handler event type</a>
    <tbody><tr><td><dfn id=handler-abstractworker-onerror title=handler-AbstractWorker-onerror><code>onerror</code></dfn> <td> <code title=event-error>error</code>
 <!-- v2-onclose    <tr><td><dfn title="handler-AbstractWorker-onclose"><code>onclose</code></dfn> <td> <code title="event-close">close</code> -->
-  </table><h5 id=dedicated-workers-and-the-worker-interface><span class=secno>8.2.8.2 </span>Dedicated workers and the <code><a href=#worker>Worker</a></code> interface</h5>
+  </table><h5 id=dedicated-workers-and-the-worker-interface><span class=secno>9.2.8.2 </span>Dedicated workers and the <code><a href=#worker>Worker</a></code> interface</h5>
 
   <pre class=idl>[<a href=#dom-worker title=dom-Worker>Constructor</a>(in DOMString scriptURL)]
 interface <dfn id=worker>Worker</dfn> : <a href=#abstractworker>AbstractWorker</a> {
@@ -64390,7 +64408,7 @@
   implementing the <code><a href=#workerutils>WorkerUtils</a></code> interface.</p>
 
 
-  <h5 id=shared-workers-and-the-sharedworker-interface><span class=secno>8.2.8.3 </span>Shared workers and the <code><a href=#sharedworker>SharedWorker</a></code> interface</h5>
+  <h5 id=shared-workers-and-the-sharedworker-interface><span class=secno>9.2.8.3 </span>Shared workers and the <code><a href=#sharedworker>SharedWorker</a></code> interface</h5>
 
   <pre class=idl>[<a href=#dom-sharedworker title=dom-SharedWorker>Constructor</a>(in DOMString scriptURL, in optional DOMString name)]
 interface <dfn id=sharedworker>SharedWorker</dfn> : <a href=#abstractworker>AbstractWorker</a> {
@@ -64599,7 +64617,7 @@
 
 
 
-  <h3 id=apis-available-to-workers><span class=secno>8.3 </span>APIs available to workers</h3>
+  <h3 id=apis-available-to-workers><span class=secno>9.3 </span>APIs available to workers</h3>
 
   <pre class=idl>[Supplemental, NoInterfaceObject]
 interface <dfn id=workerutils>WorkerUtils</dfn> {
@@ -64613,7 +64631,7 @@
   specification.</p>
 
 
-  <h4 id=importing-scripts-and-libraries><span class=secno>8.3.1 </span>Importing scripts and libraries</h4>
+  <h4 id=importing-scripts-and-libraries><span class=secno>9.3.1 </span>Importing scripts and libraries</h4>
 
   <p>When a script invokes the <dfn id=dom-workerglobalscope-importscripts title=dom-WorkerGlobalScope-importScripts><code>importScripts(<var title="">urls</var>)</code></dfn> method on a
   <code><a href=#workerglobalscope>WorkerGlobalScope</a></code> object, the user agent must run the
@@ -64699,7 +64717,7 @@
 
     </ol></li>
 
-  </ol><h4 id=the-navigator-object><span class=secno>8.3.2 </span>The <code title=worker-Navigator><a href=#worker-navigator>Navigator</a></code> object</h4>
+  </ol><h4 id=the-navigator-object><span class=secno>9.3.2 </span>The <code title=worker-Navigator><a href=#worker-navigator>Navigator</a></code> object</h4>
 
   <p>The <dfn id=dom-worker-navigator title=dom-worker-navigator><code>navigator</code></dfn> attribute
   of the <code><a href=#workerutils>WorkerUtils</a></code> interface must return an instance of
@@ -64721,7 +64739,7 @@
 
 
 
-  <h4 id=apis-defined-in-other-specifications><span class=secno>8.3.3 </span>APIs defined in other specifications</h4>
+  <h4 id=apis-defined-in-other-specifications><span class=secno>9.3.3 </span>APIs defined in other specifications</h4>
 
   <p>The <code title=dom-opendatabase><a href=#dom-opendatabase>openDatabase()</a></code> and
   <code title=dom-opendatabase-sync><a href=#dom-opendatabase-sync>openDatabaseSync()</a></code>
@@ -64729,7 +64747,7 @@
 
 
 
-  <h4 id=interface-objects-and-constructors><span class=secno>8.3.4 </span>Interface objects and constructors</h4>
+  <h4 id=interface-objects-and-constructors><span class=secno>9.3.4 </span>Interface objects and constructors</h4>
 
   <p>There must be no interface objects and constructors available in
   the global scope of scripts whose <span>script execution
@@ -64755,7 +64773,7 @@
 
    <li><p>The <code title=dom-Worker><a href=#dom-worker>Worker()</a></code> and <code title=dom-SharedWorker><a href=#dom-sharedworker>SharedWorker(<var title="">url</var>)</a></code> constructors.</li>
 
-  </ul><h4 id=worker-locations><span class=secno>8.3.5 </span>Worker locations</h4>
+  </ul><h4 id=worker-locations><span class=secno>9.3.5 </span>Worker locations</h4>
 
   <pre class=idl>interface <dfn id=workerlocation>WorkerLocation</dfn> {
   readonly attribute DOMString <a href=#dom-workerlocation-href title=dom-WorkerLocation-href>href</a>;
@@ -64791,10 +64809,10 @@
   
 
 
-  <h2 id=comms><span class=secno>9 </span>Communication</h2>
+  <h2 id=comms><span class=secno>10 </span>Communication</h2>
 
 
-  <h3 id=event-definitions><span class=secno>9.1 </span>Event definitions</h3>
+  <h3 id=event-definitions><span class=secno>10.1 </span>Event definitions</h3>
 
   <p>Messages in <a href=#server-sent-events>server-sent events</a>, <a href=#network>Web
   sockets</a>, <a href=#crossDocumentMessages>cross-document messaging</a>, and
@@ -64900,9 +64918,9 @@
 
 
 
-  <h3 id=server-sent-events><span class=secno>9.2 </span><dfn>Server-sent events</dfn></h3> 
+  <h3 id=server-sent-events><span class=secno>10.2 </span><dfn>Server-sent events</dfn></h3> 
 
-  <h4 id=server-sent-events-intro><span class=secno>9.2.1 </span>Introduction</h4>
+  <h4 id=server-sent-events-intro><span class=secno>10.2.1 </span>Introduction</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -64930,7 +64948,7 @@
 data: This is the third message.</pre>
 
 
-  <h4 id=the-eventsource-interface><span class=secno>9.2.2 </span>The <code><a href=#eventsource>EventSource</a></code> interface</h4>
+  <h4 id=the-eventsource-interface><span class=secno>10.2.2 </span>The <code><a href=#eventsource>EventSource</a></code> interface</h4>
 
   <pre class=idl>[<a href=#dom-eventsource title=dom-EventSource>Constructor</a>(in DOMString url)]
 interface <dfn id=eventsource>EventSource</dfn> {
@@ -65045,7 +65063,7 @@
   </ul><p>These values are not currently exposed on the interface.</p>
 
 
-  <h4 id=processing-model-5><span class=secno>9.2.3 </span>Processing model</h4>
+  <h4 id=processing-model-5><span class=secno>10.2.3 </span>Processing model</h4>
 
   <p>The resource indicated in the argument to the <code title=dom-EventSource><a href=#dom-eventsource>EventSource</a></code> constructor is <a href=#fetch title=fetch>fetched</a> when the constructor is run.</p>
 
@@ -65176,7 +65194,7 @@
   <dfn id=remote-event-task-source>remote event task source</dfn>.</p>
 
 
-  <h4 id=parsing-an-event-stream><span class=secno>9.2.4 </span>Parsing an event stream</h4>
+  <h4 id=parsing-an-event-stream><span class=secno>10.2.4 </span>Parsing an event stream</h4>
 
   <p>This event stream format's <a href=#mime-type>MIME type</a> is
   <code><a href=#text/event-stream>text/event-stream</a></code>.</p>
@@ -65217,7 +65235,7 @@
   expected line endings can cause delays in event dispatch.</p>
 
 
-  <h4 id=event-stream-interpretation><span class=secno>9.2.5 </span>Interpreting an event stream</h4>
+  <h4 id=event-stream-interpretation><span class=secno>10.2.5 </span>Interpreting an event stream</h4>
 
   <p>Bytes or sequences of bytes that are not valid UTF-8 sequences
   must be interpreted as the U+FFFD REPLACEMENT CHARACTER.</p>
@@ -65464,7 +65482,7 @@
   </div>
 
 
-  <h4 id=notes><span class=secno>9.2.6 </span>Notes</h4>
+  <h4 id=notes><span class=secno>10.2.6 </span>Notes</h4>
 
   <p>Legacy proxy servers are known to, in certain cases, drop HTTP
   connections after a short timeout. To protect against such proxy
@@ -65505,7 +65523,7 @@
   negotiation to reduce network load in GSM environments.</p>
 
 
-  <h4 id=garbage-collection-0><span class=secno>9.2.7 </span>Garbage collection</h4>
+  <h4 id=garbage-collection-0><span class=secno>10.2.7 </span>Garbage collection</h4>
 
   <p>While an <code><a href=#eventsource>EventSource</a></code> object's <code title=dom-EventSource-readyState><a href=#dom-eventsource-readystate>readyState</a></code> is not <code title=dom-EventSource-CLOSED><a href=#dom-eventsource-closed>CLOSED</a></code>, and the object has one
   or more event listeners registered for <code title=event-message><a href=#event-message>message</a></code> events, there must be a strong
@@ -65517,9 +65535,9 @@
   its connection is still open, the connection must be closed.</p>
 
 
-  <h4 id=iana-considerations><span class=secno>9.2.8 </span>IANA considerations</h4>
+  <h4 id=iana-considerations><span class=secno>10.2.8 </span>IANA considerations</h4>
 
-  <h5 id=text/event-stream><span class=secno>9.2.8.1 </span><dfn><code>text/event-stream</code></dfn></h5>
+  <h5 id=text/event-stream><span class=secno>10.2.8.1 </span><dfn><code>text/event-stream</code></dfn></h5>
 
   <p>This registration is for community review and will be submitted
   to the IESG for review, approval, and registration with IANA.</p>
@@ -65597,7 +65615,7 @@
   <code><a href=#text/event-stream>text/event-stream</a></code> resources.</p>
 
 
-  <h5 id=last-event-id><span class=secno>9.2.8.2 </span><dfn title=http-last-event-id><code>Last-Event-ID</code></dfn></h5>
+  <h5 id=last-event-id><span class=secno>10.2.8.2 </span><dfn title=http-last-event-id><code>Last-Event-ID</code></dfn></h5>
 
   <p>This section describes a header field for registration in the
   Permanent Message Header Field Registry.  <a href=#refsRFC3864>[RFC3864]</a></p>
@@ -65616,9 +65634,9 @@
    </dd>
    <dt>Related information</dt>
    <dd>None.</dd>   
-  </dl><h3 id=network><span class=secno>9.3 </span><dfn>Web sockets</dfn></h3> 
+  </dl><h3 id=network><span class=secno>10.3 </span><dfn>Web sockets</dfn></h3> 
 
-  <h4 id=network-intro><span class=secno>9.3.1 </span>Introduction</h4>
+  <h4 id=network-intro><span class=secno>10.3.1 </span>Introduction</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -65632,7 +65650,7 @@
   server.</p>
 
 
-  <h4 id=the-websocket-interface><span class=secno>9.3.2 </span>The <code><a href=#websocket>WebSocket</a></code> interface</h4>
+  <h4 id=the-websocket-interface><span class=secno>10.3.2 </span>The <code><a href=#websocket>WebSocket</a></code> interface</h4>
 
   <pre class=idl>[<a href=#dom-websocket title=dom-WebSocket>Constructor</a>(in DOMString url, in optional DOMString protocol)]
 interface <dfn id=websocket>WebSocket</dfn> {
@@ -65764,7 +65782,7 @@
    <tbody><tr><td><dfn id=handler-websocket-onopen title=handler-WebSocket-onopen><code>onopen</code></dfn> <td> <code title=event-open>open</code>
     <tr><td><dfn id=handler-websocket-onmessage title=handler-WebSocket-onmessage><code>onmessage</code></dfn> <td> <code title=event-message><a href=#event-message>message</a></code>
     <tr><td><dfn id=handler-websocket-onclose title=handler-WebSocket-onclose><code>onclose</code></dfn> <td> <code title=event-close>close</code>
-  </table><h4 id=feedback-from-the-protocol><span class=secno>9.3.3 </span>Feedback from the protocol</h4>
+  </table><h4 id=feedback-from-the-protocol><span class=secno>10.3.3 </span>Feedback from the protocol</h4>
 
   <p>When the <i><a href=#web-socket-connection-is-established>Web Socket connection is established</a></i>, the user
   agent must run the following steps:</p>
@@ -65801,7 +65819,7 @@
   source</dfn>.</p>
 
 
-  <h5 id=garbage-collection-1><span class=secno>9.3.3.1 </span>Garbage collection</h5>
+  <h5 id=garbage-collection-1><span class=secno>10.3.3.1 </span>Garbage collection</h5>
 
   <p>A <code><a href=#websocket>WebSocket</a></code> object with an open connection must not
   be garbage collected if there are any event listeners registered for
@@ -65822,7 +65840,7 @@
   protocol. It is intended to fail to communicate with servers of
   pre-existing protocols like SMTP or HTTP, while allowing HTTP
   servers to opt-in to supporting this protocol if desired. It is
-  designed to be easy to implement on the server side."><span class=secno>9.3.4 </span>The Web Socket
+  designed to be easy to implement on the server side."><span class=secno>10.3.4 </span>The Web Socket
   protocol</h4>
 
   <div class=no-rfc>
@@ -65831,9 +65849,9 @@
   </div>
 
 
-  <h5 id=introduction-8><span class=secno>9.3.4.1 </span>Introduction</h5>
+  <h5 id=introduction-8><span class=secno>10.3.4.1 </span>Introduction</h5>
 
-  <h6 id=background-0><span class=secno>9.3.4.1.1 </span>Background</h6>
+  <h6 id=background-0><span class=secno>10.3.4.1.1 </span>Background</h6>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -65869,7 +65887,7 @@
 
 
 
-  <h6 id=protocol-overview><span class=secno>9.3.4.1.2 </span>Protocol overview</h6>
+  <h6 id=protocol-overview><span class=secno>10.3.4.1.2 </span>Protocol overview</h6>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -65931,7 +65949,7 @@
    `-- (0x80 .. 0xFF) --> Length --> Data... ------->-'</pre>
 
 
-  <h6 id=design-philosophy><span class=secno>9.3.4.1.3 </span>Design philosophy</h6>
+  <h6 id=design-philosophy><span class=secno>10.3.4.1.3 </span>Design philosophy</h6>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -65956,7 +65974,7 @@
   having its handshake be a valid HTTP Upgrade handshake also.</p>
 
 
-  <h6 id=security-model><span class=secno>9.3.4.1.4 </span>Security model</h6>
+  <h6 id=security-model><span class=secno>10.3.4.1.4 </span>Security model</h6>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -65968,7 +65986,7 @@
   arbitrary origin string.</p>
 
 
-  <h6 id=relationship-to-tcp/ip-and-http><span class=secno>9.3.4.1.5 </span>Relationship to TCP/IP and HTTP</h6>
+  <h6 id=relationship-to-tcp/ip-and-http><span class=secno>10.3.4.1.5 </span>Relationship to TCP/IP and HTTP</h6>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -65982,7 +66000,7 @@
   over TLS.</p>
 
 
-  <h6 id=establishing-a-connection><span class=secno>9.3.4.1.6 </span>Establishing a connection</h6>
+  <h6 id=establishing-a-connection><span class=secno>10.3.4.1.6 </span>Establishing a connection</h6>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -66013,9 +66031,9 @@
 
 
 
-  <h5 id=web-socket-urls><span class=secno>9.3.4.2 </span>Web Socket URLs</h5>
+  <h5 id=web-socket-urls><span class=secno>10.3.4.2 </span>Web Socket URLs</h5>
 
-  <h6 id=parsing-web-socket-urls><span class=secno>9.3.4.2.1 </span>Parsing Web Socket URLs</h6>
+  <h6 id=parsing-web-socket-urls><span class=secno>10.3.4.2.1 </span>Parsing Web Socket URLs</h6>
 
   <p>The steps to <dfn id="parse-a-web-socket-url's-components">parse a Web Socket URL's components</dfn> from
   a string <var title="">url</var> are as follows. These steps return
@@ -66081,7 +66099,7 @@
    <li><p>Return <var title="">host</var>, <var title="">port</var>,
    <var title="">resource name</var>, and <var title="">secure</var>.</li>
 
-  </ol><h6 id=constructing-web-socket-urls><span class=secno>9.3.4.2.2 </span>Constructing Web Socket URLs</h6>
+  </ol><h6 id=constructing-web-socket-urls><span class=secno>10.3.4.2.2 </span>Constructing Web Socket URLs</h6>
 
   <p>The steps to <dfn id=construct-a-web-socket-url>construct a Web Socket URL</dfn> from a <var title="">host</var>, a <var title="">port</var>, a <var title="">resource name</var>, and a <var title="">secure</var> flag,
   are as follows:</p>
@@ -66102,7 +66120,7 @@
 
    <li>Return <var title="">url</var>.</li>
 
-  </ol><h5 id=client-side-requirements><span class=secno>9.3.4.3 </span>Client-side requirements</h5>
+  </ol><h5 id=client-side-requirements><span class=secno>10.3.4.3 </span>Client-side requirements</h5>
 
   <p><i>This section only applies to user agents, not to
   servers.</i></p>
@@ -66112,7 +66130,7 @@
   establish to a server.</p>
 
 
-  <h6 id=handshake><span class=secno>9.3.4.3.1 </span>Handshake</h6>
+  <h6 id=handshake><span class=secno>10.3.4.3.1 </span>Handshake</h6>
 
   <p>When the user agent is to <dfn id=establish-a-web-socket-connection>establish a Web Socket
   connection</dfn> to a host <var title="">host</var>, on a port <var title="">port</var>, from an origin whose <a href=#ascii-serialization-of-an-origin title="ASCII
@@ -66703,7 +66721,7 @@
 
    </li>
 
-  </ol><h6 id=data-framing><span class=secno>9.3.4.3.2 </span>Data framing</h6>
+  </ol><h6 id=data-framing><span class=secno>10.3.4.3.2 </span>Data framing</h6>
 
   <p>Once a <a href=#web-socket-connection-is-established>Web Socket connection is established</a>, the
   user agent must run through the following state machine for the
@@ -66811,7 +66829,7 @@
   data. -->
 
 
-  <h6 id=closing-the-connection><span class=secno>9.3.4.3.3 </span>Closing the connection</h6>
+  <h6 id=closing-the-connection><span class=secno>10.3.4.3.3 </span>Closing the connection</h6>
 
   <p>To <dfn id=fail-the-web-socket-connection>fail the Web Socket connection</dfn>, the user agent must
   <a href=#close-the-web-socket-connection>close the Web Socket connection</a>, and may report the
@@ -66825,7 +66843,7 @@
   not close the connection.</p>
 
 
-  <h6 id=handling-errors-in-utf-8><span class=secno>9.3.4.3.4 </span>Handling errors in UTF-8</h6>
+  <h6 id=handling-errors-in-utf-8><span class=secno>10.3.4.3.4 </span>Handling errors in UTF-8</h6>
 
   <p>When a client is to interpret a byte stream as UTF-8 but finds
   that the byte stream is not in fact a valid UTF-8 stream, then any
@@ -66834,11 +66852,11 @@
 
 
 
-  <h5 id=server-side-requirements><span class=secno>9.3.4.4 </span>Server-side requirements</h5>
+  <h5 id=server-side-requirements><span class=secno>10.3.4.4 </span>Server-side requirements</h5>
 
   <p><i>This section only applies to servers.</i></p>
 
-  <h6 id=minimal-handshake><span class=secno>9.3.4.4.1 </span>Minimal handshake</h6>
+  <h6 id=minimal-handshake><span class=secno>10.3.4.4.1 </span>Minimal handshake</h6>
 
   <p class=note>This section describes the minimal requirements for
   a server-side implementation of Web Sockets.</p>
@@ -66893,7 +66911,7 @@
   <p>If the connection isn't dropped at this point, go to the <a href=#ws-sd-framing>data framing</a> section.</p>
 
 
-  <h6 id=handshake-details><span class=secno>9.3.4.4.2 </span>Handshake details</h6>
+  <h6 id=handshake-details><span class=secno>10.3.4.4.2 </span>Handshake details</h6>
 
   <p>The previous section ignores the data that is transmitted by the
   client during the handshake.</p>
@@ -66964,7 +66982,7 @@
   discarded and may cause the server to disconnect.</p>
 
 
-  <h6 id=ws-sd-framing><span class=secno>9.3.4.4.3 </span>Data framing</h6>
+  <h6 id=ws-sd-framing><span class=secno>10.3.4.4.3 </span>Data framing</h6>
 
   <p class=note>This section only describes how to handle content
   that this specification allows user agents to send (text). It
@@ -67005,7 +67023,7 @@
    <li><p>Send a 0xFF byte to the client to indicate the end of the
    message.</li>
 
-  </ol><h5 id=closing-the-connection-0><span class=secno>9.3.4.5 </span>Closing the connection</h5>
+  </ol><h5 id=closing-the-connection-0><span class=secno>10.3.4.5 </span>Closing the connection</h5>
 
   <p>To <dfn id=close-the-web-socket-connection>close the Web Socket connection</dfn>, either the user
   agent or the server closes the TCP/IP connection. There is no
@@ -67029,7 +67047,7 @@
   connection</a> arbitrarily.</p>
 
 
-  <h5 id=security-considerations><span class=secno>9.3.4.6 </span>Security considerations</h5>
+  <h5 id=security-considerations><span class=secno>10.3.4.6 </span>Security considerations</h5>
 
   <p>While this protocol is intended to be used by scripts in Web
   pages, it can also be used directly by hosts. Such hosts are acting
@@ -67060,9 +67078,9 @@
   disconnect. It is always safe to disconnect.</p>
 
 
-  <h5 id=iana-considerations-0><span class=secno>9.3.4.7 </span>IANA considerations</h5>
+  <h5 id=iana-considerations-0><span class=secno>10.3.4.7 </span>IANA considerations</h5>
 
-  <h6 id=registration-of-ws:-scheme><span class=secno>9.3.4.7.1 </span>Registration of <code title="">ws:</code> scheme</h6>
+  <h6 id=registration-of-ws:-scheme><span class=secno>10.3.4.7.1 </span>Registration of <code title="">ws:</code> scheme</h6>
 
   <p>A <code title="">ws:</code> URL identifies a Web Socket server
   and resource name.</p>
@@ -67125,7 +67143,7 @@
    <dt>References.</dt>
    <dd>This document.</dd>
 
-  </dl><h6 id=registration-of-wss:-scheme><span class=secno>9.3.4.7.2 </span>Registration of <code title="">wss:</code> scheme</h6>
+  </dl><h6 id=registration-of-wss:-scheme><span class=secno>10.3.4.7.2 </span>Registration of <code title="">wss:</code> scheme</h6>
 
   <p>A <code title="">wss:</code> URL identifies a Web Socket server
   and resource name, and indicates that traffic over that connection
@@ -67188,7 +67206,7 @@
    <dt>References.</dt>
    <dd>This document.</dd>
 
-  </dl><h6 id=registration-of-the-websocket-http-upgrade-keyword><span class=secno>9.3.4.7.3 </span>Registration of the "<code title="">WebSocket</code>" HTTP Upgrade keyword</h6>
+  </dl><h6 id=registration-of-the-websocket-http-upgrade-keyword><span class=secno>10.3.4.7.3 </span>Registration of the "<code title="">WebSocket</code>" HTTP Upgrade keyword</h6>
 
   <dl><dt>Name of token.</dt>
    <dd>WebSocket</dd>
@@ -67202,7 +67220,7 @@
    <dt>References.</dt>
    <dd>This document.</dd>
 
-  </dl><h6 id=websocket-origin><span class=secno>9.3.4.7.4 </span><dfn title=http-websocket-origin><code>WebSocket-Origin</code></dfn></h6>
+  </dl><h6 id=websocket-origin><span class=secno>10.3.4.7.4 </span><dfn title=http-websocket-origin><code>WebSocket-Origin</code></dfn></h6>
 
   <p>This section describes a header field for registration in the
   Permanent Message Header Field Registry.  <a href=#refsRFC3864>[RFC3864]</a></p>
@@ -67221,7 +67239,7 @@
    </dd>
    <dt>Related information</dt>
    <dd>None.</dd>   
-  </dl><h6 id=websocket-protocol-0><span class=secno>9.3.4.7.5 </span><dfn title=http-websocket-protocol><code>WebSocket-Protocol</code></dfn></h6>
+  </dl><h6 id=websocket-protocol-0><span class=secno>10.3.4.7.5 </span><dfn title=http-websocket-protocol><code>WebSocket-Protocol</code></dfn></h6>
 
   <p>This section describes a header field for registration in the
   Permanent Message Header Field Registry.  <a href=#refsRFC3864>[RFC3864]</a></p>
@@ -67240,7 +67258,7 @@
    </dd>
    <dt>Related information</dt>
    <dd>None.</dd>   
-  </dl><h6 id=websocket-location><span class=secno>9.3.4.7.6 </span><dfn title=http-websocket-location><code>WebSocket-Location</code></dfn></h6>
+  </dl><h6 id=websocket-location><span class=secno>10.3.4.7.6 </span><dfn title=http-websocket-location><code>WebSocket-Location</code></dfn></h6>
 
   <p>This section describes a header field for registration in the
   Permanent Message Header Field Registry.  <a href=#refsRFC3864>[RFC3864]</a></p>
@@ -67259,7 +67277,7 @@
    </dd>
    <dt>Related information</dt>
    <dd>None.</dd>   
-  </dl><h5 id=using-the-web-socket-protocol-from-other-specifications><span class=secno>9.3.4.8 </span>Using the Web Socket protocol from other specifications</h5>
+  </dl><h5 id=using-the-web-socket-protocol-from-other-specifications><span class=secno>10.3.4.8 </span>Using the Web Socket protocol from other specifications</h5>
 
   <p>The Web Socket protocol is intended to be used by another
   specification to provide a generic mechanism for dynamic
@@ -67313,7 +67331,7 @@
   
 
 
-  <h3 id=crossDocumentMessages><span class=secno>9.4 </span><dfn>Cross-document messaging</dfn></h3>
+  <h3 id=crossDocumentMessages><span class=secno>10.4 </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
@@ -67334,7 +67352,7 @@
   </div>
 
 
-  <h4 id=introduction-9><span class=secno>9.4.1 </span>Introduction</h4>
+  <h4 id=introduction-9><span class=secno>10.4.1 </span>Introduction</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -67375,11 +67393,11 @@
   </div>
 
 
-  <h4 id=security-5><span class=secno>9.4.2 </span>Security</h4>
+  <h4 id=security-5><span class=secno>10.4.2 </span>Security</h4>
 
   <div class=impl>
 
-  <h5 id=authors><span class=secno>9.4.2.1 </span>Authors</h5>
+  <h5 id=authors><span class=secno>10.4.2.1 </span>Authors</h5>
 
   </div>
 
@@ -67407,7 +67425,7 @@
 
   <div class=impl>
 
-  <h5 id=user-agents><span class=secno>9.4.2.2 </span>User agents</h5>
+  <h5 id=user-agents><span class=secno>10.4.2.2 </span>User agents</h5>
 
   <p>The integrity of this API is based on the inability for scripts
   of one <a href=#origin>origin</a> to post arbitrary events (using <code title="">dispatchEvent()</code> or otherwise) to objects in other
@@ -67423,7 +67441,7 @@
   </div>
 
 
-  <h4 id=posting-messages><span class=secno>9.4.3 </span>Posting messages</h4>
+  <h4 id=posting-messages><span class=secno>10.4.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>
 
@@ -67516,7 +67534,7 @@
 
   <div class=impl>
 
-  <h4 id=posting-messages-with-message-ports><span class=secno>9.4.4 </span>Posting messages with message ports</h4>
+  <h4 id=posting-messages-with-message-ports><span class=secno>10.4.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
@@ -67638,9 +67656,9 @@
 
 
 
-  <h3 id=channel-messaging><span class=secno>9.5 </span><dfn>Channel messaging</dfn></h3>
+  <h3 id=channel-messaging><span class=secno>10.5 </span><dfn>Channel messaging</dfn></h3>
 
-  <h4 id=message-channels><span class=secno>9.5.1 </span>Message channels</h4>
+  <h4 id=message-channels><span class=secno>10.5.1 </span>Message channels</h4>
 
   <pre class=idl>[<a href=#dom-messagechannel title=dom-MessageChannel>Constructor</a>]
 interface <dfn id=messagechannel>MessageChannel</dfn> {
@@ -67709,7 +67727,7 @@
 
 
 
-  <h4 id=message-ports><span class=secno>9.5.2 </span>Message ports</h4>
+  <h4 id=message-ports><span class=secno>10.5.2 </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>
@@ -67996,7 +68014,7 @@
   </div>
 
 
-  <h5 id=ports-and-garbage-collection><span class=secno>9.5.2.1 </span>Ports and garbage collection</h5>
+  <h5 id=ports-and-garbage-collection><span class=secno>10.5.2.1 </span>Ports and garbage collection</h5>
 
   <div class=impl>
 
@@ -68042,7 +68060,7 @@
 
 
 
-  <h2 id=syntax><span class=secno>10 </span><dfn>The HTML syntax</dfn></h2>
+  <h2 id=syntax><span class=secno>11 </span><dfn>The HTML syntax</dfn></h2>
 
   <p class=note>This section only describes the rules for
   <code><a href=#text/html>text/html</a></code> resources. Rules for XML resources are
@@ -68050,7 +68068,7 @@
   syntax</a>".</p>
 
 
-  <h3 id=writing><span class=secno>10.1 </span>Writing HTML documents</h3>
+  <h3 id=writing><span class=secno>11.1 </span>Writing HTML documents</h3>
 
   <div class=impl>
 
@@ -68112,7 +68130,7 @@
   as "case-insensitive".</p>
 
 
-  <h4 id=the-doctype><span class=secno>10.1.1 </span>The DOCTYPE</h4>
+  <h4 id=the-doctype><span class=secno>11.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>
@@ -68160,7 +68178,7 @@
 
 
 
-  <h4 id=elements-0><span class=secno>10.1.2 </span>Elements</h4>
+  <h4 id=elements-0><span class=secno>11.1.2 </span>Elements</h4>
 
   <p>There are five different kinds of <dfn id=syntax-elements title=syntax-elements>elements</dfn>: <a href=#void-elements>void elements</a>,
   <a href=#raw-text-elements>raw text elements</a>, <a href=#rcdata-elements>RCDATA elements</a>,
@@ -68283,7 +68301,7 @@
   tag name; tag names are case-insensitive.</p>
 
 
-  <h5 id=start-tags><span class=secno>10.1.2.1 </span>Start tags</h5>
+  <h5 id=start-tags><span class=secno>11.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>
@@ -68315,7 +68333,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>10.1.2.2 </span>End tags</h5>
+  </ol><h5 id=end-tags><span class=secno>11.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>
@@ -68335,7 +68353,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>10.1.2.3 </span>Attributes</h5>
+  </ol><h5 id=attributes><span class=secno>11.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>
@@ -68530,7 +68548,7 @@
   HTML syntax</a>.</p>
 
 
-  <h5 id=optional-tags><span class=secno>10.1.2.4 </span>Optional tags</h5>
+  <h5 id=optional-tags><span class=secno>11.1.2.4 </span>Optional tags</h5>
 
   <p>Certain tags can be <dfn id=syntax-tag-omission title=syntax-tag-omission>omitted</dfn>.</p>
 
@@ -68708,7 +68726,7 @@
   tag</a> must never be omitted if it has any attributes.</p>
 
 
-  <h5 id=element-restrictions><span class=secno>10.1.2.5 </span>Restrictions on content models</h5>
+  <h5 id=element-restrictions><span class=secno>11.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>
@@ -68737,7 +68755,7 @@
   </div>
 
 
-  <h5 id=cdata-rcdata-restrictions><span class=secno>10.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</h5>
+  <h5 id=cdata-rcdata-restrictions><span class=secno>11.1.2.6 </span>Restrictions on the contents of raw text and RCDATA elements</h5>
 
   <p>The text in <a href=#raw-text-elements title="raw text elements">raw text</a> and
   <a href=#rcdata-elements title="RCDATA elements">RCDATAs</a> element must not
@@ -68781,7 +68799,7 @@
   span end</a>.</p>
 
 
-  <h4 id=text-0><span class=secno>10.1.3 </span>Text</h4>
+  <h4 id=text-0><span class=secno>11.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.
@@ -68793,7 +68811,7 @@
   to be put, as described in the other sections.</p>
 
 
-  <h5 id=newlines><span class=secno>10.1.3.1 </span>Newlines</h5>
+  <h5 id=newlines><span class=secno>11.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
@@ -68801,7 +68819,7 @@
   U+000A LINE FEED (LF) characters in that order.</p>
 
 
-  <h4 id=character-references><span class=secno>10.1.4 </span>Character references</h4>
+  <h4 id=character-references><span class=secno>11.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
@@ -68857,7 +68875,7 @@
   (<code>&</code>).</p>
 
 
-  <h4 id=cdata-sections><span class=secno>10.1.5 </span>CDATA sections</h4>
+  <h4 id=cdata-sections><span class=secno>11.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
@@ -68874,7 +68892,7 @@
   SIGN (<code title="">]]></code>).</p>
 
 
-  <h4 id=comments><span class=secno>10.1.6 </span>Comments</h4>
+  <h4 id=comments><span class=secno>11.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
@@ -68892,7 +68910,7 @@
 
   <div class=impl>
 
-  <h3 id=parsing><span class=secno>10.2 </span>Parsing HTML documents</h3>
+  <h3 id=parsing><span class=secno>11.2 </span>Parsing HTML documents</h3>
 
   <p><i>This section only applies to user agents, data mining tools,
   and conformance checkers.</i></p>
@@ -68961,7 +68979,7 @@
 
   <div class=impl>
 
-  <h4 id=overview-of-the-parsing-model><span class=secno>10.2.1 </span>Overview of the parsing model</h4>
+  <h4 id=overview-of-the-parsing-model><span class=secno>11.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
@@ -69010,7 +69028,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-stream><span class=secno>10.2.2 </span>The <dfn>input stream</dfn></h4>
+  <h4 id=the-input-stream><span class=secno>11.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
@@ -69024,7 +69042,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>10.2.2.1 </span>Determining the character encoding</h5>
+  <h5 id=determining-the-character-encoding><span class=secno>11.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
@@ -69408,7 +69426,7 @@
   use for the input stream.</p>
 
 
-  <h5 id=character-encodings-0><span class=secno>10.2.2.2 </span>Character encodings</h5>
+  <h5 id=character-encodings-0><span class=secno>11.2.2.2 </span>Character encodings</h5>
 
   <p>User agents must at a minimum support the UTF-8 and Windows-1252
   encodings, but may support more.</p>
@@ -69512,7 +69530,7 @@
 
 
 
-  <h5 id=preprocessing-the-input-stream><span class=secno>10.2.2.3 </span>Preprocessing the input stream</h5>
+  <h5 id=preprocessing-the-input-stream><span class=secno>11.2.2.3 </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
@@ -69595,7 +69613,7 @@
   the stream, but rather the lack of any further characters.</p>
 
 
-  <h5 id=changing-the-encoding-while-parsing><span class=secno>10.2.2.4 </span>Changing the encoding while parsing</h5>
+  <h5 id=changing-the-encoding-while-parsing><span class=secno>11.2.2.4 </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
@@ -69652,9 +69670,9 @@
 
   <div class=impl>
 
-  <h4 id=parse-state><span class=secno>10.2.3 </span>Parse state</h4>
+  <h4 id=parse-state><span class=secno>11.2.3 </span>Parse state</h4>
 
-  <h5 id=the-insertion-mode><span class=secno>10.2.3.1 </span>The insertion mode</h5>
+  <h5 id=the-insertion-mode><span class=secno>11.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>
@@ -69799,7 +69817,7 @@
 
    <li>Return to step 3.</li>
 
-  </ol><h5 id=the-stack-of-open-elements><span class=secno>10.2.3.2 </span>The stack of open elements</h5>
+  </ol><h5 id=the-stack-of-open-elements><span class=secno>11.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
@@ -69944,7 +69962,7 @@
   the stack is manipulated in a random-access fashion.</p>
 
 
-  <h5 id=the-list-of-active-formatting-elements><span class=secno>10.2.3.3 </span>The list of active formatting elements</h5>
+  <h5 id=the-list-of-active-formatting-elements><span class=secno>11.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>
@@ -70041,7 +70059,7 @@
 
    <li>Go to step 1.</li>
 
-  </ol><h5 id=the-element-pointers><span class=secno>10.2.3.4 </span>The element pointers</h5>
+  </ol><h5 id=the-element-pointers><span class=secno>11.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
@@ -70058,7 +70076,7 @@
   markup, for historical reasons.</p>
 
 
-  <h5 id=other-parsing-state-flags><span class=secno>10.2.3.5 </span>Other parsing state flags</h5>
+  <h5 id=other-parsing-state-flags><span class=secno>11.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
@@ -70077,7 +70095,7 @@
 
   <div class=impl>
 
-  <h4 id=tokenization><span class=secno>10.2.4 </span><dfn>Tokenization</dfn></h4>
+  <h4 id=tokenization><span class=secno>11.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
@@ -70146,7 +70164,7 @@
   <!-- Order of the lists below is supposed to be non-error then
   error, by unicode, then EOF, ending with "anything else" -->
 
-  <h5 id=data-state><span class=secno>10.2.4.1 </span><dfn>Data state</dfn></h5>
+  <h5 id=data-state><span class=secno>11.2.4.1 </span><dfn>Data state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70209,7 +70227,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-in-data-state><span class=secno>10.2.4.2 </span><dfn>Character reference in data state</dfn></h5>
+  </dl><h5 id=character-reference-in-data-state><span class=secno>11.2.4.2 </span><dfn>Character reference in data state</dfn></h5>
 
   <p><i>(This cannot happen if the <a href=#content-model-flag>content model flag</a>
   is set to the RAWTEXT state.)</i></p>
@@ -70225,7 +70243,7 @@
   <p>Finally, switch to the <a href=#data-state>data state</a>.</p>
 
 
-  <h5 id=tag-open-state><span class=secno>10.2.4.3 </span><dfn>Tag open state</dfn></h5>
+  <h5 id=tag-open-state><span class=secno>11.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>
@@ -70285,7 +70303,7 @@
 
     </dl></dd>
 
-  </dl><h5 id=close-tag-open-state><span class=secno>10.2.4.4 </span><dfn>Close tag open state</dfn></h5>
+  </dl><h5 id=close-tag-open-state><span class=secno>11.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
   RAWTEXT states but no start tag token has ever been emitted by this
@@ -70338,7 +70356,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>10.2.4.5 </span><dfn>Tag name state</dfn></h5>
+  </dl><h5 id=tag-name-state><span class=secno>11.2.4.5 </span><dfn>Tag name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70369,7 +70387,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>10.2.4.6 </span><dfn>Before attribute name state</dfn></h5>
+  </dl><h5 id=before-attribute-name-state><span class=secno>11.2.4.6 </span><dfn>Before attribute name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70411,7 +70429,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>10.2.4.7 </span><dfn>Attribute name state</dfn></h5>
+  </dl><h5 id=attribute-name-state><span class=secno>11.2.4.7 </span><dfn>Attribute name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70461,7 +70479,7 @@
   associated with it (if any).</p>
 
 
-  <h5 id=after-attribute-name-state><span class=secno>10.2.4.8 </span><dfn>After attribute name state</dfn></h5>
+  <h5 id=after-attribute-name-state><span class=secno>11.2.4.8 </span><dfn>After attribute name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70505,7 +70523,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>10.2.4.9 </span><dfn>Before attribute value state</dfn></h5>
+  </dl><h5 id=before-attribute-value-state><span class=secno>11.2.4.9 </span><dfn>Before attribute value state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70545,7 +70563,7 @@
    attribute's 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>10.2.4.10 </span><dfn>Attribute value (double-quoted) state</dfn></h5>
+  </dl><h5 id=attribute-value-(double-quoted)-state><span class=secno>11.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>
 
@@ -70567,7 +70585,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>10.2.4.11 </span><dfn>Attribute value (single-quoted) state</dfn></h5>
+  </dl><h5 id=attribute-value-(single-quoted)-state><span class=secno>11.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>
 
@@ -70589,7 +70607,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>10.2.4.12 </span><dfn>Attribute value (unquoted) state</dfn></h5>
+  </dl><h5 id=attribute-value-(unquoted)-state><span class=secno>11.2.4.12 </span><dfn>Attribute value (unquoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70626,7 +70644,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>10.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>11.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>
 
@@ -70640,7 +70658,7 @@
   in when were switched into this state.</p>
 
 
-  <h5 id=after-attribute-value-(quoted)-state><span class=secno>10.2.4.14 </span><dfn>After attribute value (quoted) state</dfn></h5>
+  <h5 id=after-attribute-value-(quoted)-state><span class=secno>11.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>
 
@@ -70666,7 +70684,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>10.2.4.15 </span><dfn>Self-closing start tag state</dfn></h5>
+  </dl><h5 id=self-closing-start-tag-state><span class=secno>11.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>
 
@@ -70683,7 +70701,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>10.2.4.16 </span><dfn>Bogus comment state</dfn></h5>
+  </dl><h5 id=bogus-comment-state><span class=secno>11.2.4.16 </span><dfn>Bogus comment state</dfn></h5>
 
   <p><i>(This can only happen if the <a href=#content-model-flag>content model
   flag</a> is set to the PCDATA state.)</i></p>
@@ -70704,7 +70722,7 @@
   character.</p>
 
 
-  <h5 id=markup-declaration-open-state><span class=secno>10.2.4.17 </span><dfn>Markup declaration open state</dfn></h5>
+  <h5 id=markup-declaration-open-state><span class=secno>11.2.4.17 </span><dfn>Markup declaration open state</dfn></h5>
 
   <p><i>(This can only happen if the <a href=#content-model-flag>content model
   flag</a> is set to the PCDATA state.)</i></p>
@@ -70732,7 +70750,7 @@
   comment.</p>
 
 
-  <h5 id=comment-start-state><span class=secno>10.2.4.18 </span><dfn>Comment start state</dfn></h5>
+  <h5 id=comment-start-state><span class=secno>11.2.4.18 </span><dfn>Comment start state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70752,7 +70770,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>10.2.4.19 </span><dfn>Comment start dash state</dfn></h5>
+  </dl><h5 id=comment-start-dash-state><span class=secno>11.2.4.19 </span><dfn>Comment start dash state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70773,7 +70791,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>10.2.4.20 </span><dfn id=comment>Comment state</dfn></h5>
+  </dl><h5 id=comment-state><span class=secno>11.2.4.20 </span><dfn id=comment>Comment state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70789,7 +70807,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>10.2.4.21 </span><dfn>Comment end dash state</dfn></h5>
+  </dl><h5 id=comment-end-dash-state><span class=secno>11.2.4.21 </span><dfn>Comment end dash state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70806,7 +70824,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>10.2.4.22 </span><dfn>Comment end state</dfn></h5>
+  </dl><h5 id=comment-end-state><span class=secno>11.2.4.22 </span><dfn>Comment end state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70845,7 +70863,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=comment-end-bang-state><span class=secno>10.2.4.23 </span><dfn>Comment end bang state</dfn></h5>
+  </dl><h5 id=comment-end-bang-state><span class=secno>11.2.4.23 </span><dfn>Comment end bang state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70869,7 +70887,7 @@
    comment token's data. Switch to the <a href=#comment-state>comment
    state</a>.</dd>
 
-  </dl><h5 id=comment-end-space-state><span class=secno>10.2.4.24 </span><dfn>Comment end space state</dfn></h5>
+  </dl><h5 id=comment-end-space-state><span class=secno>11.2.4.24 </span><dfn>Comment end space state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70897,7 +70915,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=doctype-state><span class=secno>10.2.4.25 </span><dfn>DOCTYPE state</dfn></h5>
+  </dl><h5 id=doctype-state><span class=secno>11.2.4.25 </span><dfn>DOCTYPE state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70917,7 +70935,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>10.2.4.26 </span><dfn>Before DOCTYPE name state</dfn></h5>
+  </dl><h5 id=before-doctype-name-state><span class=secno>11.2.4.26 </span><dfn>Before DOCTYPE name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70949,7 +70967,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>10.2.4.27 </span><dfn>DOCTYPE name state</dfn></h5>
+  </dl><h5 id=doctype-name-state><span class=secno>11.2.4.27 </span><dfn>DOCTYPE name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -70978,7 +70996,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>10.2.4.28 </span><dfn>After DOCTYPE name state</dfn></h5>
+  </dl><h5 id=after-doctype-name-state><span class=secno>11.2.4.28 </span><dfn>After DOCTYPE name state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71018,7 +71036,7 @@
 
    </dd>
 
-  </dl><h5 id=after-doctype-public-keyword-state><span class=secno>10.2.4.29 </span><dfn>After DOCTYPE public keyword state</dfn></h5>
+  </dl><h5 id=after-doctype-public-keyword-state><span class=secno>11.2.4.29 </span><dfn>After DOCTYPE public keyword state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71039,7 +71057,7 @@
    <dd><a href=#parse-error>Parse error</a>. Reconsume the current character in
    the <a href=#before-doctype-public-identifier-state>before DOCTYPE public identifier state</a>.</dd>
 
-  </dl><h5 id=before-doctype-public-identifier-state><span class=secno>10.2.4.30 </span><dfn>Before DOCTYPE public identifier state</dfn></h5>
+  </dl><h5 id=before-doctype-public-identifier-state><span class=secno>11.2.4.30 </span><dfn>Before DOCTYPE public identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71075,7 +71093,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>10.2.4.31 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-public-identifier-(double-quoted)-state><span class=secno>11.2.4.31 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71097,7 +71115,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>10.2.4.32 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-public-identifier-(single-quoted)-state><span class=secno>11.2.4.32 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71119,7 +71137,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>10.2.4.33 </span><dfn>After DOCTYPE public identifier state</dfn></h5>
+  </dl><h5 id=after-doctype-public-identifier-state><span class=secno>11.2.4.33 </span><dfn>After DOCTYPE public identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71154,7 +71172,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=between-doctype-public-and-system-identifiers-state><span class=secno>10.2.4.34 </span><dfn>Between DOCTYPE public and system identifiers state</dfn></h5>
+  </dl><h5 id=between-doctype-public-and-system-identifiers-state><span class=secno>11.2.4.34 </span><dfn>Between DOCTYPE public and system identifiers state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71189,7 +71207,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=after-doctype-system-keyword-state><span class=secno>10.2.4.35 </span><dfn>After DOCTYPE system keyword state</dfn></h5>
+  </dl><h5 id=after-doctype-system-keyword-state><span class=secno>11.2.4.35 </span><dfn>After DOCTYPE system keyword state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71210,7 +71228,7 @@
    <dd><a href=#parse-error>Parse error</a>. Reconsume the current character in
    the <a href=#before-doctype-system-identifier-state>before DOCTYPE system identifier state</a>.</dd>
 
-  </dl><h5 id=before-doctype-system-identifier-state><span class=secno>10.2.4.36 </span><dfn>Before DOCTYPE system identifier state</dfn></h5>
+  </dl><h5 id=before-doctype-system-identifier-state><span class=secno>11.2.4.36 </span><dfn>Before DOCTYPE system identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71246,7 +71264,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>10.2.4.37 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-system-identifier-(double-quoted)-state><span class=secno>11.2.4.37 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71268,7 +71286,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>10.2.4.38 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5>
+  </dl><h5 id=doctype-system-identifier-(single-quoted)-state><span class=secno>11.2.4.38 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71290,7 +71308,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>10.2.4.39 </span><dfn>After DOCTYPE system identifier state</dfn></h5>
+  </dl><h5 id=after-doctype-system-identifier-state><span class=secno>11.2.4.39 </span><dfn>After DOCTYPE system identifier state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71315,7 +71333,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>10.2.4.40 </span><dfn>Bogus DOCTYPE state</dfn></h5>
+  </dl><h5 id=bogus-doctype-state><span class=secno>11.2.4.40 </span><dfn>Bogus DOCTYPE state</dfn></h5>
 
   <p>Consume the <a href=#next-input-character>next input character</a>:</p>
 
@@ -71330,7 +71348,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>10.2.4.41 </span><dfn>CDATA section state</dfn></h5>
+  </dl><h5 id=cdata-section-state><span class=secno>11.2.4.41 </span><dfn>CDATA section state</dfn></h5>
 
   <p><i>(This can only happen if the <a href=#content-model-flag>content model
   flag</a> is set to the PCDATA state.)</i></p>
@@ -71350,7 +71368,7 @@
 
 
 
-  <h5 id=tokenizing-character-references><span class=secno>10.2.4.42 </span>Tokenizing character references</h5>
+  <h5 id=tokenizing-character-references><span class=secno>11.2.4.42 </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
@@ -71553,7 +71571,7 @@
   thing to do is to close some formatting elements from the middle of
   the stack when you hit a limit, or something. -->
 
-  <h4 id=tree-construction><span class=secno>10.2.5 </span><dfn>Tree construction</dfn></h4>
+  <h4 id=tree-construction><span class=secno>11.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
@@ -71628,7 +71646,7 @@
   constraints.</p>
 
 
-  <h5 id=creating-and-inserting-elements><span class=secno>10.2.5.1 </span>Creating and inserting elements</h5>
+  <h5 id=creating-and-inserting-elements><span class=secno>11.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
@@ -71809,7 +71827,7 @@
    <li><p>Then, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: in RAWTEXT/RCDATA">in
    RAWTEXT/RCDATA</a>".</li>
 
-  </ol><h5 id=closing-elements-that-have-implied-end-tags><span class=secno>10.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>11.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
@@ -71825,7 +71843,7 @@
   above steps as if that element was not in the above list.</p>
 
 
-  <h5 id=foster-parenting><span class=secno>10.2.5.3 </span>Foster parenting</h5>
+  <h5 id=foster-parenting><span class=secno>11.2.5.3 </span>Foster parenting</h5>
 
   <p>Foster parenting happens when content is misnested in tables.</p>
 
@@ -71858,7 +71876,7 @@
 
 
 
-  <h5 id=the-initial-insertion-mode><span class=secno>10.2.5.4 </span>The "<dfn title="insertion mode: initial">initial</dfn>" insertion mode</h5>
+  <h5 id=the-initial-insertion-mode><span class=secno>11.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>
@@ -72049,7 +72067,7 @@
 
    </dd>
 
-  </dl><h5 id=the-before-html-insertion-mode><span class=secno>10.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>11.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>
@@ -72132,7 +72150,7 @@
   as described in the next section.</p>
 
 
-  <h5 id=the-before-head-insertion-mode><span class=secno>10.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>11.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>
@@ -72198,7 +72216,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-inhead><span class=secno>10.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>11.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>
@@ -72359,7 +72377,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-inheadnoscript><span class=secno>10.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>11.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>
@@ -72419,7 +72437,7 @@
 
    </dd>
 
-  </dl><h5 id=the-after-head-insertion-mode><span class=secno>10.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>11.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>
@@ -72509,7 +72527,7 @@
     token.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-inbody><span class=secno>10.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>11.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>
@@ -73722,7 +73740,7 @@
 
     </ol></dd>
 
-  </dl><h5 id=parsing-main-incdata><span class=secno>10.2.5.11 </span>The "<dfn title="insertion mode: in RAWTEXT/RCDATA">in RAWTEXT/RCDATA</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-incdata><span class=secno>11.2.5.11 </span>The "<dfn title="insertion mode: in RAWTEXT/RCDATA">in RAWTEXT/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 RAWTEXT/RCDATA">in RAWTEXT/RCDATA</a>", tokens must be
@@ -73865,7 +73883,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-intable><span class=secno>10.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>11.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>
@@ -74048,7 +74066,7 @@
 
 
 
-  <h5 id=parsing-main-intabletext><span class=secno>10.2.5.13 </span>The "<dfn title="insertion mode: in table text">in table text</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-intabletext><span class=secno>11.2.5.13 </span>The "<dfn title="insertion mode: in table text">in table text</dfn>" insertion mode</h5>
 
   <p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intabletext title="insertion
   mode: in table text">in table text</a>", tokens must be handled
@@ -74083,7 +74101,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-incaption><span class=secno>10.2.5.14 </span>The "<dfn title="insertion mode: in caption">in caption</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-incaption><span class=secno>11.2.5.14 </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>
@@ -74141,7 +74159,7 @@
     mode</a>.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-incolgroup><span class=secno>10.2.5.15 </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>11.2.5.15 </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>
@@ -74228,7 +74246,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-intbody><span class=secno>10.2.5.16 </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>11.2.5.16 </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>
@@ -74317,7 +74335,7 @@
   case</a>.</p>
 
 
-  <h5 id=parsing-main-intr><span class=secno>10.2.5.17 </span>The "<dfn title="insertion mode: in row">in row</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-intr><span class=secno>11.2.5.17 </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>
@@ -74408,7 +74426,7 @@
   case</a>.</p>
 
 
-  <h5 id=parsing-main-intd><span class=secno>10.2.5.18 </span>The "<dfn title="insertion mode: in cell">in cell</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-intd><span class=secno>11.2.5.18 </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>
@@ -74502,7 +74520,7 @@
   cell</a>".</p>
 
 
-  <h5 id=parsing-main-inselect><span class=secno>10.2.5.19 </span>The "<dfn title="insertion mode: in select">in select</dfn>" insertion mode</h5>
+  <h5 id=parsing-main-inselect><span class=secno>11.2.5.19 </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>
@@ -74648,7 +74666,7 @@
     <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-inselectintable><span class=secno>10.2.5.20 </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>11.2.5.20 </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>
@@ -74680,7 +74698,7 @@
     mode</a>.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-inforeign><span class=secno>10.2.5.21 </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>11.2.5.21 </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
@@ -74872,7 +74890,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-afterbody><span class=secno>10.2.5.22 </span>The "<dfn title="insertion mode: after body">after body</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-afterbody><span class=secno>11.2.5.22 </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>
@@ -74930,7 +74948,7 @@
 
    </dd>
 
-  </dl><h5 id=parsing-main-inframeset><span class=secno>10.2.5.23 </span>The "<dfn title="insertion mode: in frameset">in frameset</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-inframeset><span class=secno>11.2.5.23 </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>
@@ -75023,7 +75041,7 @@
     <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
    </dd>
 
-  </dl><h5 id=parsing-main-afterframeset><span class=secno>10.2.5.24 </span>The "<dfn title="insertion mode: after frameset">after frameset</dfn>" insertion mode</h5>
+  </dl><h5 id=parsing-main-afterframeset><span class=secno>11.2.5.24 </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>
@@ -75077,7 +75095,7 @@
     <p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
    </dd>
 
-  </dl><h5 id=the-after-after-body-insertion-mode><span class=secno>10.2.5.25 </span>The "<dfn title="insertion mode: after after body">after after body</dfn>" insertion mode</h5>
+  </dl><h5 id=the-after-after-body-insertion-mode><span class=secno>11.2.5.25 </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>
@@ -75111,7 +75129,7 @@
     reprocess the token.</p>
    </dd>
 
-  </dl><h5 id=the-after-after-frameset-insertion-mode><span class=secno>10.2.5.26 </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>11.2.5.26 </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>
@@ -75154,7 +75172,7 @@
 
   <div class=impl>
 
-  <h4 id=the-end><span class=secno>10.2.6 </span>The end</h4>
+  <h4 id=the-end><span class=secno>11.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 run the following steps:</p>
@@ -75229,7 +75247,7 @@
 
   <div class=impl>
 
-  <h4 id=coercing-an-html-dom-into-an-infoset><span class=secno>10.2.7 </span>Coercing an HTML DOM into an infoset</h4>
+  <h4 id=coercing-an-html-dom-into-an-infoset><span class=secno>11.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
@@ -75318,7 +75336,7 @@
 
   <div class=impl>
 
-  <h4 id=an-introduction-to-error-handling-and-strange-cases-in-the-parser><span class=secno>10.2.8 </span>An introduction to error handling and strange cases in the parser</h4>
+  <h4 id=an-introduction-to-error-handling-and-strange-cases-in-the-parser><span class=secno>11.2.8 </span>An introduction to error handling and strange cases in the parser</h4>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -75326,7 +75344,7 @@
   the <a href=#html-parser>HTML parser</a> handles these cases.</p>
 
 
-  <h5 id=misnested-tags:-b-i-/b-/i><span class=secno>10.2.8.1 </span>Misnested tags: <b><i></b></i></h5>
+  <h5 id=misnested-tags:-b-i-/b-/i><span class=secno>11.2.8.1 </span>Misnested tags: <b><i></b></i></h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -75360,7 +75378,7 @@
   received, and the "5" text node is inserted, the DOM looks as
   follows:</p>
 
-  <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">4</span></ul><li class=t3><code>#text</code>: <span title="">5</span></ul></ul></ul></ul><h5 id=misnested-tags:-b-p-/b-/p><span class=secno>10.2.8.2 </span>Misnested tags: <b><p></b></p></h5>
+  <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul><li class=t1><code><a href=#the-i-element>i</a></code><ul><li class=t3><code>#text</code>: <span title="">4</span></ul><li class=t3><code>#text</code>: <span title="">5</span></ul></ul></ul></ul><h5 id=misnested-tags:-b-p-/b-/p><span class=secno>11.2.8.2 </span>Misnested tags: <b><p></b></p></h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -75409,7 +75427,7 @@
   elements</a>, so that when the "3" is parsed, it is appended to
   the <code><a href=#the-p-element>p</a></code> element:</p>
 
-  <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span></ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul></ul></ul><h5 id=unexpected-markup-in-tables><span class=secno>10.2.8.3 </span>Unexpected markup in tables</h5>
+  <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">1</span></ul><li class=t1><code><a href=#the-p-element>p</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">2</span></ul><li class=t3><code>#text</code>: <span title="">3</span></ul></ul></ul></ul><h5 id=unexpected-markup-in-tables><span class=secno>11.2.8.3 </span>Unexpected markup in tables</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -75508,7 +75526,7 @@
   result in yet another <code><a href=#the-b-element>b</a></code> element being created, this
   time after the table:</p>
 
-  <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">bbb</span></ul><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code><ul><li class=t1><code><a href=#the-td-element>td</a></code><ul><li class=t3><code>#text</code>: <span title="">aaa</span></ul></ul></ul></ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">ccc</span></ul></ul></ul></ul><h5 id=scripts-that-modify-the-page-as-it-is-being-parsed><span class=secno>10.2.8.4 </span>Scripts that modify the page as it is being parsed</h5>
+  <ul class=domTree><li class=t1><code><a href=#the-html-element-0>html</a></code><ul><li class=t1><code><a href=#the-head-element-0>head</a></code><li class=t1><code><a href=#the-body-element-0>body</a></code><ul><li class=t1><code><a href=#the-b-element>b</a></code><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">bbb</span></ul><li class=t1><code><a href=#the-table-element>table</a></code><ul><li class=t1><code><a href=#the-tbody-element>tbody</a></code><ul><li class=t1><code><a href=#the-tr-element>tr</a></code><ul><li class=t1><code><a href=#the-td-element>td</a></code><ul><li class=t3><code>#text</code>: <span title="">aaa</span></ul></ul></ul></ul><li class=t1><code><a href=#the-b-element>b</a></code><ul><li class=t3><code>#text</code>: <span title="">ccc</span></ul></ul></ul></ul><h5 id=scripts-that-modify-the-page-as-it-is-being-parsed><span class=secno>11.2.8.4 </span>Scripts that modify the page as it is being parsed</h5>
 
   <p><i>This section is non-normative.</i></p>
 
@@ -75566,7 +75584,7 @@
 
 
 
-  <h3 id=namespaces><span class=secno>10.3 </span>Namespaces</h3>
+  <h3 id=namespaces><span class=secno>11.3 </span>Namespaces</h3>
 
   <p>The <dfn id=html-namespace-0>HTML namespace</dfn> is: <code>http://www.w3.org/1999/xhtml</code></p>
 
@@ -75590,7 +75608,7 @@
 
 
 
-  <h3 id=serializing-html-fragments><span class=secno>10.4 </span>Serializing HTML fragments</h3>
+  <h3 id=serializing-html-fragments><span class=secno>11.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
@@ -75774,7 +75792,7 @@
   tag for the <code><a href=#the-p-element>p</a></code>).</p>
 
 
-  <h3 id=parsing-html-fragments><span class=secno>10.5 </span>Parsing HTML fragments</h3>
+  <h3 id=parsing-html-fragments><span class=secno>11.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
@@ -75938,7 +75956,7 @@
 
 
 
-  <h3 id=named-character-references><span class=secno>10.6 </span><dfn>Named character references</dfn></h3>
+  <h3 id=named-character-references><span class=secno>11.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
@@ -78094,7 +78112,7 @@
 
 
 
-  <h2 id=the-xhtml-syntax><span class=secno>11 </span><dfn id=xhtml>The XHTML syntax</dfn></h2>
+  <h2 id=the-xhtml-syntax><span class=secno>12 </span><dfn id=xhtml>The XHTML syntax</dfn></h2>
 
   <p class=note>This section only describes the rules for XML
   resources. Rules for <code><a href=#text/html>text/html</a></code> resources are discussed
@@ -78103,7 +78121,7 @@
 
   <div class=impl>
 
-  <h3 id=writing-xhtml-documents><span class=secno>11.1 </span>Writing XHTML documents</h3>
+  <h3 id=writing-xhtml-documents><span class=secno>12.1 </span>Writing XHTML documents</h3>
 
   </div>
 
@@ -78128,7 +78146,7 @@
 
   <div class=impl>
 
-  <h3 id=parsing-xhtml-documents><span class=secno>11.2 </span>Parsing XHTML documents</h3>
+  <h3 id=parsing-xhtml-documents><span class=secno>12.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>
@@ -78203,7 +78221,7 @@
 
 
 
-  <h3 id=serializing-xhtml-fragments><span class=secno>11.3 </span>Serializing XHTML fragments</h3>
+  <h3 id=serializing-xhtml-fragments><span class=secno>12.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
@@ -78300,7 +78318,7 @@
 
 
 
-  <h3 id=parsing-xhtml-fragments><span class=secno>11.4 </span>Parsing XHTML fragments</h3>
+  <h3 id=parsing-xhtml-fragments><span class=secno>12.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>
@@ -78370,7 +78388,7 @@
 
   <div class=impl>
 
-  <h2 id=rendering><span class=secno>12 </span>Rendering</h2>
+  <h2 id=rendering><span class=secno>13 </span>Rendering</h2>
 
   <p><i>User agents are not required to present HTML documents in any
   particular way. However, this section provides a set of suggestions
@@ -78382,7 +78400,7 @@
   lead to this experience.</i></p>
 
 
-  <h3 id=introduction-10><span class=secno>12.1 </span>Introduction</h3>
+  <h3 id=introduction-10><span class=secno>13.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
@@ -78418,9 +78436,9 @@
 
   <div class=impl>
 
-  <h3 id=the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>12.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>13.2 </span>The CSS user agent style sheet and presentational hints</h3>
 
-  <h4 id=introduction-11><span class=secno>12.2.1 </span>Introduction</h4>
+  <h4 id=introduction-11><span class=secno>13.2.1 </span>Introduction</h4>
 
   <p>The CSS rules given in these subsections are, except where
   otherwise specified, expected to be used as part of the user-agent
@@ -78457,7 +78475,7 @@
 
   <div class=impl>
 
-  <h4 id=display-types><span class=secno>12.2.2 </span>Display types</h4>
+  <h4 id=display-types><span class=secno>13.2.2 </span>Display types</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -78531,7 +78549,7 @@
 
   <div class=impl>
 
-  <h4 id=margins-and-padding><span class=secno>12.2.3 </span>Margins and padding</h4>
+  <h4 id=margins-and-padding><span class=secno>13.2.3 </span>Margins and padding</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -78713,7 +78731,7 @@
 
   <div class=impl>
 
-  <h4 id=alignment><span class=secno>12.2.4 </span>Alignment</h4>
+  <h4 id=alignment><span class=secno>13.2.4 </span>Alignment</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -78817,7 +78835,7 @@
 
   <div class=impl>
 
-  <h4 id=fonts-and-colors><span class=secno>12.2.5 </span>Fonts and colors</h4>
+  <h4 id=fonts-and-colors><span class=secno>13.2.5 </span>Fonts and colors</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -79059,7 +79077,7 @@
 
   <div class=impl>
 
-  <h4 id=punctuation-and-decorations><span class=secno>12.2.6 </span>Punctuation and decorations</h4>
+  <h4 id=punctuation-and-decorations><span class=secno>13.2.6 </span>Punctuation and decorations</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -79209,7 +79227,7 @@
 
   <div class=impl>
 
-  <h4 id=resetting-rules-for-inherited-properties><span class=secno>12.2.7 </span>Resetting rules for inherited properties</h4>
+  <h4 id=resetting-rules-for-inherited-properties><span class=secno>13.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>
@@ -79246,7 +79264,7 @@
 
   <div class=impl>
 
-  <h4 id=the-hr-element-0><span class=secno>12.2.8 </span>The <code><a href=#the-hr-element>hr</a></code> element</h4>
+  <h4 id=the-hr-element-0><span class=secno>13.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);
 
@@ -79299,7 +79317,7 @@
 
   <div class=impl>
 
-  <h4 id=the-fieldset-element-0><span class=secno>12.2.9 </span>The <code><a href=#the-fieldset-element>fieldset</a></code> element</h4>
+  <h4 id=the-fieldset-element-0><span class=secno>13.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);
 
@@ -79339,9 +79357,9 @@
 
   <div class=impl>
 
-  <h3 id=replaced-elements><span class=secno>12.3 </span>Replaced elements</h3>
+  <h3 id=replaced-elements><span class=secno>13.3 </span>Replaced elements</h3>
 
-  <h4 id=embedded-content-2><span class=secno>12.3.1 </span>Embedded content</h4>
+  <h4 id=embedded-content-2><span class=secno>13.3.1 </span>Embedded content</h4>
 
   <p>The <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 be treated as
@@ -79394,7 +79412,7 @@
 
   <div class=impl>
 
-  <h4 id=images-0><span class=secno>12.3.2 </span>Images</h4>
+  <h4 id=images-0><span class=secno>13.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
@@ -79466,7 +79484,7 @@
 
   <div class=impl>
 
-  <h4 id=attributes-for-embedded-content-and-images><span class=secno>12.3.3 </span>Attributes for embedded content and images</h4>
+  <h4 id=attributes-for-embedded-content-and-images><span class=secno>13.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>
@@ -79564,7 +79582,7 @@
 
   <div class=impl>
 
-  <h4 id=image-maps-0><span class=secno>12.3.4 </span>Image maps</h4>
+  <h4 id=image-maps-0><span class=secno>13.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
@@ -79592,7 +79610,7 @@
 
   <div class=impl>
 
-  <h4 id=toolbars-0><span class=secno>12.3.5 </span>Toolbars</h4>
+  <h4 id=toolbars-0><span class=secno>13.3.5 </span>Toolbars</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=#toolbar-state title="toolbar state">toolbar</a> state, the element is
   expected to be treated as a replaced element with a height about two
@@ -79608,9 +79626,9 @@
 
   <div class=impl>
 
-  <h3 id=bindings><span class=secno>12.4 </span>Bindings</h3>
+  <h3 id=bindings><span class=secno>13.4 </span>Bindings</h3>
 
-  <h4 id=introduction-12><span class=secno>12.4.1 </span>Introduction</h4>
+  <h4 id=introduction-12><span class=secno>13.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>
@@ -79633,7 +79651,7 @@
 
   <div class=impl>
 
-  <h4 id=the-button-element-0><span class=secno>12.4.2 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
+  <h4 id=the-button-element-0><span class=secno>13.4.2 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -79664,7 +79682,7 @@
 
   <div class=impl>
 
-  <h4 id=the-details-element-0><span class=secno>12.4.3 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
+  <h4 id=the-details-element-0><span class=secno>13.4.3 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -79698,7 +79716,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-a-text-entry-widget><span class=secno>12.4.4 </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>13.4.4 </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);
 
@@ -79745,7 +79763,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-domain-specific-widgets><span class=secno>12.4.5 </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>13.4.5 </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);
 
@@ -79800,7 +79818,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-a-range-control><span class=secno>12.4.6 </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>13.4.6 </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);
 
@@ -79826,7 +79844,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-a-color-well><span class=secno>12.4.7 </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>13.4.7 </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);
 
@@ -79848,7 +79866,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>12.4.8 </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>13.4.8 </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);
 
@@ -79870,7 +79888,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-a-file-upload-control><span class=secno>12.4.9 </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>13.4.9 </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);
 
@@ -79888,7 +79906,7 @@
 
   <div class=impl>
 
-  <h4 id=the-input-element-as-a-button><span class=secno>12.4.10 </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>13.4.10 </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);
 
@@ -79909,7 +79927,7 @@
 
   <div class=impl>
 
-  <h4 id=the-marquee-element-0><span class=secno>12.4.11 </span>The <code><a href=#the-marquee-element>marquee</a></code> element</h4>
+  <h4 id=the-marquee-element-0><span class=secno>13.4.11 </span>The <code><a href=#the-marquee-element>marquee</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80075,7 +80093,7 @@
 
   <div class=impl>
 
-  <h4 id=the-meter-element-0><span class=secno>12.4.12 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
+  <h4 id=the-meter-element-0><span class=secno>13.4.12 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80108,7 +80126,7 @@
 
   <div class=impl>
 
-  <h4 id=the-progress-element-0><span class=secno>12.4.13 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
+  <h4 id=the-progress-element-0><span class=secno>13.4.13 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80147,7 +80165,7 @@
 
   <div class=impl>
 
-  <h4 id=the-select-element-0><span class=secno>12.4.14 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
+  <h4 id=the-select-element-0><span class=secno>13.4.14 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80206,7 +80224,7 @@
 
   <div class=impl>
 
-  <h4 id=the-textarea-element-0><span class=secno>12.4.15 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
+  <h4 id=the-textarea-element-0><span class=secno>13.4.15 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80258,7 +80276,7 @@
 
   <div class=impl>
 
-  <h4 id=the-keygen-element-0><span class=secno>12.4.16 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
+  <h4 id=the-keygen-element-0><span class=secno>13.4.16 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80274,7 +80292,7 @@
 
   <div class=impl>
 
-  <h4 id=the-time-element-0><span class=secno>12.4.17 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
+  <h4 id=the-time-element-0><span class=secno>13.4.17 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
 
   <pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
 
@@ -80292,7 +80310,7 @@
 
   <div class=impl>
 
-  <h3 id=frames-and-framesets><span class=secno>12.5 </span>Frames and framesets</h3>
+  <h3 id=frames-and-framesets><span class=secno>13.5 </span>Frames and framesets</h3>
 
   <p>When an <code><a href=#the-html-element-0>html</a></code> element's second child element is a
   <code><a href=#frameset>frameset</a></code> element, the user agent is expected to render
@@ -80577,9 +80595,9 @@
 
   <div class=impl>
 
-  <h3 id=interactive-media><span class=secno>12.6 </span>Interactive media</h3>
+  <h3 id=interactive-media><span class=secno>13.6 </span>Interactive media</h3>
 
-  <h4 id=links,-forms,-and-navigation><span class=secno>12.6.1 </span>Links, forms, and navigation</h4>
+  <h4 id=links,-forms,-and-navigation><span class=secno>13.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>form submission</a>,
@@ -80613,7 +80631,7 @@
 
 
 
-  <h4 id=the-title-attribute-0><span class=secno>12.6.2 </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>13.6.2 </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
@@ -80629,7 +80647,7 @@
   breaks in the tooltip.</p>
 
 
-  <h4 id=editing-hosts><span class=secno>12.6.3 </span>Editing hosts</h4>
+  <h4 id=editing-hosts><span class=secno>13.6.3 </span>Editing hosts</h4>
 
   <p>The current text editing caret (the one at the <a href=#caret-position>caret
   position</a> in a focused <a href=#editing-host>editing host</a>) is expected
@@ -80644,7 +80662,7 @@
 
 
 
-  <h3 id=print-media><span class=secno>12.7 </span>Print media</h3>
+  <h3 id=print-media><span class=secno>13.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
@@ -80659,14 +80677,14 @@
   result, and the discard the view.</p>
 
 
-  <h3 id=interaction-with-css><span class=secno>12.8 </span>Interaction with CSS</h3>
+  <h3 id=interaction-with-css><span class=secno>13.8 </span>Interaction with CSS</h3>
 
   <!-- v2: Extensions to CSS
         for drag and drop
         for datagrid [v2DATAGRID]
   -->
 
-  <h4 id=selectors><span class=secno>12.8.1 </span>Selectors</h4>
+  <h4 id=selectors><span class=secno>13.8.1 </span>Selectors</h4>
 
   <p>Attribute and element <em>names</em> of <a href=#html-elements>HTML
   elements</a> in <a href=#html-documents>HTML documents</a> must be treated as
@@ -80738,9 +80756,9 @@
 
 
 
-  <h2 id=obsolete><span class=secno>13 </span>Obsolete features</h2>
+  <h2 id=obsolete><span class=secno>14 </span>Obsolete features</h2>
 
-  <h3 id=obsolete-but-conforming-features><span class=secno>13.1 </span>Obsolete but conforming features</h3>
+  <h3 id=obsolete-but-conforming-features><span class=secno>14.1 </span>Obsolete but conforming features</h3>
 
   <p>Features listed in this section will trigger warnings in
   conformance checkers.</p>
@@ -80788,7 +80806,7 @@
 
   <div class=impl>
 
-  <h4 id=warnings-for-obsolete-but-conforming-features><span class=secno>13.1.1 </span>Warnings for obsolete but conforming features</h4>
+  <h4 id=warnings-for-obsolete-but-conforming-features><span class=secno>14.1.1 </span>Warnings for obsolete but conforming features</h4>
 
   <p>To ease the transition from HTML4 Transitional documents to the
   language defined in <em>this</em> specification, and to discourage
@@ -80837,7 +80855,7 @@
   </div>
 
 
-  <h3 id=non-conforming-features><span class=secno>13.2 </span>Non-conforming features</h3>
+  <h3 id=non-conforming-features><span class=secno>14.2 </span>Non-conforming features</h3>
 
   <p>Elements in the following list are entirely obsolete, and must
   not be used by authors:</p>
@@ -81033,9 +81051,9 @@
 
   </dl><div class=impl>
 
-  <h3 id=requirements-for-implementations><span class=secno>13.3 </span>Requirements for implementations</h3>
+  <h3 id=requirements-for-implementations><span class=secno>14.3 </span>Requirements for implementations</h3>
 
-  <h4 id=the-applet-element><span class=secno>13.3.1 </span>The <dfn><code>applet</code></dfn> element</h4>
+  <h4 id=the-applet-element><span class=secno>14.3.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. The <code><a href=#the-applet-element>applet</a></code> element is now
@@ -81095,7 +81113,7 @@
   IDL attribute must <a href=#reflect>reflect</a> the <code title=attr-applet-codebase>codebase</code> content attribute.</p>
 
 
-  <h4 id=the-marquee-element><span class=secno>13.3.2 </span>The <dfn><code>marquee</code></dfn> element</h4>
+  <h4 id=the-marquee-element><span class=secno>14.3.2 </span>The <dfn><code>marquee</code></dfn> element</h4>
 
   <p>The <code><a href=#the-marquee-element>marquee</a></code> element is a presentational element that
   animates content. CSS transitions and animations are a more
@@ -81282,7 +81300,7 @@
   attribute.</p>
 
 
-  <h4 id=frames><span class=secno>13.3.3 </span>Frames</h4>
+  <h4 id=frames><span class=secno>14.3.3 </span>Frames</h4>
 
   <p>The <dfn id=frameset><code>frameset</code></dfn> element acts as <a href=#the-body-element>the
   body element</a> in documents that use frames.</p>
@@ -81445,7 +81463,7 @@
 
 
 
-  <h4 id=other-elements,-attributes-and-apis><span class=secno>13.3.4 </span>Other elements, attributes and APIs</h4> <!-- alphabetical by name and attribute -->
+  <h4 id=other-elements,-attributes-and-apis><span class=secno>14.3.4 </span>Other elements, attributes and APIs</h4> <!-- alphabetical by name and attribute -->
 
   <p>User agents must treat <code><a href=#acronym>acronym</a></code> elements in a manner
   equivalent to <code><a href=#the-abbr-element>abbr</a></code> elements.</p>
@@ -82173,7 +82191,7 @@
 
   <!-- http://www.w3.org/2002/06/registering-mediatype.html -->
 
-  <h3 id=text/html><span class=secno>13.1 </span><dfn><code>text/html</code></dfn></h3>
+  <h3 id=text/html><span class=secno>14.1 </span><dfn><code>text/html</code></dfn></h3>
 
   <p>This registration is for community review and will be submitted
   to the IESG for review, approval, and registration with IANA.</p>
@@ -82284,7 +82302,7 @@
   refer to <a href=#the-indicated-part-of-the-document>the indicated part of the document</a>.</p>
 
 
-  <h3 id=application/xhtml+xml><span class=secno>13.2 </span><dfn><code>application/xhtml+xml</code></dfn></h3>
+  <h3 id=application/xhtml+xml><span class=secno>14.2 </span><dfn><code>application/xhtml+xml</code></dfn></h3>
 
   <p>This registration is for community review and will be submitted
   to the IESG for review, approval, and registration with IANA.</p>
@@ -82349,7 +82367,7 @@
   type</a>. <a href=#refsRFC3023>[RFC3023]</a></p>
 
 
-  <h3 id=text/cache-manifest><span class=secno>13.3 </span><dfn><code>text/cache-manifest</code></dfn></h3>
+  <h3 id=text/cache-manifest><span class=secno>14.3 </span><dfn><code>text/cache-manifest</code></dfn></h3>
 
   <p>This registration is for community review and will be submitted
   to the IESG for review, approval, and registration with IANA.</p>
@@ -82419,7 +82437,7 @@
   <code><a href=#text/cache-manifest>text/cache-manifest</a></code> resources.</p>
 
 
-  <h3 id=text/ping><span class=secno>13.4 </span><dfn><code>text/ping</code></dfn></h3>
+  <h3 id=text/ping><span class=secno>14.4 </span><dfn><code>text/ping</code></dfn></h3>
 
   <p>This registration is for community review and will be submitted
   to the IESG for review, approval, and registration with IANA.</p>
@@ -82482,7 +82500,7 @@
   <code><a href=#text/ping>text/ping</a></code> resources.</p>
 
 
-  <h3 id=application/microdata+json><span class=secno>13.5 </span><dfn><code>application/microdata+json</code></dfn></h3>
+  <h3 id=application/microdata+json><span class=secno>14.5 </span><dfn><code>application/microdata+json</code></dfn></h3>
 
   <p>This registration is for community review and will be submitted
   to the IESG for review, approval, and registration with IANA.</p>
@@ -82548,7 +82566,7 @@
   semantics as when used with <code>application/json</code>. <a href=#refsJSON>[JSON]</a></p>
 
 
-  <h5 id=ping-from><span class=secno>13.5.1 </span><dfn title=http-ping-from><code>Ping-From</code></dfn></h5>
+  <h5 id=ping-from><span class=secno>14.5.1 </span><dfn title=http-ping-from><code>Ping-From</code></dfn></h5>
 
   <p>This section describes a header field for registration in the
   Permanent Message Header Field Registry.  <a href=#refsRFC3864>[RFC3864]</a></p>
@@ -82567,7 +82585,7 @@
    </dd>
    <dt>Related information</dt>
    <dd>None.</dd>   
-  </dl><h5 id=ping-to><span class=secno>13.5.2 </span><dfn title=http-ping-to><code>Ping-To</code></dfn></h5>
+  </dl><h5 id=ping-to><span class=secno>14.5.2 </span><dfn title=http-ping-to><code>Ping-To</code></dfn></h5>
 
   <p>This section describes a header field for registration in the
   Permanent Message Header Field Registry.  <a href=#refsRFC3864>[RFC3864]</a></p>

Modified: index
===================================================================
--- index	2009-10-13 02:02:38 UTC (rev 4120)
+++ index	2009-10-13 04:03:54 UTC (rev 4121)
@@ -111,7 +111,7 @@
 
   <header class=head><p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG src=/images/logo></a></p>
    <hgroup><h1>HTML5</h1>
-    <h2 class="no-num no-toc">Draft Standard — 12 October 2009</h2>
+    <h2 class="no-num no-toc">Draft Standard — 13 October 2009</h2>
    </hgroup><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>
    <!--<p class="impl"><strong>Implementors!</strong> We have a <a href="http://www.whatwg.org/mailing-list#implementors">mailing list</a> for you too!</p>-->
@@ -53168,8 +53168,6 @@
 
 
 
-
-
   <h3 id=links><span class=secno>6.12 </span>Links</h3>
 
 
@@ -54493,6 +54491,7 @@
 
 
 
+
   <h2 id=editing><span class=secno>7 </span><dfn>User Interaction</dfn></h2>
 
   <p>This section describes various features that allow authors to

Modified: source
===================================================================
--- source	2009-10-13 02:02:38 UTC (rev 4120)
+++ source	2009-10-13 04:03:54 UTC (rev 4121)
@@ -63274,8 +63274,1531 @@
 
 
 
-  <h3>Structured client-side storage</h3>  <!--START storage--><!--END html5-->
+  <h3 id="links">Links</h3>
 
+
+  <h4>Hyperlink elements</h4>
+
+  <p>The <code>a</code>, <code>area</code>, and <code>link</code>
+  elements can, in certain situations described in the definitions of
+  those elements, represent <dfn
+  title="hyperlink">hyperlinks</dfn>.</p>
+
+  <p>The <dfn title="attr-hyperlink-href"><code>href</code></dfn>
+  attribute on a hyperlink element must have a value that is a
+  <span>valid URL</span>. This URL is the <em>destination
+  resource</em> of the hyperlink.</p>
+
+  <div class="note">
+
+   <p>The <code title="attr-hyperlink-href">href</code> attribute on
+   <code>a</code> and <code>area</code> elements is not required; when
+   those elements do not have <code
+   title="attr-hyperlink-href">href</code> attributes they do not
+   represent hyperlinks.</p>
+
+   <p>The <code title="attr-link-href">href</code> attribute on the
+   <code>link</code> element <em>is</em> required, but whether a
+   <code>link</code> element represents a hyperlink or not depends on
+   the value of the <code title="attr-link-rel">rel</code> attribute
+   of that element.</p>
+
+  </div>
+
+  <p>The <dfn title="attr-hyperlink-target"><code>target</code></dfn>
+  attribute, if present, must be a <span>valid browsing context name
+  or keyword</span>. It gives the name of the <span>browsing
+  context</span> that will be used. <span class="impl">User agents use
+  this name when <span>following hyperlinks</span>.</span></p>
+
+  <p>The <dfn id="ping"
+  title="attr-hyperlink-ping"><code>ping</code></dfn> attribute, if
+  present, gives the URLs of the resources that are interested in
+  being notified if the user follows the hyperlink. The value must be
+  a space separated list of one or more <span>valid URLs</span>. <span
+  class="impl">The value is used by the user agent for <span>hyperlink
+  auditing</span>.</span></p>
+
+  <p>For <code>a</code> and <code>area</code> elements that represent
+  hyperlinks, the relationship between the document containing the
+  hyperlink and the destination resource indicated by the hyperlink is
+  given by the value of the element's <dfn
+  title="attr-hyperlink-rel"><code>rel</code></dfn> attribute, which
+  must be a <span>set of space-separated tokens</span>. The <a
+  href="#linkTypes">allowed values and their meanings</a> are defined
+  below. The <code title="attr-hyperlink-rel">rel</code> attribute has
+  no default value. If the attribute is omitted or if none of the
+  values in the attribute are recognized by the user agent, then the
+  document has no particular relationship with the destination
+  resource other than there being a hyperlink between the two.</p>
+
+  <p>The <dfn title="attr-hyperlink-media"><code>media</code></dfn>
+  attribute describes for which media the target document was
+  designed. It is purely advisory. The value must be a <span>valid
+  media query</span>. The default, if the <code
+  title="attr-hyperlink-media">media</code> attribute is omitted, is
+  "<code title="">all</code>".</p>
+
+  <p>The <dfn
+  title="attr-hyperlink-hreflang"><code>hreflang</code></dfn>
+  attribute on hyperlink elements, if present, gives the language of
+  the linked resource. It is purely advisory. The value must be a
+  valid BCP 47 language code. <a href="#refsBCP47">[BCP47]</a>
+  <span class="impl">User agents must not consider this attribute
+  authoritative — upon fetching the resource, user agents must
+  use only language information associated with the resource to
+  determine its language, not metadata included in the link to the
+  resource.</span></p>
+
+  <p>The <dfn title="attr-hyperlink-type"><code>type</code></dfn>
+  attribute, if present, gives the <span>MIME type</span> of the linked
+  resource. It is purely advisory. The value must be a <span>valid
+  MIME type</span>, optionally with parameters. <span
+  class="impl">User agents must not consider the <code
+  title="attr-hyperlink-type">type</code> attribute authoritative
+  — upon fetching the resource, user agents must not use
+  metadata included in the link to the resource to determine its
+  type.</span></p>
+
+
+  <div class="impl">
+
+  <h4><dfn>Following hyperlinks</dfn></h4>
+
+  <p>When a user <em>follows a hyperlink</em>, the user agent must
+  <span title="resolve a url">resolve</span> the <span>URL</span>
+  given by the <code title="attr-hyperlink-href">href</code> attribute
+  of that hyperlink, relative to the hyperlink element, and if that is
+  successful, must <span>navigate</span> a <span>browsing
+  context</span> to the resulting <span>absolute URL</span>. In the
+  case of server-side image maps, the URL of the hyperlink must
+  further have its <var>hyperlink suffix</var> appended to it.</p>
+
+  <p>If <span title="resolve a url">resolving</span> the
+  <span>URL</span> fails, the user agent may report the error to the
+  user in a user-agent-specific manner, may navigate to an error page
+  to report the error, or may ignore the error and do nothing.</p>
+
+  <p>If the user indicated a specific <span>browsing context</span>
+  when following the hyperlink, or if the user agent is configured to
+  follow hyperlinks by navigating a particular browsing context, then
+  that must be the <span>browsing context</span> that is
+  navigated.</p>
+
+  <p>Otherwise, if the hyperlink element is an <code>a</code> or
+  <code>area</code> element that has a <code
+  title="attr-hyperlink-target">target</code> attribute, then the
+  <span>browsing context</span> that is navigated must be chosen by
+  applying <span>the rules for choosing a browsing context given a
+  browsing context name</span>, using the value of the <code
+  title="attr-hyperlink-target">target</code> attribute as the
+  browsing context name. If these rules result in the creation of a
+  new <span>browsing context</span>, it must be navigated with
+  <span>replacement enabled</span>.</p>
+
+  <p>Otherwise, if the hyperlink element is a <span
+  title="rel-sidebar-hyperlink">sidebar hyperlink</span> and the user
+  agent implements a feature that can be considered a secondary
+  browsing context, such a secondary browsing context may be selected
+  as the browsing context to be navigated.</p>
+
+  <p>Otherwise, if the hyperlink element is an <code>a</code> or
+  <code>area</code> element with no <code
+  title="attr-hyperlink-target">target</code> attribute, but one of
+  the child nodes of <span>the <code>head</code> element</span> is a
+  <code>base</code> element with a <code
+  title="attr-base-target">target</code> attribute, then the browsing
+  context that is navigated must be chosen by applying <span>the rules
+  for choosing a browsing context given a browsing context name</span>,
+  using the value of the <code title="attr-base-target">target</code>
+  attribute of the first such <code>base</code> element as the
+  browsing context name. If these rules result in the creation of a
+  new <span>browsing context</span>, it must be navigated with
+  <span>replacement enabled</span>.</p>
+
+  <p>Otherwise, the browsing context that must be navigated is the
+  same browsing context as the one which the hyperlink element itself
+  is in.</p>
+
+  <p>The navigation must be done with the <span>browsing
+  context</span> that contains the <code>Document</code> object with
+  which the hyperlink's element in question is associated as the
+  <span>source browsing context</span>.</p>
+
+
+  <h5><dfn>Hyperlink auditing</dfn></h5>
+
+  <p>If an <code>a</code> or <code>area</code> hyperlink element has a
+  <code title="attr-hyperlink-ping">ping</code> attribute, and the
+  user follows the hyperlink, and the hyperlink's <span>URL</span> can
+  be <span title="resolve a url">resolved</span>, relative to the
+  hyperlink element, without failure, then the user agent must take
+  the <code title="attr-hyperlink-ping">ping</code> attribute's value,
+  <span title="split a string on spaces">split that string on
+  spaces</span>, <span title="resolve a url">resolve</span> each
+  resulting token relative to the hyperlink element, and then should
+  send a request (as described below) to each of the resulting <span
+  title="absolute URL">absolute URLs</span>. (Tokens that fail to
+  resolve are ignored.) This may be done in parallel with the primary
+  request, and is independent of the result of that request.</p>
+
+  <p>User agents should allow the user to adjust this behavior, for
+  example in conjunction with a setting that disables the sending of
+  HTTP <code title="http-referer">Referer</code> (sic) headers. Based
+  on the user's preferences, UAs may either <span>ignore</span> the
+  <code title="attr-hyperlink-ping">ping</code> attribute altogether,
+  or selectively ignore URLs in the list (e.g. ignoring any
+  third-party URLs).</p>
+
+  <p>For URLs that are HTTP URLs, the requests must be performed by
+  <span title="fetch">fetching</span> the specified URLs using the
+  POST method, with an entity body with the <span>MIME type</span>
+  <code>text/ping</code> consisting of the four-character string
+  "<code title="">PING</code>", from the <span>origin</span> of the
+  <code>Document</code> containing the <span>hyperlink</span>. <!--
+  not http-origin privacy sensitive --> All relevant cookie and HTTP
+  authentication headers must be included in the request. Which other
+  headers are required depends on the URLs involved.</p>
+
+  <dl class="switch">
+
+   <dt>If both the <span title="the document's address">address</span>
+   of the <code>Document</code> object containing the hyperlink being
+   audited and the ping URL have the <span>same origin</span></dt>
+
+   <dd>The request must include a <code
+   title="http-ping-from">Ping-From</code> HTTP header with, as its
+   value, the <span title="the document's address">address</span> of
+   the document containing the hyperlink, and a <code
+   title="http-ping-to">Ping-To</code> HTTP header with, as its value,
+   the address of the <span>absolute URL</span> of the target of the
+   hyperlink. The request must not include a <code
+   title="http-referer">Referer</code> (sic) HTTP header. <!-- because
+   otherwise it would look like a trustable same-origin POST --></dd>
+
+   <dt>Otherwise, if the origins are different, but the document
+   containing the hyperlink being audited was not retrieved over an
+   encrypted connection</dt>
+
+   <dd>The request must include a <code title="">Referer</code> (sic)
+   HTTP header [sic] with, as its value, the <span title="the
+   document's current address">current address</span> of the document
+   containing the hyperlink, a <code
+   title="http-ping-from">Ping-From</code> HTTP header with the same
+   value, and a <code title="http-ping-to">Ping-To</code> HTTP header
+   with, as its value, the address of the target of the
+   hyperlink.</dd>
+
+   <dt>Otherwise, the origins are different and the document
+   containing the hyperlink being audited was retrieved over an
+   encrypted connection</dt>
+
+   <dd>The request must include a <code
+   title="http-ping-to">Ping-To</code> HTTP header with, as its value,
+   the address of the target of the hyperlink. The request must
+   neither include a <code title="">Referer</code> (sic) HTTP header
+   nor include a <code title="http-ping-from">Ping-From</code> HTTP
+   header.</dd>
+
+  </dl>
+
+  <p class="note">To save bandwidth, implementors might also wish to
+  consider omitting optional headers such as <code>Accept</code> from
+  these requests.</p>
+
+  <p>User agents must, unless otherwise specified by the user, honor
+  the HTTP headers (including, in particular, redirects and HTTP
+  cookie headers), but must ignore any entity bodies returned in the
+  responses. User agents may close the connection prematurely once
+  they start receiving an entity body. <a
+  href="#refsCOOKIES">[COOKIES]</a></p>
+
+  <p>For URLs that are not HTTP URLs, the requests must be performed
+  by <span title="fetch">fetching</span> the specified URL normally,
+  and discarding the results.</p>
+
+  <p>When the <code title="attr-hyperlink-ping">ping</code> attribute is
+  present, user agents should clearly indicate to the user that
+  following the hyperlink will also cause secondary requests to be
+  sent in the background, possibly including listing the actual target
+  URLs.</p>
+
+  <p class="example">For example, a visual user agent could include
+  the hostnames of the target ping URLs along with the hyperlink's
+  actual URL in a status bar or tooltip.</p>
+
+  </div>
+
+  <div class="note">
+
+   <p>The <code title="attr-hyperlink-ping">ping</code> attribute is redundant
+   with pre-existing technologies like HTTP redirects and JavaScript
+   in allowing Web pages to track which off-site links are most
+   popular or allowing advertisers to track click-through rates.</p>
+
+   <p>However, the <code title="attr-hyperlink-ping">ping</code> attribute
+   provides these advantages to the user over those alternatives:</p>
+
+   <ul>
+
+    <li>It allows the user to see the final target URL
+    unobscured.</li>
+
+    <li>It allows the UA to inform the user about the out-of-band
+    notifications.</li>
+
+    <li>It allows the user to disable the notifications without losing
+    the underlying link functionality.</li>
+
+    <li>It allows the UA to optimize the use of available network
+    bandwidth so that the target page loads faster.</li>
+
+   </ul>
+
+   <p>Thus, while it is possible to track users without this feature,
+   authors are encouraged to use the <code
+   title="attr-hyperlink-ping">ping</code> attribute so that the user
+   agent can make the user experience more transparent.</p>
+
+  </div>
+
+  <!-- resolving ping urls happens at audit time, so base URL changes
+  affect the values of ping attributes -->
+
+
+
+  <h4 id="linkTypes">Link types</h4>
+
+  <p>The following table summarizes the link types that are defined by
+  this specification. This table is non-normative; the actual
+  definitions for the link types are given in the next few
+  sections.</p>
+
+  <p>In this section, the term <i>referenced document</i> refers to
+  the resource identified by the element representing the link, and
+  the term <i>current document</i> refers to the resource within
+  which the element representing the link finds itself.</p>
+
+  <div class="impl">
+
+  <p>To determine which link types apply to a <code>link</code>,
+  <code>a</code>, or <code>area</code> element, the element's <code
+  title="">rel</code> attribute must be <span title="split a string on
+  spaces">split on spaces</span>. The resulting tokens are the link
+  types that apply to that element.</p>
+
+  </div>
+
+  <p>Except where otherwise specified, a keyword must not be specified
+  more than once per <code title="attr-rel-hyperlink">rel</code>
+  attribute.</p>
+
+  <p>The link types are <span>ASCII case-insensitive</span>
+  values<span class="impl">, and must be compared as such</span>.</p>
+
+  <p class="example">Thus, <code title="">rel="next"</code> is the
+  same as <code title="">rel="NEXT"</code>.</p>
+
+  <table>
+   <thead>
+    <tr>
+     <th rowspan="2">Link type</th>
+     <th colspan="2">Effect on...</th>
+     <th rowspan="2">Brief description</th>
+    </tr>
+    <tr>
+     <th><code>link</code></th>
+     <th><code>a</code> and <code>area</code></th>
+    </tr>
+   </thead>
+   <tbody>
+
+    <tr>
+     <td><code title="rel-alternate">alternate</code></td> <!-- second most used <link rel> value -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives alternate representations of the current document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-archives">archives</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Provides a link to a collection of records, documents, or other materials of historical interest.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-author">author</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives a link to the current document's author.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-bookmark">bookmark</code></td> <!-- fourth most used <a rel> value -->
+     <td><em>not allowed</em></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives the permalink for the nearest ancestor section.</td>
+    </tr>
+<!-- (commented out on the assumption that rel=contact is really XFN)
+    <tr>
+     <td><code title="rel-contact">contact</code></td> <!- 8th most used <a rel> value ->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives a link to contact information for the current document.</td>
+    </tr>
+-->
+    <tr>
+     <td><code title="rel-external">external</code></td> <!-- fifth and sixth most used <a rel> value (sixth is "external nofollow") -->
+     <td><em>not allowed</em></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the referenced document is not part of the same site as the current document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-first">first</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the current document is a part of a series, and that the first document in the series is the referenced document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-help">help</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Provides a link to context-sensitive help.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-icon">icon</code></td> <!-- link rel="shortcut icon" and its ilk are the fourth, sixth, and ninth most used values -->
+     <td><span title="external resource link">External Resource</span></td>
+     <td><em>not allowed</em></td>
+     <td>Imports an icon to represent the current document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-index">index</code></td> <!-- used more than "top" and "contents" on <link> (though on <a>, "contents" wins) -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives a link to the document that provides a table of contents or index listing the current document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-last">last</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the current document is a part of a series, and that the last document in the series is the referenced document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-license">license</code></td> <!-- seventh most used <a rel> value -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the main content of the current document is covered by the copyright license described by the referenced document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-next">next</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the current document is a part of a series, and that the next document in the series is the referenced document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-nofollow">nofollow</code></td> <!-- most used <a rel> value (and sixth most used is "external nofollow") -->
+     <td><em>not allowed</em></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the current document's original author or publisher does not endorse the referenced document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-noreferrer">noreferrer</code></td>
+     <td><em>not allowed</em></td>
+     <td><span>Hyperlink</span></td>
+     <td>Requires that the user agent not send an HTTP <code title="">Referer</code> (sic) header if the user follows the hyperlink.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-pingback">pingback</code></td>
+     <td><span title="external resource link">External Resource</span></td>
+     <td><em>not allowed</em></td>
+     <td>Gives the address of the pingback server that handles pingbacks to the current document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-prefetch">prefetch</code></td>
+     <td><span title="external resource link">External Resource</span></td>
+     <td><em>not allowed</em></td>
+     <td>Specifies that the target resource should be preemptively cached.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-prev">prev</code></td> <!-- prev is used more than previous -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Indicates that the current document is a part of a series, and that the previous document in the series is the referenced document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-search">search</code></td> <!-- used quite a bit -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives a link to a resource that can be used to search through the current document and its related pages.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-stylesheet">stylesheet</code></td> <!-- most commonly used <link rel> value, variants came in 7th, 8th, 12th, 17th... -->
+     <td><span title="external resource link">External Resource</span></td>
+     <td><em>not allowed</em></td>
+     <td>Imports a stylesheet.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-sidebar">sidebar</code></td> <!-- used quite a bit -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Specifies that the referenced document, if retrieved, is intended to be shown in the browser's sidebar (if it has one).</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-tag">tag</code></td> <!-- second and third most used <a rel> value (third is technically "category tag"). -->
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Gives a tag (identified by the given address) that applies to the current document.</td>
+    </tr>
+
+    <tr>
+     <td><code title="rel-up">up</code></td>
+     <td><span title="hyperlink link">Hyperlink</span></td>
+     <td><span>Hyperlink</span></td>
+     <td>Provides a link to a document giving the context for the current document.</td>
+    </tr>
+
+   </tbody>
+  </table>
+
+  <div class="impl">
+
+  <p>Some of the types described below list synonyms for these
+  values. These <!--<span class="impl">-->are to be handled as
+  specified by user agents, but<!--</span>--> must not be used in
+  documents.</p>
+
+  </div>
+
+  <!-- v2 ideas:
+   * rel="script"
+   * rel="related" // see also
+   * http://microformats.org/wiki/rel-enclosure
+  -->
+
+
+  <h5>Link type "<dfn title="rel-alternate"><code>alternate</code></dfn>"</h5>
+
+  <p>The <code title="rel-alternate">alternate</code> keyword may be
+  used with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, if the <code
+  title="attr-link-rel">rel</code> attribute does not also contain the
+  keyword <code title="rel-stylesheet">stylesheet</code>, it creates a
+  <span title="hyperlink link">hyperlink</span>; but if it
+  <em>does</em> also contain the keyword <code
+  title="rel-stylesheet">stylesheet</code>, the <code
+  title="rel-alternate">alternate</code> keyword instead modifies the
+  meaning of the <code title="rel-stylesheet">stylesheet</code>
+  keyword in the way described for that keyword, and the rest of this
+  subsection doesn't apply.</p>
+
+  <p>The <code title="rel-alternate">alternate</code> keyword
+  indicates that the referenced document is an alternate
+  representation of the current document.</p>
+
+  <p>The nature of the referenced document is given by the <code
+  title="attr-hyperlink-media">media</code>, <code
+  title="attr-hyperlink-hreflang">hreflang</code>, and <code
+  title="attr-hyperlink-type">type</code> attributes.</p>
+
+  <p>If the <code title="rel-alternate">alternate</code> keyword is
+  used with the <code title="attr-hyperlink-media">media</code>
+  attribute, it indicates that the referenced document is intended for
+  use with the media specified.</p>
+
+  <p>If the <code title="rel-alternate">alternate</code> keyword is
+  used with the <code title="attr-hyperlink-hreflang">hreflang</code>
+  attribute, and that attribute's value differs from the <span>root
+  element</span>'s <span>language</span>, it indicates that the
+  referenced document is a translation.</p>
+
+  <p>If the <code title="rel-alternate">alternate</code> keyword is
+  used with the <code title="attr-hyperlink-type">type</code>
+  attribute, it indicates that the referenced document is a
+  reformulation of the current document in the specified format.</p>
+
+  <p>The <code title="attr-hyperlink-media">media</code>, <code
+  title="attr-hyperlink-hreflang">hreflang</code>, and <code
+  title="attr-hyperlink-type">type</code> attributes can be combined
+  when specified with the <code title="rel-alternate">alternate</code>
+  keyword.</p>
+
+  <div class="example">
+
+   <p>For example, the following link is a French translation that
+   uses the PDF format:</p>
+
+   <pre><link rel=alternate type=application/pdf hreflang=fr href=manual-fr></pre>
+
+  </div>
+
+  <div class="impl">
+
+  <p>If the <code title="rel-alternate">alternate</code> keyword is
+  used with the <code title="attr-hyperlink-type">type</code>
+  attribute set to the value <code title="">application/rss+xml</code>
+  or the value <code title="">application/atom+xml</code>, then it
+  indicates that the referenced document is a syndication feed (though
+  not necessarily syndicating exactly the same content as the current
+  page).</p>
+
+  <div class="impl">
+
+  <p>The first <code>link</code>, <code>a</code>, or <code>area</code>
+  element in the document (in tree order) with the <code
+  title="rel-alternate">alternate</code> keyword used with the <code
+  title="attr-hyperlink-type">type</code> attribute set to the value
+  <code title="">application/rss+xml</code> or the value <code
+  title="">application/atom+xml</code> must be treated as the default
+  syndication feed for the purposes of feed autodiscovery.</p>
+
+  <div class="example">
+   <p>The following <code>link</code> element gives the syndication
+   feed for the current page:</p>
+   <pre><link rel="alternate" type="application/atom+xml" href="data.xml"></pre>
+   <p>The following extract offers various different syndication
+   feeds:</p>
+   <pre><p>You can access the planets database using Atom feeds:</p>
+<ul>
+ <li><a href="recently-visited-planets.xml" rel="alternate" type="application/atom+xml">Recently Visited Planets</a></li>
+ <li><a href="known-bad-planets.xml" rel="alternate" type="application/atom+xml">Known Bad Planets</a></li>
+ <li><a href="unexplored-planets.xml" rel="alternate" type="application/atom+xml">Unexplored Planets</a></li>
+</ul></pre>
+  </div>
+
+  </div>
+
+
+
+
+  </div>
+
+  <p>The <code title="rel-alternate">alternate</code> link
+  relationship is transitive — that is, if a document links to
+  two other documents with the link type "<code
+  title="rel-alternate">alternate</code>", then, in addition to
+  implying that those documents are alternative representations of the
+  first document, it is also implying that those two documents are
+  alternative representations of each other.</p>
+
+
+  <h5>Link type "<dfn title="rel-archives"><code>archives</code></dfn>"</h5>
+
+  <p>The <code title="rel-archives">archives</code> keyword may be
+  used with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-archives">archives</code> keyword indicates
+  that the referenced document describes a collection of records,
+  documents, or other materials of historical interest.</p>
+
+  <p class="example">A blog's index page could link to an index of the
+  blog's past posts with <code title="">rel="archives"</code>.</p>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">archive</code>" like the
+  <code title="rel-archives">archives</code> keyword.</p>
+
+  </div>
+
+
+  <h5>Link type "<dfn title="rel-author"><code>author</code></dfn>"</h5>
+
+  <p>The <code title="rel-author">author</code> keyword may be
+  used with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>For <code>a</code> and <code>area</code> elements, the <code
+  title="rel-author">author</code> keyword indicates that the
+  referenced document provides further information about the author of
+  the nearest <code>article</code> element ancestor of the element
+  defining the hyperlink, if there is one, or of the page as a whole,
+  otherwise.</p>
+
+  <p>For <code>link</code> elements, the <code
+  title="rel-author">author</code> keyword indicates that the
+  referenced document provides further information about the author
+  for the page as a whole.</p>
+
+  <p class="note">The "referenced document" can be, and often is, a
+  <code title="">mailto:</code> URL giving the e-mail address of the
+  author. <a href="#refsMAILTO">[MAILTO]</a></p>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat <code>link</code>, <code>a</code>, and
+  <code>area</code> elements that have a <code title="">rev</code>
+  attribute with the value "<code>made</code>" as having the <code
+  title="rel-author">author</code> keyword specified as a link
+  relationship.</p>
+
+  </div>
+
+
+  <h5>Link type "<dfn title="rel-bookmark"><code>bookmark</code></dfn>"</h5>
+
+  <p>The <code title="rel-bookmark">bookmark</code> keyword may be
+  used with <code>a</code> and <code>area</code> elements.</p>
+
+  <p>The <code title="rel-bookmark">bookmark</code> keyword gives a
+  permalink for the nearest ancestor <code>article</code> element of
+  the linking element in question, or of <a
+  href="#associatedSection">the section the linking element is most
+  closely associated with</a>, if there are no ancestor
+  <code>article</code> elements.</p>
+
+  <div class="example">
+   <p>The following snippet has three permalinks. A user agent could
+   determine which permalink applies to which part of the spec by
+   looking at where the permalinks are given.</p>
+   <pre> ...
+ <body>
+  <h1>Example of permalinks</h1>
+  <div id="a">
+   <h2>First example</h2>
+   <p><a href="a.html" rel="bookmark">This</a> permalink applies to
+   only the content from the first H2 to the second H2. The DIV isn't
+   exactly that section, but it roughly corresponds to it.</p>
+  </div>
+  <h2>Second example</h2>
+  <article id="b">
+   <p><a href="b.html" rel="bookmark">This</a> permalink applies to
+   the outer ARTICLE element (which could be, e.g., a blog post).</p>
+   <article id="c">
+    <p><a href="c.html" rel="bookmark">This</a> permalink applies to
+    the inner ARTICLE element (which could be, e.g., a blog comment).</p>
+   </article>
+  </article>
+ </body>
+ ...</pre>
+  </div>
+
+<!-- (commented out on the assumption that rel=contact is really XFN)
+  <h5>Link type "<dfn title="rel-contact"><code>contact</code></dfn>"</h5>
+
+  <p>The <code title="rel-contact">contact</code> keyword may be used
+  with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>For <code>a</code> and <code>area</code> elements, the <code
+  title="rel-contact">contact</code> keyword indicates that the
+  referenced document provides further contact information for the
+  author of the nearest <code>article</code> element ancestor of the
+  element defining the hyperlink, if there is one, or of the page as a
+  whole, otherwise.</p>
+
+  <div class="impl">
+
+  <p>User agents must treat any hyperlink in an <code>address</code>
+  element as having the <code title="rel-contact">contact</code> link
+  type specified.</p>
+
+  </div>
+
+  <p>For <code>link</code> elements, the <code
+  title="rel-contact">contact</code> keyword indicates that the
+  referenced document provides further contact information for the
+  page as a whole.</p>
+-->
+
+
+  <h5>Link type "<dfn title="rel-external"><code>external</code></dfn>"</h5>
+
+  <p>The <code title="rel-external">external</code> keyword may be
+  used with <code>a</code> and <code>area</code> elements.</p>
+
+  <p>The <code title="rel-external">external</code> keyword indicates
+  that the link is leading to a document that is not part of the site
+  that the current document forms a part of.</p>
+
+
+  <h5>Link type "<dfn title="rel-help"><code>help</code></dfn>"</h5>
+
+  <p>The <code title="rel-help">help</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>For <code>a</code> and <code>area</code> elements, the <code
+  title="rel-help">help</code> keyword indicates that the referenced
+  document provides further help information for the parent of the
+  element defining the hyperlink, and its children.</p>
+
+  <div class="example">
+
+   <p>In the following example, the form control has associated
+   context-sensitive help. The user agent could use this information,
+   for example, displaying the referenced document if the user presses
+   the "Help" or "F1" key.</p>
+
+   <pre> <p><label> Topic: <input name=topic> <a href="help/topic.html" rel="help">(Help)</a></label></p></pre>
+
+  </div>
+
+  <p>For <code>link</code> elements, the <code
+  title="rel-help">help</code> keyword indicates that the referenced
+  document provides help for the page as a whole.</p>
+
+
+  <h5 id=rel-icon>Link type "<dfn title="rel-icon"><code>icon</code></dfn>"</h5>
+
+  <p>The <code title="rel-icon">icon</code> keyword may be used with
+  <code>link</code> elements, for which it creates an <span
+  title="external resource link">external resource link</span>.</p>
+
+  <div class="impl">
+
+  <p>The specified resource is an icon representing the page or site,
+  and should be used by the user agent when representing the page in
+  the user interface.</p>
+
+  </div>
+
+  <p>Icons could be auditory icons, visual icons, or other kinds of
+  icons. <span class="impl">If multiple icons are provided, the user
+  agent must select the most appropriate icon according to the <code
+  title="attr-link-type">type</code>, <code
+  title="attr-link-media">media</code>, and <code
+  title="attr-link-sizes">sizes</code> attributes. If there are
+  multiple equally appropriate icons, user agents must use the last
+  one declared in <span>tree order</span>. If the user agent tries to
+  use an icon but that icon is determined, upon closer examination, to
+  in fact be inappropriate (e.g. because it uses an unsupported
+  format), then the user agent must try the next-most-appropriate icon
+  as determined by the attributes.</span></p>
+
+  <div class="impl">
+
+  <p>There is no default type for resources given by the <code
+  title="rel-icon">icon</code> keyword. However, for the purposes of
+  <a href="#concept-link-type-sniffing">determining the type of the
+  resource</a>, user agents must expect the resource to be an image.</p>
+
+  </div>
+
+  <p>The <dfn title="attr-link-sizes"><code>sizes</code></dfn>
+  attribute gives the sizes of icons for visual media.</p>
+
+  <p>If specified, the attribute must have a value that is an
+  <span>unordered set of unique space-separated tokens</span>. The
+  values must all be either <code
+  title="attr-link-sizes-any">any</code> or a value that consists of
+  two <span title="valid non-negative integer">valid non-negative
+  integers</span> that do not have a leading U+0030 DIGIT ZERO (0)
+  character and that are separated by a single U+0078 LATIN SMALL
+  LETTER X character (x).</p>
+
+  <p>The keywords represent icon sizes.</p>
+
+  <div class="impl">
+
+  <p>To parse and process the attribute's value, the user agent must
+  first <span title="split a string on spaces">split the attribute's
+  value on spaces</span>, and must then parse each resulting keyword
+  to determine what it represents.</p>
+
+  </div>
+
+  <p>The <dfn title="attr-link-sizes-any"><code>any</code></dfn> keyword
+  represents that the resource contains a scalable icon, e.g. as
+  provided by an SVG image.</p>
+
+  <div class="impl">
+
+  <p>Other keywords must be further parsed as follows to determine
+  what they represent:</p>
+
+  <ul>
+
+   <li><p>If the keyword doesn't contain exactly one U+0078 LATIN
+   SMALL LETTER X character (x), then this keyword doesn't represent
+   anything. Abort these steps for that keyword.</p></li>
+
+   <li><p>Let <var title="">width string</var> be the string before
+   the "<code title="">x</code>".</p></li>
+
+   <li><p>Let <var title="">height string</var> be the string after the
+   "<code title="">x</code>".</p></li>
+
+   <li><p>If either <var title="">width string</var> or <var
+   title="">height string</var> start with a U+0030 DIGIT ZERO (0)
+   character or contain any characters other than characters in the
+   range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then this
+   keyword doesn't represent anything. Abort these steps for that
+   keyword.</p></li>
+
+   <li><p>Apply the <span>rules for parsing non-negative
+   integers</span> to <var title="">width string</var> to obtain <var
+   title="">width</var>.</p></li>
+
+   <li><p>Apply the <span>rules for parsing non-negative
+   integers</span> to <var title="">height string</var> to obtain <var
+   title="">height</var>.</p></li>
+
+   <li><p>The keyword represents that the resource contains a bitmap
+   icon with a width of <var title="">width</var> device pixels and a
+   height of <var title="">height</var> device pixels.</p></li>
+
+  </ul>
+
+  </div>
+
+  <p>The keywords specified on the <code
+  title="attr-link-sizes">sizes</code> attribute must not represent
+  icon sizes that are not actually available in the linked
+  resource.</p>
+
+  <div class="impl">
+
+  <p>If the attribute is not specified, then the user agent must
+  assume that the given icon is appropriate, but less appropriate than
+  an icon of a known and appropriate size.</p>
+
+  </div>
+
+  <div class="example">
+
+   <p>The following snippet shows the top part of an application with
+   several icons.</p>
+
+   <pre><!DOCTYPE HTML>
+<html>
+ <head>
+  <title>lsForums — Inbox</title>
+  <link rel=icon href=favicon.png sizes="16x16">
+  <link rel=icon href=windows.ico sizes="32x32 48x48">
+  <link rel=icon href=mac.icns sizes="128x128 512x512 8192x8192 32768x32768">
+  <link rel=icon href=iphone.png sizes="59x60">
+  <link rel=icon href=gnome.svg sizes="any">
+  <link rel=stylesheet href=lsforums.css>
+  <script src=lsforums.js></script>
+  <meta name=application-name content="lsForums">
+ </head>
+ <body>
+  ...</pre>
+
+  </div>
+
+
+  <h5>Link type "<dfn title="rel-license"><code>license</code></dfn>"</h5>
+
+  <p>The <code title="rel-license">license</code> keyword may be used
+  with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-license">license</code> keyword indicates
+  that the referenced document provides the copyright license terms
+  under which the main content of the current document is
+  provided.</p>
+
+  <p>This specification does not specify how to distinguish between
+  the main content of a document and content that is not deemed to be
+  part of that main content. The distinction should be made clear to
+  the user.</p>
+
+  <div class="example">
+
+   <p>Consider a photo sharing site. A page on that site might
+   describe and show a photograph, and the page might be marked up as
+   follows:</p>
+
+   <pre><!DOCTYPE HTML>
+<html>
+ <head>
+  <title>Exampl Pictures: Kissat</title>
+  <link rel="stylesheet" href="/style/default">
+ </head>
+ <body>
+  <h1>Kissat</h1>
+  <nav>
+   <a href="../">Return to photo index</a>
+  </nav>
+  <figure>
+   <dd><img src="/pix/39627052_fd8dcd98b5.jpg">
+   <dt>Kissat
+  </figure>
+  <p>One of them has six toes!</p>
+  <p><small><a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT Licensed</a></small></p>
+  <footer>
+   <a href="/">Home</a> | <a href="../">Photo index</a>
+   <p><small>© copyright 2009 Exampl Pictures. All Rights Reserved.</small></p>
+  </footer>
+ </body>
+</html></pre>
+
+   <p>In this case the <code title="rel-license">license</code>
+   applies to just the photo (the main content of the document), not
+   the whole document. In particular not the design of the page
+   itself, which is covered by the copyright given at the bottom of
+   the document. This could be made clearer in the styling
+   (e.g. making the license link prominently positioned near the
+   photograph, while having the page copyright in light small text at
+   the foot of the page.</p>
+
+  </div>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">copyright</code>" like
+  the <code title="rel-license">license</code> keyword.</p>
+
+  </div>
+
+
+  <h5>Link type "<dfn title="rel-nofollow"><code>nofollow</code></dfn>"</h5>
+
+  <p>The <code title="rel-nofollow">nofollow</code> keyword may be
+  used with <code>a</code> and <code>area</code> elements.</p>
+
+  <p>The <code title="rel-nofollow">nofollow</code> keyword indicates
+  that the link is not endorsed by the original author or publisher of
+  the page, or that the link to the referenced document was included
+  primarily because of a commercial relationship between people
+  affiliated with the two pages.</p>
+
+
+  <h5>Link type "<dfn title="rel-noreferrer"><code>noreferrer</code></dfn>"</h5>
+
+  <p>The <code title="rel-noreferrer">noreferrer</code> keyword may be
+  used with <code>a</code> and <code>area</code> elements.</p>
+
+  <p>It indicates that the no referrer information is to be leaked
+  when following the link.</p>
+
+  <div class="impl">
+
+  <p>If a user agent follows a link defined by an <code>a</code> or
+  <code>area</code> element that has the <code
+  title="rel-noreferrer">noreferrer</code> keyword, the user agent
+  must not include a <code title="">Referer</code> (sic) HTTP header
+  (<span title="concept-http-equivalent-headers">or equivalent</span>
+  for other protocols) in the request.</p>
+
+  <p>This keyword also <a href="#noopener">causes the <code
+  title="dom-opener">opener</code> attribute to remain null</a> if the
+  hyperlink creates a new <span>browsing context</span>.</p>
+
+  </div>
+
+  <!-- v2: Would be nice to apply this to other elements too,
+  e.g. letting <img> or CSS or <video> hide the referrer -->
+
+
+  <h5>Link type "<dfn title="rel-pingback"><code>pingback</code></dfn>"</h5>
+
+  <p>The <code title="rel-pingback">pingback</code> keyword may be
+  used with <code>link</code> elements, for which it creates an <span
+  title="external resource link">external resource link</span>.</p>
+
+  <p>For the semantics of the <code
+  title="rel-pingback">pingback</code> keyword, see the Pingback 1.0
+  specification. <a href="#refsPINGBACK">[PINGBACK]</a></p>
+
+
+  <h5>Link type "<dfn title="rel-prefetch"><code>prefetch</code></dfn>"</h5>
+
+  <p>The <code title="rel-prefetch">prefetch</code> keyword may be
+  used with <code>link</code> elements, for which it creates an <span
+  title="external resource link">external resource link</span>.</p>
+
+  <p>The <code title="rel-prefetch">prefetch</code> keyword indicates
+  that preemptively fetching and caching the specified resource is
+  likely to be beneficial, as it is highly likely that the user will
+  require this resource.</p>
+
+  <p>There is no default type for resources given by the <code
+  title="rel-prefetch">prefetch</code> keyword.</p>
+
+
+  <h5>Link type "<dfn title="rel-search"><code>search</code></dfn>"</h5>
+
+  <p>The <code title="rel-search">search</code> keyword may be used
+  with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-search">search</code> keyword indicates that
+  the referenced document provides an interface specifically for
+  searching the document and its related resources.</p>
+
+  <p class="note">OpenSearch description documents can be used with
+  <code>link</code> elements and the <code
+  title="rel-search">search</code> link type to enable user agents to
+  autodiscover search interfaces. <a
+  href="#refsOPENSEARCH">[OPENSEARCH]</a></p>
+
+
+  <h5>Link type "<dfn title="rel-stylesheet"><code>stylesheet</code></dfn>"</h5>
+
+  <p>The <code title="rel-stylesheet">stylesheet</code> keyword may be
+  used with <code>link</code> elements, for which it creates an <span
+  title="external resource link">external resource link</span> that
+  contributes to the <span>styling processing model</span>.</p>
+
+  <p>The specified resource is a resource that describes how to
+  present the document. Exactly how the resource is to be processed
+  depends on the actual type of the resource.</p>
+
+  <p>If the <code title="rel-alternate">alternate</code> keyword is
+  also specified on the <code>link</code> element, then <dfn>the link
+  is an alternative stylesheet</dfn>; in this case, the <code
+  title="attr-title">title</code> attribute must be specified on the
+  <code>link</code> element, with a non-empty value.</p>
+
+  <p>The default type for resources given by the <code
+  title="rel-stylesheet">stylesheet</code> keyword is <code
+  title="">text/css</code>.</p>
+
+  <div class="impl">
+
+  <p><strong>Quirk</strong>: If the document has been set to
+  <span>quirks mode</span> and the <span
+  title="Content-Type">Content-Type metadata</span> of the external
+  resource is not a supported style sheet type, the user agent must
+  instead assume it to be <code title="">text/css</code>.</p>
+
+  </div>
+
+
+  <h5>Link type "<dfn title="rel-sidebar"><code>sidebar</code></dfn>"</h5>
+
+  <p>The <code title="rel-sidebar">sidebar</code> keyword may be used
+  with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-sidebar">sidebar</code> keyword indicates
+  that the referenced document, if retrieved, is intended to be shown
+  in a <span>secondary browsing context</span> (if possible), instead
+  of in the current <span>browsing context</span>.</p>
+
+  <p>A <span title="hyperlink">hyperlink element</span> with the <code
+  title="rel-sidebar">sidebar</code> keyword specified is a <dfn
+  title="rel-sidebar-hyperlink">sidebar hyperlink</dfn>.</p>
+
+
+  <h5>Link type "<dfn title="rel-tag"><code>tag</code></dfn>"</h5>
+
+  <p>The <code title="rel-tag">tag</code> keyword may be used
+  with <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-tag">tag</code> keyword indicates that the
+  <em>tag</em> that the referenced document represents applies to the
+  current document.</p>
+
+  <p class="note">Since it indicates that the tag <em>applies to the
+  current document</em>, it would be inappropriate to use this keyword
+  in the markup of a <a href="#tag-cloud">tag cloud</a>, which lists
+  the popular tag across a set of pages.</p>
+
+
+  <h5>Hierarchical link types</h5>
+
+  <p>Some documents form part of a hierarchical structure of
+  documents.</p>
+
+  <p>A hierarchical structure of documents is one where each document
+  can have various subdocuments. The document of which a document is a
+  subdocument is said to be the document's <em>parent</em>. A document
+  with no parent forms the top of the hierarchy.</p>
+
+  <p>A document may be part of multiple hierarchies.</p>
+
+
+  <h6>Link type "<dfn title="rel-index"><code>index</code></dfn>"</h6>
+
+  <p>The <code title="rel-index">index</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-index">index</code> keyword indicates that
+  the document is part of a hierarchical structure, and that the link
+  is leading to the document that is the top of the hierarchy. It
+  conveys more information when used with the <code
+  title="rel-up">up</code> keyword (q.v.).</p>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keywords "<code title="">top</code>", "<code
+  title="">contents</code>", and "<code title="">toc</code>" like the
+  <code title="rel-index">index</code> keyword.</p>
+
+  </div>
+
+
+  <h6>Link type "<dfn title="rel-up"><code>up</code></dfn>"</h6>
+
+  <p>The <code title="rel-up">up</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-up">up</code> keyword indicates that the
+  document is part of a hierarchical structure, and that the link is
+  leading to a document that is an ancestor of the current
+  document.</p>
+
+  <p>The <code title="rel-up">up</code> keyword may be repeated within
+  a <code title="attr-hyperlink-rel">rel</code> attribute to indicate
+  the hierarchical distance from the current document to the
+  referenced document. If it occurs only once, then the link is
+  leading to the current document's parent; each additional occurrence
+  of the keyword represents one further level. If the <code
+  title="rel-index">index</code> keyword is also present, then the
+  number of <code title="rel-up">up</code> keywords is the depth of
+  the current page relative to the top of the hierarchy. Only one link
+  is created for the set of one or more <code title="rel-up">up</code>
+  keywords and, if present, the <code title="rel-index">index</code>
+  keyword.</p>
+
+  <p>If the page is part of multiple hierarchies, then they should be
+  described in different <span
+  title="paragraph">paragraphs</span>. <span class="impl">User agents
+  must scope any interpretation of the <code title="rel-up">up</code>
+  and <code title="rel-index">index</code> keywords together
+  indicating the depth of the hierarchy to the <span>paragraph</span>
+  in which the link finds itself, if any, or to the document
+  otherwise.</span></p>
+
+  <div class="impl">
+
+  <p>When two links have both the <code title="rel-up">up</code> and
+  <code title="rel-index">index</code> keywords specified together in
+  the same scope and contradict each other by having a different
+  number of <code title="rel-up">up</code> keywords, the link with the
+  greater number of <code title="rel-up">up</code> keywords must be
+  taken as giving the depth of the document.</p>
+
+  </div>
+
+  <div class="example">
+
+   <p>This can be used to mark up a navigation style sometimes known
+   as bread crumbs. In the following example, the current page can be
+   reached via two paths.</p>
+
+   <pre><nav>
+ <p>
+  <a href="/" rel="index up up up">Main</a> >
+  <a href="/products/" rel="up up">Products</a> >
+  <a href="/products/dishwashers/" rel="up">Dishwashers</a> >
+  <a>Second hand</a>
+ </p>
+ <p>
+  <a href="/" rel="index up up">Main</a> >
+  <a href="/second-hand/" rel="up">Second hand</a> >
+  <a>Dishwashers</a>
+ </p>
+</nav></pre>
+
+  </div>
+
+  <p class="note">The <code title="dom-a-relList">relList</code> IDL
+  attribute (e.g. on the <code>a</code> element) does not currently
+  represent multiple <code title="rel-up">up</code> keywords (the
+  interface hides duplicates).</p>
+
+
+  <h5>Sequential link types</h5>
+
+  <p>Some documents form part of a sequence of documents.</p>
+
+  <p>A sequence of documents is one where each document can have a
+  <em>previous sibling</em> and a <em>next sibling</em>. A document
+  with no previous sibling is the start of its sequence, a document
+  with no next sibling is the end of its sequence.</p>
+
+  <p>A document may be part of multiple sequences.</p>
+
+
+  <h6>Link type "<dfn title="rel-first"><code>first</code></dfn>"</h6>
+
+  <p>The <code title="rel-first">first</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-first">first</code> keyword indicates that
+  the document is part of a sequence, and that the link is leading to
+  the document that is the first logical document in the sequence.</p>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keywords "<code title="">begin</code>" and
+  "<code title="">start</code>" like the <code
+  title="rel-first">first</code> keyword.</p>
+
+  </div>
+
+
+  <h6>Link type "<dfn title="rel-last"><code>last</code></dfn>"</h6>
+
+  <p>The <code title="rel-last">last</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-last">last</code> keyword indicates that the
+  document is part of a sequence, and that the link is leading to the
+  document that is the last logical document in the sequence.</p>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">end</code>" like the
+  <code title="rel-last">last</code> keyword.</p>
+
+  </div>
+
+
+  <h6>Link type "<dfn title="rel-next"><code>next</code></dfn>"</h6>
+
+  <p>The <code title="rel-next">next</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-next">next</code> keyword indicates that the
+  document is part of a sequence, and that the link is leading to the
+  document that is the next logical document in the sequence.</p>
+
+
+  <h6>Link type "<dfn title="rel-prev"><code>prev</code></dfn>"</h6>
+
+  <p>The <code title="rel-prev">prev</code> keyword may be used with
+  <code>link</code>, <code>a</code>, and <code>area</code>
+  elements. For <code>link</code> elements, it creates a <span
+  title="hyperlink link">hyperlink</span>.</p>
+
+  <p>The <code title="rel-prev">prev</code> keyword indicates that the
+  document is part of a sequence, and that the link is leading to the
+  document that is the previous logical document in the sequence.</p>
+
+  <div class="impl">
+
+  <p><strong>Synonyms</strong>: For historical reasons, user agents
+  must also treat the keyword "<code title="">previous</code>" like
+  the <code title="rel-prev">prev</code> keyword.</p>
+
+  </div>
+
+
+  <h5>Other link types</h5>
+
+  <p><dfn title="concept-rel-extensions">Extensions to the predefined
+  set of link types</dfn> may be registered in the <a
+  href="http://wiki.whatwg.org/wiki/RelExtensions">WHATWG Wiki
+  RelExtensions page</a>. <a
+  href="#refsWHATWGWIKI">[WHATWGWIKI]</a></p>
+
+  <p>Anyone is free to edit the WHATWG Wiki RelExtensions page at any
+  time to add a type. Extension types must be specified with the
+  following information:</p>
+
+  <dl>
+
+   <dt>Keyword</dt>
+
+   <dd><p>The actual value being defined. The value should not be
+   confusingly similar to any other defined value (e.g. differing only
+   in case).</p></dd>
+
+
+   <dt>Effect on... <code>link</code></dt>
+
+   <dd>
+
+    <p>One of the following:</p>
+
+    <dl>
+
+     <dt>not allowed</dt>
+
+     <dd>The keyword is not allowed to be specified on
+     <code>link</code> elements.</dd>
+
+     <dt>Hyperlink</dt>
+
+     <dd>The keyword may be specified on a <code>link</code> element;
+     it creates a <span title="hyperlink link">hyperlink
+     link</span>.</dd>
+
+     <dt>External Resource</dt>
+
+     <dd>The keyword may be specified on a <code>link</code> element;
+     it creates a <span title="external resource link">external
+     resource link</span>.</dd>
+
+    </dl>
+
+   </dd>
+
+
+   <dt>Effect on... <code>a</code> and <code>area</code></dt>
+
+   <dd>
+
+    <p>One of the following:</p>
+
+    <dl>
+
+     <dt>not allowed</dt>
+
+     <dd>The keyword is not allowed to be specified on <code>a</code>
+     and <code>area</code> elements.</dd>
+
+     <dt>Hyperlink</dt>
+
+     <dd>The keyword may be specified on <code>a</code> and
+     <code>area</code> elements.</dd>
+
+    </dl>
+
+   </dd>
+
+
+   <dt>Brief description</dt>
+
+   <dd><p>A short non-normative description of what the keyword's
+   meaning is.</p></dd>
+
+
+   <dt>Specification</dt>
+
+   <dd><p>A link to a more detailed description of the keyword's
+   semantics and requirements. It could be another page on the Wiki,
+   or a link to an external page.</p></dd>
+
+
+   <dt>Synonyms</dt>
+
+   <dd><p>A list of other keyword values that have exactly the same
+   processing requirements. Authors should not use the values defined
+   to be synonyms, they are only intended to allow user agents to
+   support legacy content. Anyone may remove synonyms that are not
+   used in practice; only names that need to be processed as synonyms
+   for compatibility with legacy content are to be registered in this
+   way.</p></dd>
+
+
+   <dt>Status</dt>
+
+   <dd>
+
+    <p>One of the following:</p>
+
+    <dl>
+
+     <dt>Proposed</dt>
+
+     <dd>The keyword has not received wide peer review and
+     approval. Someone has proposed it and is, or soon will be, using
+     it.</dd>
+
+     <dt>Ratified</dt>
+
+     <dd>The keyword has received wide peer review and approval. It
+     has a specification that unambiguously defines how to handle
+     pages that use the keyword, including when they use it in
+     incorrect ways.</dd>
+
+     <dt>Discontinued</dt>
+
+     <dd>The keyword has received wide peer review and it has been
+     found wanting. Existing pages are using this keyword, but new
+     pages should avoid it. The "brief description" and
+     "specification" entries will give details of what authors should
+     use instead, if anything.</dd>
+
+    </dl>
+
+    <p>If a keyword is found to be redundant with existing values, it
+    should be removed and listed as a synonym for the existing
+    value.</p>
+
+    <p>If a keyword is registered in the "proposed" state for a
+    period of a month or more without being used or specified, then it
+    may be removed from the registry.</p>
+
+    <p>If a keyword is added with the "proposed" status and found to
+    be redundant with existing values, it should be removed and listed
+    as a synonym for the existing value. If a keyword is added with
+    the "proposed" status and found to be harmful, then it should be
+    changed to "discontinued" status.</p>
+
+    <p>Anyone can change the status at any time, but should only do so
+    in accordance with the definitions above.</p>
+
+   </dd>
+
+  </dl>
+
+  <div class="impl">
+
+  <p>Conformance checkers must use the information given on the WHATWG
+  Wiki RelExtensions page to establish if a value is allowed or not:
+  values defined in this specification or marked as "proposed" or
+  "ratified" must be accepted when used on the elements for which they
+  apply as described in the "Effect on..." field, whereas values
+  marked as "discontinued" or not listed in either this specification
+  or on the aforementioned page must be rejected as invalid.
+  Conformance checkers may cache this information (e.g. for
+  performance reasons or to avoid the use of unreliable network
+  connectivity).</p>
+
+  <p>When an author uses a new type not defined by either this
+  specification or the Wiki page, conformance checkers should offer to
+  add the value to the Wiki, with the details described above, with
+  the "proposed" status.</p>
+
+  </div>
+
+  <p>Types defined as extensions in the <a
+  href="http://wiki.whatwg.org/wiki/RelExtensions">WHATWG Wiki
+  RelExtensions page</a> with the status "proposed" or "ratified" may
+  be used with the <code title="">rel</code> attribute on
+  <code>link</code>, <code>a</code>, and <code>area</code> elements in
+  accordance to the "Effect on..." field. <a
+  href="#refsWHATWGWIKI">[WHATWGWIKI]</a></p>
+
+
+<!--END html5-->
+
+  <h2>Structured client-side storage APIs</h2>
+
+  <h3>Web Storage</h3>
+
+<!--START storage-->
+
   <h4>Introduction</h4>
 
   <p><i>This section is non-normative.</i></p>
@@ -63776,6 +65299,9 @@
   itself.</p>
 
   <!--END storage-->
+
+  <h3>Web Database</h3>
+
   <!--START database-->
 
   <!-- Feature requests for future versions (v2):
@@ -64848,7 +66374,11 @@
 
   <p class="XXX">Need to define the SQL dialect.</p>
 
+  <!--END database-->
 
+  <h3>Common concerns</h3>
+
+  <!--START database-->
   <!--START storage-->
 
   <h4>Disk space</h4>
@@ -65177,1524 +66707,6 @@
   <!--START html5-->
 
 
-  <h3 id="links">Links</h3>
-
-
-  <h4>Hyperlink elements</h4>
-
-  <p>The <code>a</code>, <code>area</code>, and <code>link</code>
-  elements can, in certain situations described in the definitions of
-  those elements, represent <dfn
-  title="hyperlink">hyperlinks</dfn>.</p>
-
-  <p>The <dfn title="attr-hyperlink-href"><code>href</code></dfn>
-  attribute on a hyperlink element must have a value that is a
-  <span>valid URL</span>. This URL is the <em>destination
-  resource</em> of the hyperlink.</p>
-
-  <div class="note">
-
-   <p>The <code title="attr-hyperlink-href">href</code> attribute on
-   <code>a</code> and <code>area</code> elements is not required; when
-   those elements do not have <code
-   title="attr-hyperlink-href">href</code> attributes they do not
-   represent hyperlinks.</p>
-
-   <p>The <code title="attr-link-href">href</code> attribute on the
-   <code>link</code> element <em>is</em> required, but whether a
-   <code>link</code> element represents a hyperlink or not depends on
-   the value of the <code title="attr-link-rel">rel</code> attribute
-   of that element.</p>
-
-  </div>
-
-  <p>The <dfn title="attr-hyperlink-target"><code>target</code></dfn>
-  attribute, if present, must be a <span>valid browsing context name
-  or keyword</span>. It gives the name of the <span>browsing
-  context</span> that will be used. <span class="impl">User agents use
-  this name when <span>following hyperlinks</span>.</span></p>
-
-  <p>The <dfn id="ping"
-  title="attr-hyperlink-ping"><code>ping</code></dfn> attribute, if
-  present, gives the URLs of the resources that are interested in
-  being notified if the user follows the hyperlink. The value must be
-  a space separated list of one or more <span>valid URLs</span>. <span
-  class="impl">The value is used by the user agent for <span>hyperlink
-  auditing</span>.</span></p>
-
-  <p>For <code>a</code> and <code>area</code> elements that represent
-  hyperlinks, the relationship between the document containing the
-  hyperlink and the destination resource indicated by the hyperlink is
-  given by the value of the element's <dfn
-  title="attr-hyperlink-rel"><code>rel</code></dfn> attribute, which
-  must be a <span>set of space-separated tokens</span>. The <a
-  href="#linkTypes">allowed values and their meanings</a> are defined
-  below. The <code title="attr-hyperlink-rel">rel</code> attribute has
-  no default value. If the attribute is omitted or if none of the
-  values in the attribute are recognized by the user agent, then the
-  document has no particular relationship with the destination
-  resource other than there being a hyperlink between the two.</p>
-
-  <p>The <dfn title="attr-hyperlink-media"><code>media</code></dfn>
-  attribute describes for which media the target document was
-  designed. It is purely advisory. The value must be a <span>valid
-  media query</span>. The default, if the <code
-  title="attr-hyperlink-media">media</code> attribute is omitted, is
-  "<code title="">all</code>".</p>
-
-  <p>The <dfn
-  title="attr-hyperlink-hreflang"><code>hreflang</code></dfn>
-  attribute on hyperlink elements, if present, gives the language of
-  the linked resource. It is purely advisory. The value must be a
-  valid BCP 47 language code. <a href="#refsBCP47">[BCP47]</a>
-  <span class="impl">User agents must not consider this attribute
-  authoritative — upon fetching the resource, user agents must
-  use only language information associated with the resource to
-  determine its language, not metadata included in the link to the
-  resource.</span></p>
-
-  <p>The <dfn title="attr-hyperlink-type"><code>type</code></dfn>
-  attribute, if present, gives the <span>MIME type</span> of the linked
-  resource. It is purely advisory. The value must be a <span>valid
-  MIME type</span>, optionally with parameters. <span
-  class="impl">User agents must not consider the <code
-  title="attr-hyperlink-type">type</code> attribute authoritative
-  — upon fetching the resource, user agents must not use
-  metadata included in the link to the resource to determine its
-  type.</span></p>
-
-
-  <div class="impl">
-
-  <h4><dfn>Following hyperlinks</dfn></h4>
-
-  <p>When a user <em>follows a hyperlink</em>, the user agent must
-  <span title="resolve a url">resolve</span> the <span>URL</span>
-  given by the <code title="attr-hyperlink-href">href</code> attribute
-  of that hyperlink, relative to the hyperlink element, and if that is
-  successful, must <span>navigate</span> a <span>browsing
-  context</span> to the resulting <span>absolute URL</span>. In the
-  case of server-side image maps, the URL of the hyperlink must
-  further have its <var>hyperlink suffix</var> appended to it.</p>
-
-  <p>If <span title="resolve a url">resolving</span> the
-  <span>URL</span> fails, the user agent may report the error to the
-  user in a user-agent-specific manner, may navigate to an error page
-  to report the error, or may ignore the error and do nothing.</p>
-
-  <p>If the user indicated a specific <span>browsing context</span>
-  when following the hyperlink, or if the user agent is configured to
-  follow hyperlinks by navigating a particular browsing context, then
-  that must be the <span>browsing context</span> that is
-  navigated.</p>
-
-  <p>Otherwise, if the hyperlink element is an <code>a</code> or
-  <code>area</code> element that has a <code
-  title="attr-hyperlink-target">target</code> attribute, then the
-  <span>browsing context</span> that is navigated must be chosen by
-  applying <span>the rules for choosing a browsing context given a
-  browsing context name</span>, using the value of the <code
-  title="attr-hyperlink-target">target</code> attribute as the
-  browsing context name. If these rules result in the creation of a
-  new <span>browsing context</span>, it must be navigated with
-  <span>replacement enabled</span>.</p>
-
-  <p>Otherwise, if the hyperlink element is a <span
-  title="rel-sidebar-hyperlink">sidebar hyperlink</span> and the user
-  agent implements a feature that can be considered a secondary
-  browsing context, such a secondary browsing context may be selected
-  as the browsing context to be navigated.</p>
-
-  <p>Otherwise, if the hyperlink element is an <code>a</code> or
-  <code>area</code> element with no <code
-  title="attr-hyperlink-target">target</code> attribute, but one of
-  the child nodes of <span>the <code>head</code> element</span> is a
-  <code>base</code> element with a <code
-  title="attr-base-target">target</code> attribute, then the browsing
-  context that is navigated must be chosen by applying <span>the rules
-  for choosing a browsing context given a browsing context name</span>,
-  using the value of the <code title="attr-base-target">target</code>
-  attribute of the first such <code>base</code> element as the
-  browsing context name. If these rules result in the creation of a
-  new <span>browsing context</span>, it must be navigated with
-  <span>replacement enabled</span>.</p>
-
-  <p>Otherwise, the browsing context that must be navigated is the
-  same browsing context as the one which the hyperlink element itself
-  is in.</p>
-
-  <p>The navigation must be done with the <span>browsing
-  context</span> that contains the <code>Document</code> object with
-  which the hyperlink's element in question is associated as the
-  <span>source browsing context</span>.</p>
-
-
-  <h5><dfn>Hyperlink auditing</dfn></h5>
-
-  <p>If an <code>a</code> or <code>area</code> hyperlink element has a
-  <code title="attr-hyperlink-ping">ping</code> attribute, and the
-  user follows the hyperlink, and the hyperlink's <span>URL</span> can
-  be <span title="resolve a url">resolved</span>, relative to the
-  hyperlink element, without failure, then the user agent must take
-  the <code title="attr-hyperlink-ping">ping</code> attribute's value,
-  <span title="split a string on spaces">split that string on
-  spaces</span>, <span title="resolve a url">resolve</span> each
-  resulting token relative to the hyperlink element, and then should
-  send a request (as described below) to each of the resulting <span
-  title="absolute URL">absolute URLs</span>. (Tokens that fail to
-  resolve are ignored.) This may be done in parallel with the primary
-  request, and is independent of the result of that request.</p>
-
-  <p>User agents should allow the user to adjust this behavior, for
-  example in conjunction with a setting that disables the sending of
-  HTTP <code title="http-referer">Referer</code> (sic) headers. Based
-  on the user's preferences, UAs may either <span>ignore</span> the
-  <code title="attr-hyperlink-ping">ping</code> attribute altogether,
-  or selectively ignore URLs in the list (e.g. ignoring any
-  third-party URLs).</p>
-
-  <p>For URLs that are HTTP URLs, the requests must be performed by
-  <span title="fetch">fetching</span> the specified URLs using the
-  POST method, with an entity body with the <span>MIME type</span>
-  <code>text/ping</code> consisting of the four-character string
-  "<code title="">PING</code>", from the <span>origin</span> of the
-  <code>Document</code> containing the <span>hyperlink</span>. <!--
-  not http-origin privacy sensitive --> All relevant cookie and HTTP
-  authentication headers must be included in the request. Which other
-  headers are required depends on the URLs involved.</p>
-
-  <dl class="switch">
-
-   <dt>If both the <span title="the document's address">address</span>
-   of the <code>Document</code> object containing the hyperlink being
-   audited and the ping URL have the <span>same origin</span></dt>
-
-   <dd>The request must include a <code
-   title="http-ping-from">Ping-From</code> HTTP header with, as its
-   value, the <span title="the document's address">address</span> of
-   the document containing the hyperlink, and a <code
-   title="http-ping-to">Ping-To</code> HTTP header with, as its value,
-   the address of the <span>absolute URL</span> of the target of the
-   hyperlink. The request must not include a <code
-   title="http-referer">Referer</code> (sic) HTTP header. <!-- because
-   otherwise it would look like a trustable same-origin POST --></dd>
-
-   <dt>Otherwise, if the origins are different, but the document
-   containing the hyperlink being audited was not retrieved over an
-   encrypted connection</dt>
-
-   <dd>The request must include a <code title="">Referer</code> (sic)
-   HTTP header [sic] with, as its value, the <span title="the
-   document's current address">current address</span> of the document
-   containing the hyperlink, a <code
-   title="http-ping-from">Ping-From</code> HTTP header with the same
-   value, and a <code title="http-ping-to">Ping-To</code> HTTP header
-   with, as its value, the address of the target of the
-   hyperlink.</dd>
-
-   <dt>Otherwise, the origins are different and the document
-   containing the hyperlink being audited was retrieved over an
-   encrypted connection</dt>
-
-   <dd>The request must include a <code
-   title="http-ping-to">Ping-To</code> HTTP header with, as its value,
-   the address of the target of the hyperlink. The request must
-   neither include a <code title="">Referer</code> (sic) HTTP header
-   nor include a <code title="http-ping-from">Ping-From</code> HTTP
-   header.</dd>
-
-  </dl>
-
-  <p class="note">To save bandwidth, implementors might also wish to
-  consider omitting optional headers such as <code>Accept</code> from
-  these requests.</p>
-
-  <p>User agents must, unless otherwise specified by the user, honor
-  the HTTP headers (including, in particular, redirects and HTTP
-  cookie headers), but must ignore any entity bodies returned in the
-  responses. User agents may close the connection prematurely once
-  they start receiving an entity body. <a
-  href="#refsCOOKIES">[COOKIES]</a></p>
-
-  <p>For URLs that are not HTTP URLs, the requests must be performed
-  by <span title="fetch">fetching</span> the specified URL normally,
-  and discarding the results.</p>
-
-  <p>When the <code title="attr-hyperlink-ping">ping</code> attribute is
-  present, user agents should clearly indicate to the user that
-  following the hyperlink will also cause secondary requests to be
-  sent in the background, possibly including listing the actual target
-  URLs.</p>
-
-  <p class="example">For example, a visual user agent could include
-  the hostnames of the target ping URLs along with the hyperlink's
-  actual URL in a status bar or tooltip.</p>
-
-  </div>
-
-  <div class="note">
-
-   <p>The <code title="attr-hyperlink-ping">ping</code> attribute is redundant
-   with pre-existing technologies like HTTP redirects and JavaScript
-   in allowing Web pages to track which off-site links are most
-   popular or allowing advertisers to track click-through rates.</p>
-
-   <p>However, the <code title="attr-hyperlink-ping">ping</code> attribute
-   provides these advantages to the user over those alternatives:</p>
-
-   <ul>
-
-    <li>It allows the user to see the final target URL
-    unobscured.</li>
-
-    <li>It allows the UA to inform the user about the out-of-band
-    notifications.</li>
-
-    <li>It allows the user to disable the notifications without losing
-    the underlying link functionality.</li>
-
-    <li>It allows the UA to optimize the use of available network
-    bandwidth so that the target page loads faster.</li>
-
-   </ul>
-
-   <p>Thus, while it is possible to track users without this feature,
-   authors are encouraged to use the <code
-   title="attr-hyperlink-ping">ping</code> attribute so that the user
-   agent can make the user experience more transparent.</p>
-
-  </div>
-
-  <!-- resolving ping urls happens at audit time, so base URL changes
-  affect the values of ping attributes -->
-
-
-
-  <h4 id="linkTypes">Link types</h4>
-
-  <p>The following table summarizes the link types that are defined by
-  this specification. This table is non-normative; the actual
-  definitions for the link types are given in the next few
-  sections.</p>
-
-  <p>In this section, the term <i>referenced document</i> refers to
-  the resource identified by the element representing the link, and
-  the term <i>current document</i> refers to the resource within
-  which the element representing the link finds itself.</p>
-
-  <div class="impl">
-
-  <p>To determine which link types apply to a <code>link</code>,
-  <code>a</code>, or <code>area</code> element, the element's <code
-  title="">rel</code> attribute must be <span title="split a string on
-  spaces">split on spaces</span>. The resulting tokens are the link
-  types that apply to that element.</p>
-
-  </div>
-
-  <p>Except where otherwise specified, a keyword must not be specified
-  more than once per <code title="attr-rel-hyperlink">rel</code>
-  attribute.</p>
-
-  <p>The link types are <span>ASCII case-insensitive</span>
-  values<span class="impl">, and must be compared as such</span>.</p>
-
-  <p class="example">Thus, <code title="">rel="next"</code> is the
-  same as <code title="">rel="NEXT"</code>.</p>
-
-  <table>
-   <thead>
-    <tr>
-     <th rowspan="2">Link type</th>
-     <th colspan="2">Effect on...</th>
-     <th rowspan="2">Brief description</th>
-    </tr>
-    <tr>
-     <th><code>link</code></th>
-     <th><code>a</code> and <code>area</code></th>
-    </tr>
-   </thead>
-   <tbody>
-
-    <tr>
-     <td><code title="rel-alternate">alternate</code></td> <!-- second most used <link rel> value -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives alternate representations of the current document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-archives">archives</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Provides a link to a collection of records, documents, or other materials of historical interest.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-author">author</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives a link to the current document's author.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-bookmark">bookmark</code></td> <!-- fourth most used <a rel> value -->
-     <td><em>not allowed</em></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives the permalink for the nearest ancestor section.</td>
-    </tr>
-<!-- (commented out on the assumption that rel=contact is really XFN)
-    <tr>
-     <td><code title="rel-contact">contact</code></td> <!- 8th most used <a rel> value ->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives a link to contact information for the current document.</td>
-    </tr>
--->
-    <tr>
-     <td><code title="rel-external">external</code></td> <!-- fifth and sixth most used <a rel> value (sixth is "external nofollow") -->
-     <td><em>not allowed</em></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the referenced document is not part of the same site as the current document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-first">first</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the current document is a part of a series, and that the first document in the series is the referenced document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-help">help</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Provides a link to context-sensitive help.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-icon">icon</code></td> <!-- link rel="shortcut icon" and its ilk are the fourth, sixth, and ninth most used values -->
-     <td><span title="external resource link">External Resource</span></td>
-     <td><em>not allowed</em></td>
-     <td>Imports an icon to represent the current document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-index">index</code></td> <!-- used more than "top" and "contents" on <link> (though on <a>, "contents" wins) -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives a link to the document that provides a table of contents or index listing the current document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-last">last</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the current document is a part of a series, and that the last document in the series is the referenced document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-license">license</code></td> <!-- seventh most used <a rel> value -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the main content of the current document is covered by the copyright license described by the referenced document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-next">next</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the current document is a part of a series, and that the next document in the series is the referenced document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-nofollow">nofollow</code></td> <!-- most used <a rel> value (and sixth most used is "external nofollow") -->
-     <td><em>not allowed</em></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the current document's original author or publisher does not endorse the referenced document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-noreferrer">noreferrer</code></td>
-     <td><em>not allowed</em></td>
-     <td><span>Hyperlink</span></td>
-     <td>Requires that the user agent not send an HTTP <code title="">Referer</code> (sic) header if the user follows the hyperlink.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-pingback">pingback</code></td>
-     <td><span title="external resource link">External Resource</span></td>
-     <td><em>not allowed</em></td>
-     <td>Gives the address of the pingback server that handles pingbacks to the current document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-prefetch">prefetch</code></td>
-     <td><span title="external resource link">External Resource</span></td>
-     <td><em>not allowed</em></td>
-     <td>Specifies that the target resource should be preemptively cached.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-prev">prev</code></td> <!-- prev is used more than previous -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Indicates that the current document is a part of a series, and that the previous document in the series is the referenced document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-search">search</code></td> <!-- used quite a bit -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives a link to a resource that can be used to search through the current document and its related pages.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-stylesheet">stylesheet</code></td> <!-- most commonly used <link rel> value, variants came in 7th, 8th, 12th, 17th... -->
-     <td><span title="external resource link">External Resource</span></td>
-     <td><em>not allowed</em></td>
-     <td>Imports a stylesheet.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-sidebar">sidebar</code></td> <!-- used quite a bit -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Specifies that the referenced document, if retrieved, is intended to be shown in the browser's sidebar (if it has one).</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-tag">tag</code></td> <!-- second and third most used <a rel> value (third is technically "category tag"). -->
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Gives a tag (identified by the given address) that applies to the current document.</td>
-    </tr>
-
-    <tr>
-     <td><code title="rel-up">up</code></td>
-     <td><span title="hyperlink link">Hyperlink</span></td>
-     <td><span>Hyperlink</span></td>
-     <td>Provides a link to a document giving the context for the current document.</td>
-    </tr>
-
-   </tbody>
-  </table>
-
-  <div class="impl">
-
-  <p>Some of the types described below list synonyms for these
-  values. These <!--<span class="impl">-->are to be handled as
-  specified by user agents, but<!--</span>--> must not be used in
-  documents.</p>
-
-  </div>
-
-  <!-- v2 ideas:
-   * rel="script"
-   * rel="related" // see also
-   * http://microformats.org/wiki/rel-enclosure
-  -->
-
-
-  <h5>Link type "<dfn title="rel-alternate"><code>alternate</code></dfn>"</h5>
-
-  <p>The <code title="rel-alternate">alternate</code> keyword may be
-  used with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, if the <code
-  title="attr-link-rel">rel</code> attribute does not also contain the
-  keyword <code title="rel-stylesheet">stylesheet</code>, it creates a
-  <span title="hyperlink link">hyperlink</span>; but if it
-  <em>does</em> also contain the keyword <code
-  title="rel-stylesheet">stylesheet</code>, the <code
-  title="rel-alternate">alternate</code> keyword instead modifies the
-  meaning of the <code title="rel-stylesheet">stylesheet</code>
-  keyword in the way described for that keyword, and the rest of this
-  subsection doesn't apply.</p>
-
-  <p>The <code title="rel-alternate">alternate</code> keyword
-  indicates that the referenced document is an alternate
-  representation of the current document.</p>
-
-  <p>The nature of the referenced document is given by the <code
-  title="attr-hyperlink-media">media</code>, <code
-  title="attr-hyperlink-hreflang">hreflang</code>, and <code
-  title="attr-hyperlink-type">type</code> attributes.</p>
-
-  <p>If the <code title="rel-alternate">alternate</code> keyword is
-  used with the <code title="attr-hyperlink-media">media</code>
-  attribute, it indicates that the referenced document is intended for
-  use with the media specified.</p>
-
-  <p>If the <code title="rel-alternate">alternate</code> keyword is
-  used with the <code title="attr-hyperlink-hreflang">hreflang</code>
-  attribute, and that attribute's value differs from the <span>root
-  element</span>'s <span>language</span>, it indicates that the
-  referenced document is a translation.</p>
-
-  <p>If the <code title="rel-alternate">alternate</code> keyword is
-  used with the <code title="attr-hyperlink-type">type</code>
-  attribute, it indicates that the referenced document is a
-  reformulation of the current document in the specified format.</p>
-
-  <p>The <code title="attr-hyperlink-media">media</code>, <code
-  title="attr-hyperlink-hreflang">hreflang</code>, and <code
-  title="attr-hyperlink-type">type</code> attributes can be combined
-  when specified with the <code title="rel-alternate">alternate</code>
-  keyword.</p>
-
-  <div class="example">
-
-   <p>For example, the following link is a French translation that
-   uses the PDF format:</p>
-
-   <pre><link rel=alternate type=application/pdf hreflang=fr href=manual-fr></pre>
-
-  </div>
-
-  <div class="impl">
-
-  <p>If the <code title="rel-alternate">alternate</code> keyword is
-  used with the <code title="attr-hyperlink-type">type</code>
-  attribute set to the value <code title="">application/rss+xml</code>
-  or the value <code title="">application/atom+xml</code>, then it
-  indicates that the referenced document is a syndication feed (though
-  not necessarily syndicating exactly the same content as the current
-  page).</p>
-
-  <div class="impl">
-
-  <p>The first <code>link</code>, <code>a</code>, or <code>area</code>
-  element in the document (in tree order) with the <code
-  title="rel-alternate">alternate</code> keyword used with the <code
-  title="attr-hyperlink-type">type</code> attribute set to the value
-  <code title="">application/rss+xml</code> or the value <code
-  title="">application/atom+xml</code> must be treated as the default
-  syndication feed for the purposes of feed autodiscovery.</p>
-
-  <div class="example">
-   <p>The following <code>link</code> element gives the syndication
-   feed for the current page:</p>
-   <pre><link rel="alternate" type="application/atom+xml" href="data.xml"></pre>
-   <p>The following extract offers various different syndication
-   feeds:</p>
-   <pre><p>You can access the planets database using Atom feeds:</p>
-<ul>
- <li><a href="recently-visited-planets.xml" rel="alternate" type="application/atom+xml">Recently Visited Planets</a></li>
- <li><a href="known-bad-planets.xml" rel="alternate" type="application/atom+xml">Known Bad Planets</a></li>
- <li><a href="unexplored-planets.xml" rel="alternate" type="application/atom+xml">Unexplored Planets</a></li>
-</ul></pre>
-  </div>
-
-  </div>
-
-
-
-
-  </div>
-
-  <p>The <code title="rel-alternate">alternate</code> link
-  relationship is transitive — that is, if a document links to
-  two other documents with the link type "<code
-  title="rel-alternate">alternate</code>", then, in addition to
-  implying that those documents are alternative representations of the
-  first document, it is also implying that those two documents are
-  alternative representations of each other.</p>
-
-
-  <h5>Link type "<dfn title="rel-archives"><code>archives</code></dfn>"</h5>
-
-  <p>The <code title="rel-archives">archives</code> keyword may be
-  used with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-archives">archives</code> keyword indicates
-  that the referenced document describes a collection of records,
-  documents, or other materials of historical interest.</p>
-
-  <p class="example">A blog's index page could link to an index of the
-  blog's past posts with <code title="">rel="archives"</code>.</p>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">archive</code>" like the
-  <code title="rel-archives">archives</code> keyword.</p>
-
-  </div>
-
-
-  <h5>Link type "<dfn title="rel-author"><code>author</code></dfn>"</h5>
-
-  <p>The <code title="rel-author">author</code> keyword may be
-  used with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>For <code>a</code> and <code>area</code> elements, the <code
-  title="rel-author">author</code> keyword indicates that the
-  referenced document provides further information about the author of
-  the nearest <code>article</code> element ancestor of the element
-  defining the hyperlink, if there is one, or of the page as a whole,
-  otherwise.</p>
-
-  <p>For <code>link</code> elements, the <code
-  title="rel-author">author</code> keyword indicates that the
-  referenced document provides further information about the author
-  for the page as a whole.</p>
-
-  <p class="note">The "referenced document" can be, and often is, a
-  <code title="">mailto:</code> URL giving the e-mail address of the
-  author. <a href="#refsMAILTO">[MAILTO]</a></p>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat <code>link</code>, <code>a</code>, and
-  <code>area</code> elements that have a <code title="">rev</code>
-  attribute with the value "<code>made</code>" as having the <code
-  title="rel-author">author</code> keyword specified as a link
-  relationship.</p>
-
-  </div>
-
-
-  <h5>Link type "<dfn title="rel-bookmark"><code>bookmark</code></dfn>"</h5>
-
-  <p>The <code title="rel-bookmark">bookmark</code> keyword may be
-  used with <code>a</code> and <code>area</code> elements.</p>
-
-  <p>The <code title="rel-bookmark">bookmark</code> keyword gives a
-  permalink for the nearest ancestor <code>article</code> element of
-  the linking element in question, or of <a
-  href="#associatedSection">the section the linking element is most
-  closely associated with</a>, if there are no ancestor
-  <code>article</code> elements.</p>
-
-  <div class="example">
-   <p>The following snippet has three permalinks. A user agent could
-   determine which permalink applies to which part of the spec by
-   looking at where the permalinks are given.</p>
-   <pre> ...
- <body>
-  <h1>Example of permalinks</h1>
-  <div id="a">
-   <h2>First example</h2>
-   <p><a href="a.html" rel="bookmark">This</a> permalink applies to
-   only the content from the first H2 to the second H2. The DIV isn't
-   exactly that section, but it roughly corresponds to it.</p>
-  </div>
-  <h2>Second example</h2>
-  <article id="b">
-   <p><a href="b.html" rel="bookmark">This</a> permalink applies to
-   the outer ARTICLE element (which could be, e.g., a blog post).</p>
-   <article id="c">
-    <p><a href="c.html" rel="bookmark">This</a> permalink applies to
-    the inner ARTICLE element (which could be, e.g., a blog comment).</p>
-   </article>
-  </article>
- </body>
- ...</pre>
-  </div>
-
-<!-- (commented out on the assumption that rel=contact is really XFN)
-  <h5>Link type "<dfn title="rel-contact"><code>contact</code></dfn>"</h5>
-
-  <p>The <code title="rel-contact">contact</code> keyword may be used
-  with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>For <code>a</code> and <code>area</code> elements, the <code
-  title="rel-contact">contact</code> keyword indicates that the
-  referenced document provides further contact information for the
-  author of the nearest <code>article</code> element ancestor of the
-  element defining the hyperlink, if there is one, or of the page as a
-  whole, otherwise.</p>
-
-  <div class="impl">
-
-  <p>User agents must treat any hyperlink in an <code>address</code>
-  element as having the <code title="rel-contact">contact</code> link
-  type specified.</p>
-
-  </div>
-
-  <p>For <code>link</code> elements, the <code
-  title="rel-contact">contact</code> keyword indicates that the
-  referenced document provides further contact information for the
-  page as a whole.</p>
--->
-
-
-  <h5>Link type "<dfn title="rel-external"><code>external</code></dfn>"</h5>
-
-  <p>The <code title="rel-external">external</code> keyword may be
-  used with <code>a</code> and <code>area</code> elements.</p>
-
-  <p>The <code title="rel-external">external</code> keyword indicates
-  that the link is leading to a document that is not part of the site
-  that the current document forms a part of.</p>
-
-
-  <h5>Link type "<dfn title="rel-help"><code>help</code></dfn>"</h5>
-
-  <p>The <code title="rel-help">help</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>For <code>a</code> and <code>area</code> elements, the <code
-  title="rel-help">help</code> keyword indicates that the referenced
-  document provides further help information for the parent of the
-  element defining the hyperlink, and its children.</p>
-
-  <div class="example">
-
-   <p>In the following example, the form control has associated
-   context-sensitive help. The user agent could use this information,
-   for example, displaying the referenced document if the user presses
-   the "Help" or "F1" key.</p>
-
-   <pre> <p><label> Topic: <input name=topic> <a href="help/topic.html" rel="help">(Help)</a></label></p></pre>
-
-  </div>
-
-  <p>For <code>link</code> elements, the <code
-  title="rel-help">help</code> keyword indicates that the referenced
-  document provides help for the page as a whole.</p>
-
-
-  <h5 id=rel-icon>Link type "<dfn title="rel-icon"><code>icon</code></dfn>"</h5>
-
-  <p>The <code title="rel-icon">icon</code> keyword may be used with
-  <code>link</code> elements, for which it creates an <span
-  title="external resource link">external resource link</span>.</p>
-
-  <div class="impl">
-
-  <p>The specified resource is an icon representing the page or site,
-  and should be used by the user agent when representing the page in
-  the user interface.</p>
-
-  </div>
-
-  <p>Icons could be auditory icons, visual icons, or other kinds of
-  icons. <span class="impl">If multiple icons are provided, the user
-  agent must select the most appropriate icon according to the <code
-  title="attr-link-type">type</code>, <code
-  title="attr-link-media">media</code>, and <code
-  title="attr-link-sizes">sizes</code> attributes. If there are
-  multiple equally appropriate icons, user agents must use the last
-  one declared in <span>tree order</span>. If the user agent tries to
-  use an icon but that icon is determined, upon closer examination, to
-  in fact be inappropriate (e.g. because it uses an unsupported
-  format), then the user agent must try the next-most-appropriate icon
-  as determined by the attributes.</span></p>
-
-  <div class="impl">
-
-  <p>There is no default type for resources given by the <code
-  title="rel-icon">icon</code> keyword. However, for the purposes of
-  <a href="#concept-link-type-sniffing">determining the type of the
-  resource</a>, user agents must expect the resource to be an image.</p>
-
-  </div>
-
-  <p>The <dfn title="attr-link-sizes"><code>sizes</code></dfn>
-  attribute gives the sizes of icons for visual media.</p>
-
-  <p>If specified, the attribute must have a value that is an
-  <span>unordered set of unique space-separated tokens</span>. The
-  values must all be either <code
-  title="attr-link-sizes-any">any</code> or a value that consists of
-  two <span title="valid non-negative integer">valid non-negative
-  integers</span> that do not have a leading U+0030 DIGIT ZERO (0)
-  character and that are separated by a single U+0078 LATIN SMALL
-  LETTER X character (x).</p>
-
-  <p>The keywords represent icon sizes.</p>
-
-  <div class="impl">
-
-  <p>To parse and process the attribute's value, the user agent must
-  first <span title="split a string on spaces">split the attribute's
-  value on spaces</span>, and must then parse each resulting keyword
-  to determine what it represents.</p>
-
-  </div>
-
-  <p>The <dfn title="attr-link-sizes-any"><code>any</code></dfn> keyword
-  represents that the resource contains a scalable icon, e.g. as
-  provided by an SVG image.</p>
-
-  <div class="impl">
-
-  <p>Other keywords must be further parsed as follows to determine
-  what they represent:</p>
-
-  <ul>
-
-   <li><p>If the keyword doesn't contain exactly one U+0078 LATIN
-   SMALL LETTER X character (x), then this keyword doesn't represent
-   anything. Abort these steps for that keyword.</p></li>
-
-   <li><p>Let <var title="">width string</var> be the string before
-   the "<code title="">x</code>".</p></li>
-
-   <li><p>Let <var title="">height string</var> be the string after the
-   "<code title="">x</code>".</p></li>
-
-   <li><p>If either <var title="">width string</var> or <var
-   title="">height string</var> start with a U+0030 DIGIT ZERO (0)
-   character or contain any characters other than characters in the
-   range U+0030 DIGIT ZERO (0) to U+0039 DIGIT NINE (9), then this
-   keyword doesn't represent anything. Abort these steps for that
-   keyword.</p></li>
-
-   <li><p>Apply the <span>rules for parsing non-negative
-   integers</span> to <var title="">width string</var> to obtain <var
-   title="">width</var>.</p></li>
-
-   <li><p>Apply the <span>rules for parsing non-negative
-   integers</span> to <var title="">height string</var> to obtain <var
-   title="">height</var>.</p></li>
-
-   <li><p>The keyword represents that the resource contains a bitmap
-   icon with a width of <var title="">width</var> device pixels and a
-   height of <var title="">height</var> device pixels.</p></li>
-
-  </ul>
-
-  </div>
-
-  <p>The keywords specified on the <code
-  title="attr-link-sizes">sizes</code> attribute must not represent
-  icon sizes that are not actually available in the linked
-  resource.</p>
-
-  <div class="impl">
-
-  <p>If the attribute is not specified, then the user agent must
-  assume that the given icon is appropriate, but less appropriate than
-  an icon of a known and appropriate size.</p>
-
-  </div>
-
-  <div class="example">
-
-   <p>The following snippet shows the top part of an application with
-   several icons.</p>
-
-   <pre><!DOCTYPE HTML>
-<html>
- <head>
-  <title>lsForums — Inbox</title>
-  <link rel=icon href=favicon.png sizes="16x16">
-  <link rel=icon href=windows.ico sizes="32x32 48x48">
-  <link rel=icon href=mac.icns sizes="128x128 512x512 8192x8192 32768x32768">
-  <link rel=icon href=iphone.png sizes="59x60">
-  <link rel=icon href=gnome.svg sizes="any">
-  <link rel=stylesheet href=lsforums.css>
-  <script src=lsforums.js></script>
-  <meta name=application-name content="lsForums">
- </head>
- <body>
-  ...</pre>
-
-  </div>
-
-
-  <h5>Link type "<dfn title="rel-license"><code>license</code></dfn>"</h5>
-
-  <p>The <code title="rel-license">license</code> keyword may be used
-  with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-license">license</code> keyword indicates
-  that the referenced document provides the copyright license terms
-  under which the main content of the current document is
-  provided.</p>
-
-  <p>This specification does not specify how to distinguish between
-  the main content of a document and content that is not deemed to be
-  part of that main content. The distinction should be made clear to
-  the user.</p>
-
-  <div class="example">
-
-   <p>Consider a photo sharing site. A page on that site might
-   describe and show a photograph, and the page might be marked up as
-   follows:</p>
-
-   <pre><!DOCTYPE HTML>
-<html>
- <head>
-  <title>Exampl Pictures: Kissat</title>
-  <link rel="stylesheet" href="/style/default">
- </head>
- <body>
-  <h1>Kissat</h1>
-  <nav>
-   <a href="../">Return to photo index</a>
-  </nav>
-  <figure>
-   <dd><img src="/pix/39627052_fd8dcd98b5.jpg">
-   <dt>Kissat
-  </figure>
-  <p>One of them has six toes!</p>
-  <p><small><a rel="license" href="http://www.opensource.org/licenses/mit-license.php">MIT Licensed</a></small></p>
-  <footer>
-   <a href="/">Home</a> | <a href="../">Photo index</a>
-   <p><small>© copyright 2009 Exampl Pictures. All Rights Reserved.</small></p>
-  </footer>
- </body>
-</html></pre>
-
-   <p>In this case the <code title="rel-license">license</code>
-   applies to just the photo (the main content of the document), not
-   the whole document. In particular not the design of the page
-   itself, which is covered by the copyright given at the bottom of
-   the document. This could be made clearer in the styling
-   (e.g. making the license link prominently positioned near the
-   photograph, while having the page copyright in light small text at
-   the foot of the page.</p>
-
-  </div>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">copyright</code>" like
-  the <code title="rel-license">license</code> keyword.</p>
-
-  </div>
-
-
-  <h5>Link type "<dfn title="rel-nofollow"><code>nofollow</code></dfn>"</h5>
-
-  <p>The <code title="rel-nofollow">nofollow</code> keyword may be
-  used with <code>a</code> and <code>area</code> elements.</p>
-
-  <p>The <code title="rel-nofollow">nofollow</code> keyword indicates
-  that the link is not endorsed by the original author or publisher of
-  the page, or that the link to the referenced document was included
-  primarily because of a commercial relationship between people
-  affiliated with the two pages.</p>
-
-
-  <h5>Link type "<dfn title="rel-noreferrer"><code>noreferrer</code></dfn>"</h5>
-
-  <p>The <code title="rel-noreferrer">noreferrer</code> keyword may be
-  used with <code>a</code> and <code>area</code> elements.</p>
-
-  <p>It indicates that the no referrer information is to be leaked
-  when following the link.</p>
-
-  <div class="impl">
-
-  <p>If a user agent follows a link defined by an <code>a</code> or
-  <code>area</code> element that has the <code
-  title="rel-noreferrer">noreferrer</code> keyword, the user agent
-  must not include a <code title="">Referer</code> (sic) HTTP header
-  (<span title="concept-http-equivalent-headers">or equivalent</span>
-  for other protocols) in the request.</p>
-
-  <p>This keyword also <a href="#noopener">causes the <code
-  title="dom-opener">opener</code> attribute to remain null</a> if the
-  hyperlink creates a new <span>browsing context</span>.</p>
-
-  </div>
-
-  <!-- v2: Would be nice to apply this to other elements too,
-  e.g. letting <img> or CSS or <video> hide the referrer -->
-
-
-  <h5>Link type "<dfn title="rel-pingback"><code>pingback</code></dfn>"</h5>
-
-  <p>The <code title="rel-pingback">pingback</code> keyword may be
-  used with <code>link</code> elements, for which it creates an <span
-  title="external resource link">external resource link</span>.</p>
-
-  <p>For the semantics of the <code
-  title="rel-pingback">pingback</code> keyword, see the Pingback 1.0
-  specification. <a href="#refsPINGBACK">[PINGBACK]</a></p>
-
-
-  <h5>Link type "<dfn title="rel-prefetch"><code>prefetch</code></dfn>"</h5>
-
-  <p>The <code title="rel-prefetch">prefetch</code> keyword may be
-  used with <code>link</code> elements, for which it creates an <span
-  title="external resource link">external resource link</span>.</p>
-
-  <p>The <code title="rel-prefetch">prefetch</code> keyword indicates
-  that preemptively fetching and caching the specified resource is
-  likely to be beneficial, as it is highly likely that the user will
-  require this resource.</p>
-
-  <p>There is no default type for resources given by the <code
-  title="rel-prefetch">prefetch</code> keyword.</p>
-
-
-  <h5>Link type "<dfn title="rel-search"><code>search</code></dfn>"</h5>
-
-  <p>The <code title="rel-search">search</code> keyword may be used
-  with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-search">search</code> keyword indicates that
-  the referenced document provides an interface specifically for
-  searching the document and its related resources.</p>
-
-  <p class="note">OpenSearch description documents can be used with
-  <code>link</code> elements and the <code
-  title="rel-search">search</code> link type to enable user agents to
-  autodiscover search interfaces. <a
-  href="#refsOPENSEARCH">[OPENSEARCH]</a></p>
-
-
-  <h5>Link type "<dfn title="rel-stylesheet"><code>stylesheet</code></dfn>"</h5>
-
-  <p>The <code title="rel-stylesheet">stylesheet</code> keyword may be
-  used with <code>link</code> elements, for which it creates an <span
-  title="external resource link">external resource link</span> that
-  contributes to the <span>styling processing model</span>.</p>
-
-  <p>The specified resource is a resource that describes how to
-  present the document. Exactly how the resource is to be processed
-  depends on the actual type of the resource.</p>
-
-  <p>If the <code title="rel-alternate">alternate</code> keyword is
-  also specified on the <code>link</code> element, then <dfn>the link
-  is an alternative stylesheet</dfn>; in this case, the <code
-  title="attr-title">title</code> attribute must be specified on the
-  <code>link</code> element, with a non-empty value.</p>
-
-  <p>The default type for resources given by the <code
-  title="rel-stylesheet">stylesheet</code> keyword is <code
-  title="">text/css</code>.</p>
-
-  <div class="impl">
-
-  <p><strong>Quirk</strong>: If the document has been set to
-  <span>quirks mode</span> and the <span
-  title="Content-Type">Content-Type metadata</span> of the external
-  resource is not a supported style sheet type, the user agent must
-  instead assume it to be <code title="">text/css</code>.</p>
-
-  </div>
-
-
-  <h5>Link type "<dfn title="rel-sidebar"><code>sidebar</code></dfn>"</h5>
-
-  <p>The <code title="rel-sidebar">sidebar</code> keyword may be used
-  with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-sidebar">sidebar</code> keyword indicates
-  that the referenced document, if retrieved, is intended to be shown
-  in a <span>secondary browsing context</span> (if possible), instead
-  of in the current <span>browsing context</span>.</p>
-
-  <p>A <span title="hyperlink">hyperlink element</span> with the <code
-  title="rel-sidebar">sidebar</code> keyword specified is a <dfn
-  title="rel-sidebar-hyperlink">sidebar hyperlink</dfn>.</p>
-
-
-  <h5>Link type "<dfn title="rel-tag"><code>tag</code></dfn>"</h5>
-
-  <p>The <code title="rel-tag">tag</code> keyword may be used
-  with <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-tag">tag</code> keyword indicates that the
-  <em>tag</em> that the referenced document represents applies to the
-  current document.</p>
-
-  <p class="note">Since it indicates that the tag <em>applies to the
-  current document</em>, it would be inappropriate to use this keyword
-  in the markup of a <a href="#tag-cloud">tag cloud</a>, which lists
-  the popular tag across a set of pages.</p>
-
-
-  <h5>Hierarchical link types</h5>
-
-  <p>Some documents form part of a hierarchical structure of
-  documents.</p>
-
-  <p>A hierarchical structure of documents is one where each document
-  can have various subdocuments. The document of which a document is a
-  subdocument is said to be the document's <em>parent</em>. A document
-  with no parent forms the top of the hierarchy.</p>
-
-  <p>A document may be part of multiple hierarchies.</p>
-
-
-  <h6>Link type "<dfn title="rel-index"><code>index</code></dfn>"</h6>
-
-  <p>The <code title="rel-index">index</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-index">index</code> keyword indicates that
-  the document is part of a hierarchical structure, and that the link
-  is leading to the document that is the top of the hierarchy. It
-  conveys more information when used with the <code
-  title="rel-up">up</code> keyword (q.v.).</p>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keywords "<code title="">top</code>", "<code
-  title="">contents</code>", and "<code title="">toc</code>" like the
-  <code title="rel-index">index</code> keyword.</p>
-
-  </div>
-
-
-  <h6>Link type "<dfn title="rel-up"><code>up</code></dfn>"</h6>
-
-  <p>The <code title="rel-up">up</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-up">up</code> keyword indicates that the
-  document is part of a hierarchical structure, and that the link is
-  leading to a document that is an ancestor of the current
-  document.</p>
-
-  <p>The <code title="rel-up">up</code> keyword may be repeated within
-  a <code title="attr-hyperlink-rel">rel</code> attribute to indicate
-  the hierarchical distance from the current document to the
-  referenced document. If it occurs only once, then the link is
-  leading to the current document's parent; each additional occurrence
-  of the keyword represents one further level. If the <code
-  title="rel-index">index</code> keyword is also present, then the
-  number of <code title="rel-up">up</code> keywords is the depth of
-  the current page relative to the top of the hierarchy. Only one link
-  is created for the set of one or more <code title="rel-up">up</code>
-  keywords and, if present, the <code title="rel-index">index</code>
-  keyword.</p>
-
-  <p>If the page is part of multiple hierarchies, then they should be
-  described in different <span
-  title="paragraph">paragraphs</span>. <span class="impl">User agents
-  must scope any interpretation of the <code title="rel-up">up</code>
-  and <code title="rel-index">index</code> keywords together
-  indicating the depth of the hierarchy to the <span>paragraph</span>
-  in which the link finds itself, if any, or to the document
-  otherwise.</span></p>
-
-  <div class="impl">
-
-  <p>When two links have both the <code title="rel-up">up</code> and
-  <code title="rel-index">index</code> keywords specified together in
-  the same scope and contradict each other by having a different
-  number of <code title="rel-up">up</code> keywords, the link with the
-  greater number of <code title="rel-up">up</code> keywords must be
-  taken as giving the depth of the document.</p>
-
-  </div>
-
-  <div class="example">
-
-   <p>This can be used to mark up a navigation style sometimes known
-   as bread crumbs. In the following example, the current page can be
-   reached via two paths.</p>
-
-   <pre><nav>
- <p>
-  <a href="/" rel="index up up up">Main</a> >
-  <a href="/products/" rel="up up">Products</a> >
-  <a href="/products/dishwashers/" rel="up">Dishwashers</a> >
-  <a>Second hand</a>
- </p>
- <p>
-  <a href="/" rel="index up up">Main</a> >
-  <a href="/second-hand/" rel="up">Second hand</a> >
-  <a>Dishwashers</a>
- </p>
-</nav></pre>
-
-  </div>
-
-  <p class="note">The <code title="dom-a-relList">relList</code> IDL
-  attribute (e.g. on the <code>a</code> element) does not currently
-  represent multiple <code title="rel-up">up</code> keywords (the
-  interface hides duplicates).</p>
-
-
-  <h5>Sequential link types</h5>
-
-  <p>Some documents form part of a sequence of documents.</p>
-
-  <p>A sequence of documents is one where each document can have a
-  <em>previous sibling</em> and a <em>next sibling</em>. A document
-  with no previous sibling is the start of its sequence, a document
-  with no next sibling is the end of its sequence.</p>
-
-  <p>A document may be part of multiple sequences.</p>
-
-
-  <h6>Link type "<dfn title="rel-first"><code>first</code></dfn>"</h6>
-
-  <p>The <code title="rel-first">first</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-first">first</code> keyword indicates that
-  the document is part of a sequence, and that the link is leading to
-  the document that is the first logical document in the sequence.</p>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keywords "<code title="">begin</code>" and
-  "<code title="">start</code>" like the <code
-  title="rel-first">first</code> keyword.</p>
-
-  </div>
-
-
-  <h6>Link type "<dfn title="rel-last"><code>last</code></dfn>"</h6>
-
-  <p>The <code title="rel-last">last</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-last">last</code> keyword indicates that the
-  document is part of a sequence, and that the link is leading to the
-  document that is the last logical document in the sequence.</p>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">end</code>" like the
-  <code title="rel-last">last</code> keyword.</p>
-
-  </div>
-
-
-  <h6>Link type "<dfn title="rel-next"><code>next</code></dfn>"</h6>
-
-  <p>The <code title="rel-next">next</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-next">next</code> keyword indicates that the
-  document is part of a sequence, and that the link is leading to the
-  document that is the next logical document in the sequence.</p>
-
-
-  <h6>Link type "<dfn title="rel-prev"><code>prev</code></dfn>"</h6>
-
-  <p>The <code title="rel-prev">prev</code> keyword may be used with
-  <code>link</code>, <code>a</code>, and <code>area</code>
-  elements. For <code>link</code> elements, it creates a <span
-  title="hyperlink link">hyperlink</span>.</p>
-
-  <p>The <code title="rel-prev">prev</code> keyword indicates that the
-  document is part of a sequence, and that the link is leading to the
-  document that is the previous logical document in the sequence.</p>
-
-  <div class="impl">
-
-  <p><strong>Synonyms</strong>: For historical reasons, user agents
-  must also treat the keyword "<code title="">previous</code>" like
-  the <code title="rel-prev">prev</code> keyword.</p>
-
-  </div>
-
-
-  <h5>Other link types</h5>
-
-  <p><dfn title="concept-rel-extensions">Extensions to the predefined
-  set of link types</dfn> may be registered in the <a
-  href="http://wiki.whatwg.org/wiki/RelExtensions">WHATWG Wiki
-  RelExtensions page</a>. <a
-  href="#refsWHATWGWIKI">[WHATWGWIKI]</a></p>
-
-  <p>Anyone is free to edit the WHATWG Wiki RelExtensions page at any
-  time to add a type. Extension types must be specified with the
-  following information:</p>
-
-  <dl>
-
-   <dt>Keyword</dt>
-
-   <dd><p>The actual value being defined. The value should not be
-   confusingly similar to any other defined value (e.g. differing only
-   in case).</p></dd>
-
-
-   <dt>Effect on... <code>link</code></dt>
-
-   <dd>
-
-    <p>One of the following:</p>
-
-    <dl>
-
-     <dt>not allowed</dt>
-
-     <dd>The keyword is not allowed to be specified on
-     <code>link</code> elements.</dd>
-
-     <dt>Hyperlink</dt>
-
-     <dd>The keyword may be specified on a <code>link</code> element;
-     it creates a <span title="hyperlink link">hyperlink
-     link</span>.</dd>
-
-     <dt>External Resource</dt>
-
-     <dd>The keyword may be specified on a <code>link</code> element;
-     it creates a <span title="external resource link">external
-     resource link</span>.</dd>
-
-    </dl>
-
-   </dd>
-
-
-   <dt>Effect on... <code>a</code> and <code>area</code></dt>
-
-   <dd>
-
-    <p>One of the following:</p>
-
-    <dl>
-
-     <dt>not allowed</dt>
-
-     <dd>The keyword is not allowed to be specified on <code>a</code>
-     and <code>area</code> elements.</dd>
-
-     <dt>Hyperlink</dt>
-
-     <dd>The keyword may be specified on <code>a</code> and
-     <code>area</code> elements.</dd>
-
-    </dl>
-
-   </dd>
-
-
-   <dt>Brief description</dt>
-
-   <dd><p>A short non-normative description of what the keyword's
-   meaning is.</p></dd>
-
-
-   <dt>Specification</dt>
-
-   <dd><p>A link to a more detailed description of the keyword's
-   semantics and requirements. It could be another page on the Wiki,
-   or a link to an external page.</p></dd>
-
-
-   <dt>Synonyms</dt>
-
-   <dd><p>A list of other keyword values that have exactly the same
-   processing requirements. Authors should not use the values defined
-   to be synonyms, they are only intended to allow user agents to
-   support legacy content. Anyone may remove synonyms that are not
-   used in practice; only names that need to be processed as synonyms
-   for compatibility with legacy content are to be registered in this
-   way.</p></dd>
-
-
-   <dt>Status</dt>
-
-   <dd>
-
-    <p>One of the following:</p>
-
-    <dl>
-
-     <dt>Proposed</dt>
-
-     <dd>The keyword has not received wide peer review and
-     approval. Someone has proposed it and is, or soon will be, using
-     it.</dd>
-
-     <dt>Ratified</dt>
-
-     <dd>The keyword has received wide peer review and approval. It
-     has a specification that unambiguously defines how to handle
-     pages that use the keyword, including when they use it in
-     incorrect ways.</dd>
-
-     <dt>Discontinued</dt>
-
-     <dd>The keyword has received wide peer review and it has been
-     found wanting. Existing pages are using this keyword, but new
-     pages should avoid it. The "brief description" and
-     "specification" entries will give details of what authors should
-     use instead, if anything.</dd>
-
-    </dl>
-
-    <p>If a keyword is found to be redundant with existing values, it
-    should be removed and listed as a synonym for the existing
-    value.</p>
-
-    <p>If a keyword is registered in the "proposed" state for a
-    period of a month or more without being used or specified, then it
-    may be removed from the registry.</p>
-
-    <p>If a keyword is added with the "proposed" status and found to
-    be redundant with existing values, it should be removed and listed
-    as a synonym for the existing value. If a keyword is added with
-    the "proposed" status and found to be harmful, then it should be
-    changed to "discontinued" status.</p>
-
-    <p>Anyone can change the status at any time, but should only do so
-    in accordance with the definitions above.</p>
-
-   </dd>
-
-  </dl>
-
-  <div class="impl">
-
-  <p>Conformance checkers must use the information given on the WHATWG
-  Wiki RelExtensions page to establish if a value is allowed or not:
-  values defined in this specification or marked as "proposed" or
-  "ratified" must be accepted when used on the elements for which they
-  apply as described in the "Effect on..." field, whereas values
-  marked as "discontinued" or not listed in either this specification
-  or on the aforementioned page must be rejected as invalid.
-  Conformance checkers may cache this information (e.g. for
-  performance reasons or to avoid the use of unreliable network
-  connectivity).</p>
-
-  <p>When an author uses a new type not defined by either this
-  specification or the Wiki page, conformance checkers should offer to
-  add the value to the Wiki, with the details described above, with
-  the "proposed" status.</p>
-
-  </div>
-
-  <p>Types defined as extensions in the <a
-  href="http://wiki.whatwg.org/wiki/RelExtensions">WHATWG Wiki
-  RelExtensions page</a> with the status "proposed" or "ratified" may
-  be used with the <code title="">rel</code> attribute on
-  <code>link</code>, <code>a</code>, and <code>area</code> elements in
-  accordance to the "Effect on..." field. <a
-  href="#refsWHATWGWIKI">[WHATWGWIKI]</a></p>
-
-
-
   <h2 id="editing"><dfn>User Interaction</dfn></h2>
 
   <p>This section describes various features that allow authors to




More information about the Commit-Watchers mailing list