[html5] r3074 - [] (0) Add the ability to annotate custom microdata in HTML.
whatwg at whatwg.org
whatwg at whatwg.org
Sun May 10 03:32:36 PDT 2009
Author: ianh
Date: 2009-05-10 03:32:35 -0700 (Sun, 10 May 2009)
New Revision: 3074
Modified:
index
source
Log:
[] (0) Add the ability to annotate custom microdata in HTML.
Modified: index
===================================================================
--- index 2009-05-07 08:48:03 UTC (rev 3073)
+++ index 2009-05-10 10:32:35 UTC (rev 3074)
@@ -39,7 +39,7 @@
<div class=head>
<p><a class=logo href=http://www.whatwg.org/ rel=home><img alt=WHATWG src=/images/logo></a></p>
<h1>HTML 5</h1>
- <h2 class="no-num no-toc" id=draft-recommendation-—-date:-01-jan-1901>Draft Recommendation — 7 May 2009</h2>
+ <h2 class="no-num no-toc" id=draft-recommendation-—-date:-01-jan-1901>Draft Recommendation — 10 May 2009</h2>
<p>You can take part in this work. <a href=http://www.whatwg.org/mailing-list>Join the working group's discussion list.</a></p>
<p><strong>Web designers!</strong> We have a <a href=http://blog.whatwg.org/faq/>FAQ</a>, a <a href=http://forums.whatwg.org/>forum</a>, and a <a href=http://www.whatwg.org/mailing-list#help>help mailing list</a> for you!</p>
<dl><dt>Multiple-page version:</dt>
@@ -264,7 +264,8 @@
<li><a href=#colors><span class=secno>2.4.6 </span>Colors</a></li>
<li><a href=#space-separated-tokens><span class=secno>2.4.7 </span>Space-separated tokens</a></li>
<li><a href=#comma-separated-tokens><span class=secno>2.4.8 </span>Comma-separated tokens</a></li>
- <li><a href=#syntax-references><span class=secno>2.4.9 </span>References</a></ol></li>
+ <li><a href=#reversed-dns-identifiers><span class=secno>2.4.9 </span>Reversed DNS identifiers</a></li>
+ <li><a href=#syntax-references><span class=secno>2.4.10 </span>References</a></ol></li>
<li><a href=#urls><span class=secno>2.5 </span>URLs</a>
<ol>
<li><a href=#terminology-0><span class=secno>2.5.1 </span>Terminology</a></li>
@@ -292,13 +293,15 @@
<ol>
<li><a href=#htmlcollection><span class=secno>2.9.2.1 </span>HTMLCollection</a></li>
<li><a href=#htmlformcontrolscollection><span class=secno>2.9.2.2 </span>HTMLFormControlsCollection</a></li>
- <li><a href=#htmloptionscollection><span class=secno>2.9.2.3 </span>HTMLOptionsCollection</a></ol></li>
+ <li><a href=#htmloptionscollection><span class=secno>2.9.2.3 </span>HTMLOptionsCollection</a></li>
+ <li><a href=#htmlpropertycollection><span class=secno>2.9.2.4 </span>HTMLPropertyCollection</a></ol></li>
<li><a href=#domtokenlist><span class=secno>2.9.3 </span>DOMTokenList</a></li>
- <li><a href=#safe-passing-of-structured-data><span class=secno>2.9.4 </span>Safe passing of structured data</a></li>
- <li><a href=#domstringmap><span class=secno>2.9.5 </span>DOMStringMap</a></li>
- <li><a href=#dom-feature-strings><span class=secno>2.9.6 </span>DOM feature strings</a></li>
- <li><a href=#exceptions><span class=secno>2.9.7 </span>Exceptions</a></li>
- <li><a href=#garbage-collection><span class=secno>2.9.8 </span>Garbage collection</a></ol></ol></li>
+ <li><a href=#domsettabletokenlist><span class=secno>2.9.4 </span>DOMSettableTokenList</a></li>
+ <li><a href=#safe-passing-of-structured-data><span class=secno>2.9.5 </span>Safe passing of structured data</a></li>
+ <li><a href=#domstringmap><span class=secno>2.9.6 </span>DOMStringMap</a></li>
+ <li><a href=#dom-feature-strings><span class=secno>2.9.7 </span>DOM feature strings</a></li>
+ <li><a href=#exceptions><span class=secno>2.9.8 </span>Exceptions</a></li>
+ <li><a href=#garbage-collection><span class=secno>2.9.9 </span>Garbage collection</a></ol></ol></li>
<li><a href=#dom><span class=secno>3 </span>Semantics and structure of HTML documents</a>
<ol>
<li><a href=#semantics-intro><span class=secno>3.1 </span>Introduction</a></li>
@@ -660,391 +663,406 @@
<li><a href=#the-legend-element><span class=secno>4.12.1 </span>The <code>legend</code> element</a></li>
<li><a href=#the-div-element><span class=secno>4.12.2 </span>The <code>div</code> element</a></ol></li>
<li><a href=#matching-html-elements-using-selectors><span class=secno>4.13 </span>Matching HTML elements using selectors</a></ol></li>
- <li><a href=#browsers><span class=secno>5 </span>Web browsers</a>
+ <li><a href=#microdata><span class=secno>5 </span>Microdata</a>
<ol>
- <li><a href=#windows><span class=secno>5.1 </span>Browsing contexts</a>
+ <li><a href=#introduction-2><span class=secno>5.1 </span>Introduction</a></li>
+ <li><a href=#encoding-microdata><span class=secno>5.2 </span>Encoding microdata</a>
<ol>
- <li><a href=#nested-browsing-contexts><span class=secno>5.1.1 </span>Nested browsing contexts</a>
+ <li><a href=#the-microdata-model><span class=secno>5.2.1 </span>The microdata model</a></li>
+ <li><a href=#items:-the-item-attribute><span class=secno>5.2.2 </span>Items: the <code>item</code> attribute</a></li>
+ <li><a href=#associating-names-with-items><span class=secno>5.2.3 </span>Associating names with items</a></li>
+ <li><a href=#names:-the-property-attribute><span class=secno>5.2.4 </span>Names: the <code>property</code> attribute</a></li>
+ <li><a href=#values><span class=secno>5.2.5 </span>Values</a></ol></li>
+ <li><a href=#microdata-dom-api><span class=secno>5.3 </span>Microdata DOM API</a></li>
+ <li><a href=#converting-html-to-oher-formats><span class=secno>5.4 </span>Converting HTML to oher formats</a>
+ <ol>
+ <li><a href=#json><span class=secno>5.4.1 </span>JSON</a></li>
+ <li><a href=#rdf><span class=secno>5.4.2 </span>RDF</a></ol></ol></li>
+ <li><a href=#browsers><span class=secno>6 </span>Web browsers</a>
+ <ol>
+ <li><a href=#windows><span class=secno>6.1 </span>Browsing contexts</a>
+ <ol>
+ <li><a href=#nested-browsing-contexts><span class=secno>6.1.1 </span>Nested browsing contexts</a>
<ol>
- <li><a href=#navigating-nested-browsing-contexts-in-the-dom><span class=secno>5.1.1.1 </span>Navigating nested browsing contexts in the DOM</a></ol></li>
- <li><a href=#auxiliary-browsing-contexts><span class=secno>5.1.2 </span>Auxiliary browsing contexts</a>
+ <li><a href=#navigating-nested-browsing-contexts-in-the-dom><span class=secno>6.1.1.1 </span>Navigating nested browsing contexts in the DOM</a></ol></li>
+ <li><a href=#auxiliary-browsing-contexts><span class=secno>6.1.2 </span>Auxiliary browsing contexts</a>
<ol>
- <li><a href=#navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>5.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</a></ol></li>
- <li><a href=#secondary-browsing-contexts><span class=secno>5.1.3 </span>Secondary browsing contexts</a></li>
- <li><a href=#security-1><span class=secno>5.1.4 </span>Security</a></li>
- <li><a href=#groupings-of-browsing-contexts><span class=secno>5.1.5 </span>Groupings of browsing contexts</a></li>
- <li><a href=#browsing-context-names><span class=secno>5.1.6 </span>Browsing context names</a></ol></li>
- <li><a href=#the-windowproxy-object><span class=secno>5.2 </span>The <code>WindowProxy</code> object</a></li>
- <li><a href=#the-window-object><span class=secno>5.3 </span>The <code>Window</code> object</a>
+ <li><a href=#navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>6.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</a></ol></li>
+ <li><a href=#secondary-browsing-contexts><span class=secno>6.1.3 </span>Secondary browsing contexts</a></li>
+ <li><a href=#security-1><span class=secno>6.1.4 </span>Security</a></li>
+ <li><a href=#groupings-of-browsing-contexts><span class=secno>6.1.5 </span>Groupings of browsing contexts</a></li>
+ <li><a href=#browsing-context-names><span class=secno>6.1.6 </span>Browsing context names</a></ol></li>
+ <li><a href=#the-windowproxy-object><span class=secno>6.2 </span>The <code>WindowProxy</code> object</a></li>
+ <li><a href=#the-window-object><span class=secno>6.3 </span>The <code>Window</code> object</a>
<ol>
- <li><a href=#security-2><span class=secno>5.3.1 </span>Security</a></li>
- <li><a href=#apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>5.3.2 </span>APIs for creating and navigating browsing contexts by name</a></li>
- <li><a href=#accessing-other-browsing-contexts><span class=secno>5.3.3 </span>Accessing other browsing contexts</a></li>
- <li><a href=#named-access-on-the-window-object><span class=secno>5.3.4 </span>Named access on the <code>Window</code> object</a></li>
- <li><a href=#garbage-collection-and-browsing-contexts><span class=secno>5.3.5 </span>Garbage collection and browsing contexts</a></li>
- <li><a href=#browser-interface-elements><span class=secno>5.3.6 </span>Browser interface elements</a></ol></li>
- <li><a href=#origin><span class=secno>5.4 </span>Origin</a>
+ <li><a href=#security-2><span class=secno>6.3.1 </span>Security</a></li>
+ <li><a href=#apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>6.3.2 </span>APIs for creating and navigating browsing contexts by name</a></li>
+ <li><a href=#accessing-other-browsing-contexts><span class=secno>6.3.3 </span>Accessing other browsing contexts</a></li>
+ <li><a href=#named-access-on-the-window-object><span class=secno>6.3.4 </span>Named access on the <code>Window</code> object</a></li>
+ <li><a href=#garbage-collection-and-browsing-contexts><span class=secno>6.3.5 </span>Garbage collection and browsing contexts</a></li>
+ <li><a href=#browser-interface-elements><span class=secno>6.3.6 </span>Browser interface elements</a></ol></li>
+ <li><a href=#origin><span class=secno>6.4 </span>Origin</a>
<ol>
- <li><a href=#relaxing-the-same-origin-restriction><span class=secno>5.4.1 </span>Relaxing the same-origin restriction</a></ol></li>
- <li><a href=#scripting><span class=secno>5.5 </span>Scripting</a>
+ <li><a href=#relaxing-the-same-origin-restriction><span class=secno>6.4.1 </span>Relaxing the same-origin restriction</a></ol></li>
+ <li><a href=#scripting><span class=secno>6.5 </span>Scripting</a>
<ol>
- <li><a href=#introduction-2><span class=secno>5.5.1 </span>Introduction</a></li>
- <li><a href=#enabling-and-disabling-scripting><span class=secno>5.5.2 </span>Enabling and disabling scripting</a></li>
- <li><a href=#processing-model-1><span class=secno>5.5.3 </span>Processing model</a>
+ <li><a href=#introduction-3><span class=secno>6.5.1 </span>Introduction</a></li>
+ <li><a href=#enabling-and-disabling-scripting><span class=secno>6.5.2 </span>Enabling and disabling scripting</a></li>
+ <li><a href=#processing-model-1><span class=secno>6.5.3 </span>Processing model</a>
<ol>
- <li><a href=#definitions-0><span class=secno>5.5.3.1 </span>Definitions</a></li>
- <li><a href=#calling-scripts><span class=secno>5.5.3.2 </span>Calling scripts</a></li>
- <li><a href=#creating-scripts><span class=secno>5.5.3.3 </span>Creating scripts</a></li>
- <li><a href=#killing-scripts><span class=secno>5.5.3.4 </span>Killing scripts</a></ol></li>
- <li><a href=#event-loops><span class=secno>5.5.4 </span>Event loops</a>
+ <li><a href=#definitions-0><span class=secno>6.5.3.1 </span>Definitions</a></li>
+ <li><a href=#calling-scripts><span class=secno>6.5.3.2 </span>Calling scripts</a></li>
+ <li><a href=#creating-scripts><span class=secno>6.5.3.3 </span>Creating scripts</a></li>
+ <li><a href=#killing-scripts><span class=secno>6.5.3.4 </span>Killing scripts</a></ol></li>
+ <li><a href=#event-loops><span class=secno>6.5.4 </span>Event loops</a>
<ol>
- <li><a href=#definitions-1><span class=secno>5.5.4.1 </span>Definitions</a></li>
- <li><a href=#processing-model-2><span class=secno>5.5.4.2 </span>Processing model</a></li>
- <li><a href=#generic-task-sources><span class=secno>5.5.4.3 </span>Generic task sources</a></ol></li>
- <li><a href=#javascript-protocol><span class=secno>5.5.5 </span>The <code title="">javascript:</code> protocol</a></li>
- <li><a href=#events><span class=secno>5.5.6 </span>Events</a>
+ <li><a href=#definitions-1><span class=secno>6.5.4.1 </span>Definitions</a></li>
+ <li><a href=#processing-model-2><span class=secno>6.5.4.2 </span>Processing model</a></li>
+ <li><a href=#generic-task-sources><span class=secno>6.5.4.3 </span>Generic task sources</a></ol></li>
+ <li><a href=#javascript-protocol><span class=secno>6.5.5 </span>The <code title="">javascript:</code> protocol</a></li>
+ <li><a href=#events><span class=secno>6.5.6 </span>Events</a>
<ol>
- <li><a href=#event-handler-attributes><span class=secno>5.5.6.1 </span>Event handler attributes</a></li>
- <li><a href=#event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>5.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code>Window</code> objects</a></li>
- <li><a href=#event-firing><span class=secno>5.5.6.3 </span>Event firing</a></li>
- <li><a href=#events-and-the-window-object><span class=secno>5.5.6.4 </span>Events and the <code>Window</code> object</a></li>
- <li><a href=#runtime-script-errors><span class=secno>5.5.6.5 </span>Runtime script errors</a></ol></ol></li>
- <li><a href=#timers><span class=secno>5.6 </span>Timers</a></li>
- <li><a href=#user-prompts><span class=secno>5.7 </span>User prompts</a>
+ <li><a href=#event-handler-attributes><span class=secno>6.5.6.1 </span>Event handler attributes</a></li>
+ <li><a href=#event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>6.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code>Window</code> objects</a></li>
+ <li><a href=#event-firing><span class=secno>6.5.6.3 </span>Event firing</a></li>
+ <li><a href=#events-and-the-window-object><span class=secno>6.5.6.4 </span>Events and the <code>Window</code> object</a></li>
+ <li><a href=#runtime-script-errors><span class=secno>6.5.6.5 </span>Runtime script errors</a></ol></ol></li>
+ <li><a href=#timers><span class=secno>6.6 </span>Timers</a></li>
+ <li><a href=#user-prompts><span class=secno>6.7 </span>User prompts</a>
<ol>
- <li><a href=#simple-dialogs><span class=secno>5.7.1 </span>Simple dialogs</a></li>
- <li><a href=#printing><span class=secno>5.7.2 </span>Printing</a></li>
- <li><a href=#dialogs-implemented-using-separate-documents><span class=secno>5.7.3 </span>Dialogs implemented using separate documents</a></ol></li>
- <li><a href=#system-state-and-capabilities><span class=secno>5.8 </span>System state and capabilities</a>
+ <li><a href=#simple-dialogs><span class=secno>6.7.1 </span>Simple dialogs</a></li>
+ <li><a href=#printing><span class=secno>6.7.2 </span>Printing</a></li>
+ <li><a href=#dialogs-implemented-using-separate-documents><span class=secno>6.7.3 </span>Dialogs implemented using separate documents</a></ol></li>
+ <li><a href=#system-state-and-capabilities><span class=secno>6.8 </span>System state and capabilities</a>
<ol>
- <li><a href=#client-identification><span class=secno>5.8.1 </span>Client identification</a></li>
- <li><a href=#custom-handlers><span class=secno>5.8.2 </span>Custom protocol and content handlers</a>
+ <li><a href=#client-identification><span class=secno>6.8.1 </span>Client identification</a></li>
+ <li><a href=#custom-handlers><span class=secno>6.8.2 </span>Custom protocol and content handlers</a>
<ol>
- <li><a href=#security-and-privacy><span class=secno>5.8.2.1 </span>Security and privacy</a></li>
- <li><a href=#sample-handler-impl><span class=secno>5.8.2.2 </span>Sample user interface</a></ol></li>
- <li><a href=#manually-releasing-the-storage-mutex><span class=secno>5.8.3 </span>Manually releasing the storage mutex</a></ol></li>
- <li><a href=#offline><span class=secno>5.9 </span>Offline Web applications</a>
+ <li><a href=#security-and-privacy><span class=secno>6.8.2.1 </span>Security and privacy</a></li>
+ <li><a href=#sample-handler-impl><span class=secno>6.8.2.2 </span>Sample user interface</a></ol></li>
+ <li><a href=#manually-releasing-the-storage-mutex><span class=secno>6.8.3 </span>Manually releasing the storage mutex</a></ol></li>
+ <li><a href=#offline><span class=secno>6.9 </span>Offline Web applications</a>
<ol>
- <li><a href=#introduction-3><span class=secno>5.9.1 </span>Introduction</a></li>
- <li><a href=#appcache><span class=secno>5.9.2 </span>Application caches</a></li>
- <li><a href=#manifests><span class=secno>5.9.3 </span>The cache manifest syntax</a>
+ <li><a href=#introduction-4><span class=secno>6.9.1 </span>Introduction</a></li>
+ <li><a href=#appcache><span class=secno>6.9.2 </span>Application caches</a></li>
+ <li><a href=#manifests><span class=secno>6.9.3 </span>The cache manifest syntax</a>
<ol>
- <li><a href=#a-sample-manifest><span class=secno>5.9.3.1 </span>A sample manifest</a></li>
- <li><a href=#writing-cache-manifests><span class=secno>5.9.3.2 </span>Writing cache manifests</a></li>
- <li><a href=#parsing-cache-manifests><span class=secno>5.9.3.3 </span>Parsing cache manifests</a></ol></li>
- <li><a href=#updating-an-application-cache><span class=secno>5.9.4 </span>Updating an application cache</a></li>
- <li><a href=#matching-a-fallback-namespace><span class=secno>5.9.5 </span>Matching a fallback namespace</a></li>
- <li><a href=#the-application-cache-selection-algorithm><span class=secno>5.9.6 </span>The application cache selection algorithm</a></li>
- <li><a href=#changesToNetworkingModel><span class=secno>5.9.7 </span>Changes to the networking model</a></li>
- <li><a href=#application-cache-api><span class=secno>5.9.8 </span>Application cache API</a></li>
- <li><a href=#browser-state><span class=secno>5.9.9 </span>Browser state</a></ol></li>
- <li><a href=#history><span class=secno>5.10 </span>Session history and navigation</a>
+ <li><a href=#a-sample-manifest><span class=secno>6.9.3.1 </span>A sample manifest</a></li>
+ <li><a href=#writing-cache-manifests><span class=secno>6.9.3.2 </span>Writing cache manifests</a></li>
+ <li><a href=#parsing-cache-manifests><span class=secno>6.9.3.3 </span>Parsing cache manifests</a></ol></li>
+ <li><a href=#updating-an-application-cache><span class=secno>6.9.4 </span>Updating an application cache</a></li>
+ <li><a href=#matching-a-fallback-namespace><span class=secno>6.9.5 </span>Matching a fallback namespace</a></li>
+ <li><a href=#the-application-cache-selection-algorithm><span class=secno>6.9.6 </span>The application cache selection algorithm</a></li>
+ <li><a href=#changesToNetworkingModel><span class=secno>6.9.7 </span>Changes to the networking model</a></li>
+ <li><a href=#application-cache-api><span class=secno>6.9.8 </span>Application cache API</a></li>
+ <li><a href=#browser-state><span class=secno>6.9.9 </span>Browser state</a></ol></li>
+ <li><a href=#history><span class=secno>6.10 </span>Session history and navigation</a>
<ol>
- <li><a href=#the-session-history-of-browsing-contexts><span class=secno>5.10.1 </span>The session history of browsing contexts</a></li>
- <li><a href=#the-history-interface><span class=secno>5.10.2 </span>The <code>History</code> interface</a></li>
- <li><a href=#activating-state-object-entries><span class=secno>5.10.3 </span>Activating state object entries</a></li>
- <li><a href=#the-location-interface><span class=secno>5.10.4 </span>The <code>Location</code> interface</a>
+ <li><a href=#the-session-history-of-browsing-contexts><span class=secno>6.10.1 </span>The session history of browsing contexts</a></li>
+ <li><a href=#the-history-interface><span class=secno>6.10.2 </span>The <code>History</code> interface</a></li>
+ <li><a href=#activating-state-object-entries><span class=secno>6.10.3 </span>Activating state object entries</a></li>
+ <li><a href=#the-location-interface><span class=secno>6.10.4 </span>The <code>Location</code> interface</a>
<ol>
- <li><a href=#security-3><span class=secno>5.10.4.1 </span>Security</a></ol></li>
- <li><a href=#history-notes><span class=secno>5.10.5 </span>Implementation notes for session history</a></ol></li>
- <li><a href=#browsing-the-web><span class=secno>5.11 </span>Browsing the Web</a>
+ <li><a href=#security-3><span class=secno>6.10.4.1 </span>Security</a></ol></li>
+ <li><a href=#history-notes><span class=secno>6.10.5 </span>Implementation notes for session history</a></ol></li>
+ <li><a href=#browsing-the-web><span class=secno>6.11 </span>Browsing the Web</a>
<ol>
- <li><a href=#navigating-across-documents><span class=secno>5.11.1 </span>Navigating across documents</a></li>
- <li><a href=#read-html><span class=secno>5.11.2 </span>Page load processing model for HTML files</a></li>
- <li><a href=#read-xml><span class=secno>5.11.3 </span>Page load processing model for XML files</a></li>
- <li><a href=#read-text><span class=secno>5.11.4 </span>Page load processing model for text files</a></li>
- <li><a href=#read-image><span class=secno>5.11.5 </span>Page load processing model for images</a></li>
- <li><a href=#read-plugin><span class=secno>5.11.6 </span>Page load processing model for content that uses plugins</a></li>
- <li><a href=#read-ua-inline><span class=secno>5.11.7 </span>Page load processing model for inline content that doesn't have a DOM</a></li>
- <li><a href=#scroll-to-fragid><span class=secno>5.11.8 </span>Navigating to a fragment identifier</a></li>
- <li><a href=#history-traversal><span class=secno>5.11.9 </span>History traversal</a></li>
- <li><a href=#unloading-documents><span class=secno>5.11.10 </span>Unloading documents</a>
+ <li><a href=#navigating-across-documents><span class=secno>6.11.1 </span>Navigating across documents</a></li>
+ <li><a href=#read-html><span class=secno>6.11.2 </span>Page load processing model for HTML files</a></li>
+ <li><a href=#read-xml><span class=secno>6.11.3 </span>Page load processing model for XML files</a></li>
+ <li><a href=#read-text><span class=secno>6.11.4 </span>Page load processing model for text files</a></li>
+ <li><a href=#read-image><span class=secno>6.11.5 </span>Page load processing model for images</a></li>
+ <li><a href=#read-plugin><span class=secno>6.11.6 </span>Page load processing model for content that uses plugins</a></li>
+ <li><a href=#read-ua-inline><span class=secno>6.11.7 </span>Page load processing model for inline content that doesn't have a DOM</a></li>
+ <li><a href=#scroll-to-fragid><span class=secno>6.11.8 </span>Navigating to a fragment identifier</a></li>
+ <li><a href=#history-traversal><span class=secno>6.11.9 </span>History traversal</a></li>
+ <li><a href=#unloading-documents><span class=secno>6.11.10 </span>Unloading documents</a>
<ol>
- <li><a href=#event-definition><span class=secno>5.11.10.1 </span>Event definition</a></ol></ol></li>
- <li><a href=#links><span class=secno>5.12 </span>Links</a>
+ <li><a href=#event-definition><span class=secno>6.11.10.1 </span>Event definition</a></ol></ol></li>
+ <li><a href=#links><span class=secno>6.12 </span>Links</a>
<ol>
- <li><a href=#hyperlink-elements><span class=secno>5.12.1 </span>Hyperlink elements</a></li>
- <li><a href=#following-hyperlinks><span class=secno>5.12.2 </span>Following hyperlinks</a>
+ <li><a href=#hyperlink-elements><span class=secno>6.12.1 </span>Hyperlink elements</a></li>
+ <li><a href=#following-hyperlinks><span class=secno>6.12.2 </span>Following hyperlinks</a>
<ol>
- <li><a href=#hyperlink-auditing><span class=secno>5.12.2.1 </span>Hyperlink auditing</a></ol></li>
- <li><a href=#linkTypes><span class=secno>5.12.3 </span>Link types</a>
+ <li><a href=#hyperlink-auditing><span class=secno>6.12.2.1 </span>Hyperlink auditing</a></ol></li>
+ <li><a href=#linkTypes><span class=secno>6.12.3 </span>Link types</a>
<ol>
- <li><a href=#link-type-alternate><span class=secno>5.12.3.1 </span>Link type "<code>alternate</code>"</a></li>
- <li><a href=#link-type-archives><span class=secno>5.12.3.2 </span>Link type "<code>archives</code>"</a></li>
- <li><a href=#link-type-author><span class=secno>5.12.3.3 </span>Link type "<code>author</code>"</a></li>
- <li><a href=#link-type-bookmark><span class=secno>5.12.3.4 </span>Link type "<code>bookmark</code>"</a></li>
- <li><a href=#link-type-external><span class=secno>5.12.3.5 </span>Link type "<code>external</code>"</a></li>
- <li><a href=#link-type-feed><span class=secno>5.12.3.6 </span>Link type "<code>feed</code>"</a></li>
- <li><a href=#link-type-help><span class=secno>5.12.3.7 </span>Link type "<code>help</code>"</a></li>
- <li><a href=#rel-icon><span class=secno>5.12.3.8 </span>Link type "<code>icon</code>"</a></li>
- <li><a href=#link-type-license><span class=secno>5.12.3.9 </span>Link type "<code>license</code>"</a></li>
- <li><a href=#link-type-nofollow><span class=secno>5.12.3.10 </span>Link type "<code>nofollow</code>"</a></li>
- <li><a href=#link-type-noreferrer><span class=secno>5.12.3.11 </span>Link type "<code>noreferrer</code>"</a></li>
- <li><a href=#link-type-pingback><span class=secno>5.12.3.12 </span>Link type "<code>pingback</code>"</a></li>
- <li><a href=#link-type-prefetch><span class=secno>5.12.3.13 </span>Link type "<code>prefetch</code>"</a></li>
- <li><a href=#link-type-search><span class=secno>5.12.3.14 </span>Link type "<code>search</code>"</a></li>
- <li><a href=#link-type-stylesheet><span class=secno>5.12.3.15 </span>Link type "<code>stylesheet</code>"</a></li>
- <li><a href=#link-type-sidebar><span class=secno>5.12.3.16 </span>Link type "<code>sidebar</code>"</a></li>
- <li><a href=#link-type-tag><span class=secno>5.12.3.17 </span>Link type "<code>tag</code>"</a></li>
- <li><a href=#hierarchical-link-types><span class=secno>5.12.3.18 </span>Hierarchical link types</a>
+ <li><a href=#link-type-alternate><span class=secno>6.12.3.1 </span>Link type "<code>alternate</code>"</a></li>
+ <li><a href=#link-type-archives><span class=secno>6.12.3.2 </span>Link type "<code>archives</code>"</a></li>
+ <li><a href=#link-type-author><span class=secno>6.12.3.3 </span>Link type "<code>author</code>"</a></li>
+ <li><a href=#link-type-bookmark><span class=secno>6.12.3.4 </span>Link type "<code>bookmark</code>"</a></li>
+ <li><a href=#link-type-external><span class=secno>6.12.3.5 </span>Link type "<code>external</code>"</a></li>
+ <li><a href=#link-type-feed><span class=secno>6.12.3.6 </span>Link type "<code>feed</code>"</a></li>
+ <li><a href=#link-type-help><span class=secno>6.12.3.7 </span>Link type "<code>help</code>"</a></li>
+ <li><a href=#rel-icon><span class=secno>6.12.3.8 </span>Link type "<code>icon</code>"</a></li>
+ <li><a href=#link-type-license><span class=secno>6.12.3.9 </span>Link type "<code>license</code>"</a></li>
+ <li><a href=#link-type-nofollow><span class=secno>6.12.3.10 </span>Link type "<code>nofollow</code>"</a></li>
+ <li><a href=#link-type-noreferrer><span class=secno>6.12.3.11 </span>Link type "<code>noreferrer</code>"</a></li>
+ <li><a href=#link-type-pingback><span class=secno>6.12.3.12 </span>Link type "<code>pingback</code>"</a></li>
+ <li><a href=#link-type-prefetch><span class=secno>6.12.3.13 </span>Link type "<code>prefetch</code>"</a></li>
+ <li><a href=#link-type-search><span class=secno>6.12.3.14 </span>Link type "<code>search</code>"</a></li>
+ <li><a href=#link-type-stylesheet><span class=secno>6.12.3.15 </span>Link type "<code>stylesheet</code>"</a></li>
+ <li><a href=#link-type-sidebar><span class=secno>6.12.3.16 </span>Link type "<code>sidebar</code>"</a></li>
+ <li><a href=#link-type-tag><span class=secno>6.12.3.17 </span>Link type "<code>tag</code>"</a></li>
+ <li><a href=#hierarchical-link-types><span class=secno>6.12.3.18 </span>Hierarchical link types</a>
<ol>
- <li><a href=#link-type-index><span class=secno>5.12.3.18.1 </span>Link type "<code>index</code>"</a></li>
- <li><a href=#link-type-up><span class=secno>5.12.3.18.2 </span>Link type "<code>up</code>"</a></ol></li>
- <li><a href=#sequential-link-types><span class=secno>5.12.3.19 </span>Sequential link types</a>
+ <li><a href=#link-type-index><span class=secno>6.12.3.18.1 </span>Link type "<code>index</code>"</a></li>
+ <li><a href=#link-type-up><span class=secno>6.12.3.18.2 </span>Link type "<code>up</code>"</a></ol></li>
+ <li><a href=#sequential-link-types><span class=secno>6.12.3.19 </span>Sequential link types</a>
<ol>
- <li><a href=#link-type-first><span class=secno>5.12.3.19.1 </span>Link type "<code>first</code>"</a></li>
- <li><a href=#link-type-last><span class=secno>5.12.3.19.2 </span>Link type "<code>last</code>"</a></li>
- <li><a href=#link-type-next><span class=secno>5.12.3.19.3 </span>Link type "<code>next</code>"</a></li>
- <li><a href=#link-type-prev><span class=secno>5.12.3.19.4 </span>Link type "<code>prev</code>"</a></ol></li>
- <li><a href=#other-link-types><span class=secno>5.12.3.20 </span>Other link types</a></ol></ol></ol></li>
- <li><a href=#editing><span class=secno>6 </span>User Interaction</a>
+ <li><a href=#link-type-first><span class=secno>6.12.3.19.1 </span>Link type "<code>first</code>"</a></li>
+ <li><a href=#link-type-last><span class=secno>6.12.3.19.2 </span>Link type "<code>last</code>"</a></li>
+ <li><a href=#link-type-next><span class=secno>6.12.3.19.3 </span>Link type "<code>next</code>"</a></li>
+ <li><a href=#link-type-prev><span class=secno>6.12.3.19.4 </span>Link type "<code>prev</code>"</a></ol></li>
+ <li><a href=#other-link-types><span class=secno>6.12.3.20 </span>Other link types</a></ol></ol></ol></li>
+ <li><a href=#editing><span class=secno>7 </span>User Interaction</a>
<ol>
- <li><a href=#editing-intro><span class=secno>6.1 </span>Introduction</a></li>
- <li><a href=#the-hidden-attribute><span class=secno>6.2 </span>The <code>hidden</code> attribute</a></li>
- <li><a href=#activation><span class=secno>6.3 </span>Activation</a></li>
- <li><a href=#scrolling-elements-into-view><span class=secno>6.4 </span>Scrolling elements into view</a></li>
- <li><a href=#focus><span class=secno>6.5 </span>Focus</a>
+ <li><a href=#editing-intro><span class=secno>7.1 </span>Introduction</a></li>
+ <li><a href=#the-hidden-attribute><span class=secno>7.2 </span>The <code>hidden</code> attribute</a></li>
+ <li><a href=#activation><span class=secno>7.3 </span>Activation</a></li>
+ <li><a href=#scrolling-elements-into-view><span class=secno>7.4 </span>Scrolling elements into view</a></li>
+ <li><a href=#focus><span class=secno>7.5 </span>Focus</a>
<ol>
- <li><a href=#sequential-focus-navigation><span class=secno>6.5.1 </span>Sequential focus navigation</a></li>
- <li><a href=#focus-management><span class=secno>6.5.2 </span>Focus management</a></li>
- <li><a href=#document-level-focus-apis><span class=secno>6.5.3 </span>Document-level focus APIs</a></li>
- <li><a href=#element-level-focus-apis><span class=secno>6.5.4 </span>Element-level focus APIs</a></ol></li>
- <li><a href=#the-accesskey-attribute><span class=secno>6.6 </span>The <code>accesskey</code> attribute</a></li>
- <li><a href=#selection><span class=secno>6.7 </span>The text selection APIs</a>
+ <li><a href=#sequential-focus-navigation><span class=secno>7.5.1 </span>Sequential focus navigation</a></li>
+ <li><a href=#focus-management><span class=secno>7.5.2 </span>Focus management</a></li>
+ <li><a href=#document-level-focus-apis><span class=secno>7.5.3 </span>Document-level focus APIs</a></li>
+ <li><a href=#element-level-focus-apis><span class=secno>7.5.4 </span>Element-level focus APIs</a></ol></li>
+ <li><a href=#the-accesskey-attribute><span class=secno>7.6 </span>The <code>accesskey</code> attribute</a></li>
+ <li><a href=#selection><span class=secno>7.7 </span>The text selection APIs</a>
<ol>
- <li><a href=#documentSelection><span class=secno>6.7.1 </span>APIs for the browsing context selection</a></li>
- <li><a href=#textFieldSelection><span class=secno>6.7.2 </span>APIs for the text field selections</a></ol></li>
- <li><a href=#contenteditable><span class=secno>6.8 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
+ <li><a href=#documentSelection><span class=secno>7.7.1 </span>APIs for the browsing context selection</a></li>
+ <li><a href=#textFieldSelection><span class=secno>7.7.2 </span>APIs for the text field selections</a></ol></li>
+ <li><a href=#contenteditable><span class=secno>7.8 </span>The <code title=attr-contenteditable>contenteditable</code> attribute</a>
<ol>
- <li><a href=#user-editing-actions><span class=secno>6.8.1 </span>User editing actions</a></li>
- <li><a href=#making-entire-documents-editable><span class=secno>6.8.2 </span>Making entire documents editable</a></ol></li>
- <li><a href=#spelling-and-grammar-checking><span class=secno>6.9 </span>Spelling and grammar checking</a></li>
- <li><a href=#dnd><span class=secno>6.10 </span>Drag and drop</a>
+ <li><a href=#user-editing-actions><span class=secno>7.8.1 </span>User editing actions</a></li>
+ <li><a href=#making-entire-documents-editable><span class=secno>7.8.2 </span>Making entire documents editable</a></ol></li>
+ <li><a href=#spelling-and-grammar-checking><span class=secno>7.9 </span>Spelling and grammar checking</a></li>
+ <li><a href=#dnd><span class=secno>7.10 </span>Drag and drop</a>
<ol>
- <li><a href=#introduction-4><span class=secno>6.10.1 </span>Introduction</a></li>
- <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>6.10.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
- <li><a href=#events-fired-during-a-drag-and-drop-action><span class=secno>6.10.3 </span>Events fired during a drag-and-drop action</a></li>
- <li><a href=#drag-and-drop-processing-model><span class=secno>6.10.4 </span>Drag-and-drop processing model</a>
+ <li><a href=#introduction-5><span class=secno>7.10.1 </span>Introduction</a></li>
+ <li><a href=#the-dragevent-and-datatransfer-interfaces><span class=secno>7.10.2 </span>The <code>DragEvent</code> and <code>DataTransfer</code> interfaces</a></li>
+ <li><a href=#events-fired-during-a-drag-and-drop-action><span class=secno>7.10.3 </span>Events fired during a drag-and-drop action</a></li>
+ <li><a href=#drag-and-drop-processing-model><span class=secno>7.10.4 </span>Drag-and-drop processing model</a>
<ol>
- <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>6.10.4.1 </span>When the drag-and-drop operation starts or ends in another
+ <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>7.10.4.1 </span>When the drag-and-drop operation starts or ends in another
document</a></li>
- <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>6.10.4.2 </span>When the drag-and-drop operation starts or ends in another
+ <li><a href=#when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>7.10.4.2 </span>When the drag-and-drop operation starts or ends in another
application</a></ol></li>
- <li><a href=#the-draggable-attribute><span class=secno>6.10.5 </span>The <code>draggable</code> attribute</a></li>
- <li><a href=#copy-and-paste><span class=secno>6.10.6 </span>Copy and paste</a>
+ <li><a href=#the-draggable-attribute><span class=secno>7.10.5 </span>The <code>draggable</code> attribute</a></li>
+ <li><a href=#copy-and-paste><span class=secno>7.10.6 </span>Copy and paste</a>
<ol>
- <li><a href=#copy-to-clipboard><span class=secno>6.10.6.1 </span>Copy to clipboard</a></li>
- <li><a href=#cut-to-clipboard><span class=secno>6.10.6.2 </span>Cut to clipboard</a></li>
- <li><a href=#paste-from-clipboard><span class=secno>6.10.6.3 </span>Paste from clipboard</a></li>
- <li><a href=#paste-from-selection><span class=secno>6.10.6.4 </span>Paste from selection</a></ol></li>
- <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>6.10.7 </span>Security risks in the drag-and-drop model</a></ol></li>
- <li><a href=#undo><span class=secno>6.11 </span>Undo history</a>
+ <li><a href=#copy-to-clipboard><span class=secno>7.10.6.1 </span>Copy to clipboard</a></li>
+ <li><a href=#cut-to-clipboard><span class=secno>7.10.6.2 </span>Cut to clipboard</a></li>
+ <li><a href=#paste-from-clipboard><span class=secno>7.10.6.3 </span>Paste from clipboard</a></li>
+ <li><a href=#paste-from-selection><span class=secno>7.10.6.4 </span>Paste from selection</a></ol></li>
+ <li><a href=#security-risks-in-the-drag-and-drop-model><span class=secno>7.10.7 </span>Security risks in the drag-and-drop model</a></ol></li>
+ <li><a href=#undo><span class=secno>7.11 </span>Undo history</a>
<ol>
- <li><a href=#introduction-5><span class=secno>6.11.1 </span>Introduction</a></li>
- <li><a href=#definitions-2><span class=secno>6.11.2 </span>Definitions</a></li>
- <li><a href=#the-undomanager-interface><span class=secno>6.11.3 </span>The <code>UndoManager</code> interface</a></li>
- <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>6.11.4 </span>Undo: moving back in the undo transaction history</a></li>
- <li><a href=#redo:-moving-forward-in-the-undo-transaction-history><span class=secno>6.11.5 </span>Redo: moving forward in the undo transaction history</a></li>
- <li><a href=#the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>6.11.6 </span>The <code>UndoManagerEvent</code> interface and the <code title=event-undo>undo</code> and <code title=event-redo>redo</code> events</a></li>
- <li><a href=#implementation-notes><span class=secno>6.11.7 </span>Implementation notes</a></ol></li>
- <li><a href=#editing-apis><span class=secno>6.12 </span>Editing APIs</a></ol></li>
- <li><a href=#comms><span class=secno>7 </span>Communication</a>
+ <li><a href=#introduction-6><span class=secno>7.11.1 </span>Introduction</a></li>
+ <li><a href=#definitions-2><span class=secno>7.11.2 </span>Definitions</a></li>
+ <li><a href=#the-undomanager-interface><span class=secno>7.11.3 </span>The <code>UndoManager</code> interface</a></li>
+ <li><a href=#undo:-moving-back-in-the-undo-transaction-history><span class=secno>7.11.4 </span>Undo: moving back in the undo transaction history</a></li>
+ <li><a href=#redo:-moving-forward-in-the-undo-transaction-history><span class=secno>7.11.5 </span>Redo: moving forward in the undo transaction history</a></li>
+ <li><a href=#the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>7.11.6 </span>The <code>UndoManagerEvent</code> interface and the <code title=event-undo>undo</code> and <code title=event-redo>redo</code> events</a></li>
+ <li><a href=#implementation-notes><span class=secno>7.11.7 </span>Implementation notes</a></ol></li>
+ <li><a href=#editing-apis><span class=secno>7.12 </span>Editing APIs</a></ol></li>
+ <li><a href=#comms><span class=secno>8 </span>Communication</a>
<ol>
- <li><a href=#event-definitions><span class=secno>7.1 </span>Event definitions</a></li>
- <li><a href=#crossDocumentMessages><span class=secno>7.2 </span>Cross-document messaging</a>
+ <li><a href=#event-definitions><span class=secno>8.1 </span>Event definitions</a></li>
+ <li><a href=#crossDocumentMessages><span class=secno>8.2 </span>Cross-document messaging</a>
<ol>
- <li><a href=#introduction-6><span class=secno>7.2.1 </span>Introduction</a></li>
- <li><a href=#security-4><span class=secno>7.2.2 </span>Security</a>
+ <li><a href=#introduction-7><span class=secno>8.2.1 </span>Introduction</a></li>
+ <li><a href=#security-4><span class=secno>8.2.2 </span>Security</a>
<ol>
- <li><a href=#authors><span class=secno>7.2.2.1 </span>Authors</a></li>
- <li><a href=#user-agents><span class=secno>7.2.2.2 </span>User agents</a></ol></li>
- <li><a href=#posting-messages><span class=secno>7.2.3 </span>Posting messages</a></li>
- <li><a href=#posting-messages-with-message-ports><span class=secno>7.2.4 </span>Posting messages with message ports</a></ol></li>
- <li><a href=#channel-messaging><span class=secno>7.3 </span>Channel messaging</a>
+ <li><a href=#authors><span class=secno>8.2.2.1 </span>Authors</a></li>
+ <li><a href=#user-agents><span class=secno>8.2.2.2 </span>User agents</a></ol></li>
+ <li><a href=#posting-messages><span class=secno>8.2.3 </span>Posting messages</a></li>
+ <li><a href=#posting-messages-with-message-ports><span class=secno>8.2.4 </span>Posting messages with message ports</a></ol></li>
+ <li><a href=#channel-messaging><span class=secno>8.3 </span>Channel messaging</a>
<ol>
- <li><a href=#introduction-7><span class=secno>7.3.1 </span>Introduction</a></li>
- <li><a href=#message-channels><span class=secno>7.3.2 </span>Message channels</a></li>
- <li><a href=#message-ports><span class=secno>7.3.3 </span>Message ports</a>
+ <li><a href=#introduction-8><span class=secno>8.3.1 </span>Introduction</a></li>
+ <li><a href=#message-channels><span class=secno>8.3.2 </span>Message channels</a></li>
+ <li><a href=#message-ports><span class=secno>8.3.3 </span>Message ports</a>
<ol>
- <li><a href=#ports-and-garbage-collection><span class=secno>7.3.3.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
- <li><a href=#syntax><span class=secno>8 </span>The HTML syntax</a>
+ <li><a href=#ports-and-garbage-collection><span class=secno>8.3.3.1 </span>Ports and garbage collection</a></ol></ol></ol></li>
+ <li><a href=#syntax><span class=secno>9 </span>The HTML syntax</a>
<ol>
- <li><a href=#writing-html-documents><span class=secno>8.1 </span>Writing HTML documents</a>
+ <li><a href=#writing-html-documents><span class=secno>9.1 </span>Writing HTML documents</a>
<ol>
- <li><a href=#the-doctype><span class=secno>8.1.1 </span>The DOCTYPE</a></li>
- <li><a href=#elements-0><span class=secno>8.1.2 </span>Elements</a>
+ <li><a href=#the-doctype><span class=secno>9.1.1 </span>The DOCTYPE</a></li>
+ <li><a href=#elements-0><span class=secno>9.1.2 </span>Elements</a>
<ol>
- <li><a href=#start-tags><span class=secno>8.1.2.1 </span>Start tags</a></li>
- <li><a href=#end-tags><span class=secno>8.1.2.2 </span>End tags</a></li>
- <li><a href=#attributes><span class=secno>8.1.2.3 </span>Attributes</a></li>
- <li><a href=#optional-tags><span class=secno>8.1.2.4 </span>Optional tags</a></li>
- <li><a href=#element-restrictions><span class=secno>8.1.2.5 </span>Restrictions on content models</a></li>
- <li><a href=#cdata-rcdata-restrictions><span class=secno>8.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</a></ol></li>
- <li><a href=#text-0><span class=secno>8.1.3 </span>Text</a>
+ <li><a href=#start-tags><span class=secno>9.1.2.1 </span>Start tags</a></li>
+ <li><a href=#end-tags><span class=secno>9.1.2.2 </span>End tags</a></li>
+ <li><a href=#attributes><span class=secno>9.1.2.3 </span>Attributes</a></li>
+ <li><a href=#optional-tags><span class=secno>9.1.2.4 </span>Optional tags</a></li>
+ <li><a href=#element-restrictions><span class=secno>9.1.2.5 </span>Restrictions on content models</a></li>
+ <li><a href=#cdata-rcdata-restrictions><span class=secno>9.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</a></ol></li>
+ <li><a href=#text-0><span class=secno>9.1.3 </span>Text</a>
<ol>
- <li><a href=#newlines><span class=secno>8.1.3.1 </span>Newlines</a></ol></li>
- <li><a href=#character-references><span class=secno>8.1.4 </span>Character references</a></li>
- <li><a href=#cdata-sections><span class=secno>8.1.5 </span>CDATA sections</a></li>
- <li><a href=#comments><span class=secno>8.1.6 </span>Comments</a></ol></li>
- <li><a href=#parsing><span class=secno>8.2 </span>Parsing HTML documents</a>
+ <li><a href=#newlines><span class=secno>9.1.3.1 </span>Newlines</a></ol></li>
+ <li><a href=#character-references><span class=secno>9.1.4 </span>Character references</a></li>
+ <li><a href=#cdata-sections><span class=secno>9.1.5 </span>CDATA sections</a></li>
+ <li><a href=#comments><span class=secno>9.1.6 </span>Comments</a></ol></li>
+ <li><a href=#parsing><span class=secno>9.2 </span>Parsing HTML documents</a>
<ol>
- <li><a href=#overview-of-the-parsing-model><span class=secno>8.2.1 </span>Overview of the parsing model</a></li>
- <li><a href=#the-input-stream><span class=secno>8.2.2 </span>The input stream</a>
+ <li><a href=#overview-of-the-parsing-model><span class=secno>9.2.1 </span>Overview of the parsing model</a></li>
+ <li><a href=#the-input-stream><span class=secno>9.2.2 </span>The input stream</a>
<ol>
- <li><a href=#determining-the-character-encoding><span class=secno>8.2.2.1 </span>Determining the character encoding</a></li>
- <li><a href=#preprocessing-the-input-stream><span class=secno>8.2.2.2 </span>Preprocessing the input stream</a></li>
- <li><a href=#changing-the-encoding-while-parsing><span class=secno>8.2.2.3 </span>Changing the encoding while parsing</a></ol></li>
- <li><a href=#parse-state><span class=secno>8.2.3 </span>Parse state</a>
+ <li><a href=#determining-the-character-encoding><span class=secno>9.2.2.1 </span>Determining the character encoding</a></li>
+ <li><a href=#preprocessing-the-input-stream><span class=secno>9.2.2.2 </span>Preprocessing the input stream</a></li>
+ <li><a href=#changing-the-encoding-while-parsing><span class=secno>9.2.2.3 </span>Changing the encoding while parsing</a></ol></li>
+ <li><a href=#parse-state><span class=secno>9.2.3 </span>Parse state</a>
<ol>
- <li><a href=#the-insertion-mode><span class=secno>8.2.3.1 </span>The insertion mode</a></li>
- <li><a href=#the-stack-of-open-elements><span class=secno>8.2.3.2 </span>The stack of open elements</a></li>
- <li><a href=#the-list-of-active-formatting-elements><span class=secno>8.2.3.3 </span>The list of active formatting elements</a></li>
- <li><a href=#the-element-pointers><span class=secno>8.2.3.4 </span>The element pointers</a></li>
- <li><a href=#other-parsing-state-flags><span class=secno>8.2.3.5 </span>Other parsing state flags</a></ol></li>
- <li><a href=#tokenization><span class=secno>8.2.4 </span>Tokenization</a>
+ <li><a href=#the-insertion-mode><span class=secno>9.2.3.1 </span>The insertion mode</a></li>
+ <li><a href=#the-stack-of-open-elements><span class=secno>9.2.3.2 </span>The stack of open elements</a></li>
+ <li><a href=#the-list-of-active-formatting-elements><span class=secno>9.2.3.3 </span>The list of active formatting elements</a></li>
+ <li><a href=#the-element-pointers><span class=secno>9.2.3.4 </span>The element pointers</a></li>
+ <li><a href=#other-parsing-state-flags><span class=secno>9.2.3.5 </span>Other parsing state flags</a></ol></li>
+ <li><a href=#tokenization><span class=secno>9.2.4 </span>Tokenization</a>
<ol>
- <li><a href=#data-state><span class=secno>8.2.4.1 </span>Data state</a></li>
- <li><a href=#character-reference-data-state><span class=secno>8.2.4.2 </span>Character reference data state</a></li>
- <li><a href=#tag-open-state><span class=secno>8.2.4.3 </span>Tag open state</a></li>
- <li><a href=#close-tag-open-state><span class=secno>8.2.4.4 </span>Close tag open state</a></li>
- <li><a href=#tag-name-state><span class=secno>8.2.4.5 </span>Tag name state</a></li>
- <li><a href=#before-attribute-name-state><span class=secno>8.2.4.6 </span>Before attribute name state</a></li>
- <li><a href=#attribute-name-state><span class=secno>8.2.4.7 </span>Attribute name state</a></li>
- <li><a href=#after-attribute-name-state><span class=secno>8.2.4.8 </span>After attribute name state</a></li>
- <li><a href=#before-attribute-value-state><span class=secno>8.2.4.9 </span>Before attribute value state</a></li>
- <li><a href=#attribute-value-(double-quoted)-state><span class=secno>8.2.4.10 </span>Attribute value (double-quoted) state</a></li>
- <li><a href=#attribute-value-(single-quoted)-state><span class=secno>8.2.4.11 </span>Attribute value (single-quoted) state</a></li>
- <li><a href=#attribute-value-(unquoted)-state><span class=secno>8.2.4.12 </span>Attribute value (unquoted) state</a></li>
- <li><a href=#character-reference-in-attribute-value-state><span class=secno>8.2.4.13 </span>Character reference in attribute value state</a></li>
- <li><a href=#after-attribute-value-(quoted)-state><span class=secno>8.2.4.14 </span>After attribute value (quoted) state</a></li>
- <li><a href=#self-closing-start-tag-state><span class=secno>8.2.4.15 </span>Self-closing start tag state</a></li>
- <li><a href=#bogus-comment-state><span class=secno>8.2.4.16 </span>Bogus comment state</a></li>
- <li><a href=#markup-declaration-open-state><span class=secno>8.2.4.17 </span>Markup declaration open state</a></li>
- <li><a href=#comment-start-state><span class=secno>8.2.4.18 </span>Comment start state</a></li>
- <li><a href=#comment-start-dash-state><span class=secno>8.2.4.19 </span>Comment start dash state</a></li>
- <li><a href=#comment-state><span class=secno>8.2.4.20 </span>Comment state</a></li>
- <li><a href=#comment-end-dash-state><span class=secno>8.2.4.21 </span>Comment end dash state</a></li>
- <li><a href=#comment-end-state><span class=secno>8.2.4.22 </span>Comment end state</a></li>
- <li><a href=#doctype-state><span class=secno>8.2.4.23 </span>DOCTYPE state</a></li>
- <li><a href=#before-doctype-name-state><span class=secno>8.2.4.24 </span>Before DOCTYPE name state</a></li>
- <li><a href=#doctype-name-state><span class=secno>8.2.4.25 </span>DOCTYPE name state</a></li>
- <li><a href=#after-doctype-name-state><span class=secno>8.2.4.26 </span>After DOCTYPE name state</a></li>
- <li><a href=#before-doctype-public-identifier-state><span class=secno>8.2.4.27 </span>Before DOCTYPE public identifier state</a></li>
- <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>8.2.4.28 </span>DOCTYPE public identifier (double-quoted) state</a></li>
- <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>8.2.4.29 </span>DOCTYPE public identifier (single-quoted) state</a></li>
- <li><a href=#after-doctype-public-identifier-state><span class=secno>8.2.4.30 </span>After DOCTYPE public identifier state</a></li>
- <li><a href=#before-doctype-system-identifier-state><span class=secno>8.2.4.31 </span>Before DOCTYPE system identifier state</a></li>
- <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>8.2.4.32 </span>DOCTYPE system identifier (double-quoted) state</a></li>
- <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>8.2.4.33 </span>DOCTYPE system identifier (single-quoted) state</a></li>
- <li><a href=#after-doctype-system-identifier-state><span class=secno>8.2.4.34 </span>After DOCTYPE system identifier state</a></li>
- <li><a href=#bogus-doctype-state><span class=secno>8.2.4.35 </span>Bogus DOCTYPE state</a></li>
- <li><a href=#cdata-section-state><span class=secno>8.2.4.36 </span>CDATA section state</a></li>
- <li><a href=#tokenizing-character-references><span class=secno>8.2.4.37 </span>Tokenizing character references</a></ol></li>
- <li><a href=#tree-construction><span class=secno>8.2.5 </span>Tree construction</a>
+ <li><a href=#data-state><span class=secno>9.2.4.1 </span>Data state</a></li>
+ <li><a href=#character-reference-data-state><span class=secno>9.2.4.2 </span>Character reference data state</a></li>
+ <li><a href=#tag-open-state><span class=secno>9.2.4.3 </span>Tag open state</a></li>
+ <li><a href=#close-tag-open-state><span class=secno>9.2.4.4 </span>Close tag open state</a></li>
+ <li><a href=#tag-name-state><span class=secno>9.2.4.5 </span>Tag name state</a></li>
+ <li><a href=#before-attribute-name-state><span class=secno>9.2.4.6 </span>Before attribute name state</a></li>
+ <li><a href=#attribute-name-state><span class=secno>9.2.4.7 </span>Attribute name state</a></li>
+ <li><a href=#after-attribute-name-state><span class=secno>9.2.4.8 </span>After attribute name state</a></li>
+ <li><a href=#before-attribute-value-state><span class=secno>9.2.4.9 </span>Before attribute value state</a></li>
+ <li><a href=#attribute-value-(double-quoted)-state><span class=secno>9.2.4.10 </span>Attribute value (double-quoted) state</a></li>
+ <li><a href=#attribute-value-(single-quoted)-state><span class=secno>9.2.4.11 </span>Attribute value (single-quoted) state</a></li>
+ <li><a href=#attribute-value-(unquoted)-state><span class=secno>9.2.4.12 </span>Attribute value (unquoted) state</a></li>
+ <li><a href=#character-reference-in-attribute-value-state><span class=secno>9.2.4.13 </span>Character reference in attribute value state</a></li>
+ <li><a href=#after-attribute-value-(quoted)-state><span class=secno>9.2.4.14 </span>After attribute value (quoted) state</a></li>
+ <li><a href=#self-closing-start-tag-state><span class=secno>9.2.4.15 </span>Self-closing start tag state</a></li>
+ <li><a href=#bogus-comment-state><span class=secno>9.2.4.16 </span>Bogus comment state</a></li>
+ <li><a href=#markup-declaration-open-state><span class=secno>9.2.4.17 </span>Markup declaration open state</a></li>
+ <li><a href=#comment-start-state><span class=secno>9.2.4.18 </span>Comment start state</a></li>
+ <li><a href=#comment-start-dash-state><span class=secno>9.2.4.19 </span>Comment start dash state</a></li>
+ <li><a href=#comment-state><span class=secno>9.2.4.20 </span>Comment state</a></li>
+ <li><a href=#comment-end-dash-state><span class=secno>9.2.4.21 </span>Comment end dash state</a></li>
+ <li><a href=#comment-end-state><span class=secno>9.2.4.22 </span>Comment end state</a></li>
+ <li><a href=#doctype-state><span class=secno>9.2.4.23 </span>DOCTYPE state</a></li>
+ <li><a href=#before-doctype-name-state><span class=secno>9.2.4.24 </span>Before DOCTYPE name state</a></li>
+ <li><a href=#doctype-name-state><span class=secno>9.2.4.25 </span>DOCTYPE name state</a></li>
+ <li><a href=#after-doctype-name-state><span class=secno>9.2.4.26 </span>After DOCTYPE name state</a></li>
+ <li><a href=#before-doctype-public-identifier-state><span class=secno>9.2.4.27 </span>Before DOCTYPE public identifier state</a></li>
+ <li><a href=#doctype-public-identifier-(double-quoted)-state><span class=secno>9.2.4.28 </span>DOCTYPE public identifier (double-quoted) state</a></li>
+ <li><a href=#doctype-public-identifier-(single-quoted)-state><span class=secno>9.2.4.29 </span>DOCTYPE public identifier (single-quoted) state</a></li>
+ <li><a href=#after-doctype-public-identifier-state><span class=secno>9.2.4.30 </span>After DOCTYPE public identifier state</a></li>
+ <li><a href=#before-doctype-system-identifier-state><span class=secno>9.2.4.31 </span>Before DOCTYPE system identifier state</a></li>
+ <li><a href=#doctype-system-identifier-(double-quoted)-state><span class=secno>9.2.4.32 </span>DOCTYPE system identifier (double-quoted) state</a></li>
+ <li><a href=#doctype-system-identifier-(single-quoted)-state><span class=secno>9.2.4.33 </span>DOCTYPE system identifier (single-quoted) state</a></li>
+ <li><a href=#after-doctype-system-identifier-state><span class=secno>9.2.4.34 </span>After DOCTYPE system identifier state</a></li>
+ <li><a href=#bogus-doctype-state><span class=secno>9.2.4.35 </span>Bogus DOCTYPE state</a></li>
+ <li><a href=#cdata-section-state><span class=secno>9.2.4.36 </span>CDATA section state</a></li>
+ <li><a href=#tokenizing-character-references><span class=secno>9.2.4.37 </span>Tokenizing character references</a></ol></li>
+ <li><a href=#tree-construction><span class=secno>9.2.5 </span>Tree construction</a>
<ol>
- <li><a href=#creating-and-inserting-elements><span class=secno>8.2.5.1 </span>Creating and inserting elements</a></li>
- <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>8.2.5.2 </span>Closing elements that have implied end tags</a></li>
- <li><a href=#foster-parenting><span class=secno>8.2.5.3 </span>Foster parenting</a></li>
- <li><a href=#the-initial-insertion-mode><span class=secno>8.2.5.4 </span>The "initial" insertion mode</a></li>
- <li><a href=#the-before-html-insertion-mode><span class=secno>8.2.5.5 </span>The "before html" insertion mode</a></li>
- <li><a href=#the-before-head-insertion-mode><span class=secno>8.2.5.6 </span>The "before head" insertion mode</a></li>
- <li><a href=#parsing-main-inhead><span class=secno>8.2.5.7 </span>The "in head" insertion mode</a></li>
- <li><a href=#parsing-main-inheadnoscript><span class=secno>8.2.5.8 </span>The "in head noscript" insertion mode</a></li>
- <li><a href=#the-after-head-insertion-mode><span class=secno>8.2.5.9 </span>The "after head" insertion mode</a></li>
- <li><a href=#parsing-main-inbody><span class=secno>8.2.5.10 </span>The "in body" insertion mode</a></li>
- <li><a href=#parsing-main-incdata><span class=secno>8.2.5.11 </span>The "in CDATA/RCDATA" insertion mode</a></li>
- <li><a href=#parsing-main-intable><span class=secno>8.2.5.12 </span>The "in table" insertion mode</a></li>
- <li><a href=#parsing-main-incaption><span class=secno>8.2.5.13 </span>The "in caption" insertion mode</a></li>
- <li><a href=#parsing-main-incolgroup><span class=secno>8.2.5.14 </span>The "in column group" insertion mode</a></li>
- <li><a href=#parsing-main-intbody><span class=secno>8.2.5.15 </span>The "in table body" insertion mode</a></li>
- <li><a href=#parsing-main-intr><span class=secno>8.2.5.16 </span>The "in row" insertion mode</a></li>
- <li><a href=#parsing-main-intd><span class=secno>8.2.5.17 </span>The "in cell" insertion mode</a></li>
- <li><a href=#parsing-main-inselect><span class=secno>8.2.5.18 </span>The "in select" insertion mode</a></li>
- <li><a href=#parsing-main-inselectintable><span class=secno>8.2.5.19 </span>The "in select in table" insertion mode</a></li>
- <li><a href=#parsing-main-inforeign><span class=secno>8.2.5.20 </span>The "in foreign content" insertion mode</a></li>
- <li><a href=#parsing-main-afterbody><span class=secno>8.2.5.21 </span>The "after body" insertion mode</a></li>
- <li><a href=#parsing-main-inframeset><span class=secno>8.2.5.22 </span>The "in frameset" insertion mode</a></li>
- <li><a href=#parsing-main-afterframeset><span class=secno>8.2.5.23 </span>The "after frameset" insertion mode</a></li>
- <li><a href=#the-after-after-body-insertion-mode><span class=secno>8.2.5.24 </span>The "after after body" insertion mode</a></li>
- <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>8.2.5.25 </span>The "after after frameset" insertion mode</a></ol></li>
- <li><a href=#the-end><span class=secno>8.2.6 </span>The end</a></li>
- <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>8.2.7 </span>Coercing an HTML DOM into an infoset</a></ol></li>
- <li><a href=#namespaces><span class=secno>8.3 </span>Namespaces</a></li>
- <li><a href=#serializing-html-fragments><span class=secno>8.4 </span>Serializing HTML fragments</a></li>
- <li><a href=#parsing-html-fragments><span class=secno>8.5 </span>Parsing HTML fragments</a></li>
- <li><a href=#named-character-references><span class=secno>8.6 </span>Named character references</a></ol></li>
- <li><a href=#the-xhtml-syntax><span class=secno>9 </span>The XHTML syntax</a>
+ <li><a href=#creating-and-inserting-elements><span class=secno>9.2.5.1 </span>Creating and inserting elements</a></li>
+ <li><a href=#closing-elements-that-have-implied-end-tags><span class=secno>9.2.5.2 </span>Closing elements that have implied end tags</a></li>
+ <li><a href=#foster-parenting><span class=secno>9.2.5.3 </span>Foster parenting</a></li>
+ <li><a href=#the-initial-insertion-mode><span class=secno>9.2.5.4 </span>The "initial" insertion mode</a></li>
+ <li><a href=#the-before-html-insertion-mode><span class=secno>9.2.5.5 </span>The "before html" insertion mode</a></li>
+ <li><a href=#the-before-head-insertion-mode><span class=secno>9.2.5.6 </span>The "before head" insertion mode</a></li>
+ <li><a href=#parsing-main-inhead><span class=secno>9.2.5.7 </span>The "in head" insertion mode</a></li>
+ <li><a href=#parsing-main-inheadnoscript><span class=secno>9.2.5.8 </span>The "in head noscript" insertion mode</a></li>
+ <li><a href=#the-after-head-insertion-mode><span class=secno>9.2.5.9 </span>The "after head" insertion mode</a></li>
+ <li><a href=#parsing-main-inbody><span class=secno>9.2.5.10 </span>The "in body" insertion mode</a></li>
+ <li><a href=#parsing-main-incdata><span class=secno>9.2.5.11 </span>The "in CDATA/RCDATA" insertion mode</a></li>
+ <li><a href=#parsing-main-intable><span class=secno>9.2.5.12 </span>The "in table" insertion mode</a></li>
+ <li><a href=#parsing-main-incaption><span class=secno>9.2.5.13 </span>The "in caption" insertion mode</a></li>
+ <li><a href=#parsing-main-incolgroup><span class=secno>9.2.5.14 </span>The "in column group" insertion mode</a></li>
+ <li><a href=#parsing-main-intbody><span class=secno>9.2.5.15 </span>The "in table body" insertion mode</a></li>
+ <li><a href=#parsing-main-intr><span class=secno>9.2.5.16 </span>The "in row" insertion mode</a></li>
+ <li><a href=#parsing-main-intd><span class=secno>9.2.5.17 </span>The "in cell" insertion mode</a></li>
+ <li><a href=#parsing-main-inselect><span class=secno>9.2.5.18 </span>The "in select" insertion mode</a></li>
+ <li><a href=#parsing-main-inselectintable><span class=secno>9.2.5.19 </span>The "in select in table" insertion mode</a></li>
+ <li><a href=#parsing-main-inforeign><span class=secno>9.2.5.20 </span>The "in foreign content" insertion mode</a></li>
+ <li><a href=#parsing-main-afterbody><span class=secno>9.2.5.21 </span>The "after body" insertion mode</a></li>
+ <li><a href=#parsing-main-inframeset><span class=secno>9.2.5.22 </span>The "in frameset" insertion mode</a></li>
+ <li><a href=#parsing-main-afterframeset><span class=secno>9.2.5.23 </span>The "after frameset" insertion mode</a></li>
+ <li><a href=#the-after-after-body-insertion-mode><span class=secno>9.2.5.24 </span>The "after after body" insertion mode</a></li>
+ <li><a href=#the-after-after-frameset-insertion-mode><span class=secno>9.2.5.25 </span>The "after after frameset" insertion mode</a></ol></li>
+ <li><a href=#the-end><span class=secno>9.2.6 </span>The end</a></li>
+ <li><a href=#coercing-an-html-dom-into-an-infoset><span class=secno>9.2.7 </span>Coercing an HTML DOM into an infoset</a></ol></li>
+ <li><a href=#namespaces><span class=secno>9.3 </span>Namespaces</a></li>
+ <li><a href=#serializing-html-fragments><span class=secno>9.4 </span>Serializing HTML fragments</a></li>
+ <li><a href=#parsing-html-fragments><span class=secno>9.5 </span>Parsing HTML fragments</a></li>
+ <li><a href=#named-character-references><span class=secno>9.6 </span>Named character references</a></ol></li>
+ <li><a href=#the-xhtml-syntax><span class=secno>10 </span>The XHTML syntax</a>
<ol>
- <li><a href=#writing-xhtml-documents><span class=secno>9.1 </span>Writing XHTML documents</a></li>
- <li><a href=#parsing-xhtml-documents><span class=secno>9.2 </span>Parsing XHTML documents</a></li>
- <li><a href=#serializing-xhtml-fragments><span class=secno>9.3 </span>Serializing XHTML fragments</a></li>
- <li><a href=#parsing-xhtml-fragments><span class=secno>9.4 </span>Parsing XHTML fragments</a></ol></li>
- <li><a href=#rendering><span class=secno>10 </span>Rendering</a>
+ <li><a href=#writing-xhtml-documents><span class=secno>10.1 </span>Writing XHTML documents</a></li>
+ <li><a href=#parsing-xhtml-documents><span class=secno>10.2 </span>Parsing XHTML documents</a></li>
+ <li><a href=#serializing-xhtml-fragments><span class=secno>10.3 </span>Serializing XHTML fragments</a></li>
+ <li><a href=#parsing-xhtml-fragments><span class=secno>10.4 </span>Parsing XHTML fragments</a></ol></li>
+ <li><a href=#rendering><span class=secno>11 </span>Rendering</a>
<ol>
- <li><a href=#introduction-8><span class=secno>10.1 </span>Introduction</a></li>
- <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>10.2 </span>The CSS user agent style sheet and presentational hints</a>
+ <li><a href=#introduction-9><span class=secno>11.1 </span>Introduction</a></li>
+ <li><a href=#the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>11.2 </span>The CSS user agent style sheet and presentational hints</a>
<ol>
- <li><a href=#introduction-9><span class=secno>10.2.1 </span>Introduction</a></li>
- <li><a href=#display-types><span class=secno>10.2.2 </span>Display types</a></li>
- <li><a href=#margins-and-padding><span class=secno>10.2.3 </span>Margins and padding</a></li>
- <li><a href=#alignment><span class=secno>10.2.4 </span>Alignment</a></li>
- <li><a href=#fonts-and-colors><span class=secno>10.2.5 </span>Fonts and colors</a></li>
- <li><a href=#punctuation-and-decorations><span class=secno>10.2.6 </span>Punctuation and decorations</a></li>
- <li><a href=#resetting-rules-for-inherited-properties><span class=secno>10.2.7 </span>Resetting rules for inherited properties</a></li>
- <li><a href=#the-hr-element-0><span class=secno>10.2.8 </span>The <code>hr</code> element</a></li>
- <li><a href=#the-fieldset-element-0><span class=secno>10.2.9 </span>The <code>fieldset</code> element</a></ol></li>
- <li><a href=#replaced-elements><span class=secno>10.3 </span>Replaced elements</a>
+ <li><a href=#introduction-10><span class=secno>11.2.1 </span>Introduction</a></li>
+ <li><a href=#display-types><span class=secno>11.2.2 </span>Display types</a></li>
+ <li><a href=#margins-and-padding><span class=secno>11.2.3 </span>Margins and padding</a></li>
+ <li><a href=#alignment><span class=secno>11.2.4 </span>Alignment</a></li>
+ <li><a href=#fonts-and-colors><span class=secno>11.2.5 </span>Fonts and colors</a></li>
+ <li><a href=#punctuation-and-decorations><span class=secno>11.2.6 </span>Punctuation and decorations</a></li>
+ <li><a href=#resetting-rules-for-inherited-properties><span class=secno>11.2.7 </span>Resetting rules for inherited properties</a></li>
+ <li><a href=#the-hr-element-0><span class=secno>11.2.8 </span>The <code>hr</code> element</a></li>
+ <li><a href=#the-fieldset-element-0><span class=secno>11.2.9 </span>The <code>fieldset</code> element</a></ol></li>
+ <li><a href=#replaced-elements><span class=secno>11.3 </span>Replaced elements</a>
<ol>
- <li><a href=#embedded-content-1><span class=secno>10.3.1 </span>Embedded content</a></li>
- <li><a href=#images-0><span class=secno>10.3.2 </span>Images</a></li>
- <li><a href=#attributes-for-embedded-content-and-images><span class=secno>10.3.3 </span>Attributes for embedded content and images</a></li>
- <li><a href=#image-maps-0><span class=secno>10.3.4 </span>Image maps</a></li>
- <li><a href=#tool-bars-0><span class=secno>10.3.5 </span>Tool bars</a></ol></li>
- <li><a href=#bindings><span class=secno>10.4 </span>Bindings</a>
+ <li><a href=#embedded-content-1><span class=secno>11.3.1 </span>Embedded content</a></li>
+ <li><a href=#images-0><span class=secno>11.3.2 </span>Images</a></li>
+ <li><a href=#attributes-for-embedded-content-and-images><span class=secno>11.3.3 </span>Attributes for embedded content and images</a></li>
+ <li><a href=#image-maps-0><span class=secno>11.3.4 </span>Image maps</a></li>
+ <li><a href=#tool-bars-0><span class=secno>11.3.5 </span>Tool bars</a></ol></li>
+ <li><a href=#bindings><span class=secno>11.4 </span>Bindings</a>
<ol>
- <li><a href=#introduction-10><span class=secno>10.4.1 </span>Introduction</a></li>
- <li><a href=#the-bb-element-0><span class=secno>10.4.2 </span>The <code>bb</code> element</a></li>
- <li><a href=#the-button-element-0><span class=secno>10.4.3 </span>The <code>button</code> element</a></li>
- <li><a href=#the-datagrid-element><span class=secno>10.4.4 </span>The <code>datagrid</code> element</a></li>
- <li><a href=#the-details-element-0><span class=secno>10.4.5 </span>The <code>details</code> element</a></li>
- <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>10.4.6 </span>The <code>input</code> element as a text entry widget</a></li>
- <li><a href=#the-input-element-as-domain-specific-widgets><span class=secno>10.4.7 </span>The <code>input</code> element as domain-specific widgets</a></li>
- <li><a href=#the-input-element-as-a-range-control><span class=secno>10.4.8 </span>The <code>input</code> element as a range control</a></li>
- <li><a href=#the-input-element-as-a-color-well><span class=secno>10.4.9 </span>The <code>input</code> element as a color well</a></li>
- <li><a href=#the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>10.4.10 </span>The <code>input</code> element as a check box and radio button widgets</a></li>
- <li><a href=#the-input-element-as-a-file-upload-control><span class=secno>10.4.11 </span>The <code>input</code> element as a file upload control</a></li>
- <li><a href=#the-input-element-as-a-button><span class=secno>10.4.12 </span>The <code>input</code> element as a button</a></li>
- <li><a href=#the-marquee-element><span class=secno>10.4.13 </span>The <code>marquee</code> element</a></li>
- <li><a href=#the-meter-element-0><span class=secno>10.4.14 </span>The <code>meter</code> element</a></li>
- <li><a href=#the-progress-element-0><span class=secno>10.4.15 </span>The <code>progress</code> element</a></li>
- <li><a href=#the-select-element-0><span class=secno>10.4.16 </span>The <code>select</code> element</a></li>
- <li><a href=#the-textarea-element-0><span class=secno>10.4.17 </span>The <code>textarea</code> element</a></li>
- <li><a href=#the-keygen-element-0><span class=secno>10.4.18 </span>The <code>keygen</code> element</a></li>
- <li><a href=#the-time-element-0><span class=secno>10.4.19 </span>The <code>time</code> element</a></ol></li>
- <li><a href=#frames-and-framesets><span class=secno>10.5 </span>Frames and framesets</a></li>
- <li><a href=#interactive-media><span class=secno>10.6 </span>Interactive media</a>
+ <li><a href=#introduction-11><span class=secno>11.4.1 </span>Introduction</a></li>
+ <li><a href=#the-bb-element-0><span class=secno>11.4.2 </span>The <code>bb</code> element</a></li>
+ <li><a href=#the-button-element-0><span class=secno>11.4.3 </span>The <code>button</code> element</a></li>
+ <li><a href=#the-datagrid-element><span class=secno>11.4.4 </span>The <code>datagrid</code> element</a></li>
+ <li><a href=#the-details-element-0><span class=secno>11.4.5 </span>The <code>details</code> element</a></li>
+ <li><a href=#the-input-element-as-a-text-entry-widget><span class=secno>11.4.6 </span>The <code>input</code> element as a text entry widget</a></li>
+ <li><a href=#the-input-element-as-domain-specific-widgets><span class=secno>11.4.7 </span>The <code>input</code> element as domain-specific widgets</a></li>
+ <li><a href=#the-input-element-as-a-range-control><span class=secno>11.4.8 </span>The <code>input</code> element as a range control</a></li>
+ <li><a href=#the-input-element-as-a-color-well><span class=secno>11.4.9 </span>The <code>input</code> element as a color well</a></li>
+ <li><a href=#the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>11.4.10 </span>The <code>input</code> element as a check box and radio button widgets</a></li>
+ <li><a href=#the-input-element-as-a-file-upload-control><span class=secno>11.4.11 </span>The <code>input</code> element as a file upload control</a></li>
+ <li><a href=#the-input-element-as-a-button><span class=secno>11.4.12 </span>The <code>input</code> element as a button</a></li>
+ <li><a href=#the-marquee-element><span class=secno>11.4.13 </span>The <code>marquee</code> element</a></li>
+ <li><a href=#the-meter-element-0><span class=secno>11.4.14 </span>The <code>meter</code> element</a></li>
+ <li><a href=#the-progress-element-0><span class=secno>11.4.15 </span>The <code>progress</code> element</a></li>
+ <li><a href=#the-select-element-0><span class=secno>11.4.16 </span>The <code>select</code> element</a></li>
+ <li><a href=#the-textarea-element-0><span class=secno>11.4.17 </span>The <code>textarea</code> element</a></li>
+ <li><a href=#the-keygen-element-0><span class=secno>11.4.18 </span>The <code>keygen</code> element</a></li>
+ <li><a href=#the-time-element-0><span class=secno>11.4.19 </span>The <code>time</code> element</a></ol></li>
+ <li><a href=#frames-and-framesets><span class=secno>11.5 </span>Frames and framesets</a></li>
+ <li><a href=#interactive-media><span class=secno>11.6 </span>Interactive media</a>
<ol>
- <li><a href=#links,-forms,-and-navigation><span class=secno>10.6.1 </span>Links, forms, and navigation</a></li>
- <li><a href=#the-mark-element-0><span class=secno>10.6.2 </span>The <code>mark</code> element</a></li>
- <li><a href=#the-title-attribute-0><span class=secno>10.6.3 </span>The <code title=attr-title>title</code> attribute</a></ol></li>
- <li><a href=#print-media><span class=secno>10.7 </span>Print media</a></li>
- <li><a href=#interaction-with-css><span class=secno>10.8 </span>Interaction with CSS</a></ol></li>
- <li><a href=#obsolete-features><span class=secno>11 </span>Obsolete features</a>
+ <li><a href=#links,-forms,-and-navigation><span class=secno>11.6.1 </span>Links, forms, and navigation</a></li>
+ <li><a href=#the-mark-element-0><span class=secno>11.6.2 </span>The <code>mark</code> element</a></li>
+ <li><a href=#the-title-attribute-0><span class=secno>11.6.3 </span>The <code title=attr-title>title</code> attribute</a></ol></li>
+ <li><a href=#print-media><span class=secno>11.7 </span>Print media</a></li>
+ <li><a href=#interaction-with-css><span class=secno>11.8 </span>Interaction with CSS</a></ol></li>
+ <li><a href=#obsolete-features><span class=secno>12 </span>Obsolete features</a>
<ol>
- <li><a href=#self-contained-features><span class=secno>11.1 </span>Self-contained features</a>
+ <li><a href=#self-contained-features><span class=secno>12.1 </span>Self-contained features</a>
<ol>
- <li><a href=#the-applet-element><span class=secno>11.1.1 </span>The <code>applet</code> element</a></li>
- <li><a href=#the-marquee-element-0><span class=secno>11.1.2 </span>The <code>marquee</code> element</a></ol></li>
- <li><a href=#other-elements-and-attributes><span class=secno>11.2 </span>Other elements and attributes</a></li>
- <li><a href=#other-dom-apis><span class=secno>11.3 </span>Other DOM APIs</a></li>
- <li><a href=#conformance-checkers-0><span class=secno>11.4 </span>Conformance checkers</a></ol></li>
- <li><a href=#no><span class=secno>12 </span>Things that you can't do with this specification because
+ <li><a href=#the-applet-element><span class=secno>12.1.1 </span>The <code>applet</code> element</a></li>
+ <li><a href=#the-marquee-element-0><span class=secno>12.1.2 </span>The <code>marquee</code> element</a></ol></li>
+ <li><a href=#other-elements-and-attributes><span class=secno>12.2 </span>Other elements and attributes</a></li>
+ <li><a href=#other-dom-apis><span class=secno>12.3 </span>Other DOM APIs</a></li>
+ <li><a href=#conformance-checkers-0><span class=secno>12.4 </span>Conformance checkers</a></ol></li>
+ <li><a href=#no><span class=secno>13 </span>Things that you can't do with this specification because
they are better handled using other technologies that are further
described herein</a>
<ol>
- <li><a href=#localization><span class=secno>12.1 </span>Localization</a></li>
- <li><a href=#declarative-3d-scenes><span class=secno>12.2 </span>Declarative 3D scenes</a></li>
- <li><a href=#rendering-and-the-dom><span class=secno>12.3 </span>Rendering and the DOM</a></ol></li>
+ <li><a href=#localization><span class=secno>13.1 </span>Localization</a></li>
+ <li><a href=#declarative-3d-scenes><span class=secno>13.2 </span>Declarative 3D scenes</a></li>
+ <li><a href=#rendering-and-the-dom><span class=secno>13.3 </span>Rendering and the DOM</a></ol></li>
<li><a class=no-num href=#index>Index</a></li>
<li><a class=no-num href=#references>References</a></li>
<li><a class=no-num href=#acknowledgements>Acknowledgements</a></ol>
@@ -4265,8 +4283,59 @@
</ol></div>
- <h4 id=syntax-references><span class=secno>2.4.9 </span>References</h4>
+ <h4 id=reversed-dns-identifiers><span class=secno>2.4.9 </span>Reversed DNS identifiers</h4>
+
+ <p>A <dfn id=valid-reversed-dns-identifier>valid reversed DNS identifier</dfn> is a string that
+ consists of a series of IDNA labels in reverse order (i.e. starting
+ with the top-level domain), the prefix of which, when reversed and
+ converted to ASCII, corresponds to a registered domain.</p>
+
+ <p class=example>For instance, the string "<code title="">com.example.xn--74h</code>" is a <a href=#valid-reversed-dns-identifier>valid reversed DNS
+ identifier</a> because the string "<code title="">example.com</code>" is a registered domain.</p>
+
+ <div class=impl>
+
+ <p>To check if a string is a <a href=#valid-reversed-dns-identifier>valid reversed DNS
+ identifier</a>, conformance checkers must run the following algorithm:</p>
+
+ <ol><li>
+
+ <p>Apply the IDNA ToASCII algorithm to the string, with both the
+ AllowUnassigned and UseSTD3ASCIIRules flags set, but between steps
+ 2 and 3 of the general ToASCII/ToUnicode algorithm (i.e. after
+ splitting the domain name into individual labels), reverse the
+ order of the labels.</p>
+
+ <p>If ToASCII fails to convert one of the components of the
+ string, e.g. because it is too long or because it contains invalid
+ characters, then the string is not valid; abort these steps. <a href=#refsRFC3490>[RFC3490]</a></p>
+
+ </li>
+
+ <li>
+
+ <p>Check that the end of the resulting string matches a suffix in
+ the Public Suffix List, and that there is at least one domain
+ label before the matching substring. If it does not, or if there
+ is not, then the string is not valid; abort these steps. <a href=#refsPSL>[PSL]</a></p> <!-- [PSL] http://publicsuffix.org/
+ -->
+
+ </li>
+
+ <li>
+
+ <p>Check that the domain name up to the label before the prefix
+ that was matched in the previous string is a registered domain
+ name.</p>
+
+ </li>
+
+ </ol></div>
+
+
+ <h4 id=syntax-references><span class=secno>2.4.10 </span>References</h4>
+
<p>A <dfn id=valid-hash-name-reference>valid hash-name reference</dfn> to an element of type <var title="">type</var> is a string consisting of a U+0023 NUMBER SIGN
(<code title="">#</code>) character followed by a string which
exactly matches the value of the <code title="">name</code>
@@ -5929,18 +5998,18 @@
exception on setting, as defined by WebIDL. <a href=#refsWEBIDL>[WEBIDL]</a></p>
<p>If a reflecting DOM attribute is of the type
- <code><a href=#domtokenlist-0>DOMTokenList</a></code>, then on getting it must return a
- <code><a href=#domtokenlist-0>DOMTokenList</a></code> object whose underlying string is the
- element's corresponding content attribute. When the
- <code><a href=#domtokenlist-0>DOMTokenList</a></code> object mutates its underlying string, the
+ <code><a href=#domtokenlist-0>DOMTokenList</a></code> or <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code>, then
+ on getting it must return a <code><a href=#domtokenlist-0>DOMTokenList</a></code> or
+ <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code> object (as appropriate) whose
+ underlying string is the element's corresponding content
+ attribute. When the object mutates its underlying string, the
content attribute must itself be immediately mutated. When the
- attribute is absent, then the string represented by the
- <code><a href=#domtokenlist-0>DOMTokenList</a></code> object is the empty string; when the
- object mutates this empty string, the user agent must first add the
- corresponding content attribute, and then mutate that attribute
- instead. <code><a href=#domtokenlist-0>DOMTokenList</a></code> attributes are always
- read-only. The same <code><a href=#domtokenlist-0>DOMTokenList</a></code> object must be
- returned every time for each attribute.</p>
+ attribute is absent, then the string represented by the object is
+ the empty string; when the object mutates this empty string, the
+ user agent must first add the corresponding content attribute, and
+ then mutate that attribute instead. The same
+ <code><a href=#domtokenlist-0>DOMTokenList</a></code> object must be returned every time for
+ each attribute.</p>
<p>If a reflecting DOM attribute has the type
<code><a href=#htmlelement>HTMLElement</a></code>, or an interface that descends from
@@ -5972,8 +6041,9 @@
<h4 id=collections><span class=secno>2.9.2 </span>Collections</h4>
<p>The <code><a href=#htmlcollection-0>HTMLCollection</a></code>,
- <code><a href=#htmlformcontrolscollection-0>HTMLFormControlsCollection</a></code>, and
- <code><a href=#htmloptionscollection-0>HTMLOptionsCollection</a></code> interfaces represent various
+ <code><a href=#htmlformcontrolscollection-0>HTMLFormControlsCollection</a></code>,
+ <code><a href=#htmloptionscollection-0>HTMLOptionsCollection</a></code>, and
+ <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> interfaces represent various
lists of DOM nodes. Collectively, objects implementing these
interfaces are called <dfn id=collections-0>collections</dfn>.</p>
@@ -6030,6 +6100,7 @@
<dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLCollection-item><a href=#dom-htmlcollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
<dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
<dd>
<p>Returns the first item with ID or name <var title="">name</var>
from the collection.</p>
@@ -6115,6 +6186,7 @@
<dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLFormControlsCollection-item><a href=#dom-htmlformcontrolscollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
<dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title=dom-HTMLFormControlsCollection-item><a href=#dom-htmlformcontrolscollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
<dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
<dd>
<p>Returns the item with ID or <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> <var title="">name</var> from the collection.</p>
<p>If there are multiple matching items, then a <code><a href=#radionodelist>RadioNodeList</a></code> object containing all those elements is returned.</p>
@@ -6248,6 +6320,7 @@
<dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLOptionsCollection-item><a href=#dom-htmloptionscollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
<dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
<dd>
<p>Returns the item with ID or <code title=attr-option-name>name</code> <var title="">name</var> from the collection.</p>
<p>If there are multiple matching items, then a <code>NodeList</code> object containing all those elements is returned.</p>
@@ -6376,6 +6449,119 @@
</ol><!-- see also http://ln.hixie.ch/?start=1161042744&count=1 --></div>
+ <h5 id=htmlpropertycollection><span class=secno>2.9.2.4 </span>HTMLPropertyCollection</h5>
+
+ <p>The <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> interface represents a
+ <a href=#collections-0 title=collections>collection</a> of elements that add
+ name-value pairs to a particular <a href=#concept-item title=concept-item>item</a> in the <a href=#microdata>microdata</a>
+ model.</p>
+
+ <pre class=idl>[Callable=<a href=#dom-htmlpropertycollection-nameditem title=dom-HTMLPropertyCollection-namedItem>namedItem</a>]
+interface <dfn id=htmlpropertycollection-0>HTMLPropertyCollection</dfn> {
+ readonly attribute unsigned long <a href=#dom-htmlpropertycollection-length title=dom-HTMLPropertyCollection-length>length</a>;
+ readonly attribute <span>DOMStringList</span> <a href=#dom-htmlpropertycollection-names title=dom-HTMLPropertyCollection-names>names</a>;
+ [IndexGetter] <a href=#htmlelement>HTMLElement</a> <a href=#dom-htmlpropertycollection-item title=dom-HTMLPropertyCollection-item>item</a>(in unsigned long index);
+ [NameGetter] Object <a href=#dom-htmlpropertycollection-nameditem title=dom-HTMLPropertyCollection-namedItem>namedItem</a>(in DOMString name);
+};
+
+typedef sequence<DOMString> <dfn id=domstringarray>DOMStringArray</dfn>;
+
+interface <dfn id=propertynodelist>PropertyNodeList</dfn> : <span>NodeList</span> {
+ attribute <a href=#domstringarray>DOMStringArray</a> <a href=#dom-propertynodelist-content title=dom-PropertyNodeList-content>content</a>;
+};</pre>
+
+ <dl class=domintro><dt><var title="">collection</var> . <code title=dom-HTMLPropertyCollection-length><a href=#dom-htmlpropertycollection-length>length</a></code></dt>
+ <dd>
+ <p>Returns the number of elements in the collection.</p>
+ </dd>
+
+ <dt><var title="">collection</var> . <code title=dom-HTMLPropertyCollection-names><a href=#dom-htmlpropertycollection-names>names</a></code></dt>
+ <dd>
+ <p>Returns a <code>DOMStringList</code> with the <a href=#property-names>property names</a> of the elements in the collection.</p>
+ </dd>
+
+ <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLPropertyCollection-item><a href=#dom-htmlpropertycollection-item>item</a></code>(<var title="">index</var>)</dt>
+ <dt><var title="">collection</var>[<var title="">index</var>]</dt>
+ <dd>
+ <p>Returns the element with index <var title="">index</var> from the collection. The items are sorted in <a href=#tree-order>tree order</a>.</p>
+ <p>Returns null if <var title="">index</var> is out of range.</p>
+ </dd>
+
+ <dt><var title="">element</var> = <var title="">collection</var> . <code title=dom-HTMLPropertyCollection-item><a href=#dom-htmlpropertycollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
+ <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title=dom-HTMLPropertyCollection-item><a href=#dom-htmlpropertycollection-item>namedItem</a></code>(<var title="">name</var>)</dt>
+ <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
+ <dd>
+ <p>Returns the element with that adds the property named <var title="">name</var> from the collection.</p>
+ <p>If there are multiple matching elements, then a <code><a href=#propertynodelist>PropertyNodeList</a></code> object containing all those elements is returned.</p>
+ <p>Returns null if no element adds the property named <var title="">name</var>.</p>
+ </dd>
+
+ <dt><var title="">propertyNodeList</var> . <var title="">content</var></dt>
+
+ <dd>
+
+ <p>Returns an array of the various values that the relevant elements have.</p>
+
+ </dd>
+
+ </dl><div class=impl>
+
+ <hr><p>The object's <span>indices of the supported indexed
+ properties</span> are the numbers in the range zero to one less than
+ the number of nodes <a href=#represented-by-the-collection>represented by the collection</a>. If
+ there are no such elements, then there are no <span>supported
+ indexed properties</span>.</p>
+
+ <p>The <dfn id=dom-htmlpropertycollection-length title=dom-HTMLPropertyCollection-length><code>length</code></dfn>
+ attribute must return the number of nodes <a href=#represented-by-the-collection>represented by the
+ collection</a>.</p>
+
+ <p>The <dfn id=dom-htmlpropertycollection-names title=dom-HTMLPropertyCollection-names><code>names</code></dfn>
+ attribute must return a live <code>DOMStringList</code> object
+ giving the <a href=#property-names>property names</a> of all the elements
+ <a href=#represented-by-the-collection>represented by the collection</a>. The same object must be
+ returned each time.</p>
+
+ <p>The <dfn id=dom-htmlpropertycollection-item title=dom-HTMLPropertyCollection-item><code>item(<var title="">index</var>)</code></dfn> method must return the <var title="">index</var>th node in the collection. If there is no <var title="">index</var>th node in the collection, then the method must
+ return null.</p>
+
+ <p>The <span>names of the supported named properties</span> consist
+ of the <a href=#property-names>property names</a> of all the elements
+ <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+
+ <p>The <dfn id=dom-htmlpropertycollection-nameditem title=dom-HTMLPropertyCollection-namedItem><code>namedItem(<var title="">name</var>)</code></dfn> method must act according to the
+ following algorithm:</p>
+
+ <ol><li>If, at the time the method is called, there is exactly one node
+ in the collection that has a <a href=#property-names title="property names">property
+ name</a> equal to <var title="">name</var>, then return that
+ node and stop the algorithm.</li>
+
+ <li>Otherwise, if there are no nodes in the collection that have a
+ <a href=#property-names title="property names">property name</a> equal to <var title="">name</var>, then return null and stop the algorithm.</li>
+
+ <li>Otherwise, create a <code><a href=#propertynodelist>PropertyNodeList</a></code> object
+ representing a live view of the <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code>
+ object, further filtered so that the only nodes in the
+ <code><a href=#radionodelist>RadioNodeList</a></code> object are those that have a <a href=#property-names title="property names">property name</a> equal to <var title="">name</var>. The nodes in the <code><a href=#propertynodelist>PropertyNodeList</a></code>
+ object must be sorted in <a href=#tree-order>tree order</a>.</li>
+
+ <li>Return that <code><a href=#propertynodelist>PropertyNodeList</a></code> object.</li>
+
+ </ol><hr><p>A members of the <code><a href=#propertynodelist>PropertyNodeList</a></code> interface
+ inherited from the <code>NodeList</code> interface must behave as
+ they would on a <code>NodeList</code> object.</p>
+
+ <p>The <dfn id=dom-propertynodelist-content title=dom-PropertyNodeList-content><code>content</code></dfn> DOM
+ attribute on the <code><a href=#propertynodelist>PropertyNodeList</a></code> object, on getting,
+ must return a newly constructed <code><a href=#domstringarray>DOMStringArray</a></code> whose
+ values are the values obtained from the <code title=dom-content><a href=#dom-content>content</a></code> DOM property of each of the
+ elements represented by the object, in <a href=#tree-order>tree order</a>.</p>
+
+ </div>
+
+
<h4 id=domtokenlist><span class=secno>2.9.3 </span>DOMTokenList</h4>
<p>The <code><a href=#domtokenlist-0>DOMTokenList</a></code> interface represents an interface
@@ -6535,9 +6721,40 @@
</div>
+
+ <h4 id=domsettabletokenlist><span class=secno>2.9.4 </span>DOMSettableTokenList</h4>
+
+ <p>The <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code> interface is the same as the
+ <code><a href=#domtokenlist-0>DOMTokenList</a></code> interface, except that it allows the
+ underlying string to be directly changed.</p>
+
+ <pre class=idl>[<a href=#dom-tokenlist-tostring title=dom-tokenlist-toString>Stringifies</a>] interface <dfn id=domsettabletokenlist-0>DOMSettableTokenList</dfn> : <a href=#domtokenlist-0>DOMTokenList</a> {
+ attribute DOMString <a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>;
+};</pre>
+
+ <dl class=domintro><dt><var title="">tokenlist</var> . <code title=dom-DOMSettableTokenList-value><a href=#dom-domsettabletokenlist-value>value</a></code></dt>
+ <dd>
+ <p>Returns the underlying string.</p>
+ <p>Can be set, to change the underlying string.</p>
+ </dd>
+
+ </dl><div class=impl>
+
+ <p>An object implementing the <code><a href=#domsettabletokenlist-0>DOMSettableTokenList</a></code>
+ interface must act as defined for the <code><a href=#domtokenlist-0>DOMTokenList</a></code>
+ interface, except for the <code title=dom-DOMSettableTokenList-value><a href=#dom-domsettabletokenlist-value>value</a></code> attribute defined
+ here.</p>
+
+ <p>The <dfn id=dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value><code>value</code></dfn>
+ attribute must return the underlying string on getting, and must
+ replace the underlying string with the new value on setting.</p>
+
+ </div>
+
+
<div class=impl>
- <h4 id=safe-passing-of-structured-data><span class=secno>2.9.4 </span>Safe passing of structured data</h4>
+ <h4 id=safe-passing-of-structured-data><span class=secno>2.9.5 </span>Safe passing of structured data</h4>
<p>When a user agent is required to obtain a <dfn id=structured-clone>structured
clone</dfn> of an object, it must run the following algorithm, which
@@ -6652,9 +6869,8 @@
</dl></div>
+ <h4 id=domstringmap><span class=secno>2.9.6 </span>DOMStringMap</h4>
- <h4 id=domstringmap><span class=secno>2.9.5 </span>DOMStringMap</h4>
-
<p>The <code><a href=#domstringmap-0>DOMStringMap</a></code> interface represents a set of
name-value pairs. It exposes these using the scripting language's
native mechanisms for property access.</p>
@@ -6732,7 +6948,7 @@
</div>
- <h4 id=dom-feature-strings><span class=secno>2.9.6 </span>DOM feature strings</h4>
+ <h4 id=dom-feature-strings><span class=secno>2.9.7 </span>DOM feature strings</h4>
<p>DOM3 Core defines mechanisms for checking for interface support,
and for obtaining implementations of interfaces, using <a href=http://www.w3.org/TR/DOM-Level-3-Core/core.html#DOMFeatures>feature
@@ -6762,7 +6978,7 @@
not guaranteed that an implementation that supports "<code title="">HTML</code>" "<code>5.0</code>" also supports "<code title="">HTML</code>" "<code>2.0</code>".</p>
- <h4 id=exceptions><span class=secno>2.9.7 </span>Exceptions</h4>
+ <h4 id=exceptions><span class=secno>2.9.8 </span>Exceptions</h4>
<p>The following <code>DOMException</code> codes are defined in DOM
Core. <a href=#refsDOMCORE>[DOMCORE]</a></p>
@@ -6796,7 +7012,7 @@
<li value=82><dfn id=serialise_err><code>SERIALISE_ERR</code></dfn></li> <!-- actually defined in dom3ls -->
</ol><div class=impl>
- <h4 id=garbage-collection><span class=secno>2.9.8 </span>Garbage collection</h4>
+ <h4 id=garbage-collection><span class=secno>2.9.9 </span>Garbage collection</h4>
<p>There is an <dfn id=implied-strong-reference>implied strong reference</dfn> from any DOM
attribute that returns a pre-existing object to that object.</p>
@@ -6909,6 +7125,7 @@
readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-forms title=dom-document-forms>forms</a>;
readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-anchors title=dom-document-anchors>anchors</a>;
readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-scripts title=dom-document-scripts>scripts</a>;
+ readonly attribute <a href=#htmlcollection-0>HTMLCollection</a> <a href=#dom-document-items title=dom-document-items>items</a>;
NodeList <a href=#dom-document-getelementsbyname title=dom-document-getElementsByName>getElementsByName</a>(in DOMString elementName);
NodeList <a href=#dom-document-getelementsbyclassname title=dom-document-getElementsByClassName>getElementsByClassName</a>(in DOMString classNames);
@@ -7803,6 +8020,13 @@
readonly attribute <a href=#domtokenlist-0>DOMTokenList</a> <a href=#dom-classlist title=dom-classList>classList</a>;
readonly attribute <a href=#domstringmap-0>DOMStringMap</a> <a href=#dom-dataset title=dom-dataset>dataset</a>;
+ // <a href=#microdata>microdata</a>
+ [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist-0>DOMSettableTokenList</a> <a href=#dom-item title=dom-item>item</a>;
+ [PutForwards=<a href=#dom-domsettabletokenlist-value title=dom-DOMSettableTokenList-value>value</a>] readonly attribute <a href=#domsettabletokenlist-0>DOMSettableTokenList</a> <a href=#dom-property title=dom-property>property</a>;
+ readonly attribute <a href=#htmlpropertycollection-0>HTMLPropertyCollection</a> <a href=#dom-properties title=dom-properties>properties</a>;
+ attribute DOMString <a href=#dom-content title=dom-content>content</a>;
+ attribute <a href=#htmlelement>HTMLElement</a> <a href=#dom-subject title=dom-subject>subject</a>;
+
// <a href=#editing>user interaction</a>
attribute boolean <a href=#dom-hidden title=dom-hidden>hidden</a>;
void <a href=#dom-click title=dom-click>click</a>();
@@ -7908,10 +8132,13 @@
<li><code title=attr-dir><a href=#the-dir-attribute>dir</a></code></li>
<li><code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code></li>
<li><code title=attr-id><a href=#the-id-attribute>id</a></code></li>
+ <li><code title=attr-item><a href=#items:-the-item-attribute>item</a></code></li>
<li><code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code></li>
<li><code title=attr-lang><a href=#the-lang-and-xml:lang-attributes>lang</a></code></li>
+ <li><code title=attr-property><a href=#names:-the-property-attribute>property</a></code></li>
+ <li><code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code></li>
<li><code title=attr-style><a href=#the-style-attribute>style</a></code></li>
- <li><code title=attr-spellcheck><a href=#attr-spellcheck>spellcheck</a></code></li>
+ <li><code title=attr-subject><a href=#attr-subject>subject</a></code></li>
<li><code title=attr-tabindex><a href=#attr-tabindex>tabindex</a></code></li>
<li><code title=attr-title><a href=#the-title-attribute>title</a></code></li>
</ul><p>In addition, unless otherwise specified, the following
@@ -10002,9 +10229,11 @@
<dl class=element><dt>Categories</dt>
<dd><a href=#metadata-content-0>Metadata content</a>.</dd>
+ <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: <a href=#flow-content-0>flow content</a>.</dd>
<dt>Contexts in which this element may be used:</dt>
<dd>Where <a href=#metadata-content-0>metadata content</a> is expected.</dd>
<dd>In a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element>head</a></code> element.</dd>
+ <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: where <a href=#flow-content-0>flow content</a> is expected.</dd>
<dt>Content model:</dt>
<dd>Empty.</dd>
<dt>Content attributes:</dt>
@@ -10313,11 +10542,13 @@
<dl class=element><dt>Categories</dt>
<dd><a href=#metadata-content-0>Metadata content</a>.</dd>
+ <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: <a href=#flow-content-0>flow content</a>.</dd>
<dt>Contexts in which this element may be used:</dt>
<dd>If the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute is present, or if the element is in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-head-element>head</a></code> element.</dd>
<dd>If the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is present, and the element is not in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-head-element>head</a></code> element.</dd>
<dd>If the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute is present, and the element is not in the <a href=#attr-meta-http-equiv-content-type title=attr-meta-http-equiv-content-type>Encoding declaration state</a>: in a <code><a href=#the-noscript-element>noscript</a></code> element that is a child of a <code><a href=#the-head-element>head</a></code> element.</dd>
<dd>If the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute is present: where <a href=#metadata-content-0>metadata content</a> is expected.</dd>
+ <dd>If the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute is present: where <a href=#flow-content-0>flow content</a> is expected.</dd>
<dt>Content model:</dt>
<dd>Empty.</dd>
<dt>Content attributes:</dt>
@@ -10329,7 +10560,6 @@
<dt>DOM interface:</dt>
<dd>
<pre class=idl>interface <dfn id=htmlmetaelement>HTMLMetaElement</dfn> : <a href=#htmlelement>HTMLElement</a> {
- attribute DOMString <a href=#dom-meta-content title=dom-meta-content>content</a>;
attribute DOMString <a href=#dom-meta-name title=dom-meta-name>name</a>;
attribute DOMString <a href=#dom-meta-httpequiv title=dom-meta-httpEquiv>httpEquiv</a>;
};</pre>
@@ -10347,12 +10577,11 @@
the network or for disk storage) with the <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attribute.</p>
<p>Exactly one of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>,
- <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, and <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code> attributes must be
+ <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, <code title=attr-meta-charset><a href=#attr-meta-charset>charset</a></code>, and <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attributes must be
specified.</p>
- <p>If either <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> or <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> is specified, then
- the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must
- also be specified. Otherwise, it must be omitted.</p>
+ <p>If either <code title=attr-meta-name><a href=#attr-meta-name>name</a></code>, <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>, or <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> is specified, then the <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute must also be
+ specified. Otherwise, it must be omitted.</p>
<p>The <dfn id=attr-meta-charset title=attr-meta-charset><code>charset</code></dfn>
attribute specifies the character encoding used by the
@@ -10389,17 +10618,11 @@
then the value part of the metadata name/value pair is the empty
string.</p>
- <p>If a <code><a href=#meta>meta</a></code> element has the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute specified,
- it must be either in a <code><a href=#the-head-element>head</a></code> element or in a
- <code><a href=#the-noscript-element>noscript</a></code> element that itself is in a <code><a href=#the-head-element>head</a></code>
- element. If a <code><a href=#meta>meta</a></code> element does not have the <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code> attribute specified,
- it must be in a <code><a href=#the-head-element>head</a></code> element.</p>
-
<div class=impl>
- <p>The DOM attributes <dfn id=dom-meta-name title=dom-meta-name><code>name</code></dfn> and <dfn id=dom-meta-content title=dom-meta-content><code>content</code></dfn> must
- <a href=#reflect>reflect</a> the respective content attributes of the same
- name. The DOM attribute <dfn id=dom-meta-httpequiv title=dom-meta-httpEquiv><code>httpEquiv</code></dfn> must
+ <p>The <dfn id=dom-meta-name title=dom-meta-name><code>name</code></dfn> DOM
+ attribute must <a href=#reflect>reflect</a> the content attribute of the
+ same name. The DOM attribute <dfn id=dom-meta-httpequiv title=dom-meta-httpEquiv><code>httpEquiv</code></dfn> must
<a href=#reflect>reflect</a> the content attribute <code title=attr-meta-http-equiv><a href=#attr-meta-http-equiv>http-equiv</a></code>.</p>
</div>
@@ -40361,9 +40584,531 @@
+ <h2 id=microdata><span class=secno>5 </span><dfn>Microdata</dfn></h2>
- <h2 id=browsers><span class=secno>5 </span>Web browsers</h2>
+ <h3 id=introduction-2><span class=secno>5.1 </span>Introduction</h3>
+ <p class=XXX>...</p>
+
+
+ <h3 id=encoding-microdata><span class=secno>5.2 </span>Encoding microdata</h3>
+
+ <h4 id=the-microdata-model><span class=secno>5.2.1 </span>The microdata model</h4>
+
+ <p>The microdata model consists of groups of name-value pairs known
+ as <dfn id=concept-item title=concept-item>items</dfn>.</p>
+
+ <p>Each group has zero or more types, each name has one or more
+ values, and each value is either a string or another group of
+ name-value pairs.</p>
+
+
+ <h4 id=items:-the-item-attribute><span class=secno>5.2.2 </span>Items: the <dfn title=attr-item><code>item</code></dfn> attribute</h4>
+
+ <p>Every <a href=#html-elements title="HTML elements">HTML element</a> may have an
+ <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified.</p>
+
+ <p>An element with the <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute
+ specified creates a new <a href=#concept-item title=concept-item>item</a>, a
+ group of name-value pairs.</p>
+
+ <p>The attribute, if specified, must have a value that is an
+ <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of unique space-separated tokens</a>
+ representing the types (if any) of the <a href=#concept-item title=concept-item>item</a>.</p>
+
+ <p>Each token must be either:</p>
+
+ <ul><li>A <a href=#valid-url>valid URL</a> that is an <a href=#absolute-url>absolute URL</a>,
+ or</li>
+
+ <li>A <a href=#valid-reversed-dns-identifier>valid reversed DNS identifier</a>, or</li>
+<!--
+ <li>A <span>predefined type</span>.</li>
+-->
+ </ul><!--
+ <p>If any of the tokens are a <span>predefined type</span>, then
+ there must not be any other tokens that are <span title="predefined
+ type">predefined types</span>.</p>
+--><p>The <dfn id=item-types>item types</dfn> of an element with a <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute are the tokens that the
+ element's <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute is found to
+ contain when its value is <a href=#split-a-string-on-spaces title="split a string on
+ spaces">split on spaces</a>.</p>
+
+
+ <h4 id=associating-names-with-items><span class=secno>5.2.3 </span>Associating names with items</h4>
+
+ <p>The <dfn id=attr-subject title=attr-subject><code>subject</code></dfn>
+ attribute may be specified on any <a href=#html-elements title="HTML elements">HTML
+ element</a> to associate the element with an element with an
+ <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute. If the <code title=attr-subject><a href=#attr-subject>subject</a></code> attribute is specified, the
+ attribute's value must be the ID of an element with an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute, in the same
+ <code>Document</code> as the element with the <code title=attr-subject><a href=#attr-subject>subject</a></code> attribute.</p>
+
+ <p>An element's <dfn id=concept-item-corresponding title=concept-item-corresponding>corresponding item</dfn> is
+ determined by its position in the DOM and by any <code title=attr-subject><a href=#attr-subject>subject</a></code> attributes on the element, and
+ is defined as follows:</p>
+
+ <dl><dt>If the element has neither <code title=attr-subject><a href=#attr-subject>subject</a></code> attribute nor an ancestor with
+ an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified</dt>
+
+ <dd><p>The element has no <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+ item</a>.</dd>
+
+ <dt>If the element has no <code title=attr-subject><a href=#attr-subject>subject</a></code>
+ attribute but does have an ancestor with an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified</dt>
+
+ <dd><p>The nearest ancestor element with the <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified is the element's
+ <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+ item</a>.</dd>
+
+ <dt>If the element has a <code title=attr-subject><a href=#attr-subject>subject</a></code>
+ attribute</dt>
+
+ <dd><p>If there is an element in the document with an ID equal to
+ the value of the <code title=attr-subject><a href=#attr-subject>subject</a></code>
+ attribute, and if the first such element has an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute specified, then that
+ element is the <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+ item</a>. Otherwise, there is no <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+ item</a>.</dd>
+
+ </dl><p>The list of elements that create <a href=#concept-item title=concept-item>items</a> but do not themselves have a <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> forms
+ the list of <dfn id=top-level-microdata-items>top-level microdata items</dfn>.</p>
+
+
+ <h4 id=names:-the-property-attribute><span class=secno>5.2.4 </span>Names: the <dfn title=attr-property><code>property</code></dfn> attribute</h4>
+
+ <p>Every <a href=#html-elements title="HTML elements">HTML element</a> that has a
+ <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a>
+ may have a <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute
+ specified.</p>
+
+ <p>An element with the <code title=attr-property><a href=#names:-the-property-attribute>property</a></code>
+ attribute specified adds one or more name-value pairs to its
+ <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a>.</p>
+
+ <p>The <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute, if
+ specified, must have a value that is an <a href=#unordered-set-of-unique-space-separated-tokens>unordered set of
+ unique space-separated tokens</a> representing the names of the
+ name-value pairs that it adds. The attribute's value must have at
+ least one token.</p>
+
+ <p>Each token must be either:</p>
+
+ <ul><li>A <a href=#valid-url>valid URL</a> that is an <a href=#absolute-url>absolute URL</a>,
+ or</li>
+
+ <li>A <a href=#valid-reversed-dns-identifier>valid reversed DNS identifier</a>, or</li>
+
+ <li>If its <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding
+ item</a>'s <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> attribute has no
+ tokens: a string containing neither a U+003A COLON character (:), a
+ U+002E FULL STOP character (.), nor a U+0020 SPACE character, or</li>
+<!--
+ <li>If its <span title="concept-item-corresponding">corresponding
+ item</span>'s <code title="attr-item">item</code> attribute
+ included a <span>predefined type</span>: one of the <span
+ title="predefined name">predefined names</span> for that particular
+ <span>predefined type</span>.</li>
+-->
+ </ul><p>The <dfn id=property-names>property names</dfn> of an element are the tokens that
+ the element's <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute
+ is found to contain when its value is <a href=#split-a-string-on-spaces title="split a string on
+ spaces">split on spaces</a>.</p>
+
+
+ <h4 id=values><span class=secno>5.2.5 </span>Values</h4>
+
+ <p>The <dfn id=concept-property-value title=concept-property-value>property value</dfn> of a
+ name-value pair added by an element with a <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> attribute depends on the
+ element, as follows:</p>
+
+ <dl><dt>If the element also has an <code title=attr-item><a href=#items:-the-item-attribute>item</a></code>
+ attribute</dt>
+
+ <dd><p>The value is the <a href=#concept-item title=concept-item>item</a>
+ created by the element.</dd>
+
+
+ <dt>If the element is a <code><a href=#meta>meta</a></code> element</dt>
+
+ <dd><p>The value is the value of the element's <code title=attr-content>content</code> attribute, if any, or the empty
+ string if there is no such attribute.</dd>
+
+
+ <dt>If the element is an <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
+ <code><a href=#the-img-element>img</a></code>, <code><a href=#the-source-element>source</a></code>, or <code><a href=#video>video</a></code>
+ element</dt>
+
+ <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
+ <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
+ element's <code title="">src</code> attribute relative to the
+ element at the time the attribute is set, or the empty string if
+ there is no such attribute or if <a href=#resolve-a-url title="resolve a
+ url">resolving</a> it results in an error.</dd>
+
+
+ <dt>If the element is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, or
+ <code><a href=#the-link-element>link</a></code> element</dt>
+
+ <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
+ <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
+ element's <code title="">href</code> attribute relative to the
+ element at the time the attribute is set, or the empty string if
+ there is no such attribute or if <a href=#resolve-a-url title="resolve a
+ url">resolving</a> it results in an error.</dd>
+
+
+ <dt>If the element is an <code><a href=#the-object-element>object</a></code> element</dt>
+
+ <dd><p>The value is the <a href=#absolute-url>absolute URL</a> that results from
+ <a href=#resolve-a-url title="resolve a url">resolving</a> the value of the
+ element's <code title="">data</code> attribute relative to the
+ element at the time the attribute is set, or the empty string if
+ there is no such attribute or if <a href=#resolve-a-url title="resolve a
+ url">resolving</a> it results in an error.</dd>
+
+
+ <dt>If the element is a <code><a href=#the-time-element>time</a></code> element with a <code title=attr-datetime>datetime</code> attribute</dt>
+
+ <dd><p>The value is the value of the element's <code title=attr-datetime>datetime</code> attribute.</dd>
+
+
+ <dt>Otherwise</dt>
+
+ <dd><p>The value is the element's
+ <code><a href=#textcontent>textContent</a></code>.</dd>
+
+ </dl><h3 id=microdata-dom-api><span class=secno>5.3 </span>Microdata DOM API</h3>
+
+ <dl class=domintro><dt><var title="">document</var> . <code title=dom-items>items</code></dt>
+
+ <dd>
+
+ <p>Returns an <code><a href=#htmlcollection-0>HTMLCollection</a></code> of the elements in the <code>Document</code> that create <a href=#concept-item title=concept-item>items</a> and that are not part of other <a href=#concept-item title=concept-item>items</a>.</p>
+
+ </dd>
+
+ <dt><var title="">element</var> . <code title=dom-property><a href=#dom-property>properties</a></code></dt>
+
+ <dd>
+
+ <p>If the element has a <code title=attr-item><a href=#items:-the-item-attribute>item</a></code>
+ attribute, returns an <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> object
+ with all the element's properties. Otherwise, an empty
+ <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> object.</p>
+
+ </dd>
+
+ <dt><var title="">element</var> . <code title=dom-content><a href=#dom-content>content</a></code> [ = <var title="">value</var> ]</dt>
+
+ <dd>
+
+ <p>Returns the element's <a href=#concept-property-value title=concept-property-value>value</a>.</p>
+
+ <p>Can be set, to change the element's <a href=#concept-property-value title=concept-property-value>value</a>.</p>
+
+ </dd>
+
+ </dl><div class=impl>
+
+ <p>The <dfn id=dom-document-items title=dom-document-items><code>document.items</code></dfn>
+ attribute must return an <code><a href=#htmlcollection-0>HTMLCollection</a></code> rooted at the
+ <code>Document</code> node, whose filter matches only elements in
+ the list of <a href=#top-level-microdata-items>top-level microdata items</a>.</p>
+
+ <p>The <dfn id=dom-item title=dom-item><code>item</code></dfn> DOM attribute
+ on elements must <a href=#reflect>reflect</a> the element's <code title=attr-item><a href=#items:-the-item-attribute>item</a></code> content attribute.</p>
+
+ <p>The <dfn id=dom-property title=dom-property><code>property</code></dfn> DOM
+ attribute on elements must <a href=#reflect>reflect</a> the element's <code title=attr-property><a href=#names:-the-property-attribute>property</a></code> content attribute.</p>
+
+ <p>The <dfn id=dom-properties title=dom-properties><code>properties</code></dfn> DOM
+ attribute on elements must return an
+ <code><a href=#htmlpropertycollection-0>HTMLPropertyCollection</a></code> rooted at the
+ <code>Document</code> node, whose filter matches only elements that
+ have <a href=#property-names>property names</a> and have a <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> that is
+ equal to the element on which the attribute was invoked.</p>
+
+ <p>The <dfn id=dom-content title=dom-content><code>content</code></dfn> DOM
+ attribute's behavior depends on the element, as follows:</p>
+
+ <dl><dt>If the element is a <code><a href=#meta>meta</a></code> element</dt>
+
+ <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> content
+ attribute.</dd>
+
+
+ <dt>If the element is an <code><a href=#the-embed-element>embed</a></code>, <code><a href=#the-iframe-element>iframe</a></code>,
+ <code><a href=#the-img-element>img</a></code>, <code><a href=#the-source-element>source</a></code>, or <code><a href=#video>video</a></code>
+ element</dt>
+
+ <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">src</code> content attribute.</dd>
+
+
+ <dt>If the element is an <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, or
+ <code><a href=#the-link-element>link</a></code> element</dt>
+
+ <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">href</code> content attribute.</dd>
+
+
+ <dt>If the element is an <code><a href=#the-object-element>object</a></code> element</dt>
+
+ <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">data</code> content attribute.</dd>
+
+
+ <dt>If the element is a <code><a href=#the-time-element>time</a></code> element with a <code title=attr-datetime>datetime</code> attribute</dt>
+
+ <dd><p>The attribute must act as it would if it was <a href=#reflect title=reflect>reflecting</a> the element's <code title="">datetime</code> content attribute.</dd>
+
+
+ <dt>Otherwise</dt>
+
+ <dd><p>The attribute must act the same as the element's
+ <code><a href=#textcontent>textContent</a></code> attribute.</dd>
+
+ </dl><p>The <dfn id=dom-subject title=dom-subject><code>subject</code></dfn> DOM
+ attribute on elements must <a href=#reflect>reflect</a> the element's <code title=attr-subject><a href=#attr-subject>subject</a></code> content attribute.</p>
+
+ </div>
+
+
+
+ <h3 id=converting-html-to-oher-formats><span class=secno>5.4 </span>Converting HTML to oher formats</h3>
+
+
+ <h4 id=json><span class=secno>5.4.1 </span>JSON</h4>
+
+ <p>Given a node <var title="">node</var> in a <code>Document</code>,
+ a user agent must run the following algorithm to extract that node's
+ microdata into a JSON form:</p>
+
+ <ol><li><p>Let <var title="">result</var> be an empty object.</li>
+
+ <li><p>Let <var title="">items</var> be an empty array.</li>
+
+ <li><p>For <var title="">node</var> and each element that is a
+ descendant of <var title="">node</var>, check if the element is a
+ <a href=#top-level-microdata-items title="top-level microdata items">top-level microdata
+ item</a>, and if it is then <a href=#get-the-object>get the object</a> for that
+ element and add it to <var title="">items</var>.</li>
+
+ <li><p>Add an entry to <var title="">result</var> called "<code title="">items</code>" whose value is the array <var title="">items</var>.</li>
+
+ <li><p>Return the result of serializing <var title="">result</var>
+ to JSON.</li>
+
+ </ol><p>When the user agent is to <dfn id=get-the-object>get the object</dfn> for an item
+ <var title="">item</var>, it must run the following substeps:</p>
+
+ <ol><li><p>Let <var title="">result</var> be an empty object.</li>
+
+ <li><p>Let <var title="">types</var> be an empty array.</li>
+
+ <li><p>For each <a href=#item-types title="item types">item type</a> <var title="">type</var> of <var title="">item</var>, append <var title="">type</var> to <var title="">types</var>.</li>
+
+ <li><p>Add an entry to <var title="">result</var> called "<code title="">type</code>" whose value is the array <var title="">types</var>.</li>
+
+ <li><p>Let <var title="">properties</var> be an empty
+ object.</li>
+
+ <li>
+
+ <p>For each element <var title="">element</var> that has one or
+ more <a href=#property-names>property names</a> and whose <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> is
+ <var title="">item</var>, run the following substeps:</p>
+
+ <ol><li><p>Let <var title="">value</var> be the <a href=#concept-property-value title=concept-property-value>property value</a> of <var title="">element</var>.</li>
+
+ <li><p>If <var title="">value</var> is an element, then <a href=#get-the-object>get
+ the object</a> for the element <var title="">value</var>, and
+ then replace <var title="">value</var> with the object returned
+ from those steps.</li>
+
+ <li>
+
+ <p>For each name <var title="">name</var> in <var title="">element</var>'s <a href=#property-names>property names</a>, run the
+ following substeps:</p>
+
+ <ol><li><p>If there is no entry named <var title="">name</var> in
+ <var title="">properties</var>, then add an entry named <var title="">name</var> to <var title="">properties</var> whose
+ value is an empty array.</li>
+
+ <li><p>Append <var title="">value</var> to the entry named <var title="">name</var> in <var title="">properties</var>.</li>
+
+ </ol></li>
+
+ </ol></li>
+
+ <li><p>Add an entry to <var title="">result</var> called "<code title="">properties</code>" whose value is the array <var title="">properties</var>.</li>
+
+ <li><p>Return <var title="">result</var>.</li>
+
+ </ol><h4 id=rdf><span class=secno>5.4.2 </span>RDF</h4>
+
+ <p>To convert a <code>Document</code> to RDF, a user agent must run
+ the following algorithm:</p>
+
+ <ol><li>
+
+ <p>If <a href=#the-title-element-0>the <code>title</code> element</a> is not null,
+ then generate the following triple:</p>
+
+ <dl><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
+ <dt>predicate <dd> <code title="">http://purl.org/dc/terms/title</code>
+ <dt>object <dd> the <code><a href=#textcontent>textContent</a></code> of <a href=#the-title-element-0>the <code>title</code> element</a>
+ </dl></li>
+
+ <li>
+
+ <p>For each <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, and
+ <code><a href=#the-link-element>link</a></code> element in the <code>Document</code>, run these
+ substeps:</p>
+
+ <ol><li><p>If the element does not have a <code title="">rel</code>
+ attribute, then skip this element.</li>
+
+ <li><p>If the element does not have an <code title="">href</code>
+ attribute, then skip this element.</li>
+
+ <li><p>If <a href=#resolve-a-url title="resolve a URL">resolving</a> the
+ element's <code title="">href</code> attribute relative to the
+ element is not successful, then skip this element.</li>
+
+ <li><p>Otherwise, <a href=#split-a-string-on-spaces title="split a string on spaces">split
+ the value of the element's <code title="">rel</code> attribute on
+ spaces</a>, obtaining <var title="">list of tokens</var>.</li>
+
+ <li><p><a href=#converted-to-lowercase title="converted to lowercase">Convert each token in
+ <var title="">list of tokens</var> to lowercase</a>.</li>
+
+ <li><p>If <var title="">list of tokens</var> contains both the
+ tokens <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> and <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code>, then remove them both
+ and replace them with the single token <code title="">alternate-stylesheet</code>.</li>
+
+ <li><p>If <var title="">list of tokens</var> contains more than
+ one instance of the token <code title=rel-up><a href=#link-type-up>up</a></code>, then
+ remove all such tokens.</li>
+
+ <li>
+
+ <p>For each token <var title="">token</var> in <var title="">list of tokens</var> that contains neither a U+003A
+ COLON character (:) nor a U+002E FULL STOP character (.),
+ generate the following triple:</p>
+
+ <dl><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
+ <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>
+ <dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">href</code> attribute relative to the element
+ </dl></li>
+
+ </ol></li>
+
+ <li>
+
+ <p>For each <code><a href=#meta>meta</a></code> element in the <code>Document</code>
+ that has a <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute and
+ a <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute, if the
+ value of the <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute
+ contains neither a U+003A COLON character (:) nor a U+002E FULL
+ STOP character (.), generate the following triple:</p>
+
+ <dl><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
+ <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and value of the element's <code title=attr-meta-name><a href=#attr-meta-name>name</a></code> attribute, <a href=#converted-to-lowercase>converted to lowercase</a>
+ <dt>object <dd> the value of the element's <code title=attr-meta-content><a href=#attr-meta-content>content</a></code> attribute
+ </dl></li>
+
+ <li>
+
+ <p>For each <code><a href=#the-article-element>article</a></code>, <code><a href=#the-section-element>section</a></code>,
+ <code><a href=#the-blockquote-element>blockquote</a></code>, and <code><a href=#the-q-element>q</a></code> element in the
+ <code>Document</code> that has a <code title="">cite</code>
+ attribute that <a href=#resolve-a-url title="resolve a url">resolves</a>
+ successfully relative to the element, generate the following
+ triple:</p>
+
+ <dl><dt>subject <dd> <a href="#the-document's-current-address">the document's current address</a>
+ <dt>predicate <dd> <code title="">http://purl.org/dc/terms/source</code>
+ <dt>object <dd> the <a href=#absolute-url>absolute URL</a> that results from <a href=#resolve-a-url title="resolve a URL">resolving</a> the value of the element's <code title="">cite</code> attribute relative to the element
+ </dl></li>
+
+ <li>
+
+ <p>For each element that is also a <a href=#top-level-microdata-items title="top-level
+ microdata items">top-level microdata item</a>, <a href=#generate-the-triples-for-an-item title="generate the triples for an item">generate the triples for
+ the item</a>. (Nothing is done with the returned subject.)</p>
+
+ </li>
+
+ </ol><p>When the user agent is to <dfn id=generate-the-triples-for-an-item>generate the triples for an
+ item</dfn> <var title="">item</var>, it must follow the following
+ steps:</p>
+
+ <ol><li><p>If there is exactly one element whose <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> is
+ <var title="">item</var> and that has as one of its <a href=#property-names>property
+ names</a> the string "<code title="">about</code>", and the
+ <a href=#concept-property-value title=concept-property-value>property value</a> of that
+ element is an <a href=#absolute-url>absolute URL</a>, let <var title="">subject</var> be that <a href=#absolute-url>absolute
+ URL</a>. Otherwise, let <var title="">subject</var> be a new
+ blank node.</li>
+
+ <li>
+
+ <p>For each <a href=#item-types title="item types">item type</a> <var title="">type</var> of <var title="">item</var>, run the following
+ substeps:</p>
+
+ <ol><li><p>If <var title="">type</var> is not an <a href=#absolute-url>absolute
+ URL</a>, then let <var title="">type</var> be the result of
+ concatenating the string "<code title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var title="">type</var>.</li>
+
+ <li>
+
+ <p>Generate the following triple:</p>
+
+ <dl><dt>subject <dd> <var title="">subject</var>
+ <dt>predicate <dd> <code title="">http://www.w3.org/1999/02/22-rdf-syntax-ns#type</code>
+ <dt>object <dd> <var title="">type</var>
+ </dl></li>
+
+ </ol></li>
+
+ <li>
+
+ <p>For each element <var title="">element</var> that has one or
+ more <a href=#property-names>property names</a> and whose <a href=#concept-item-corresponding title=concept-item-corresponding>corresponding item</a> is
+ <var title="">item</var>, run the following substeps:</p>
+
+ <ol><li><p>Let <var title="">value</var> be the <a href=#concept-property-value title=concept-property-value>property value</a> of <var title="">element</var>.</li>
+
+ <li><p>If <var title="">value</var> is an element, then <a href=#generate-the-triples-for-an-item title="generate the triples for an item">generate the triples for
+ the element <var title="">value</var></a>, and then replace
+ <var title="">value</var> with the subject returned from those
+ steps.</li>
+
+ <li>
+
+ <p>For each name <var title="">name</var> in <var title="">element</var>'s <a href=#property-names>property names</a>, run the
+ following substeps:</p>
+
+ <ol><li><p>If <var title="">name</var> is not an <a href=#absolute-url>absolute
+ URL</a>, then let <var title="">name</var> be the result of
+ concatenating the string "<code title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var title="">name</var>.</li>
+
+ <li>
+
+ <p>Generate the following triple:</p>
+
+ <dl><dt>subject <dd> <var title="">subject</var>
+ <dt>predicate <dd> <var title="">name</var>
+ <dt>object <dd> <var title="">value</var>
+ </dl></li>
+
+ </ol></li>
+
+ </ol></li>
+
+ <li><p>Return <var title="">subject</var>.</li>
+
+ </ol><h2 id=browsers><span class=secno>6 </span>Web browsers</h2>
+
<div class=impl>
<p>This section describes features that apply most directly to Web
@@ -40375,7 +41120,7 @@
- <h3 id=windows><span class=secno>5.1 </span>Browsing contexts</h3>
+ <h3 id=windows><span class=secno>6.1 </span>Browsing contexts</h3>
<p>A <dfn id=browsing-context>browsing context</dfn> is an environment in which
<code>Document</code> objects are presented to the user.</p>
@@ -40488,7 +41233,7 @@
</div>
- <h4 id=nested-browsing-contexts><span class=secno>5.1.1 </span>Nested browsing contexts</h4>
+ <h4 id=nested-browsing-contexts><span class=secno>6.1.1 </span>Nested browsing contexts</h4>
<p>Certain elements (for example, <code><a href=#the-iframe-element>iframe</a></code> elements) can
instantiate further <a href=#browsing-context title="browsing context">browsing
@@ -40540,7 +41285,7 @@
<code><a href=#the-iframe-element>iframe</a></code> element with a <code title=attr-iframe-seamless><a href=#attr-iframe-seamless>seamless</a></code> attribute.</p>
- <h5 id=navigating-nested-browsing-contexts-in-the-dom><span class=secno>5.1.1.1 </span>Navigating nested browsing contexts in the DOM</h5>
+ <h5 id=navigating-nested-browsing-contexts-in-the-dom><span class=secno>6.1.1.1 </span>Navigating nested browsing contexts in the DOM</h5>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-top><a href=#dom-top>top</a></code></dt>
@@ -40610,7 +41355,7 @@
- <h4 id=auxiliary-browsing-contexts><span class=secno>5.1.2 </span>Auxiliary browsing contexts</h4>
+ <h4 id=auxiliary-browsing-contexts><span class=secno>6.1.2 </span>Auxiliary browsing contexts</h4>
<p>It is possible to create new browsing contexts that are related
to a <span>top level browsing context</span> without being nested
@@ -40627,7 +41372,7 @@
context</a> was created.</p>
- <h5 id=navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>5.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</h5>
+ <h5 id=navigating-auxiliary-browsing-contexts-in-the-dom><span class=secno>6.1.2.1 </span>Navigating auxiliary browsing contexts in the DOM</h5>
<p>The <dfn id=dom-opener title=dom-opener><code>opener</code></dfn> DOM
attribute on the <code><a href=#window>Window</a></code> object must return the
@@ -40639,7 +41384,7 @@
- <h4 id=secondary-browsing-contexts><span class=secno>5.1.3 </span>Secondary browsing contexts</h4>
+ <h4 id=secondary-browsing-contexts><span class=secno>6.1.3 </span>Secondary browsing contexts</h4>
<p>User agents may support <dfn id=secondary-browsing-context title="secondary browsing
context">secondary browsing contexts</dfn>, which are <a href=#browsing-context title="browsing context">browsing contexts</a> that form part of
@@ -40648,7 +41393,7 @@
<div class=impl>
- <h4 id=security-1><span class=secno>5.1.4 </span>Security</h4>
+ <h4 id=security-1><span class=secno>6.1.4 </span>Security</h4>
<p>A <a href=#browsing-context>browsing context</a> <var title="">A</var> is
<dfn id=allowed-to-navigate>allowed to navigate</dfn> a second <a href=#browsing-context>browsing
@@ -40682,7 +41427,7 @@
<div class=impl>
- <h4 id=groupings-of-browsing-contexts><span class=secno>5.1.5 </span>Groupings of browsing contexts</h4>
+ <h4 id=groupings-of-browsing-contexts><span class=secno>6.1.5 </span>Groupings of browsing contexts</h4>
<p>Each <a href=#browsing-context>browsing context</a> is defined as having a list of
zero or more <dfn id=directly-reachable-browsing-contexts>directly reachable browsing contexts</dfn>. These
@@ -40725,7 +41470,7 @@
- <h4 id=browsing-context-names><span class=secno>5.1.6 </span>Browsing context names</h4>
+ <h4 id=browsing-context-names><span class=secno>6.1.6 </span>Browsing context names</h4>
<p>Browsing contexts can have a <dfn id=browsing-context-name>browsing context name</dfn>. By
default, a browsing context has no name (its name is not set).</p>
@@ -40838,7 +41583,7 @@
<div class=impl>
- <h3 id=the-windowproxy-object><span class=secno>5.2 </span>The <code><a href=#windowproxy>WindowProxy</a></code> object</h3>
+ <h3 id=the-windowproxy-object><span class=secno>6.2 </span>The <code><a href=#windowproxy>WindowProxy</a></code> object</h3>
<p>As mentioned earlier, each <a href=#browsing-context>browsing context</a> has a
<dfn id=windowproxy><code>WindowProxy</code></dfn> object. This object is unusual
@@ -40852,7 +41597,7 @@
- <h3 id=the-window-object><span class=secno>5.3 </span>The <code><a href=#window>Window</a></code> object</h3>
+ <h3 id=the-window-object><span class=secno>6.3 </span>The <code><a href=#window>Window</a></code> object</h3>
<pre class=idl>[<a href=#dom-window-item title=dom-window-item>IndexGetter</a>, <a href=#dom-window-nameditem title=dom-window-namedItem>NameGetter</a>=OverrideBuiltins]
interface <dfn id=window>Window</dfn> {
@@ -41003,7 +41748,7 @@
<div class=impl>
- <h4 id=security-2><span class=secno>5.3.1 </span>Security</h4>
+ <h4 id=security-2><span class=secno>6.3.1 </span>Security</h4>
<p>User agents must raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception
whenever any of the members of a <code><a href=#window>Window</a></code> object are
@@ -41030,7 +41775,7 @@
- <h4 id=apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>5.3.2 </span>APIs for creating and navigating browsing contexts by name</h4>
+ <h4 id=apis-for-creating-and-navigating-browsing-contexts-by-name><span class=secno>6.3.2 </span>APIs for creating and navigating browsing contexts by name</h4>
<dl class=domintro><dt><var title="">window</var> = <var title="">window</var> . <code title=dom-open><a href=#dom-open>open</a></code>( [ <var title="">url</var> [, <var title="">target</var> [, <var title="">features</var> [, <var title="">replace</var> ] ] ] ] )</dt>
@@ -41154,7 +41899,7 @@
</div>
- <h4 id=accessing-other-browsing-contexts><span class=secno>5.3.3 </span>Accessing other browsing contexts</h4>
+ <h4 id=accessing-other-browsing-contexts><span class=secno>6.3.3 </span>Accessing other browsing contexts</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-length><a href=#dom-length>length</a></code></dt>
@@ -41201,7 +41946,7 @@
- <h4 id=named-access-on-the-window-object><span class=secno>5.3.4 </span>Named access on the <code><a href=#window>Window</a></code> object</h4>
+ <h4 id=named-access-on-the-window-object><span class=secno>6.3.4 </span>Named access on the <code><a href=#window>Window</a></code> object</h4>
<dl class=domintro><dt><var title="">window</var>[<var title="">name</var>]</dt>
@@ -41285,7 +42030,7 @@
<div class=impl>
- <h4 id=garbage-collection-and-browsing-contexts><span class=secno>5.3.5 </span>Garbage collection and browsing contexts</h4>
+ <h4 id=garbage-collection-and-browsing-contexts><span class=secno>6.3.5 </span>Garbage collection and browsing contexts</h4>
<p>A <a href=#browsing-context>browsing context</a> has a strong reference to each of
its <code>Document</code>s and its <code><a href=#windowproxy>WindowProxy</a></code> object,
@@ -41327,7 +42072,7 @@
- <h4 id=browser-interface-elements><span class=secno>5.3.6 </span>Browser interface elements</h4>
+ <h4 id=browser-interface-elements><span class=secno>6.3.6 </span>Browser interface elements</h4>
<p>To allow Web pages to integrate with Web browsers, certain Web
browser interface elements are exposed in a limited way to scripts
@@ -41462,7 +42207,7 @@
<div class=impl>
- <h3 id=origin><span class=secno>5.4 </span>Origin</h3>
+ <h3 id=origin><span class=secno>6.4 </span>Origin</h3>
<!-- Hallowed are the Ori -->
<p>The <dfn id=origin-0>origin</dfn> of a resource and the <dfn id=effective-script-origin>effective script
@@ -41791,7 +42536,7 @@
</ol></div>
- <h4 id=relaxing-the-same-origin-restriction><span class=secno>5.4.1 </span>Relaxing the same-origin restriction</h4>
+ <h4 id=relaxing-the-same-origin-restriction><span class=secno>6.4.1 </span>Relaxing the same-origin restriction</h4>
<dl class=domintro><dt><var title="">document</var> . <code title=dom-document-domain><a href=#dom-document-domain>domain</a></code> [ = <var title="">domain</var> ]</dt>
@@ -41921,9 +42666,9 @@
- <h3 id=scripting><span class=secno>5.5 </span>Scripting</h3>
+ <h3 id=scripting><span class=secno>6.5 </span>Scripting</h3>
- <h4 id=introduction-2><span class=secno>5.5.1 </span>Introduction</h4>
+ <h4 id=introduction-3><span class=secno>6.5.1 </span>Introduction</h4>
<p>Various mechanisms can cause author-provided executable code to
run in the context of a document. These mechanisms include, but are
@@ -41945,7 +42690,7 @@
</ul><div class=impl>
- <h4 id=enabling-and-disabling-scripting><span class=secno>5.5.2 </span>Enabling and disabling scripting</h4>
+ <h4 id=enabling-and-disabling-scripting><span class=secno>6.5.2 </span>Enabling and disabling scripting</h4>
<p><dfn id=concept-bc-script title=concept-bc-script>Scripting is enabled</dfn> in a
<em><a href=#browsing-context>browsing context</a></em> when all of the
@@ -41982,9 +42727,9 @@
<div class=impl>
<!-- SCRIPT EXEC (marks areas related to creation of scripts) -->
- <h4 id=processing-model-1><span class=secno>5.5.3 </span>Processing model</h4>
+ <h4 id=processing-model-1><span class=secno>6.5.3 </span>Processing model</h4>
- <h5 id=definitions-0><span class=secno>5.5.3.1 </span>Definitions</h5>
+ <h5 id=definitions-0><span class=secno>6.5.3.1 </span>Definitions</h5>
<p>A <dfn id=concept-script title=concept-script>script</dfn> has:</p>
@@ -42093,7 +42838,7 @@
<div class=impl>
- <h5 id=calling-scripts><span class=secno>5.5.3.2 </span>Calling scripts</h5>
+ <h5 id=calling-scripts><span class=secno>6.5.3.2 </span>Calling scripts</h5>
<p>When a user agent is to <dfn id=jump-to-a-code-entry-point>jump to a code entry-point</dfn> for
a <a href=#concept-script title=concept-script>script</a>, for example to invoke
@@ -42121,7 +42866,7 @@
<div class=impl>
- <h5 id=creating-scripts><span class=secno>5.5.3.3 </span>Creating scripts</h5>
+ <h5 id=creating-scripts><span class=secno>6.5.3.3 </span>Creating scripts</h5>
<p>When the specification says that a <a href=#concept-script title=concept-script>script</a> is to be <dfn id=create-a-script title="create a
script">created</dfn>, given some script source, its scripting
@@ -42192,7 +42937,7 @@
<div class=impl>
- <h5 id=killing-scripts><span class=secno>5.5.3.4 </span>Killing scripts</h5>
+ <h5 id=killing-scripts><span class=secno>6.5.3.4 </span>Killing scripts</h5>
<p>User agents may impose resource limitations on scripts, for
example CPU quotas, memory limits, total execution time limits, or
@@ -42226,9 +42971,9 @@
<div class=impl>
- <h4 id=event-loops><span class=secno>5.5.4 </span>Event loops</h4>
+ <h4 id=event-loops><span class=secno>6.5.4 </span>Event loops</h4>
- <h5 id=definitions-1><span class=secno>5.5.4.1 </span>Definitions</h5>
+ <h5 id=definitions-1><span class=secno>6.5.4.1 </span>Definitions</h5>
<p>To coordinate events, user interaction, scripts, rendering,
networking, and so forth, user agents must use <dfn id=event-loop title="event
@@ -42331,7 +43076,7 @@
- <h5 id=processing-model-2><span class=secno>5.5.4.2 </span>Processing model</h5>
+ <h5 id=processing-model-2><span class=secno>6.5.4.2 </span>Processing model</h5>
<p>An <a href=#event-loop>event loop</a> must continually run through the
following steps for as long as it exists:</p>
@@ -42383,7 +43128,7 @@
<div class=impl>
- <h5 id=generic-task-sources><span class=secno>5.5.4.3 </span>Generic task sources</h5>
+ <h5 id=generic-task-sources><span class=secno>6.5.4.3 </span>Generic task sources</h5>
<p>The following <a href=#task-source title="task source">task sources</a> are
used by a number of mostly unrelated features in this and other
@@ -42439,7 +43184,7 @@
<div class=impl>
<!-- SCRIPT EXEC -->
- <h4 id=javascript-protocol><span class=secno>5.5.5 </span><dfn title="javascript protocol">The <code title="">javascript:</code> protocol</dfn></h4>
+ <h4 id=javascript-protocol><span class=secno>6.5.5 </span><dfn title="javascript protocol">The <code title="">javascript:</code> protocol</dfn></h4>
<p>When a <a href=#url>URL</a> using the <code title="">javascript:</code> protocol is <dfn id=concept-js-deref title=concept-js-deref>dereferenced</dfn>, the user agent must run
the following steps:</p>
@@ -42563,11 +43308,11 @@
- <h4 id=events><span class=secno>5.5.6 </span>Events</h4>
+ <h4 id=events><span class=secno>6.5.6 </span>Events</h4>
<div class=impl>
- <h5 id=event-handler-attributes><span class=secno>5.5.6.1 </span>Event handler attributes</h5>
+ <h5 id=event-handler-attributes><span class=secno>6.5.6.1 </span>Event handler attributes</h5>
</div>
@@ -42752,7 +43497,7 @@
<div class=impl>
- <h5 id=event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>5.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code><a href=#window>Window</a></code> objects</h5>
+ <h5 id=event-handler-attributes-on-elements,-document-objects,-and-window-objects><span class=secno>6.5.6.2 </span>Event handler attributes on elements, <code>Document</code> objects, and <code><a href=#window>Window</a></code> objects</h5>
<p>The following are the <a href=#event-handler-attributes-0>event handler attributes</a> (and their corresponding <a href=#event-handler-event-type title="event handler event type">event handler event types</a>)
that must be supported by all <a href=#html-elements>HTML elements</a>, as both
@@ -42859,7 +43604,7 @@
<div class=impl>
- <h5 id=event-firing><span class=secno>5.5.6.3 </span>Event firing</h5>
+ <h5 id=event-firing><span class=secno>6.5.6.3 </span>Event firing</h5>
<p class=XXX>maybe this should be moved higher up
(terminology? conformance? DOM?) Also, the whole terminology thing
@@ -42909,7 +43654,7 @@
<div class=impl>
- <h5 id=events-and-the-window-object><span class=secno>5.5.6.4 </span>Events and the <code><a href=#window>Window</a></code> object</h5>
+ <h5 id=events-and-the-window-object><span class=secno>6.5.6.4 </span>Events and the <code><a href=#window>Window</a></code> object</h5>
<p>When an event is dispatched at a DOM node in a
<code>Document</code> in a <a href=#browsing-context>browsing context</a>, if the
@@ -42930,7 +43675,7 @@
<div class=impl>
- <h5 id=runtime-script-errors><span class=secno>5.5.6.5 </span>Runtime script errors</h5>
+ <h5 id=runtime-script-errors><span class=secno>6.5.6.5 </span>Runtime script errors</h5>
<p><em>This section only applies to user agents that support
scripting in general and JavaScript in particular.</em></p>
@@ -42981,7 +43726,7 @@
</dl></div>
- <h3 id=timers><span class=secno>5.6 </span>Timers</h3>
+ <h3 id=timers><span class=secno>6.6 </span>Timers</h3>
<p>The <code title=dom-windowtimers-setTimeout><a href=#dom-windowtimers-settimeout>setTimeout()</a></code>
and <code title=dom-windowtimers-setInterval><a href=#dom-windowtimers-setinterval>setInterval()</a></code>
@@ -43243,7 +43988,7 @@
- <h3 id=user-prompts><span class=secno>5.7 </span>User prompts</h3>
+ <h3 id=user-prompts><span class=secno>6.7 </span>User prompts</h3>
<!--
v2 ideas:
@@ -43254,7 +43999,7 @@
- with a solution for the mobile space
-->
- <h4 id=simple-dialogs><span class=secno>5.7.1 </span>Simple dialogs</h4>
+ <h4 id=simple-dialogs><span class=secno>6.7.1 </span>Simple dialogs</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-alert><a href=#dom-alert>alert</a></code>(<var title="">message</var>)</dt>
<dd>
@@ -43321,7 +44066,7 @@
</div>
- <h4 id=printing><span class=secno>5.7.2 </span>Printing</h4>
+ <h4 id=printing><span class=secno>6.7.2 </span>Printing</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-print><a href=#dom-print>print</a></code>()</dt>
@@ -43415,7 +44160,7 @@
</ol></div>
- <h4 id=dialogs-implemented-using-separate-documents><span class=secno>5.7.3 </span>Dialogs implemented using separate documents</h4>
+ <h4 id=dialogs-implemented-using-separate-documents><span class=secno>6.7.3 </span>Dialogs implemented using separate documents</h4>
<dl class=domintro><dt><var title="">result</var> = <var title="">window</var> . <code title=dom-showModalDialog><a href=#dom-showmodaldialog>showModalDialog</a></code>(<var title="">url</var> [, <var title="">argument</var>] )</dt>
@@ -43635,7 +44380,7 @@
- <h3 id=system-state-and-capabilities><span class=secno>5.8 </span>System state and capabilities</h3>
+ <h3 id=system-state-and-capabilities><span class=secno>6.8 </span>System state and capabilities</h3>
<div class=impl>
@@ -43697,7 +44442,7 @@
</div>
- <h4 id=client-identification><span class=secno>5.8.1 </span>Client identification</h4>
+ <h4 id=client-identification><span class=secno>6.8.1 </span>Client identification</h4>
<p>In certain cases, despite the best efforts of the entire
industry, Web browsers have bugs and limitations that Web authors
@@ -43767,7 +44512,7 @@
</dl></div>
- <h4 id=custom-handlers><span class=secno>5.8.2 </span>Custom protocol and content handlers</h4>
+ <h4 id=custom-handlers><span class=secno>6.8.2 </span>Custom protocol and content handlers</h4>
<p>The <dfn id=dom-navigator-registerprotocolhandler title=dom-navigator-registerProtocolHandler><code>registerProtocolHandler()</code></dfn>
method allows Web sites to register themselves as possible handlers
@@ -43949,7 +44694,7 @@
<div class=impl>
- <h5 id=security-and-privacy><span class=secno>5.8.2.1 </span>Security and privacy</h5>
+ <h5 id=security-and-privacy><span class=secno>6.8.2.1 </span>Security and privacy</h5>
<p>These mechanisms can introduce a number of concerns, in
particular privacy concerns.</p>
@@ -44033,7 +44778,7 @@
<div class=impl>
- <h5 id=sample-handler-impl><span class=secno>5.8.2.2 </span>Sample user interface</h5>
+ <h5 id=sample-handler-impl><span class=secno>6.8.2.2 </span>Sample user interface</h5>
<p><em>This section is non-normative.</em></p>
@@ -44115,7 +44860,7 @@
- <h4 id=manually-releasing-the-storage-mutex><span class=secno>5.8.3 </span>Manually releasing the storage mutex</h4>
+ <h4 id=manually-releasing-the-storage-mutex><span class=secno>6.8.3 </span>Manually releasing the storage mutex</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-getStorageUpdates><a href=#dom-navigator-getstorageupdates>getStorageUpdates</a></code>()</dt>
@@ -44148,9 +44893,9 @@
- <h3 id=offline><span class=secno>5.9 </span>Offline Web applications</h3>
+ <h3 id=offline><span class=secno>6.9 </span>Offline Web applications</h3>
- <h4 id=introduction-3><span class=secno>5.9.1 </span>Introduction</h4>
+ <h4 id=introduction-4><span class=secno>6.9.1 </span>Introduction</h4>
<p><em>This section is non-normative.</em></p>
@@ -44159,7 +44904,7 @@
<div class=impl>
- <h4 id=appcache><span class=secno>5.9.2 </span>Application caches</h4>
+ <h4 id=appcache><span class=secno>6.9.2 </span>Application caches</h4>
<p>An <dfn id=application-cache>application cache</dfn> is a set of cached resources
consisting of:</p>
@@ -44285,10 +45030,10 @@
</ul></div>
- <h4 id=manifests><span class=secno>5.9.3 </span>The cache manifest syntax</h4>
+ <h4 id=manifests><span class=secno>6.9.3 </span>The cache manifest syntax</h4>
- <h5 id=a-sample-manifest><span class=secno>5.9.3.1 </span>A sample manifest</h5>
+ <h5 id=a-sample-manifest><span class=secno>6.9.3.1 </span>A sample manifest</h5>
<p><em>This section is non-normative.</em></p>
@@ -44324,7 +45069,7 @@
style/default.css</pre>
- <h5 id=writing-cache-manifests><span class=secno>5.9.3.2 </span>Writing cache manifests</h5>
+ <h5 id=writing-cache-manifests><span class=secno>6.9.3.2 </span>Writing cache manifests</h5>
<p>Manifests must be served using the <code title="">text/cache-manifest</code> MIME type. All resources served
using the <code title="">text/cache-manifest</code> MIME type must
@@ -44446,7 +45191,7 @@
<div class=impl>
- <h5 id=parsing-cache-manifests><span class=secno>5.9.3.3 </span>Parsing cache manifests</h5>
+ <h5 id=parsing-cache-manifests><span class=secno>6.9.3.3 </span>Parsing cache manifests</h5>
<p>When a user agent is to <dfn id=parse-a-manifest>parse a manifest</dfn>, it means
that the user agent must run the following steps:</p>
@@ -44685,7 +45430,7 @@
will be ignored.</p>
- <h4 id=updating-an-application-cache><span class=secno>5.9.4 </span>Updating an application cache</h4>
+ <h4 id=updating-an-application-cache><span class=secno>6.9.4 </span>Updating an application cache</h4>
<p>When the user agent is required (by other parts of this
specification) to start the <dfn id=application-cache-update-process>application cache update
@@ -45292,7 +46037,7 @@
- <h4 id=matching-a-fallback-namespace><span class=secno>5.9.5 </span>Matching a fallback namespace</h4>
+ <h4 id=matching-a-fallback-namespace><span class=secno>6.9.5 </span>Matching a fallback namespace</h4>
<p>A URL <dfn id=concept-appcache-matches-fallback title=concept-appcache-matches-fallback>matches a
fallback namespace</dfn> if there exists a <a href=#relevant-application-cache>relevant
@@ -45320,7 +46065,7 @@
</div>
- <h4 id=the-application-cache-selection-algorithm><span class=secno>5.9.6 </span>The application cache selection algorithm</h4>
+ <h4 id=the-application-cache-selection-algorithm><span class=secno>6.9.6 </span>The application cache selection algorithm</h4>
<p>When the <dfn id=concept-appcache-init title=concept-appcache-init>application cache
selection algorithm</dfn> algorithm is invoked with a
@@ -45404,7 +46149,7 @@
</dd>
- </dl><h4 id=changesToNetworkingModel><span class=secno>5.9.7 </span>Changes to the networking model</h4>
+ </dl><h4 id=changesToNetworkingModel><span class=secno>6.9.7 </span>Changes to the networking model</h4>
<p>When a <a href=#cache-host>cache host</a> is associated with an
<a href=#application-cache>application cache</a> whose <a href=#concept-appcache-completeness title=concept-appcache-completeness>completeness flag</a> is
@@ -45463,7 +46208,7 @@
- <h4 id=application-cache-api><span class=secno>5.9.8 </span>Application cache API</h4>
+ <h4 id=application-cache-api><span class=secno>6.9.8 </span>Application cache API</h4>
<pre class=idl>interface <dfn id=applicationcache>ApplicationCache</dfn> {
@@ -45668,7 +46413,7 @@
</table></div>
- <h4 id=browser-state><span class=secno>5.9.9 </span>Browser state</h4>
+ <h4 id=browser-state><span class=secno>6.9.9 </span>Browser state</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-onLine><a href=#dom-navigator-online>onLine</a></code></dt>
@@ -45706,9 +46451,9 @@
- <h3 id=history><span class=secno>5.10 </span>Session history and navigation</h3>
+ <h3 id=history><span class=secno>6.10 </span>Session history and navigation</h3>
- <h4 id=the-session-history-of-browsing-contexts><span class=secno>5.10.1 </span>The session history of browsing contexts</h4>
+ <h4 id=the-session-history-of-browsing-contexts><span class=secno>6.10.1 </span>The session history of browsing contexts</h4>
<p>The sequence of <code>Document</code>s in a <a href=#browsing-context>browsing
context</a> is its <dfn id=session-history>session history</dfn>.</p>
@@ -45803,7 +46548,7 @@
<code>Document</code> is evicted.</p>
- <h4 id=the-history-interface><span class=secno>5.10.2 </span>The <code><a href=#history-1>History</a></code> interface</h4>
+ <h4 id=the-history-interface><span class=secno>6.10.2 </span>The <code><a href=#history-1>History</a></code> interface</h4>
<pre class=idl>interface <dfn id=history-1>History</dfn> {
readonly attribute long <a href=#dom-history-length title=dom-history-length>length</a>;
@@ -45992,7 +46737,7 @@
</div>
- <h4 id=activating-state-object-entries><span class=secno>5.10.3 </span><dfn title="activate the state object">Activating state object entries</dfn></h4>
+ <h4 id=activating-state-object-entries><span class=secno>6.10.3 </span><dfn title="activate the state object">Activating state object entries</dfn></h4>
<div class=impl>
@@ -46067,7 +46812,7 @@
- <h4 id=the-location-interface><span class=secno>5.10.4 </span>The <code><a href=#location>Location</a></code> interface</h4>
+ <h4 id=the-location-interface><span class=secno>6.10.4 </span>The <code><a href=#location>Location</a></code> interface</h4>
<p>Each <code>Document</code> object in a <a href=#browsing-context>browsing
context</a>'s session history is associated with a unique
@@ -46249,7 +46994,7 @@
<div class=impl>
- <h5 id=security-3><span class=secno>5.10.4.1 </span>Security</h5>
+ <h5 id=security-3><span class=secno>6.10.4.1 </span>Security</h5>
<p>User agents must raise a <code><a href=#security_err>SECURITY_ERR</a></code> exception whenever
any of the members of a <code><a href=#location>Location</a></code> object are accessed by
@@ -46269,7 +47014,7 @@
<div class=impl>
- <h4 id=history-notes><span class=secno>5.10.5 </span>Implementation notes for session history</h4>
+ <h4 id=history-notes><span class=secno>6.10.5 </span>Implementation notes for session history</h4>
<!-- don't change the ID without updating multiple internal links -->
<p><em>This section is non-normative.</em></p>
@@ -46308,11 +47053,11 @@
</div>
- <h3 id=browsing-the-web><span class=secno>5.11 </span>Browsing the Web</h3>
+ <h3 id=browsing-the-web><span class=secno>6.11 </span>Browsing the Web</h3>
<div class=impl>
- <h4 id=navigating-across-documents><span class=secno>5.11.1 </span>Navigating across documents</h4>
+ <h4 id=navigating-across-documents><span class=secno>6.11.1 </span>Navigating across documents</h4>
<p>Certain actions cause the <a href=#browsing-context>browsing context</a> to
<i><a href=#navigate>navigate</a></i> to a new resource. Navigation always involves
@@ -46668,7 +47413,7 @@
source</a>.</p>
- <h4 id=read-html><span class=secno>5.11.2 </span><dfn title=navigate-html>Page load processing model for HTML files</dfn></h4>
+ <h4 id=read-html><span class=secno>6.11.2 </span><dfn title=navigate-html>Page load processing model for HTML files</dfn></h4>
<p>When an HTML document is to be loaded in a <a href=#browsing-context>browsing
context</a>, the user agent must create a <code>Document</code>
@@ -46700,7 +47445,7 @@
- <h4 id=read-xml><span class=secno>5.11.3 </span><dfn title=navigate-xml>Page load processing model for XML files</dfn></h4>
+ <h4 id=read-xml><span class=secno>6.11.3 </span><dfn title=navigate-xml>Page load processing model for XML files</dfn></h4>
<p>When faced with displaying an XML file inline, user agents must
first create a <code>Document</code> object, following the
@@ -46757,7 +47502,7 @@
<code>Document</code>.</p>
- <h4 id=read-text><span class=secno>5.11.4 </span><dfn title=navigate-text>Page load processing model for text files</dfn></h4>
+ <h4 id=read-text><span class=secno>6.11.4 </span><dfn title=navigate-text>Page load processing model for text files</dfn></h4>
<p>When a plain text document is to be loaded in a <a href=#browsing-context>browsing
context</a>, the user agent should create a <code>Document</code>
@@ -46799,7 +47544,7 @@
etc.</p>
- <h4 id=read-image><span class=secno>5.11.5 </span><dfn title=navigate-image>Page load processing model for images</dfn></h4>
+ <h4 id=read-image><span class=secno>6.11.5 </span><dfn title=navigate-image>Page load processing model for images</dfn></h4>
<p>When an image resource is to be loaded in a <a href=#browsing-context>browsing
context</a>, the user agent should create a <code>Document</code>
@@ -46832,7 +47577,7 @@
script, to give the document a <code><a href=#the-title-element>title</a></code>, etc.</p>
- <h4 id=read-plugin><span class=secno>5.11.6 </span><dfn title=navigate-plugin>Page load processing model for content that uses plugins</dfn></h4>
+ <h4 id=read-plugin><span class=secno>6.11.6 </span><dfn title=navigate-plugin>Page load processing model for content that uses plugins</dfn></h4>
<p>When a resource that requires an external resource to be rendered
is to be loaded in a <a href=#browsing-context>browsing context</a>, the user agent
@@ -46869,7 +47614,7 @@
context</a>, the synthesized <code><a href=#the-embed-element>embed</a></code> element will <a href=#sandboxPluginEmbed>fail to render the content</a>.</p>
- <h4 id=read-ua-inline><span class=secno>5.11.7 </span><dfn title=navigate-ua-inline>Page load processing model for inline content that doesn't have a DOM</dfn></h4>
+ <h4 id=read-ua-inline><span class=secno>6.11.7 </span><dfn title=navigate-ua-inline>Page load processing model for inline content that doesn't have a DOM</dfn></h4>
<p>When the user agent is to display a user agent page inline in a
<a href=#browsing-context>browsing context</a>, the user agent should create a
@@ -46897,7 +47642,7 @@
- <h4 id=scroll-to-fragid><span class=secno>5.11.8 </span><dfn title=navigate-fragid>Navigating to a fragment identifier</dfn></h4>
+ <h4 id=scroll-to-fragid><span class=secno>6.11.8 </span><dfn title=navigate-fragid>Navigating to a fragment identifier</dfn></h4>
<p>When a user agent is supposed to navigate to a fragment
identifier, then the user agent must <a href=#queue-a-task>queue a task</a> to
@@ -46972,7 +47717,7 @@
<i><a href=#target-element>target element</a></i>. <a href=#refsSELECTORS>[SELECTORS]</a></p>
- <h4 id=history-traversal><span class=secno>5.11.9 </span>History traversal</h4>
+ <h4 id=history-traversal><span class=secno>6.11.9 </span>History traversal</h4>
<p>When a user agent is required to <dfn id=traverse-the-history>traverse the history</dfn>
to a <i>specified entry</i>, the user agent must act as
@@ -47069,7 +47814,7 @@
</ol></div>
- <h4 id=unloading-documents><span class=secno>5.11.10 </span>Unloading documents</h4>
+ <h4 id=unloading-documents><span class=secno>6.11.10 </span>Unloading documents</h4>
<div class=impl>
@@ -47126,7 +47871,7 @@
<li><p>If <var title="">salvageable</var> and <var title="">recycle</var> are both false, <a href=#discard-a-document title="discard a
document">discard the <code>Document</code></a>.</li>
- </ol><h5 id=event-definition><span class=secno>5.11.10.1 </span>Event definition</h5>
+ </ol><h5 id=event-definition><span class=secno>6.11.10.1 </span>Event definition</h5>
</div>
@@ -47161,10 +47906,10 @@
- <h3 id=links><span class=secno>5.12 </span>Links</h3>
+ <h3 id=links><span class=secno>6.12 </span>Links</h3>
- <h4 id=hyperlink-elements><span class=secno>5.12.1 </span>Hyperlink elements</h4>
+ <h4 id=hyperlink-elements><span class=secno>6.12.1 </span>Hyperlink elements</h4>
<p>The <code><a href=#the-a-element>a</a></code>, <code><a href=#the-area-element>area</a></code>, and <code><a href=#the-link-element>link</a></code>
elements can, in certain situations described in the definitions of
@@ -47241,7 +47986,7 @@
<div class=impl>
- <h4 id=following-hyperlinks><span class=secno>5.12.2 </span><dfn>Following hyperlinks</dfn></h4>
+ <h4 id=following-hyperlinks><span class=secno>6.12.2 </span><dfn>Following hyperlinks</dfn></h4>
<p>When a user <em>follows a hyperlink</em>, the user agent must
<a href=#resolve-a-url title="resolve a url">resolve</a> the <a href=#url>URL</a>
@@ -47299,7 +48044,7 @@
<a href=#source-browsing-context>source browsing context</a>.</p>
- <h5 id=hyperlink-auditing><span class=secno>5.12.2.1 </span><dfn>Hyperlink auditing</dfn></h5>
+ <h5 id=hyperlink-auditing><span class=secno>6.12.2.1 </span><dfn>Hyperlink auditing</dfn></h5>
<p>If an <code><a href=#the-a-element>a</a></code> or <code><a href=#the-area-element>area</a></code> hyperlink element has a
<code title=attr-hyperlink-ping><a href=#ping>ping</a></code> attribute, and the
@@ -47429,7 +48174,7 @@
- <h4 id=linkTypes><span class=secno>5.12.3 </span>Link types</h4>
+ <h4 id=linkTypes><span class=secno>6.12.3 </span>Link types</h4>
<p>The following table summarizes the link types that are defined by
this specification. This table is non-normative; the actual
@@ -47607,7 +48352,7 @@
-->
- <h5 id=link-type-alternate><span class=secno>5.12.3.1 </span>Link type "<dfn title=rel-alternate><code>alternate</code></dfn>"</h5>
+ <h5 id=link-type-alternate><span class=secno>6.12.3.1 </span>Link type "<dfn title=rel-alternate><code>alternate</code></dfn>"</h5>
<p>The <code title=rel-alternate><a href=#link-type-alternate>alternate</a></code> keyword may be
used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47672,7 +48417,7 @@
alternative representations of each other.</p>
- <h5 id=link-type-archives><span class=secno>5.12.3.2 </span>Link type "<dfn title=rel-archives><code>archives</code></dfn>"</h5>
+ <h5 id=link-type-archives><span class=secno>6.12.3.2 </span>Link type "<dfn title=rel-archives><code>archives</code></dfn>"</h5>
<p>The <code title=rel-archives><a href=#link-type-archives>archives</a></code> keyword may be
used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47694,7 +48439,7 @@
</div>
- <h5 id=link-type-author><span class=secno>5.12.3.3 </span>Link type "<dfn title=rel-author><code>author</code></dfn>"</h5>
+ <h5 id=link-type-author><span class=secno>6.12.3.3 </span>Link type "<dfn title=rel-author><code>author</code></dfn>"</h5>
<p>The <code title=rel-author><a href=#link-type-author>author</a></code> keyword may be
used with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47723,7 +48468,7 @@
</div>
- <h5 id=link-type-bookmark><span class=secno>5.12.3.4 </span>Link type "<dfn title=rel-bookmark><code>bookmark</code></dfn>"</h5>
+ <h5 id=link-type-bookmark><span class=secno>6.12.3.4 </span>Link type "<dfn title=rel-bookmark><code>bookmark</code></dfn>"</h5>
<p>The <code title=rel-bookmark><a href=#link-type-bookmark>bookmark</a></code> keyword may be
used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -47789,7 +48534,7 @@
-->
- <h5 id=link-type-external><span class=secno>5.12.3.5 </span>Link type "<dfn title=rel-external><code>external</code></dfn>"</h5>
+ <h5 id=link-type-external><span class=secno>6.12.3.5 </span>Link type "<dfn title=rel-external><code>external</code></dfn>"</h5>
<p>The <code title=rel-external><a href=#link-type-external>external</a></code> keyword may be
used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -47799,7 +48544,7 @@
that the current document forms a part of.</p>
- <h5 id=link-type-feed><span class=secno>5.12.3.6 </span>Link type "<dfn title=rel-feed><code>feed</code></dfn>"</h5>
+ <h5 id=link-type-feed><span class=secno>6.12.3.6 </span>Link type "<dfn title=rel-feed><code>feed</code></dfn>"</h5>
<p>The <code title=rel-feed><a href=#link-type-feed>feed</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47841,7 +48586,7 @@
</div>
- <h5 id=link-type-help><span class=secno>5.12.3.7 </span>Link type "<dfn title=rel-help><code>help</code></dfn>"</h5>
+ <h5 id=link-type-help><span class=secno>6.12.3.7 </span>Link type "<dfn title=rel-help><code>help</code></dfn>"</h5>
<p>The <code title=rel-help><a href=#link-type-help>help</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -47866,7 +48611,7 @@
document provides help for the page as a whole.</p>
- <h5 id=rel-icon><span class=secno>5.12.3.8 </span>Link type "<dfn title=rel-icon><code>icon</code></dfn>"</h5>
+ <h5 id=rel-icon><span class=secno>6.12.3.8 </span>Link type "<dfn title=rel-icon><code>icon</code></dfn>"</h5>
<p>The <code title=rel-icon><a href=#rel-icon>icon</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
@@ -47992,7 +48737,7 @@
</div>
- <h5 id=link-type-license><span class=secno>5.12.3.9 </span>Link type "<dfn title=rel-license><code>license</code></dfn>"</h5>
+ <h5 id=link-type-license><span class=secno>6.12.3.9 </span>Link type "<dfn title=rel-license><code>license</code></dfn>"</h5>
<p>The <code title=rel-license><a href=#link-type-license>license</a></code> keyword may be used
with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48055,7 +48800,7 @@
</div>
- <h5 id=link-type-nofollow><span class=secno>5.12.3.10 </span>Link type "<dfn title=rel-nofollow><code>nofollow</code></dfn>"</h5>
+ <h5 id=link-type-nofollow><span class=secno>6.12.3.10 </span>Link type "<dfn title=rel-nofollow><code>nofollow</code></dfn>"</h5>
<p>The <code title=rel-nofollow><a href=#link-type-nofollow>nofollow</a></code> keyword may be
used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -48067,7 +48812,7 @@
affiliated with the two pages.</p>
- <h5 id=link-type-noreferrer><span class=secno>5.12.3.11 </span>Link type "<dfn title=rel-noreferrer><code>noreferrer</code></dfn>"</h5>
+ <h5 id=link-type-noreferrer><span class=secno>6.12.3.11 </span>Link type "<dfn title=rel-noreferrer><code>noreferrer</code></dfn>"</h5>
<p>The <code title=rel-noreferrer><a href=#link-type-noreferrer>noreferrer</a></code> keyword may be
used with <code><a href=#the-a-element>a</a></code> and <code><a href=#the-area-element>area</a></code> elements.</p>
@@ -48089,7 +48834,7 @@
</div>
- <h5 id=link-type-pingback><span class=secno>5.12.3.12 </span>Link type "<dfn title=rel-pingback><code>pingback</code></dfn>"</h5>
+ <h5 id=link-type-pingback><span class=secno>6.12.3.12 </span>Link type "<dfn title=rel-pingback><code>pingback</code></dfn>"</h5>
<p>The <code title=rel-pingback><a href=#link-type-pingback>pingback</a></code> keyword may be
used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
@@ -48098,7 +48843,7 @@
specification. <a href=#refsPINGBACK>[PINGBACK]</a></p>
- <h5 id=link-type-prefetch><span class=secno>5.12.3.13 </span>Link type "<dfn title=rel-prefetch><code>prefetch</code></dfn>"</h5>
+ <h5 id=link-type-prefetch><span class=secno>6.12.3.13 </span>Link type "<dfn title=rel-prefetch><code>prefetch</code></dfn>"</h5>
<p>The <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword may be
used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a>.</p>
@@ -48111,7 +48856,7 @@
<p>There is no default type for resources given by the <code title=rel-prefetch><a href=#link-type-prefetch>prefetch</a></code> keyword.</p>
- <h5 id=link-type-search><span class=secno>5.12.3.14 </span>Link type "<dfn title=rel-search><code>search</code></dfn>"</h5>
+ <h5 id=link-type-search><span class=secno>6.12.3.14 </span>Link type "<dfn title=rel-search><code>search</code></dfn>"</h5>
<p>The <code title=rel-search><a href=#link-type-search>search</a></code> keyword may be used
with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48128,7 +48873,7 @@
-->
- <h5 id=link-type-stylesheet><span class=secno>5.12.3.15 </span>Link type "<dfn title=rel-stylesheet><code>stylesheet</code></dfn>"</h5>
+ <h5 id=link-type-stylesheet><span class=secno>6.12.3.15 </span>Link type "<dfn title=rel-stylesheet><code>stylesheet</code></dfn>"</h5>
<p>The <code title=rel-stylesheet><a href=#link-type-stylesheet>stylesheet</a></code> keyword may be
used with <code><a href=#the-link-element>link</a></code> elements, for which it creates an <a href=#external-resource-link title="external resource link">external resource link</a> that
@@ -48155,7 +48900,7 @@
</div>
- <h5 id=link-type-sidebar><span class=secno>5.12.3.16 </span>Link type "<dfn title=rel-sidebar><code>sidebar</code></dfn>"</h5>
+ <h5 id=link-type-sidebar><span class=secno>6.12.3.16 </span>Link type "<dfn title=rel-sidebar><code>sidebar</code></dfn>"</h5>
<p>The <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword may be used
with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48169,7 +48914,7 @@
<p>A <a href=#hyperlink title=hyperlink>hyperlink element</a> with the <code title=rel-sidebar><a href=#link-type-sidebar>sidebar</a></code> keyword specified is a <dfn id=rel-sidebar-hyperlink title=rel-sidebar-hyperlink>sidebar hyperlink</dfn>.</p>
- <h5 id=link-type-tag><span class=secno>5.12.3.17 </span>Link type "<dfn title=rel-tag><code>tag</code></dfn>"</h5>
+ <h5 id=link-type-tag><span class=secno>6.12.3.17 </span>Link type "<dfn title=rel-tag><code>tag</code></dfn>"</h5>
<p>The <code title=rel-tag><a href=#link-type-tag>tag</a></code> keyword may be used
with <code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48185,7 +48930,7 @@
the popular tag across a set of pages.</p>
- <h5 id=hierarchical-link-types><span class=secno>5.12.3.18 </span>Hierarchical link types</h5>
+ <h5 id=hierarchical-link-types><span class=secno>6.12.3.18 </span>Hierarchical link types</h5>
<p>Some documents form part of a hierarchical structure of
documents.</p>
@@ -48198,7 +48943,7 @@
<p>A document may be part of multiple hierarchies.</p>
- <h6 id=link-type-index><span class=secno>5.12.3.18.1 </span>Link type "<dfn title=rel-index><code>index</code></dfn>"</h6>
+ <h6 id=link-type-index><span class=secno>6.12.3.18.1 </span>Link type "<dfn title=rel-index><code>index</code></dfn>"</h6>
<p>The <code title=rel-index><a href=#link-type-index>index</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48218,7 +48963,7 @@
</div>
- <h6 id=link-type-up><span class=secno>5.12.3.18.2 </span>Link type "<dfn title=rel-up><code>up</code></dfn>"</h6>
+ <h6 id=link-type-up><span class=secno>6.12.3.18.2 </span>Link type "<dfn title=rel-up><code>up</code></dfn>"</h6>
<p>The <code title=rel-up><a href=#link-type-up>up</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48285,7 +49030,7 @@
interface hides duplicates).</p>
- <h5 id=sequential-link-types><span class=secno>5.12.3.19 </span>Sequential link types</h5>
+ <h5 id=sequential-link-types><span class=secno>6.12.3.19 </span>Sequential link types</h5>
<p>Some documents form part of a sequence of documents.</p>
@@ -48297,7 +49042,7 @@
<p>A document may be part of multiple sequences.</p>
- <h6 id=link-type-first><span class=secno>5.12.3.19.1 </span>Link type "<dfn title=rel-first><code>first</code></dfn>"</h6>
+ <h6 id=link-type-first><span class=secno>6.12.3.19.1 </span>Link type "<dfn title=rel-first><code>first</code></dfn>"</h6>
<p>The <code title=rel-first><a href=#link-type-first>first</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48316,7 +49061,7 @@
</div>
- <h6 id=link-type-last><span class=secno>5.12.3.19.2 </span>Link type "<dfn title=rel-last><code>last</code></dfn>"</h6>
+ <h6 id=link-type-last><span class=secno>6.12.3.19.2 </span>Link type "<dfn title=rel-last><code>last</code></dfn>"</h6>
<p>The <code title=rel-last><a href=#link-type-last>last</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48335,7 +49080,7 @@
</div>
- <h6 id=link-type-next><span class=secno>5.12.3.19.3 </span>Link type "<dfn title=rel-next><code>next</code></dfn>"</h6>
+ <h6 id=link-type-next><span class=secno>6.12.3.19.3 </span>Link type "<dfn title=rel-next><code>next</code></dfn>"</h6>
<p>The <code title=rel-next><a href=#link-type-next>next</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48346,7 +49091,7 @@
document that is the next logical document in the sequence.</p>
- <h6 id=link-type-prev><span class=secno>5.12.3.19.4 </span>Link type "<dfn title=rel-prev><code>prev</code></dfn>"</h6>
+ <h6 id=link-type-prev><span class=secno>6.12.3.19.4 </span>Link type "<dfn title=rel-prev><code>prev</code></dfn>"</h6>
<p>The <code title=rel-prev><a href=#link-type-prev>prev</a></code> keyword may be used with
<code><a href=#the-link-element>link</a></code>, <code><a href=#the-a-element>a</a></code>, and <code><a href=#the-area-element>area</a></code>
@@ -48365,7 +49110,7 @@
</div>
- <h5 id=other-link-types><span class=secno>5.12.3.20 </span>Other link types</h5>
+ <h5 id=other-link-types><span class=secno>6.12.3.20 </span>Other link types</h5>
<p>Other than the types defined above, only types defined as
extensions in the <a href=http://wiki.whatwg.org/wiki/RelExtensions>WHATWG Wiki
@@ -48503,7 +49248,7 @@
- <h2 id=editing><span class=secno>6 </span><dfn>User Interaction</dfn></h2>
+ <h2 id=editing><span class=secno>7 </span><dfn>User Interaction</dfn></h2>
<p>This section describes various features that allow authors to
enable users to edit documents and parts of documents
@@ -48511,7 +49256,7 @@
- <h3 id=editing-intro><span class=secno>6.1 </span>Introduction</h3>
+ <h3 id=editing-intro><span class=secno>7.1 </span>Introduction</h3>
<p><em>This section is non-normative.</em></p>
@@ -48520,7 +49265,7 @@
- <h3 id=the-hidden-attribute><span class=secno>6.2 </span>The <dfn title=attr-hidden><code>hidden</code></dfn> attribute</h3>
+ <h3 id=the-hidden-attribute><span class=secno>7.2 </span>The <dfn title=attr-hidden><code>hidden</code></dfn> attribute</h3>
<p>All elements may have the <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>
content attribute set. The <code title=attr-hidden><a href=#the-hidden-attribute>hidden</a></code>
@@ -48582,7 +49327,7 @@
- <h3 id=activation><span class=secno>6.3 </span>Activation</h3>
+ <h3 id=activation><span class=secno>7.3 </span>Activation</h3>
<!-- v2 idea: HTMLImageElement.click(x, y); or clickPoint(), if
click() can't be done in IE; can this be emulated in IE by
@@ -48623,7 +49368,7 @@
</ol></div>
- <h3 id=scrolling-elements-into-view><span class=secno>6.4 </span>Scrolling elements into view</h3>
+ <h3 id=scrolling-elements-into-view><span class=secno>7.4 </span>Scrolling elements into view</h3>
<dl class=domintro><dt><var title="">element</var> . <code title=dom-scrollIntoView><a href=#dom-scrollintoview>scrollIntoView</a></code>( [ <var title="">top</var> ] )</dt>
@@ -48667,7 +49412,7 @@
</div>
- <h3 id=focus><span class=secno>6.5 </span>Focus</h3>
+ <h3 id=focus><span class=secno>7.5 </span>Focus</h3>
<!-- http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%20%0A...%3Cform%3E%3Cinput%20name%3Da%20onfocus%3D%22value%2B%3D1%3Bd.name%3D%27a%27%3Bname%3D%27d%27%3Bb.focus()%22%3E%0A%3Cinput%20name%3Db%20onfocus%3D%22value%2B%3D1%3Bc.focus()%22%3E%0A%3Cinput%20name%3Dc%20onfocus%3D%22value%2B%3D1%3Bd.focus()%22%3E%0A%3Cinput%20name%3Dd%20onfocus%3D%22value%2B%3D1%3Ba.focus()%22%3E -->
@@ -48711,7 +49456,7 @@
</div>
- <h4 id=sequential-focus-navigation><span class=secno>6.5.1 </span>Sequential focus navigation</h4>
+ <h4 id=sequential-focus-navigation><span class=secno>7.5.1 </span>Sequential focus navigation</h4>
<p>The <dfn id=attr-tabindex title=attr-tabindex><code>tabindex</code></dfn>
content attribute specifies whether the element is focusable,
@@ -48858,7 +49603,7 @@
<div class=impl>
- <h4 id=focus-management><span class=secno>6.5.2 </span>Focus management</h4>
+ <h4 id=focus-management><span class=secno>7.5.2 </span>Focus management</h4>
<p>The <dfn id=focusing-steps>focusing steps</dfn> are as follows:</p>
@@ -48916,7 +49661,7 @@
</div>
- <h4 id=document-level-focus-apis><span class=secno>6.5.3 </span>Document-level focus APIs</h4>
+ <h4 id=document-level-focus-apis><span class=secno>7.5.3 </span>Document-level focus APIs</h4>
<dl class=domintro><dt><var title="">document</var> . <code title=dom-document-activeElement><a href=#dom-document-activeelement>activeElement</a></code></dt>
@@ -48991,7 +49736,7 @@
</div>
- <h4 id=element-level-focus-apis><span class=secno>6.5.4 </span>Element-level focus APIs</h4>
+ <h4 id=element-level-focus-apis><span class=secno>7.5.4 </span>Element-level focus APIs</h4>
<dl class=domintro><dt><var title="">element</var> . <code title=dom-focus><a href=#dom-focus>focus</a></code>()</dt>
@@ -49040,7 +49785,7 @@
- <h3 id=the-accesskey-attribute><span class=secno>6.6 </span>The <dfn title=attr-accesskey><code>accesskey</code></dfn> attribute</h3>
+ <h3 id=the-accesskey-attribute><span class=secno>7.6 </span>The <dfn title=attr-accesskey><code>accesskey</code></dfn> attribute</h3>
<p>All elements may have the <code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> content attribute set. The
<code title=attr-accesskey><a href=#the-accesskey-attribute>accesskey</a></code> attribute's value is
@@ -49186,7 +49931,7 @@
- <h3 id=selection><span class=secno>6.7 </span>The text selection APIs</h3>
+ <h3 id=selection><span class=secno>7.7 </span>The text selection APIs</h3>
<p>Every <a href=#browsing-context>browsing context</a> has <dfn id=the-selection title="the
selection">a selection</dfn>. The selection can be empty, and the
@@ -49259,7 +50004,7 @@
- <h4 id=documentSelection><span class=secno>6.7.1 </span>APIs for the browsing context selection</h4>
+ <h4 id=documentSelection><span class=secno>7.7.1 </span>APIs for the browsing context selection</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-getSelection><a href=#dom-getselection>getSelection</a></code>()</dt>
<dt><var title="">document</var> . <code title=dom-document-getSelection><a href=#dom-document-getselection>getSelection</a></code>()</dt>
@@ -49579,7 +50324,7 @@
-->
- <h4 id=textFieldSelection><span class=secno>6.7.2 </span>APIs for the text field selections</h4>
+ <h4 id=textFieldSelection><span class=secno>7.7.2 </span>APIs for the text field selections</h4>
<!-- v2 idea: DOM Range APIs to expose the textarea/input edited
value (ack martijnw) -->
@@ -49703,7 +50448,7 @@
- <h3 id=contenteditable><span class=secno>6.8 </span>The <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute</h3>
+ <h3 id=contenteditable><span class=secno>7.8 </span>The <code title=attr-contenteditable><a href=#attr-contenteditable>contenteditable</a></code> attribute</h3>
<p>The <dfn id=attr-contenteditable title=attr-contenteditable><code>contenteditable</code></dfn>
attribute is an <a href=#enumerated-attribute>enumerated attribute</a> whose keywords are
@@ -49812,7 +50557,7 @@
<div class=impl>
- <h4 id=user-editing-actions><span class=secno>6.8.1 </span>User editing actions</h4>
+ <h4 id=user-editing-actions><span class=secno>7.8.1 </span>User editing actions</h4>
<p>There are several actions that the user agent should allow the
user to perform while the user is interacting with an editing
@@ -49998,7 +50743,7 @@
- <h4 id=making-entire-documents-editable><span class=secno>6.8.2 </span>Making entire documents editable</h4>
+ <h4 id=making-entire-documents-editable><span class=secno>7.8.2 </span>Making entire documents editable</h4>
<div class=impl>
@@ -50040,7 +50785,7 @@
- <h3 id=spelling-and-grammar-checking><span class=secno>6.9 </span>Spelling and grammar checking</h3>
+ <h3 id=spelling-and-grammar-checking><span class=secno>7.9 </span>Spelling and grammar checking</h3>
<div class=impl>
@@ -50226,7 +50971,7 @@
- <h3 id=dnd><span class=secno>6.10 </span><dfn>Drag and drop</dfn></h3>
+ <h3 id=dnd><span class=secno>7.10 </span><dfn>Drag and drop</dfn></h3>
<!--XXX
@@ -50288,14 +51033,14 @@
</div>
- <h4 id=introduction-4><span class=secno>6.10.1 </span>Introduction</h4>
+ <h4 id=introduction-5><span class=secno>7.10.1 </span>Introduction</h4>
<p><em>This section is non-normative.</em></p>
<p class=XXX>It's also currently non-existent.</p>
- <h4 id=the-dragevent-and-datatransfer-interfaces><span class=secno>6.10.2 </span>The <code><a href=#dragevent>DragEvent</a></code> and <code><a href=#datatransfer>DataTransfer</a></code> interfaces</h4>
+ <h4 id=the-dragevent-and-datatransfer-interfaces><span class=secno>7.10.2 </span>The <code><a href=#dragevent>DragEvent</a></code> and <code><a href=#datatransfer>DataTransfer</a></code> interfaces</h4>
<p>The drag-and-drop processing model involves several events. They
all use the <code><a href=#dragevent>DragEvent</a></code> interface.</p>
@@ -50513,7 +51258,7 @@
</div>
- <h4 id=events-fired-during-a-drag-and-drop-action><span class=secno>6.10.3 </span>Events fired during a drag-and-drop action</h4>
+ <h4 id=events-fired-during-a-drag-and-drop-action><span class=secno>7.10.3 </span>Events fired during a drag-and-drop action</h4>
<p>The following events are involved in the drag-and-drop
model. <span class=impl>Whenever the processing model described
@@ -50637,7 +51382,7 @@
<div class=impl>
- <h4 id=drag-and-drop-processing-model><span class=secno>6.10.4 </span>Drag-and-drop processing model</h4>
+ <h4 id=drag-and-drop-processing-model><span class=secno>7.10.4 </span>Drag-and-drop processing model</h4>
<p>When the user attempts to begin a drag operation, the user agent
must first determine what is being dragged. If the drag operation
@@ -51020,7 +51765,7 @@
<div class=impl>
- <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>6.10.4.1 </span>When the drag-and-drop operation starts or ends in another
+ <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-document><span class=secno>7.10.4.1 </span>When the drag-and-drop operation starts or ends in another
document</h5>
<p>The model described above is independent of which
@@ -51039,7 +51784,7 @@
<div class=impl>
- <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>6.10.4.2 </span>When the drag-and-drop operation starts or ends in another
+ <h5 id=when-the-drag-and-drop-operation-starts-or-ends-in-another-application><span class=secno>7.10.4.2 </span>When the drag-and-drop operation starts or ends in another
application</h5>
<p>If the drag is initiated in another application, the <a href=#source-node>source
@@ -51065,7 +51810,7 @@
</div>
- <h4 id=the-draggable-attribute><span class=secno>6.10.5 </span>The <dfn title=attr-draggable><code>draggable</code></dfn> attribute</h4>
+ <h4 id=the-draggable-attribute><span class=secno>7.10.5 </span>The <dfn title=attr-draggable><code>draggable</code></dfn> attribute</h4>
<p>All elements may have the <code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> content attribute set. The
<code title=attr-draggable><a href=#the-draggable-attribute>draggable</a></code> attribute is an
@@ -51125,7 +51870,7 @@
- <h4 id=copy-and-paste><span class=secno>6.10.6 </span>Copy and paste</h4>
+ <h4 id=copy-and-paste><span class=secno>7.10.6 </span>Copy and paste</h4>
<p>Copy-and-paste is a form of drag-and-drop: the "copy" part is
equivalent to dragging content to another application (the
@@ -51139,7 +51884,7 @@
<div class=impl>
- <h5 id=copy-to-clipboard><span class=secno>6.10.6.1 </span>Copy to clipboard</h5>
+ <h5 id=copy-to-clipboard><span class=secno>7.10.6.1 </span>Copy to clipboard</h5>
<p>When the user invokes a copy operation, the user agent must act
as if the user had invoked a drag on the current selection. If the
@@ -51153,14 +51898,14 @@
operations (e.g. updating the clipboard).</p>
- <h5 id=cut-to-clipboard><span class=secno>6.10.6.2 </span>Cut to clipboard</h5>
+ <h5 id=cut-to-clipboard><span class=secno>7.10.6.2 </span>Cut to clipboard</h5>
<p>When the user invokes a cut operation, the user agent must act as
if the user had invoked a copy operation (see the previous section),
followed, if the copy was completed successfully, by <a href=#contenteditable-delete>a selection delete operation</a>.</p>
- <h5 id=paste-from-clipboard><span class=secno>6.10.6.3 </span>Paste from clipboard</h5>
+ <h5 id=paste-from-clipboard><span class=secno>7.10.6.3 </span>Paste from clipboard</h5>
<p>When the user invokes a clipboard paste operation, the user agent
must act as if the user had invoked a drag on a hypothetical
@@ -51174,7 +51919,7 @@
canceling it.</p>
- <h5 id=paste-from-selection><span class=secno>6.10.6.4 </span>Paste from selection</h5>
+ <h5 id=paste-from-selection><span class=secno>7.10.6.4 </span>Paste from selection</h5>
<p>When the user invokes a selection paste operation, the user agent
must act as if the user had invoked a drag on the current selection,
@@ -51188,7 +51933,7 @@
<div class=impl>
- <h4 id=security-risks-in-the-drag-and-drop-model><span class=secno>6.10.7 </span>Security risks in the drag-and-drop model</h4>
+ <h4 id=security-risks-in-the-drag-and-drop-model><span class=secno>7.10.7 </span>Security risks in the drag-and-drop model</h4>
<p>User agents must not make the data added to the
<code><a href=#datatransfer>DataTransfer</a></code> object during the <code title=event-dragstart><a href=#event-dragstart>dragstart</a></code> event available to scripts
@@ -51214,19 +51959,19 @@
</div>
- <h3 id=undo><span class=secno>6.11 </span><dfn>Undo history</dfn></h3>
+ <h3 id=undo><span class=secno>7.11 </span><dfn>Undo history</dfn></h3>
<p class=XXX>There has got to be a better way of doing this, surely.</p>
- <h4 id=introduction-5><span class=secno>6.11.1 </span>Introduction</h4>
+ <h4 id=introduction-6><span class=secno>7.11.1 </span>Introduction</h4>
<p class=XXX>...</p>
<div class=impl>
- <h4 id=definitions-2><span class=secno>6.11.2 </span>Definitions</h4>
+ <h4 id=definitions-2><span class=secno>7.11.2 </span>Definitions</h4>
<p>The user agent must associate an <dfn id=undo-transaction-history>undo transaction
history</dfn> with each <code><a href=#htmldocument>HTMLDocument</a></code> object.</p>
@@ -51267,7 +52012,7 @@
</div>
- <h4 id=the-undomanager-interface><span class=secno>6.11.3 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
+ <h4 id=the-undomanager-interface><span class=secno>7.11.3 </span>The <code><a href=#undomanager>UndoManager</a></code> interface</h4>
<div class=impl>
@@ -51473,7 +52218,7 @@
<div class=impl>
- <h4 id=undo:-moving-back-in-the-undo-transaction-history><span class=secno>6.11.4 </span><dfn title=do-undo>Undo: moving back in the undo transaction history</dfn></h4>
+ <h4 id=undo:-moving-back-in-the-undo-transaction-history><span class=secno>7.11.4 </span><dfn title=do-undo>Undo: moving back in the undo transaction history</dfn></h4>
<p>When the user invokes an undo operation, or when the <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> method is
called with the <code title=command-undo><a href=#command-undo>undo</a></code> command, the
@@ -51510,7 +52255,7 @@
command to undo his undo.</p>
- <h4 id=redo:-moving-forward-in-the-undo-transaction-history><span class=secno>6.11.5 </span><dfn title=do-redo>Redo: moving forward in the undo transaction history</dfn></h4>
+ <h4 id=redo:-moving-forward-in-the-undo-transaction-history><span class=secno>7.11.5 </span><dfn title=do-redo>Redo: moving forward in the undo transaction history</dfn></h4>
<p>When the user invokes a redo operation, or when the <code title=dom-document-execCommand><a href=#execCommand>execCommand()</a></code> method is
called with the <code title=command-redo><a href=#command-redo>redo</a></code> command, the
@@ -51547,7 +52292,7 @@
</div>
- <h4 id=the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>6.11.6 </span>The <code><a href=#undomanagerevent>UndoManagerEvent</a></code> interface and the <code title=event-undo><a href=#event-undo>undo</a></code> and <code title=event-redo><a href=#event-redo>redo</a></code> events</h4>
+ <h4 id=the-undomanagerevent-interface-and-the-undo-and-redo-events><span class=secno>7.11.6 </span>The <code><a href=#undomanagerevent>UndoManagerEvent</a></code> interface and the <code title=event-undo><a href=#event-undo>undo</a></code> and <code title=event-redo><a href=#event-redo>redo</a></code> events</h4>
<pre class=idl>interface <dfn id=undomanagerevent>UndoManagerEvent</dfn> : Event {
readonly attribute any <a href=#dom-undomanagerevent-data title=dom-UndoManagerEvent-data>data</a>;
@@ -51584,7 +52329,7 @@
<div class=impl>
- <h4 id=implementation-notes><span class=secno>6.11.7 </span>Implementation notes</h4>
+ <h4 id=implementation-notes><span class=secno>7.11.7 </span>Implementation notes</h4>
<p>How user agents present the above conceptual model to the user is
not defined. The undo interface could be a filtered view of the
@@ -51607,7 +52352,7 @@
- <h3 id=editing-apis><span class=secno>6.12 </span>Editing APIs</h3>
+ <h3 id=editing-apis><span class=secno>7.12 </span>Editing APIs</h3>
<dl class=domintro><dt><var title="">document</var> . <code title=dom-document-execCommand><a href=#execCommand>execCommand</a></code>(<var title="">commandId</var> [, <var title="">showUI</var> [, <var title="">value</var> ] ] )</dt>
@@ -52061,10 +52806,10 @@
XXX Once we resolve the style="" issue, address these:
"forecolor", "hilitecolor", "fontname", "fontsize", "justifyleft",
"justifycenter", "justifyright", "justifyfull", "indent", "outdent"
---><h2 id=comms><span class=secno>7 </span>Communication</h2>
+--><h2 id=comms><span class=secno>8 </span>Communication</h2>
- <h3 id=event-definitions><span class=secno>7.1 </span>Event definitions</h3>
+ <h3 id=event-definitions><span class=secno>8.1 </span>Event definitions</h3>
<!-- XXX cross-references for SSE and WS need fixing now that this is cross-spec -->
<p>Messages in <span>server-sent events</span>, <span>Web
@@ -52176,7 +52921,7 @@
- <h3 id=crossDocumentMessages><span class=secno>7.2 </span><dfn>Cross-document messaging</dfn></h3>
+ <h3 id=crossDocumentMessages><span class=secno>8.2 </span><dfn>Cross-document messaging</dfn></h3>
<p>Web browsers, for security and privacy reasons, prevent documents
in different domains from affecting each other; that is, cross-site
@@ -52197,7 +52942,7 @@
</div>
- <h4 id=introduction-6><span class=secno>7.2.1 </span>Introduction</h4>
+ <h4 id=introduction-7><span class=secno>8.2.1 </span>Introduction</h4>
<p><em>This section is non-normative.</em></p>
@@ -52238,11 +52983,11 @@
</div>
- <h4 id=security-4><span class=secno>7.2.2 </span>Security</h4>
+ <h4 id=security-4><span class=secno>8.2.2 </span>Security</h4>
<div class=impl>
- <h5 id=authors><span class=secno>7.2.2.1 </span>Authors</h5>
+ <h5 id=authors><span class=secno>8.2.2.1 </span>Authors</h5>
</div>
@@ -52270,7 +53015,7 @@
<div class=impl>
- <h5 id=user-agents><span class=secno>7.2.2.2 </span>User agents</h5>
+ <h5 id=user-agents><span class=secno>8.2.2.2 </span>User agents</h5>
<p>The integrity of this API is based on the inability for scripts
of one <a href=#origin-0>origin</a> to post arbitrary events (using <code title="">dispatchEvent()</code> or otherwise) to objects in other
@@ -52286,7 +53031,7 @@
</div>
- <h4 id=posting-messages><span class=secno>7.2.3 </span>Posting messages</h4>
+ <h4 id=posting-messages><span class=secno>8.2.3 </span>Posting messages</h4>
<dl class=domintro><dt><var title="">window</var> . <code title=dom-window-postMessage-2><a href=#dom-window-postmessage-2>postMessage</a></code>(<var title="">message</var>, [ <var title="">ports</var>, ] <var title="">targetOrigin</var>)</dt>
@@ -52380,7 +53125,7 @@
<div class=impl>
- <h4 id=posting-messages-with-message-ports><span class=secno>7.2.4 </span>Posting messages with message ports</h4>
+ <h4 id=posting-messages-with-message-ports><span class=secno>8.2.4 </span>Posting messages with message ports</h4>
<p>When a script invokes the <dfn id=dom-window-postmessage-3 title=dom-window-postMessage-3><code>postMessage(<var title="">message</var>, <var title="">ports</var>, <var title="">targetOrigin</var>)</code></dfn> method (with three
arguments) on a <code><a href=#window>Window</a></code> object, the user agent must
@@ -52503,9 +53248,9 @@
- <h3 id=channel-messaging><span class=secno>7.3 </span><dfn>Channel messaging</dfn></h3>
+ <h3 id=channel-messaging><span class=secno>8.3 </span><dfn>Channel messaging</dfn></h3>
- <h4 id=introduction-7><span class=secno>7.3.1 </span>Introduction</h4>
+ <h4 id=introduction-8><span class=secno>8.3.1 </span>Introduction</h4>
<p><em>This section is non-normative.</em></p>
@@ -52514,7 +53259,7 @@
- <h4 id=message-channels><span class=secno>7.3.2 </span>Message channels</h4>
+ <h4 id=message-channels><span class=secno>8.3.2 </span>Message channels</h4>
<pre class=idl>[<a href=#dom-messagechannel title=dom-MessageChannel>Constructor</a>]
interface <dfn id=messagechannel>MessageChannel</dfn> {
@@ -52579,7 +53324,7 @@
- <h4 id=message-ports><span class=secno>7.3.3 </span>Message ports</h4>
+ <h4 id=message-ports><span class=secno>8.3.3 </span>Message ports</h4>
<p>Each channel has two message ports. Data sent through one port is
received by the other port, and vice versa.</p>
@@ -52869,7 +53614,7 @@
<div class=impl>
- <h5 id=ports-and-garbage-collection><span class=secno>7.3.3.1 </span>Ports and garbage collection</h5>
+ <h5 id=ports-and-garbage-collection><span class=secno>8.3.3.1 </span>Ports and garbage collection</h5>
<p>User agents must act as if <code><a href=#messageport>MessagePort</a></code> objects have
a strong reference to their entangled <code><a href=#messageport>MessagePort</a></code>
@@ -52905,13 +53650,13 @@
- <h2 id=syntax><span class=secno>8 </span><dfn>The HTML syntax</dfn></h2>
+ <h2 id=syntax><span class=secno>9 </span><dfn>The HTML syntax</dfn></h2>
<p class=note>This section only describes the rules for <code title="">text/html</code> resources. Rules for XML resources are
discussed in the section below entitled "<a href=#the-xhtml-syntax>The XHTML
syntax</a>".</p>
- <h3 id=writing-html-documents><span class=secno>8.1 </span>Writing HTML documents</h3>
+ <h3 id=writing-html-documents><span class=secno>9.1 </span>Writing HTML documents</h3>
<div class=impl>
@@ -52973,7 +53718,7 @@
as "case-insensitive".</p>
- <h4 id=the-doctype><span class=secno>8.1.1 </span>The DOCTYPE</h4>
+ <h4 id=the-doctype><span class=secno>9.1.1 </span>The DOCTYPE</h4>
<p>A <dfn id=syntax-doctype title=syntax-doctype>DOCTYPE</dfn> is a mostly useless,
but required, header.</p>
@@ -53021,7 +53766,7 @@
- <h4 id=elements-0><span class=secno>8.1.2 </span>Elements</h4>
+ <h4 id=elements-0><span class=secno>9.1.2 </span>Elements</h4>
<p>There are five different kinds of <dfn id=syntax-elements title=syntax-elements>elements</dfn>: void elements, CDATA
elements, RCDATA elements, foreign elements, and normal
@@ -53121,7 +53866,7 @@
names are case-insensitive.</p>
- <h5 id=start-tags><span class=secno>8.1.2.1 </span>Start tags</h5>
+ <h5 id=start-tags><span class=secno>9.1.2.1 </span>Start tags</h5>
<p><dfn id=syntax-start-tag title=syntax-start-tag>Start tags</dfn> must have the
following format:</p>
@@ -53152,7 +53897,7 @@
<li>Finally, start tags must be closed by a U+003E GREATER-THAN
SIGN (<code>></code>) character.</li>
- </ol><h5 id=end-tags><span class=secno>8.1.2.2 </span>End tags</h5>
+ </ol><h5 id=end-tags><span class=secno>9.1.2.2 </span>End tags</h5>
<p><dfn id=syntax-end-tag title=syntax-end-tag>End tags</dfn> must have the
following format:</p>
@@ -53172,7 +53917,7 @@
<li>Finally, end tags must be closed by a U+003E GREATER-THAN
SIGN (<code>></code>) character.</li>
- </ol><h5 id=attributes><span class=secno>8.1.2.3 </span>Attributes</h5>
+ </ol><h5 id=attributes><span class=secno>9.1.2.3 </span>Attributes</h5>
<p><dfn id=syntax-attributes title=syntax-attributes>Attributes</dfn> for an element
are expressed inside the element's start tag.</p>
@@ -53313,7 +54058,7 @@
each other.</p>
- <h5 id=optional-tags><span class=secno>8.1.2.4 </span>Optional tags</h5>
+ <h5 id=optional-tags><span class=secno>9.1.2.4 </span>Optional tags</h5>
<p>Certain tags can be <dfn id=syntax-tag-omission title=syntax-tag-omission>omitted</dfn>.</p>
@@ -53491,7 +54236,7 @@
tag</a> must never be omitted if it has any attributes.</p>
- <h5 id=element-restrictions><span class=secno>8.1.2.5 </span>Restrictions on content models</h5>
+ <h5 id=element-restrictions><span class=secno>9.1.2.5 </span>Restrictions on content models</h5>
<p>For historical reasons, certain elements have extra restrictions
beyond even the restrictions given by their content model.</p>
@@ -53519,7 +54264,7 @@
</div>
- <h5 id=cdata-rcdata-restrictions><span class=secno>8.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</h5>
+ <h5 id=cdata-rcdata-restrictions><span class=secno>9.1.2.6 </span>Restrictions on the contents of CDATA and RCDATA elements</h5>
<p>The text in CDATA and RCDATA elements must not contain any
occurrences of the string "<code title=""></</code>" (U+003C
@@ -53560,7 +54305,7 @@
span end</a>.</p>
- <h4 id=text-0><span class=secno>8.1.3 </span>Text</h4>
+ <h4 id=text-0><span class=secno>9.1.3 </span>Text</h4>
<p><dfn id=syntax-text title=syntax-text>Text</dfn> is allowed inside elements,
attributes, and comments. Text must consist of Unicode characters.
@@ -53572,7 +54317,7 @@
described in the other sections.</p>
- <h5 id=newlines><span class=secno>8.1.3.1 </span>Newlines</h5>
+ <h5 id=newlines><span class=secno>9.1.3.1 </span>Newlines</h5>
<p><dfn id=syntax-newlines title=syntax-newlines>Newlines</dfn> in HTML may be
represented either as U+000D CARRIAGE RETURN (CR) characters, U+000A
@@ -53580,7 +54325,7 @@
U+000A LINE FEED (LF) characters in that order.</p>
- <h4 id=character-references><span class=secno>8.1.4 </span>Character references</h4>
+ <h4 id=character-references><span class=secno>9.1.4 </span>Character references</h4>
<p>In certain cases described in other sections, <a href=#syntax-text title=syntax-text>text</a> may be mixed with <dfn id=syntax-charref title=syntax-charref>character references</dfn>. These can be used
to escape characters that couldn't otherwise legally be included in
@@ -53631,7 +54376,7 @@
character.</p>
- <h4 id=cdata-sections><span class=secno>8.1.5 </span>CDATA sections</h4>
+ <h4 id=cdata-sections><span class=secno>9.1.5 </span>CDATA sections</h4>
<p><dfn id=syntax-cdata title=syntax-cdata>CDATA sections</dfn> must start with
the character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION
@@ -53648,7 +54393,7 @@
SIGN (<code title="">]]></code>).</p>
- <h4 id=comments><span class=secno>8.1.6 </span>Comments</h4>
+ <h4 id=comments><span class=secno>9.1.6 </span>Comments</h4>
<p><dfn id=syntax-comments title=syntax-comments>Comments</dfn> must start with the
four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION
@@ -53666,7 +54411,7 @@
<div class=impl>
- <h3 id=parsing><span class=secno>8.2 </span>Parsing HTML documents</h3>
+ <h3 id=parsing><span class=secno>9.2 </span>Parsing HTML documents</h3>
<p><em>This section only applies to user agents, data mining tools,
and conformance checkers.</em></p>
@@ -53726,7 +54471,7 @@
specification.</p>
- <h4 id=overview-of-the-parsing-model><span class=secno>8.2.1 </span>Overview of the parsing model</h4>
+ <h4 id=overview-of-the-parsing-model><span class=secno>9.2.1 </span>Overview of the parsing model</h4>
<p>The input to the HTML parsing process consists of a stream of
Unicode characters, which is passed through a
@@ -53771,7 +54516,7 @@
pause flag</dfn>, which must be initially set to false.</p>
- <h4 id=the-input-stream><span class=secno>8.2.2 </span>The <dfn>input stream</dfn></h4>
+ <h4 id=the-input-stream><span class=secno>9.2.2 </span>The <dfn>input stream</dfn></h4>
<p>The stream of Unicode characters that comprises the input to the
tokenization stage will be initially seen by the user agent as a
@@ -53785,7 +54530,7 @@
specification. This section does not apply to XML documents. <a href=#refsXML>[XML]</a></p>
- <h5 id=determining-the-character-encoding><span class=secno>8.2.2.1 </span>Determining the character encoding</h5>
+ <h5 id=determining-the-character-encoding><span class=secno>9.2.2.1 </span>Determining the character encoding</h5>
<p>In some cases, it might be impractical to unambiguously determine
the encoding before parsing the document. Because of this, this
@@ -54160,7 +54905,7 @@
- <h5 id=preprocessing-the-input-stream><span class=secno>8.2.2.2 </span>Preprocessing the input stream</h5>
+ <h5 id=preprocessing-the-input-stream><span class=secno>9.2.2.2 </span>Preprocessing the input stream</h5>
<p>Given an encoding, the bytes in the input stream must be
converted to Unicode characters for the tokenizer, as described by
@@ -54235,7 +54980,7 @@
the stream, but rather the lack of any further characters.</p>
- <h5 id=changing-the-encoding-while-parsing><span class=secno>8.2.2.3 </span>Changing the encoding while parsing</h5>
+ <h5 id=changing-the-encoding-while-parsing><span class=secno>9.2.2.3 </span>Changing the encoding while parsing</h5>
<p>When the parser requires the user agent to <dfn id=change-the-encoding>change the
encoding</dfn>, it must run the following steps. This might happen
@@ -54281,9 +55026,9 @@
misinterpreted. User agents may notify the user of the situation,
to aid in application development.</li>
- </ol><h4 id=parse-state><span class=secno>8.2.3 </span>Parse state</h4>
+ </ol><h4 id=parse-state><span class=secno>9.2.3 </span>Parse state</h4>
- <h5 id=the-insertion-mode><span class=secno>8.2.3.1 </span>The insertion mode</h5>
+ <h5 id=the-insertion-mode><span class=secno>9.2.3.1 </span>The insertion mode</h5>
<p>The <dfn id=insertion-mode>insertion mode</dfn> is a state variable that controls
the primary operation of the tree construction stage.</p>
@@ -54430,7 +55175,7 @@
<li>Return to step 3.</li>
- </ol><h5 id=the-stack-of-open-elements><span class=secno>8.2.3.2 </span>The stack of open elements</h5>
+ </ol><h5 id=the-stack-of-open-elements><span class=secno>9.2.3.2 </span>The stack of open elements</h5>
<p>Initially, the <dfn id=stack-of-open-elements>stack of open elements</dfn> is empty. The
stack grows downwards; the topmost node on the stack is the first
@@ -54578,7 +55323,7 @@
the stack is manipulated in a random-access fashion.</p>
- <h5 id=the-list-of-active-formatting-elements><span class=secno>8.2.3.3 </span>The list of active formatting elements</h5>
+ <h5 id=the-list-of-active-formatting-elements><span class=secno>9.2.3.3 </span>The list of active formatting elements</h5>
<p>Initially, the <dfn id=list-of-active-formatting-elements>list of active formatting elements</dfn> is
empty. It is used to handle mis-nested <a href=#formatting title=formatting>formatting element tags</a>.</p>
@@ -54670,7 +55415,7 @@
<li>Go to step 1.</li>
- </ol><h5 id=the-element-pointers><span class=secno>8.2.3.4 </span>The element pointers</h5>
+ </ol><h5 id=the-element-pointers><span class=secno>9.2.3.4 </span>The element pointers</h5>
<p>Initially, the <dfn id=head-element-pointer><code title="">head</code> element
pointer</dfn> and the <dfn id=form-element-pointer><code title="">form</code> element
@@ -54687,7 +55432,7 @@
markup, for historical reasons.</p>
- <h5 id=other-parsing-state-flags><span class=secno>8.2.3.5 </span>Other parsing state flags</h5>
+ <h5 id=other-parsing-state-flags><span class=secno>9.2.3.5 </span>Other parsing state flags</h5>
<p>The <dfn id=scripting-flag>scripting flag</dfn> is set to "enabled" if <a href=#concept-n-script title=concept-n-script>scripting was enabled</a> for the
<code>Document</code> with which the parser is associated when the
@@ -54697,7 +55442,7 @@
created. It is set to "not ok" after certain tokens are seen.</p>
- <h4 id=tokenization><span class=secno>8.2.4 </span><dfn>Tokenization</dfn></h4>
+ <h4 id=tokenization><span class=secno>9.2.4 </span><dfn>Tokenization</dfn></h4>
<p>Implementations must act as if they used the following state
machine to tokenize HTML. The state machine must start in the
@@ -54773,7 +55518,7 @@
they're in some consistent order, like, by Unicode, errors last, or
something -->
- <h5 id=data-state><span class=secno>8.2.4.1 </span><dfn>Data state</dfn></h5>
+ <h5 id=data-state><span class=secno>9.2.4.1 </span><dfn>Data state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -54835,7 +55580,7 @@
<dd>Emit the input character as a character token. Stay in the
<a href=#data-state>data state</a>.</dd>
- </dl><h5 id=character-reference-data-state><span class=secno>8.2.4.2 </span><dfn>Character reference data state</dfn></h5>
+ </dl><h5 id=character-reference-data-state><span class=secno>9.2.4.2 </span><dfn>Character reference data state</dfn></h5>
<p><em>(This cannot happen if the <a href=#content-model-flag>content model flag</a>
is set to the CDATA state.)</em></p>
@@ -54851,7 +55596,7 @@
<p>Finally, switch to the <a href=#data-state>data state</a>.</p>
- <h5 id=tag-open-state><span class=secno>8.2.4.3 </span><dfn>Tag open state</dfn></h5>
+ <h5 id=tag-open-state><span class=secno>9.2.4.3 </span><dfn>Tag open state</dfn></h5>
<p>The behavior of this state depends on the <a href=#content-model-flag>content model
flag</a>.</p>
@@ -54911,7 +55656,7 @@
</dl></dd>
- </dl><h5 id=close-tag-open-state><span class=secno>8.2.4.4 </span><dfn>Close tag open state</dfn></h5>
+ </dl><h5 id=close-tag-open-state><span class=secno>9.2.4.4 </span><dfn>Close tag open state</dfn></h5>
<p>If the <a href=#content-model-flag>content model flag</a> is set to the RCDATA or
CDATA states but no start tag token has ever been emitted by this
@@ -54964,7 +55709,7 @@
<dd><a href=#parse-error>Parse error</a>. Switch to the <a href=#bogus-comment-state>bogus
comment state</a>.</dd>
- </dl><h5 id=tag-name-state><span class=secno>8.2.4.5 </span><dfn>Tag name state</dfn></h5>
+ </dl><h5 id=tag-name-state><span class=secno>9.2.4.5 </span><dfn>Tag name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -54995,7 +55740,7 @@
<dd>Append the <a href=#current-input-character>current input character</a> to the current tag token's
tag name. Stay in the <a href=#tag-name-state>tag name state</a>.</dd>
- </dl><h5 id=before-attribute-name-state><span class=secno>8.2.4.6 </span><dfn>Before attribute name state</dfn></h5>
+ </dl><h5 id=before-attribute-name-state><span class=secno>9.2.4.6 </span><dfn>Before attribute name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55036,7 +55781,7 @@
the empty string. Switch to the <a href=#attribute-name-state>attribute name
state</a>.</dd>
- </dl><h5 id=attribute-name-state><span class=secno>8.2.4.7 </span><dfn>Attribute name state</dfn></h5>
+ </dl><h5 id=attribute-name-state><span class=secno>9.2.4.7 </span><dfn>Attribute name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55085,7 +55830,7 @@
associated with it (if any).</p>
- <h5 id=after-attribute-name-state><span class=secno>8.2.4.8 </span><dfn>After attribute name state</dfn></h5>
+ <h5 id=after-attribute-name-state><span class=secno>9.2.4.8 </span><dfn>After attribute name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55128,7 +55873,7 @@
the empty string. Switch to the <a href=#attribute-name-state>attribute name
state</a>.</dd>
- </dl><h5 id=before-attribute-value-state><span class=secno>8.2.4.9 </span><dfn>Before attribute value state</dfn></h5>
+ </dl><h5 id=before-attribute-value-state><span class=secno>9.2.4.9 </span><dfn>Before attribute value state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55166,7 +55911,7 @@
value. Switch to the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted)
state</a>.</dd>
- </dl><h5 id=attribute-value-(double-quoted)-state><span class=secno>8.2.4.10 </span><dfn>Attribute value (double-quoted) state</dfn></h5>
+ </dl><h5 id=attribute-value-(double-quoted)-state><span class=secno>9.2.4.10 </span><dfn>Attribute value (double-quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55188,7 +55933,7 @@
value. Stay in the <a href=#attribute-value-(double-quoted)-state>attribute value (double-quoted)
state</a>.</dd>
- </dl><h5 id=attribute-value-(single-quoted)-state><span class=secno>8.2.4.11 </span><dfn>Attribute value (single-quoted) state</dfn></h5>
+ </dl><h5 id=attribute-value-(single-quoted)-state><span class=secno>9.2.4.11 </span><dfn>Attribute value (single-quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55210,7 +55955,7 @@
value. Stay in the <a href=#attribute-value-(single-quoted)-state>attribute value (single-quoted)
state</a>.</dd>
- </dl><h5 id=attribute-value-(unquoted)-state><span class=secno>8.2.4.12 </span><dfn>Attribute value (unquoted) state</dfn></h5>
+ </dl><h5 id=attribute-value-(unquoted)-state><span class=secno>9.2.4.12 </span><dfn>Attribute value (unquoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55245,7 +55990,7 @@
value. Stay in the <a href=#attribute-value-(unquoted)-state>attribute value (unquoted)
state</a>.</dd>
- </dl><h5 id=character-reference-in-attribute-value-state><span class=secno>8.2.4.13 </span><dfn>Character reference in attribute value state</dfn></h5>
+ </dl><h5 id=character-reference-in-attribute-value-state><span class=secno>9.2.4.13 </span><dfn>Character reference in attribute value state</dfn></h5>
<p>Attempt to <a href=#consume-a-character-reference>consume a character reference</a>.</p>
@@ -55259,7 +56004,7 @@
in when were switched into this state.</p>
- <h5 id=after-attribute-value-(quoted)-state><span class=secno>8.2.4.14 </span><dfn>After attribute value (quoted) state</dfn></h5>
+ <h5 id=after-attribute-value-(quoted)-state><span class=secno>9.2.4.14 </span><dfn>After attribute value (quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55285,7 +56030,7 @@
<dd><a href=#parse-error>Parse error</a>. Reconsume the character in
the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
- </dl><h5 id=self-closing-start-tag-state><span class=secno>8.2.4.15 </span><dfn>Self-closing start tag state</dfn></h5>
+ </dl><h5 id=self-closing-start-tag-state><span class=secno>9.2.4.15 </span><dfn>Self-closing start tag state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55302,7 +56047,7 @@
<dd><a href=#parse-error>Parse error</a>. Reconsume the character in
the <a href=#before-attribute-name-state>before attribute name state</a>.</dd>
- </dl><h5 id=bogus-comment-state><span class=secno>8.2.4.16 </span><dfn>Bogus comment state</dfn></h5>
+ </dl><h5 id=bogus-comment-state><span class=secno>9.2.4.16 </span><dfn>Bogus comment state</dfn></h5>
<p><em>(This can only happen if the <a href=#content-model-flag>content model
flag</a> is set to the PCDATA state.)</em></p>
@@ -55323,7 +56068,7 @@
character.</p>
- <h5 id=markup-declaration-open-state><span class=secno>8.2.4.17 </span><dfn>Markup declaration open state</dfn></h5>
+ <h5 id=markup-declaration-open-state><span class=secno>9.2.4.17 </span><dfn>Markup declaration open state</dfn></h5>
<p><em>(This can only happen if the <a href=#content-model-flag>content model
flag</a> is set to the PCDATA state.)</em></p>
@@ -55352,7 +56097,7 @@
comment.</p>
- <h5 id=comment-start-state><span class=secno>8.2.4.18 </span><dfn>Comment start state</dfn></h5>
+ <h5 id=comment-start-state><span class=secno>9.2.4.18 </span><dfn>Comment start state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55371,7 +56116,7 @@
<dd>Append the input character to the comment token's
data. Switch to the <a href=#comment-state>comment state</a>.</dd>
- </dl><h5 id=comment-start-dash-state><span class=secno>8.2.4.19 </span><dfn>Comment start dash state</dfn></h5>
+ </dl><h5 id=comment-start-dash-state><span class=secno>9.2.4.19 </span><dfn>Comment start dash state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55391,7 +56136,7 @@
character to the comment token's data. Switch to the
<a href=#comment-state>comment state</a>.</dd>
- </dl><h5 id=comment-state><span class=secno>8.2.4.20 </span><dfn id=comment>Comment state</dfn></h5>
+ </dl><h5 id=comment-state><span class=secno>9.2.4.20 </span><dfn id=comment>Comment state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55410,7 +56155,7 @@
<dd>Append the input character to the comment token's data. Stay
in the <a href=#comment-state>comment state</a>.</dd>
- </dl><h5 id=comment-end-dash-state><span class=secno>8.2.4.21 </span><dfn>Comment end dash state</dfn></h5>
+ </dl><h5 id=comment-end-dash-state><span class=secno>9.2.4.21 </span><dfn>Comment end dash state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55430,7 +56175,7 @@
character to the comment token's data. Switch to the
<a href=#comment-state>comment state</a>.</dd>
- </dl><h5 id=comment-end-state><span class=secno>8.2.4.22 </span><dfn>Comment end state</dfn></h5>
+ </dl><h5 id=comment-end-state><span class=secno>9.2.4.22 </span><dfn>Comment end state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55456,7 +56201,7 @@
characters and the input character to the comment token's
data. Switch to the <a href=#comment-state>comment state</a>.</dd>
- </dl><h5 id=doctype-state><span class=secno>8.2.4.23 </span><dfn>DOCTYPE state</dfn></h5>
+ </dl><h5 id=doctype-state><span class=secno>9.2.4.23 </span><dfn>DOCTYPE state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55471,7 +56216,7 @@
<dd><a href=#parse-error>Parse error</a>. Reconsume the current
character in the <a href=#before-doctype-name-state>before DOCTYPE name state</a>.</dd>
- </dl><h5 id=before-doctype-name-state><span class=secno>8.2.4.24 </span><dfn>Before DOCTYPE name state</dfn></h5>
+ </dl><h5 id=before-doctype-name-state><span class=secno>9.2.4.24 </span><dfn>Before DOCTYPE name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55503,7 +56248,7 @@
<a href=#current-input-character>current input character</a>. Switch to the <a href=#doctype-name-state>DOCTYPE name
state</a>.</dd>
- </dl><h5 id=doctype-name-state><span class=secno>8.2.4.25 </span><dfn>DOCTYPE name state</dfn></h5>
+ </dl><h5 id=doctype-name-state><span class=secno>9.2.4.25 </span><dfn>DOCTYPE name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55532,7 +56277,7 @@
<dd>Append the <a href=#current-input-character>current input character</a> to the current DOCTYPE
token's name. Stay in the <a href=#doctype-name-state>DOCTYPE name state</a>.</dd>
- </dl><h5 id=after-doctype-name-state><span class=secno>8.2.4.26 </span><dfn>After DOCTYPE name state</dfn></h5>
+ </dl><h5 id=after-doctype-name-state><span class=secno>9.2.4.26 </span><dfn>After DOCTYPE name state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55572,7 +56317,7 @@
</dd>
- </dl><h5 id=before-doctype-public-identifier-state><span class=secno>8.2.4.27 </span><dfn>Before DOCTYPE public identifier state</dfn></h5>
+ </dl><h5 id=before-doctype-public-identifier-state><span class=secno>9.2.4.27 </span><dfn>Before DOCTYPE public identifier state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55608,7 +56353,7 @@
<i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
DOCTYPE state</a>.</dd>
- </dl><h5 id=doctype-public-identifier-(double-quoted)-state><span class=secno>8.2.4.28 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5>
+ </dl><h5 id=doctype-public-identifier-(double-quoted)-state><span class=secno>9.2.4.28 </span><dfn>DOCTYPE public identifier (double-quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55630,7 +56375,7 @@
token's public identifier. Stay in the <a href=#doctype-public-identifier-(double-quoted)-state>DOCTYPE public
identifier (double-quoted) state</a>.</dd>
- </dl><h5 id=doctype-public-identifier-(single-quoted)-state><span class=secno>8.2.4.29 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5>
+ </dl><h5 id=doctype-public-identifier-(single-quoted)-state><span class=secno>9.2.4.29 </span><dfn>DOCTYPE public identifier (single-quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55652,7 +56397,7 @@
token's public identifier. Stay in the <a href=#doctype-public-identifier-(single-quoted)-state>DOCTYPE public
identifier (single-quoted) state</a>.</dd>
- </dl><h5 id=after-doctype-public-identifier-state><span class=secno>8.2.4.30 </span><dfn>After DOCTYPE public identifier state</dfn></h5>
+ </dl><h5 id=after-doctype-public-identifier-state><span class=secno>9.2.4.30 </span><dfn>After DOCTYPE public identifier state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55687,7 +56432,7 @@
<i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
DOCTYPE state</a>.</dd>
- </dl><h5 id=before-doctype-system-identifier-state><span class=secno>8.2.4.31 </span><dfn>Before DOCTYPE system identifier state</dfn></h5>
+ </dl><h5 id=before-doctype-system-identifier-state><span class=secno>9.2.4.31 </span><dfn>Before DOCTYPE system identifier state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55723,7 +56468,7 @@
<i>force-quirks flag</i> to <i>on</i>. Switch to the <a href=#bogus-doctype-state>bogus
DOCTYPE state</a>.</dd>
- </dl><h5 id=doctype-system-identifier-(double-quoted)-state><span class=secno>8.2.4.32 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5>
+ </dl><h5 id=doctype-system-identifier-(double-quoted)-state><span class=secno>9.2.4.32 </span><dfn>DOCTYPE system identifier (double-quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55745,7 +56490,7 @@
token's system identifier. Stay in the <a href=#doctype-system-identifier-(double-quoted)-state>DOCTYPE system
identifier (double-quoted) state</a>.</dd>
- </dl><h5 id=doctype-system-identifier-(single-quoted)-state><span class=secno>8.2.4.33 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5>
+ </dl><h5 id=doctype-system-identifier-(single-quoted)-state><span class=secno>9.2.4.33 </span><dfn>DOCTYPE system identifier (single-quoted) state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55767,7 +56512,7 @@
token's system identifier. Stay in the <a href=#doctype-system-identifier-(single-quoted)-state>DOCTYPE system
identifier (single-quoted) state</a>.</dd>
- </dl><h5 id=after-doctype-system-identifier-state><span class=secno>8.2.4.34 </span><dfn>After DOCTYPE system identifier state</dfn></h5>
+ </dl><h5 id=after-doctype-system-identifier-state><span class=secno>9.2.4.34 </span><dfn>After DOCTYPE system identifier state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55792,7 +56537,7 @@
state</a>. (This does <em>not</em> set the DOCTYPE token's
<i>force-quirks flag</i> to <i>on</i>.)</dd>
- </dl><h5 id=bogus-doctype-state><span class=secno>8.2.4.35 </span><dfn>Bogus DOCTYPE state</dfn></h5>
+ </dl><h5 id=bogus-doctype-state><span class=secno>9.2.4.35 </span><dfn>Bogus DOCTYPE state</dfn></h5>
<p>Consume the <a href=#next-input-character>next input character</a>:</p>
@@ -55807,7 +56552,7 @@
<dt>Anything else</dt>
<dd>Stay in the <a href=#bogus-doctype-state>bogus DOCTYPE state</a>.</dd>
- </dl><h5 id=cdata-section-state><span class=secno>8.2.4.36 </span><dfn>CDATA section state</dfn></h5>
+ </dl><h5 id=cdata-section-state><span class=secno>9.2.4.36 </span><dfn>CDATA section state</dfn></h5>
<p><em>(This can only happen if the <a href=#content-model-flag>content model
flag</a> is set to the PCDATA state, and is unrelated to the
@@ -55828,7 +56573,7 @@
- <h5 id=tokenizing-character-references><span class=secno>8.2.4.37 </span>Tokenizing character references</h5>
+ <h5 id=tokenizing-character-references><span class=secno>9.2.4.37 </span>Tokenizing character references</h5>
<p>This section defines how to <dfn id=consume-a-character-reference>consume a character
reference</dfn>. This definition is used when parsing character
@@ -56014,7 +56759,7 @@
</dd>
- </dl><h4 id=tree-construction><span class=secno>8.2.5 </span><dfn>Tree construction</dfn></h4>
+ </dl><h4 id=tree-construction><span class=secno>9.2.5 </span><dfn>Tree construction</dfn></h4>
<p>The input to the tree construction stage is a sequence of tokens
from the <a href=#tokenization>tokenization</a> stage. The tree construction
@@ -56087,7 +56832,7 @@
depths.</p>
- <h5 id=creating-and-inserting-elements><span class=secno>8.2.5.1 </span>Creating and inserting elements</h5>
+ <h5 id=creating-and-inserting-elements><span class=secno>9.2.5.1 </span>Creating and inserting elements</h5>
<p>When the steps below require the UA to <dfn id=create-an-element-for-the-token title="create an
element for the token">create an element for a token</dfn> in a
@@ -56266,7 +57011,7 @@
<li><p>Then, switch the <a href=#insertion-mode>insertion mode</a> to "<a href=#parsing-main-incdata title="insertion mode: in CDATA/RCDATA">in
CDATA/RCDATA</a>".</li>
- </ol><h5 id=closing-elements-that-have-implied-end-tags><span class=secno>8.2.5.2 </span>Closing elements that have implied end tags</h5>
+ </ol><h5 id=closing-elements-that-have-implied-end-tags><span class=secno>9.2.5.2 </span>Closing elements that have implied end tags</h5>
<p>When the steps below require the UA to <dfn id=generate-implied-end-tags>generate implied end
tags</dfn>, then, while the <a href=#current-node>current node</a> is a
@@ -56282,7 +57027,7 @@
above steps as if that element was not in the above list.</p>
- <h5 id=foster-parenting><span class=secno>8.2.5.3 </span>Foster parenting</h5>
+ <h5 id=foster-parenting><span class=secno>9.2.5.3 </span>Foster parenting</h5>
<p>Foster parenting happens when content is misnested in tables.</p>
@@ -56320,7 +57065,7 @@
- <h5 id=the-initial-insertion-mode><span class=secno>8.2.5.4 </span>The "<dfn title="insertion mode: initial">initial</dfn>" insertion mode</h5>
+ <h5 id=the-initial-insertion-mode><span class=secno>9.2.5.4 </span>The "<dfn title="insertion mode: initial">initial</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-initial-insertion-mode title="insertion
mode: initial">initial</a>", tokens must be handled as follows:</p>
@@ -56480,7 +57225,7 @@
</dd>
- </dl><h5 id=the-before-html-insertion-mode><span class=secno>8.2.5.5 </span>The "<dfn title="insertion mode: before html">before html</dfn>" insertion mode</h5>
+ </dl><h5 id=the-before-html-insertion-mode><span class=secno>9.2.5.5 </span>The "<dfn title="insertion mode: before html">before html</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-html-insertion-mode title="insertion
mode: before html">before html</a>", tokens must be handled as follows:</p>
@@ -56556,7 +57301,7 @@
as described in the next section.</p>
- <h5 id=the-before-head-insertion-mode><span class=secno>8.2.5.6 </span>The "<dfn title="insertion mode: before head">before head</dfn>" insertion mode</h5>
+ <h5 id=the-before-head-insertion-mode><span class=secno>9.2.5.6 </span>The "<dfn title="insertion mode: before head">before head</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-before-head-insertion-mode title="insertion
mode: before head">before head</a>", tokens must be handled as follows:</p>
@@ -56627,7 +57372,7 @@
</dd>
- </dl><h5 id=parsing-main-inhead><span class=secno>8.2.5.7 </span>The "<dfn title="insertion mode: in head">in head</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-inhead><span class=secno>9.2.5.7 </span>The "<dfn title="insertion mode: in head">in head</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inhead title="insertion
mode: in head">in head</a>", tokens must be handled as follows:</p>
@@ -56793,7 +57538,7 @@
</dd>
- </dl><h5 id=parsing-main-inheadnoscript><span class=secno>8.2.5.8 </span>The "<dfn title="insertion mode: in head noscript">in head noscript</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-inheadnoscript><span class=secno>9.2.5.8 </span>The "<dfn title="insertion mode: in head noscript">in head noscript</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inheadnoscript title="insertion
mode: in head noscript">in head noscript</a>", tokens must be handled as follows:</p>
@@ -56853,7 +57598,7 @@
</dd>
- </dl><h5 id=the-after-head-insertion-mode><span class=secno>8.2.5.9 </span>The "<dfn title="insertion mode: after head">after head</dfn>" insertion mode</h5>
+ </dl><h5 id=the-after-head-insertion-mode><span class=secno>9.2.5.9 </span>The "<dfn title="insertion mode: after head">after head</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-head-insertion-mode title="insertion
mode: after head">after head</a>", tokens must be handled as follows:</p>
@@ -56943,7 +57688,7 @@
token.</p>
</dd>
- </dl><h5 id=parsing-main-inbody><span class=secno>8.2.5.10 </span>The "<dfn title="insertion mode: in body">in body</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-inbody><span class=secno>9.2.5.10 </span>The "<dfn title="insertion mode: in body">in body</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inbody title="insertion
mode: in body">in body</a>", tokens must be handled as follows:</p>
@@ -58129,7 +58874,7 @@
</ol></dd>
- </dl><h5 id=parsing-main-incdata><span class=secno>8.2.5.11 </span>The "<dfn title="insertion mode: in CDATA/RCDATA">in CDATA/RCDATA</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-incdata><span class=secno>9.2.5.11 </span>The "<dfn title="insertion mode: in CDATA/RCDATA">in CDATA/RCDATA</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incdata title="insertion
mode: in CDATA/RCDATA">in CDATA/RCDATA</a>", tokens must be
@@ -58256,7 +59001,7 @@
</dd>
- </dl><h5 id=parsing-main-intable><span class=secno>8.2.5.12 </span>The "<dfn title="insertion mode: in table">in table</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-intable><span class=secno>9.2.5.12 </span>The "<dfn title="insertion mode: in table">in table</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intable title="insertion
mode: in table">in table</a>", tokens must be handled as follows:</p>
@@ -58437,7 +59182,7 @@
case</a>.</p>
- <h5 id=parsing-main-incaption><span class=secno>8.2.5.13 </span>The "<dfn title="insertion mode: in caption">in caption</dfn>" insertion mode</h5>
+ <h5 id=parsing-main-incaption><span class=secno>9.2.5.13 </span>The "<dfn title="insertion mode: in caption">in caption</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incaption title="insertion
mode: in caption">in caption</a>", tokens must be handled as follows:</p>
@@ -58495,7 +59240,7 @@
mode</a>.</p>
</dd>
- </dl><h5 id=parsing-main-incolgroup><span class=secno>8.2.5.14 </span>The "<dfn title="insertion mode: in column group">in column group</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-incolgroup><span class=secno>9.2.5.14 </span>The "<dfn title="insertion mode: in column group">in column group</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-incolgroup title="insertion
mode: in column group">in column group</a>", tokens must be handled as follows:</p>
@@ -58582,7 +59327,7 @@
</dd>
- </dl><h5 id=parsing-main-intbody><span class=secno>8.2.5.15 </span>The "<dfn title="insertion mode: in table body">in table body</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-intbody><span class=secno>9.2.5.15 </span>The "<dfn title="insertion mode: in table body">in table body</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intbody title="insertion
mode: in table body">in table body</a>", tokens must be handled as follows:</p>
@@ -58671,7 +59416,7 @@
case</a>.</p>
- <h5 id=parsing-main-intr><span class=secno>8.2.5.16 </span>The "<dfn title="insertion mode: in row">in row</dfn>" insertion mode</h5>
+ <h5 id=parsing-main-intr><span class=secno>9.2.5.16 </span>The "<dfn title="insertion mode: in row">in row</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intr title="insertion
mode: in row">in row</a>", tokens must be handled as follows:</p>
@@ -58762,7 +59507,7 @@
case</a>.</p>
- <h5 id=parsing-main-intd><span class=secno>8.2.5.17 </span>The "<dfn title="insertion mode: in cell">in cell</dfn>" insertion mode</h5>
+ <h5 id=parsing-main-intd><span class=secno>9.2.5.17 </span>The "<dfn title="insertion mode: in cell">in cell</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-intd title="insertion
mode: in cell">in cell</a>", tokens must be handled as follows:</p>
@@ -58856,7 +59601,7 @@
cell</a>".</p>
- <h5 id=parsing-main-inselect><span class=secno>8.2.5.18 </span>The "<dfn title="insertion mode: in select">in select</dfn>" insertion mode</h5>
+ <h5 id=parsing-main-inselect><span class=secno>9.2.5.18 </span>The "<dfn title="insertion mode: in select">in select</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inselect title="insertion
mode: in select">in select</a>", tokens must be handled as follows:</p>
@@ -58994,7 +59739,7 @@
<p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
</dd>
- </dl><h5 id=parsing-main-inselectintable><span class=secno>8.2.5.19 </span>The "<dfn title="insertion mode: in select in table">in select in table</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-inselectintable><span class=secno>9.2.5.19 </span>The "<dfn title="insertion mode: in select in table">in select in table</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inselectintable title="insertion
mode: in select in table">in select in table</a>", tokens must be handled as follows:</p>
@@ -59026,7 +59771,7 @@
mode</a>.</p>
</dd>
- </dl><h5 id=parsing-main-inforeign><span class=secno>8.2.5.20 </span>The "<dfn title="insertion mode: in foreign content">in foreign content</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-inforeign><span class=secno>9.2.5.20 </span>The "<dfn title="insertion mode: in foreign content">in foreign content</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inforeign title="insertion
mode: in foreign content">in foreign content</a>", tokens must be
@@ -59220,7 +59965,7 @@
</dd>
- </dl><h5 id=parsing-main-afterbody><span class=secno>8.2.5.21 </span>The "<dfn title="insertion mode: after body">after body</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-afterbody><span class=secno>9.2.5.21 </span>The "<dfn title="insertion mode: after body">after body</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterbody title="insertion
mode: after body">after body</a>", tokens must be handled as follows:</p>
@@ -59278,7 +60023,7 @@
</dd>
- </dl><h5 id=parsing-main-inframeset><span class=secno>8.2.5.22 </span>The "<dfn title="insertion mode: in frameset">in frameset</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-inframeset><span class=secno>9.2.5.22 </span>The "<dfn title="insertion mode: in frameset">in frameset</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-inframeset title="insertion
mode: in frameset">in frameset</a>", tokens must be handled as follows:</p>
@@ -59371,7 +60116,7 @@
<p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
</dd>
- </dl><h5 id=parsing-main-afterframeset><span class=secno>8.2.5.23 </span>The "<dfn title="insertion mode: after frameset">after frameset</dfn>" insertion mode</h5>
+ </dl><h5 id=parsing-main-afterframeset><span class=secno>9.2.5.23 </span>The "<dfn title="insertion mode: after frameset">after frameset</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#parsing-main-afterframeset title="insertion
mode: after frameset">after frameset</a>", tokens must be handled as follows:</p>
@@ -59431,7 +60176,7 @@
harder.</p>
- <h5 id=the-after-after-body-insertion-mode><span class=secno>8.2.5.24 </span>The "<dfn title="insertion mode: after after body">after after body</dfn>" insertion mode</h5>
+ <h5 id=the-after-after-body-insertion-mode><span class=secno>9.2.5.24 </span>The "<dfn title="insertion mode: after after body">after after body</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-after-body-insertion-mode title="insertion
mode: after after body">after after body</a>", tokens must be handled as follows:</p>
@@ -59465,7 +60210,7 @@
reprocess the token.</p>
</dd>
- </dl><h5 id=the-after-after-frameset-insertion-mode><span class=secno>8.2.5.25 </span>The "<dfn title="insertion mode: after after frameset">after after frameset</dfn>" insertion mode</h5>
+ </dl><h5 id=the-after-after-frameset-insertion-mode><span class=secno>9.2.5.25 </span>The "<dfn title="insertion mode: after after frameset">after after frameset</dfn>" insertion mode</h5>
<p>When the <a href=#insertion-mode>insertion mode</a> is "<a href=#the-after-after-frameset-insertion-mode title="insertion
mode: after after frameset">after after frameset</a>", tokens must be handled as follows:</p>
@@ -59503,7 +60248,7 @@
<p><a href=#parse-error>Parse error</a>. Ignore the token.</p>
</dd>
- </dl><h4 id=the-end><span class=secno>8.2.6 </span>The end</h4>
+ </dl><h4 id=the-end><span class=secno>9.2.6 </span>The end</h4>
<p>Once the user agent <dfn id=stop-parsing title="stop parsing">stops parsing</dfn>
the document, the user agent must follow the steps in this
@@ -59637,7 +60382,7 @@
-->
- <h4 id=coercing-an-html-dom-into-an-infoset><span class=secno>8.2.7 </span>Coercing an HTML DOM into an infoset</h4>
+ <h4 id=coercing-an-html-dom-into-an-infoset><span class=secno>9.2.7 </span>Coercing an HTML DOM into an infoset</h4>
<p>When an application uses an <a href=#html-parser>HTML parser</a> in
conjunction with an XML pipeline, it is possible that the
@@ -59723,7 +60468,7 @@
- <h3 id=namespaces><span class=secno>8.3 </span>Namespaces</h3>
+ <h3 id=namespaces><span class=secno>9.3 </span>Namespaces</h3>
<p>The <dfn id=html-namespace-0>HTML namespace</dfn> is: <code>http://www.w3.org/1999/xhtml</code></p>
@@ -59747,7 +60492,7 @@
- <h3 id=serializing-html-fragments><span class=secno>8.4 </span>Serializing HTML fragments</h3>
+ <h3 id=serializing-html-fragments><span class=secno>9.4 </span>Serializing HTML fragments</h3>
<p>The following steps form the <dfn id=html-fragment-serialization-algorithm>HTML fragment serialization
algorithm</dfn>. The algorithm takes as input a DOM
@@ -59932,7 +60677,7 @@
tag for the <code><a href=#the-p-element>p</a></code>).</p>
- <h3 id=parsing-html-fragments><span class=secno>8.5 </span>Parsing HTML fragments</h3>
+ <h3 id=parsing-html-fragments><span class=secno>9.5 </span>Parsing HTML fragments</h3>
<p>The following steps form the <dfn id=html-fragment-parsing-algorithm>HTML fragment parsing
algorithm</dfn>. The algorithm optionally takes as input an
@@ -60096,7 +60841,7 @@
- <h3 id=named-character-references><span class=secno>8.6 </span><dfn>Named character references</dfn></h3>
+ <h3 id=named-character-references><span class=secno>9.6 </span><dfn>Named character references</dfn></h3>
<p>This table lists the character reference names that are supported
by HTML, and the code points to which they refer. It is referenced
@@ -62251,7 +62996,7 @@
- <h2 id=the-xhtml-syntax><span class=secno>9 </span><dfn>The XHTML syntax</dfn></h2>
+ <h2 id=the-xhtml-syntax><span class=secno>10 </span><dfn>The XHTML syntax</dfn></h2>
<p class=note>This section only describes the rules for XML
resources. Rules for <code title="">text/html</code> resources are
@@ -62261,7 +63006,7 @@
<div class=impl>
- <h3 id=writing-xhtml-documents><span class=secno>9.1 </span>Writing XHTML documents</h3>
+ <h3 id=writing-xhtml-documents><span class=secno>10.1 </span>Writing XHTML documents</h3>
</div>
@@ -62286,7 +63031,7 @@
<div class=impl>
- <h3 id=parsing-xhtml-documents><span class=secno>9.2 </span>Parsing XHTML documents</h3>
+ <h3 id=parsing-xhtml-documents><span class=secno>10.2 </span>Parsing XHTML documents</h3>
<p>This section describes the relationship between XML and the DOM,
with a particular emphasis on how this interacts with HTML.</p>
@@ -62341,7 +63086,7 @@
- <h3 id=serializing-xhtml-fragments><span class=secno>9.3 </span>Serializing XHTML fragments</h3>
+ <h3 id=serializing-xhtml-fragments><span class=secno>10.3 </span>Serializing XHTML fragments</h3>
<p>The <dfn id=xml-fragment-serialization-algorithm>XML fragment serialization algorithm</dfn> for a
<code>Document</code> or <code>Element</code> node either returns a
@@ -62422,7 +63167,7 @@
- <h3 id=parsing-xhtml-fragments><span class=secno>9.4 </span>Parsing XHTML fragments</h3>
+ <h3 id=parsing-xhtml-fragments><span class=secno>10.4 </span>Parsing XHTML fragments</h3>
<p>The <dfn id=xml-fragment-parsing-algorithm>XML fragment parsing algorithm</dfn> for either returns
a <code>Document</code> or raises a <code><a href=#syntax_err>SYNTAX_ERR</a></code>
@@ -62492,7 +63237,7 @@
<div class=impl>
- <h2 id=rendering><span class=secno>10 </span>Rendering</h2>
+ <h2 id=rendering><span class=secno>11 </span>Rendering</h2>
<p><em>User agents are not required present HTML documents in any
particular way. However, this section provides a set of suggestions
@@ -62504,7 +63249,7 @@
lead to this experience.</em></p>
- <h3 id=introduction-8><span class=secno>10.1 </span>Introduction</h3>
+ <h3 id=introduction-9><span class=secno>11.1 </span>Introduction</h3>
<p>In general, user agents are expected to support CSS, and many of
the suggestions in this section are expressed in CSS terms. User
@@ -62524,9 +63269,9 @@
this section to their target media.</p>
- <h3 id=the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>10.2 </span>The CSS user agent style sheet and presentational hints</h3>
+ <h3 id=the-css-user-agent-style-sheet-and-presentational-hints><span class=secno>11.2 </span>The CSS user agent style sheet and presentational hints</h3>
- <h4 id=introduction-9><span class=secno>10.2.1 </span>Introduction</h4>
+ <h4 id=introduction-10><span class=secno>11.2.1 </span>Introduction</h4>
<p>The CSS rules given in these subsections are, unless otherwise
specified, expected to be used as part of the user-agent level style
@@ -62560,7 +63305,7 @@
- <h4 id=display-types><span class=secno>10.2.2 </span>Display types</h4>
+ <h4 id=display-types><span class=secno>11.2.2 </span>Display types</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -62631,7 +63376,7 @@
irrespective of CSS rules.</p>
- <h4 id=margins-and-padding><span class=secno>10.2.3 </span>Margins and padding</h4>
+ <h4 id=margins-and-padding><span class=secno>11.2.3 </span>Margins and padding</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -62802,7 +63547,7 @@
<code><a href=#the-th-element>th</a></code> elements, are expected to be collapsed to zero.</p>
- <h4 id=alignment><span class=secno>10.2.4 </span>Alignment</h4>
+ <h4 id=alignment><span class=secno>11.2.4 </span>Alignment</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -62902,7 +63647,7 @@
value, and that do not themselves have an applicable <code title=attr-align>align</code> attribute.</p>
- <h4 id=fonts-and-colors><span class=secno>10.2.5 </span>Fonts and colors</h4>
+ <h4 id=fonts-and-colors><span class=secno>11.2.5 </span>Fonts and colors</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63171,7 +63916,7 @@
</li>
- </ol><h4 id=punctuation-and-decorations><span class=secno>10.2.6 </span>Punctuation and decorations</h4>
+ </ol><h4 id=punctuation-and-decorations><span class=secno>11.2.6 </span>Punctuation and decorations</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63357,7 +64102,7 @@
instead.</p>
- <h4 id=resetting-rules-for-inherited-properties><span class=secno>10.2.7 </span>Resetting rules for inherited properties</h4>
+ <h4 id=resetting-rules-for-inherited-properties><span class=secno>11.2.7 </span>Resetting rules for inherited properties</h4>
<p>The following rules are also expected to be in play, resetting
certain properties to block inheritance by default.</p>
@@ -63390,7 +64135,7 @@
input { box-sizing: border-box; }</pre>
- <h4 id=the-hr-element-0><span class=secno>10.2.8 </span>The <code><a href=#the-hr-element>hr</a></code> element</h4>
+ <h4 id=the-hr-element-0><span class=secno>11.2.8 </span>The <code><a href=#the-hr-element>hr</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63440,7 +64185,7 @@
- <h4 id=the-fieldset-element-0><span class=secno>10.2.9 </span>The <code><a href=#the-fieldset-element>fieldset</a></code> element</h4>
+ <h4 id=the-fieldset-element-0><span class=secno>11.2.9 </span>The <code><a href=#the-fieldset-element>fieldset</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63475,9 +64220,9 @@
<td>On the right
<tr><td><code title="">center</code>
<td>In the middle
- </table><h3 id=replaced-elements><span class=secno>10.3 </span>Replaced elements</h3>
+ </table><h3 id=replaced-elements><span class=secno>11.3 </span>Replaced elements</h3>
- <h4 id=embedded-content-1><span class=secno>10.3.1 </span>Embedded content</h4>
+ <h4 id=embedded-content-1><span class=secno>11.3.1 </span>Embedded content</h4>
<p>The <code><a href=#the-applet-element>applet</a></code>, <code><a href=#the-canvas-element>canvas</a></code>, <code><a href=#the-embed-element>embed</a></code>,
<code><a href=#the-iframe-element>iframe</a></code>, and <code><a href=#video>video</a></code> elements are expected to
@@ -63515,7 +64260,7 @@
iframe { border: 2px inset; }</pre>
- <h4 id=images-0><span class=secno>10.3.2 </span>Images</h4>
+ <h4 id=images-0><span class=secno>11.3.2 </span>Images</h4>
<p>When an <code><a href=#the-img-element>img</a></code> element or an <code><a href=#the-input-element>input</a></code> element
when its <code title=attr-input-type><a href=#attr-input-type>type</a></code> attribute is in
@@ -63584,7 +64329,7 @@
- <h4 id=attributes-for-embedded-content-and-images><span class=secno>10.3.3 </span>Attributes for embedded content and images</h4>
+ <h4 id=attributes-for-embedded-content-and-images><span class=secno>11.3.3 </span>Attributes for embedded content and images</h4>
<p>The following CSS rules are expected to apply as
<a href=#presentational-hints>presentational hints</a>:</p>
@@ -63678,7 +64423,7 @@
respectively.</p>
- <h4 id=image-maps-0><span class=secno>10.3.4 </span>Image maps</h4>
+ <h4 id=image-maps-0><span class=secno>11.3.4 </span>Image maps</h4>
<p>Shapes on an <a href=#image-map>image map</a> are expected to act, for the
purpose of the CSS cascade, as elements independent of the original
@@ -63703,7 +64448,7 @@
- <h4 id=tool-bars-0><span class=secno>10.3.5 </span>Tool bars</h4>
+ <h4 id=tool-bars-0><span class=secno>11.3.5 </span>Tool bars</h4>
<p>When a <code><a href=#menus>menu</a></code> element's <code title=attr-menu-type><a href=#attr-menu-type>type</a></code> attribute is in the <a href=#tool-bar-state title="tool bar state">tool bar</a> state, the element is
expected to be treated as a replaced element with a height about two
@@ -63718,9 +64463,9 @@
- <h3 id=bindings><span class=secno>10.4 </span>Bindings</h3>
+ <h3 id=bindings><span class=secno>11.4 </span>Bindings</h3>
- <h4 id=introduction-10><span class=secno>10.4.1 </span>Introduction</h4>
+ <h4 id=introduction-11><span class=secno>11.4.1 </span>Introduction</h4>
<p>A number of elements have their rendering defined in terms of the
'binding' property. <a href=#refsBECSS>[BECSS]</a></p>
@@ -63748,7 +64493,7 @@
- <h4 id=the-bb-element-0><span class=secno>10.4.2 </span>The <code><a href=#the-bb-element>bb</a></code> element</h4>
+ <h4 id=the-bb-element-0><span class=secno>11.4.2 </span>The <code><a href=#the-bb-element>bb</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63762,7 +64507,7 @@
- <h4 id=the-button-element-0><span class=secno>10.4.3 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
+ <h4 id=the-button-element-0><span class=secno>11.4.3 </span>The <code><a href=#the-button-element>button</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63775,7 +64520,7 @@
- <h4 id=the-datagrid-element><span class=secno>10.4.4 </span>The <code><a href=#datagrid>datagrid</a></code> element</h4>
+ <h4 id=the-datagrid-element><span class=secno>11.4.4 </span>The <code><a href=#datagrid>datagrid</a></code> element</h4>
<p class=XXX>This section will probably include details on how to
render DATAGRID (including <span id=datagridPseudos>its
@@ -63784,7 +64529,7 @@
section is filled in.</p>
- <h4 id=the-details-element-0><span class=secno>10.4.5 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
+ <h4 id=the-details-element-0><span class=secno>11.4.5 </span>The <code><a href=#the-details-element>details</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63817,7 +64562,7 @@
- <h4 id=the-input-element-as-a-text-entry-widget><span class=secno>10.4.6 </span>The <code><a href=#the-input-element>input</a></code> element as a text entry widget</h4>
+ <h4 id=the-input-element-as-a-text-entry-widget><span class=secno>11.4.6 </span>The <code><a href=#the-input-element>input</a></code> element as a text entry widget</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63853,7 +64598,7 @@
- <h4 id=the-input-element-as-domain-specific-widgets><span class=secno>10.4.7 </span>The <code><a href=#the-input-element>input</a></code> element as domain-specific widgets</h4>
+ <h4 id=the-input-element-as-domain-specific-widgets><span class=secno>11.4.7 </span>The <code><a href=#the-input-element>input</a></code> element as domain-specific widgets</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63905,7 +64650,7 @@
- <h4 id=the-input-element-as-a-range-control><span class=secno>10.4.8 </span>The <code><a href=#the-input-element>input</a></code> element as a range control</h4>
+ <h4 id=the-input-element-as-a-range-control><span class=secno>11.4.8 </span>The <code><a href=#the-input-element>input</a></code> element as a range control</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63928,7 +64673,7 @@
- <h4 id=the-input-element-as-a-color-well><span class=secno>10.4.9 </span>The <code><a href=#the-input-element>input</a></code> element as a color well</h4>
+ <h4 id=the-input-element-as-a-color-well><span class=secno>11.4.9 </span>The <code><a href=#the-input-element>input</a></code> element as a color well</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63947,7 +64692,7 @@
- <h4 id=the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>10.4.10 </span>The <code><a href=#the-input-element>input</a></code> element as a check box and radio button widgets</h4>
+ <h4 id=the-input-element-as-a-check-box-and-radio-button-widgets><span class=secno>11.4.10 </span>The <code><a href=#the-input-element>input</a></code> element as a check box and radio button widgets</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63966,7 +64711,7 @@
- <h4 id=the-input-element-as-a-file-upload-control><span class=secno>10.4.11 </span>The <code><a href=#the-input-element>input</a></code> element as a file upload control</h4>
+ <h4 id=the-input-element-as-a-file-upload-control><span class=secno>11.4.11 </span>The <code><a href=#the-input-element>input</a></code> element as a file upload control</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63981,7 +64726,7 @@
- <h4 id=the-input-element-as-a-button><span class=secno>10.4.12 </span>The <code><a href=#the-input-element>input</a></code> element as a button</h4>
+ <h4 id=the-input-element-as-a-button><span class=secno>11.4.12 </span>The <code><a href=#the-input-element>input</a></code> element as a button</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -63999,14 +64744,14 @@
- <h4 id=the-marquee-element><span class=secno>10.4.13 </span>The <code><a href=#the-marquee-element-0>marquee</a></code> element</h4>
+ <h4 id=the-marquee-element><span class=secno>11.4.13 </span>The <code><a href=#the-marquee-element-0>marquee</a></code> element</h4>
<p class=XXX>...(Waiting til I've specced the DOM side of this)...</p>
<!-- XXX attributes: height/width; direction is case insensitive; bgcolor; hspace/vspace -->
- <h4 id=the-meter-element-0><span class=secno>10.4.14 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
+ <h4 id=the-meter-element-0><span class=secno>11.4.14 </span>The <code><a href=#the-meter-element>meter</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -64036,7 +64781,7 @@
- <h4 id=the-progress-element-0><span class=secno>10.4.15 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
+ <h4 id=the-progress-element-0><span class=secno>11.4.15 </span>The <code><a href=#the-progress-element>progress</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -64072,7 +64817,7 @@
- <h4 id=the-select-element-0><span class=secno>10.4.16 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
+ <h4 id=the-select-element-0><span class=secno>11.4.16 </span>The <code><a href=#the-select-element>select</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -64128,7 +64873,7 @@
- <h4 id=the-textarea-element-0><span class=secno>10.4.17 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
+ <h4 id=the-textarea-element-0><span class=secno>11.4.17 </span>The <code><a href=#the-textarea-element>textarea</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -64161,7 +64906,7 @@
- <h4 id=the-keygen-element-0><span class=secno>10.4.18 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
+ <h4 id=the-keygen-element-0><span class=secno>11.4.18 </span>The <code><a href=#the-keygen-element>keygen</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -64174,7 +64919,7 @@
- <h4 id=the-time-element-0><span class=secno>10.4.19 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
+ <h4 id=the-time-element-0><span class=secno>11.4.19 </span>The <code><a href=#the-time-element>time</a></code> element</h4>
<pre class=css>@namespace url(http://www.w3.org/1999/xhtml);
@@ -64188,7 +64933,7 @@
- <h3 id=frames-and-framesets><span class=secno>10.5 </span>Frames and framesets</h3>
+ <h3 id=frames-and-framesets><span class=secno>11.5 </span>Frames and framesets</h3>
<p>When an <code><a href=#the-html-element>html</a></code> element's second child element is a
<code>frameset</code> element, the user agent is expected to render
@@ -64468,10 +65213,10 @@
- <h3 id=interactive-media><span class=secno>10.6 </span>Interactive media</h3>
+ <h3 id=interactive-media><span class=secno>11.6 </span>Interactive media</h3>
- <h4 id=links,-forms,-and-navigation><span class=secno>10.6.1 </span>Links, forms, and navigation</h4>
+ <h4 id=links,-forms,-and-navigation><span class=secno>11.6.1 </span>Links, forms, and navigation</h4>
<p>User agents are expected to allow the user to control aspects of
<a href=#hyperlink>hyperlink</a> activation and <a href=#form-submission-0>form submission</a>,
@@ -64504,7 +65249,7 @@
- <h4 id=the-mark-element-0><span class=secno>10.6.2 </span>The <code><a href=#the-mark-element>mark</a></code> element</h4>
+ <h4 id=the-mark-element-0><span class=secno>11.6.2 </span>The <code><a href=#the-mark-element>mark</a></code> element</h4>
<p>User agents are expected to allow the user to cycle through all
the <code><a href=#the-mark-element>mark</a></code> elements in a <code>Document</code>. User
@@ -64515,7 +65260,7 @@
- <h4 id=the-title-attribute-0><span class=secno>10.6.3 </span>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute</h4>
+ <h4 id=the-title-attribute-0><span class=secno>11.6.3 </span>The <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute</h4>
<p>Given an element (e.g. the element designated by the mouse
cursor), if the element, or one of its ancestors, has a <code title=attr-title><a href=#the-title-attribute>title</a></code> attribute, and the nearest such
@@ -64529,7 +65274,7 @@
- <h3 id=print-media><span class=secno>10.7 </span>Print media</h3>
+ <h3 id=print-media><span class=secno>11.7 </span>Print media</h3>
<p>User agents are expected to allow the user to request the
opportunity to <dfn id=obtain-a-physical-form>obtain a physical form</dfn> (or a
@@ -64544,7 +65289,7 @@
result, and the discard the view.</p>
- <h3 id=interaction-with-css><span class=secno>10.8 </span>Interaction with CSS</h3>
+ <h3 id=interaction-with-css><span class=secno>11.8 </span>Interaction with CSS</h3>
<!-- XXX this should be normative, so we'll have to move it out of
this section -->
@@ -64568,7 +65313,7 @@
<div class=impl>
- <h2 id=obsolete-features><span class=secno>11 </span>Obsolete features</h2>
+ <h2 id=obsolete-features><span class=secno>12 </span>Obsolete features</h2>
<p>Authors and documents must not use the features listed in this
section. They are documented to enable user agents to support legacy
@@ -64579,9 +65324,9 @@
S SPACER STRIKE TT U -->
- <h3 id=self-contained-features><span class=secno>11.1 </span>Self-contained features</h3>
+ <h3 id=self-contained-features><span class=secno>12.1 </span>Self-contained features</h3>
- <h4 id=the-applet-element><span class=secno>11.1.1 </span>The <dfn><code>applet</code></dfn> element</h4>
+ <h4 id=the-applet-element><span class=secno>12.1.1 </span>The <dfn><code>applet</code></dfn> element</h4>
<p>The <code><a href=#the-applet-element>applet</a></code> element is a Java-specific variant of the
<code><a href=#the-embed-element>embed</a></code> element. In HTML5 the <code><a href=#the-applet-element>applet</a></code> element
@@ -64609,12 +65354,12 @@
<code><a href=#the-applet-element>applet</a></code> elements.</p>
- <h4 id=the-marquee-element-0><span class=secno>11.1.2 </span>The <dfn><code>marquee</code></dfn> element</h4>
+ <h4 id=the-marquee-element-0><span class=secno>12.1.2 </span>The <dfn><code>marquee</code></dfn> element</h4>
<p class=XXX>...</p>
- <h3 id=other-elements-and-attributes><span class=secno>11.2 </span>Other elements and attributes</h3>
+ <h3 id=other-elements-and-attributes><span class=secno>12.2 </span>Other elements and attributes</h3>
<p>The following elements are obsolete and either have no meaning
whatsoever or have no requirements beyond those described elsewhere
@@ -64632,7 +65377,7 @@
<li><dfn id=attr-body-link title=attr-body-link><code>link</code></dfn> on <code><a href=#the-body-element>body</a></code> elements</li>
<li><dfn id=attr-body-text title=attr-body-text><code>text</code></dfn> on <code><a href=#the-body-element>body</a></code> elements</li>
<li><dfn id=attr-body-vlink title=attr-body-vlink><code>vlink</code></dfn> on <code><a href=#the-body-element>body</a></code> elements</li>
- </ul><h3 id=other-dom-apis><span class=secno>11.3 </span>Other DOM APIs</h3>
+ </ul><h3 id=other-dom-apis><span class=secno>12.3 </span>Other DOM APIs</h3>
<p>These APIs expose obsolete content attributes.</p>
@@ -64715,7 +65460,7 @@
- <h3 id=conformance-checkers-0><span class=secno>11.4 </span>Conformance checkers</h3>
+ <h3 id=conformance-checkers-0><span class=secno>12.4 </span>Conformance checkers</h3>
<p>To ease the transition from HTML4 Transitional documents to the
language defined in <em>this</em> specification, conformance
@@ -64791,7 +65536,7 @@
- <h2 id=no><span class=secno>12 </span>Things that you can't do with this specification because
+ <h2 id=no><span class=secno>13 </span>Things that you can't do with this specification because
they are better handled using other technologies that are further
described herein</h2>
@@ -64833,7 +65578,7 @@
XXX should ensure these are filed with the relevant people and groups
-->
- <h3 id=localization><span class=secno>12.1 </span>Localization</h3>
+ <h3 id=localization><span class=secno>13.1 </span>Localization</h3>
<p>If you wish to create localized versions of an HTML application,
the best solution is to preprocess the files on the server, and then
@@ -64842,7 +65587,7 @@
<!-- <p>XXX example here</p> -->
- <h3 id=declarative-3d-scenes><span class=secno>12.2 </span>Declarative 3D scenes</h3>
+ <h3 id=declarative-3d-scenes><span class=secno>13.2 </span>Declarative 3D scenes</h3>
<p>Embedding 3D imagery into XHTML documents is the domain of X3D,
or technologies based on X3D that are namespace-aware.</p>
@@ -64853,7 +65598,7 @@
- <h3 id=rendering-and-the-dom><span class=secno>12.3 </span>Rendering and the DOM</h3>
+ <h3 id=rendering-and-the-dom><span class=secno>13.3 </span>Rendering and the DOM</h3>
<p class=XXX>This section is expected to be moved to its own
specification in due course. It needs a lot of work to actually make
Modified: source
===================================================================
--- source 2009-05-07 08:48:03 UTC (rev 3073)
+++ source 2009-05-10 10:32:35 UTC (rev 3074)
@@ -3842,6 +3842,65 @@
</div>
+
+ <h4>Reversed DNS identifiers</h4>
+
+ <p>A <dfn>valid reversed DNS identifier</dfn> is a string that
+ consists of a series of IDNA labels in reverse order (i.e. starting
+ with the top-level domain), the prefix of which, when reversed and
+ converted to ASCII, corresponds to a registered domain.</p>
+
+ <p class="example">For instance, the string "<code
+ title="">com.example.xn--74h</code>" is a <span>valid reversed DNS
+ identifier</span> because the string "<code
+ title="">example.com</code>" is a registered domain.</p>
+
+ <div class="impl">
+
+ <p>To check if a string is a <span>valid reversed DNS
+ identifier</span>, conformance checkers must run the following algorithm:</p>
+
+ <ol>
+
+ <li>
+
+ <p>Apply the IDNA ToASCII algorithm to the string, with both the
+ AllowUnassigned and UseSTD3ASCIIRules flags set, but between steps
+ 2 and 3 of the general ToASCII/ToUnicode algorithm (i.e. after
+ splitting the domain name into individual labels), reverse the
+ order of the labels.</p>
+
+ <p>If ToASCII fails to convert one of the components of the
+ string, e.g. because it is too long or because it contains invalid
+ characters, then the string is not valid; abort these steps. <a
+ href="#refsRFC3490">[RFC3490]</a></p>
+
+ </li>
+
+ <li>
+
+ <p>Check that the end of the resulting string matches a suffix in
+ the Public Suffix List, and that there is at least one domain
+ label before the matching substring. If it does not, or if there
+ is not, then the string is not valid; abort these steps. <a
+ href="#refsPSL">[PSL]</a></p> <!-- [PSL] http://publicsuffix.org/
+ -->
+
+ </li>
+
+ <li>
+
+ <p>Check that the domain name up to the label before the prefix
+ that was matched in the previous string is a registered domain
+ name.</p>
+
+ </li>
+
+ </ol>
+
+ </div>
+
+
<h4 id="syntax-references">References</h4>
<p>A <dfn>valid hash-name reference</dfn> to an element of type <var
@@ -5820,18 +5879,18 @@
href="#refsWEBIDL">[WEBIDL]</a></p>
<p>If a reflecting DOM attribute is of the type
- <code>DOMTokenList</code>, then on getting it must return a
- <code>DOMTokenList</code> object whose underlying string is the
- element's corresponding content attribute. When the
- <code>DOMTokenList</code> object mutates its underlying string, the
+ <code>DOMTokenList</code> or <code>DOMSettableTokenList</code>, then
+ on getting it must return a <code>DOMTokenList</code> or
+ <code>DOMSettableTokenList</code> object (as appropriate) whose
+ underlying string is the element's corresponding content
+ attribute. When the object mutates its underlying string, the
content attribute must itself be immediately mutated. When the
- attribute is absent, then the string represented by the
- <code>DOMTokenList</code> object is the empty string; when the
- object mutates this empty string, the user agent must first add the
- corresponding content attribute, and then mutate that attribute
- instead. <code>DOMTokenList</code> attributes are always
- read-only. The same <code>DOMTokenList</code> object must be
- returned every time for each attribute.</p>
+ attribute is absent, then the string represented by the object is
+ the empty string; when the object mutates this empty string, the
+ user agent must first add the corresponding content attribute, and
+ then mutate that attribute instead. The same
+ <code>DOMTokenList</code> object must be returned every time for
+ each attribute.</p>
<p>If a reflecting DOM attribute has the type
<code>HTMLElement</code>, or an interface that descends from
@@ -5869,8 +5928,9 @@
<h4>Collections</h4>
<p>The <code>HTMLCollection</code>,
- <code>HTMLFormControlsCollection</code>, and
- <code>HTMLOptionsCollection</code> interfaces represent various
+ <code>HTMLFormControlsCollection</code>,
+ <code>HTMLOptionsCollection</code>, and
+ <code>HTMLPropertyCollection</code> interfaces represent various
lists of DOM nodes. Collectively, objects implementing these
interfaces are called <dfn>collections</dfn>.</p>
@@ -5931,6 +5991,7 @@
<dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLCollection-item">namedItem</code>(<var title="">name</var>)</dt>
<dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
<dd>
<p>Returns the first item with ID or name <var title="">name</var>
from the collection.</p>
@@ -6035,6 +6096,7 @@
<dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLFormControlsCollection-item">namedItem</code>(<var title="">name</var>)</dt>
<dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title="dom-HTMLFormControlsCollection-item">namedItem</code>(<var title="">name</var>)</dt>
<dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
<dd>
<p>Returns the item with ID or <code title="attr-fe-name">name</code> <var title="">name</var> from the collection.</p>
<p>If there are multiple matching items, then a <code>RadioNodeList</code> object containing all those elements is returned.</p>
@@ -6205,6 +6267,7 @@
<dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLOptionsCollection-item">namedItem</code>(<var title="">name</var>)</dt>
<dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
<dd>
<p>Returns the item with ID or <code title="attr-option-name">name</code> <var title="">name</var> from the collection.</p>
<p>If there are multiple matching items, then a <code>NodeList</code> object containing all those elements is returned.</p>
@@ -6379,6 +6442,145 @@
</div>
+ <h5>HTMLPropertyCollection</h5>
+
+ <p>The <code>HTMLPropertyCollection</code> interface represents a
+ <span title="collections">collection</span> of elements that add
+ name-value pairs to a particular <span
+ title="concept-item">item</span> in the <span>microdata</span>
+ model.</p>
+
+ <pre class="idl">[Callable=<span title="dom-HTMLPropertyCollection-namedItem">namedItem</span>]
+interface <dfn>HTMLPropertyCollection</dfn> {
+ readonly attribute unsigned long <span title="dom-HTMLPropertyCollection-length">length</span>;
+ readonly attribute <span>DOMStringList</span> <span title="dom-HTMLPropertyCollection-names">names</span>;
+ [IndexGetter] <span>HTMLElement</span> <span title="dom-HTMLPropertyCollection-item">item</span>(in unsigned long index);
+ [NameGetter] Object <span title="dom-HTMLPropertyCollection-namedItem">namedItem</span>(in DOMString name);
+};
+
+typedef sequence<DOMString> <dfn>DOMStringArray</dfn>;
+
+interface <dfn>PropertyNodeList</dfn> : <span>NodeList</span> {
+ attribute <span>DOMStringArray</span> <span title="dom-PropertyNodeList-content">content</span>;
+};</pre>
+
+ <dl class="domintro">
+
+ <dt><var title="">collection</var> . <code title="dom-HTMLPropertyCollection-length">length</code></dt>
+ <dd>
+ <p>Returns the number of elements in the collection.</p>
+ </dd>
+
+ <dt><var title="">collection</var> . <code title="dom-HTMLPropertyCollection-names">names</code></dt>
+ <dd>
+ <p>Returns a <code>DOMStringList</code> with the <span>property names</span> of the elements in the collection.</p>
+ </dd>
+
+ <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLPropertyCollection-item">item</code>(<var title="">index</var>)</dt>
+ <dt><var title="">collection</var>[<var title="">index</var>]</dt>
+ <dd>
+ <p>Returns the element with index <var title="">index</var> from the collection. The items are sorted in <span>tree order</span>.</p>
+ <p>Returns null if <var title="">index</var> is out of range.</p>
+ </dd>
+
+ <dt><var title="">element</var> = <var title="">collection</var> . <code title="dom-HTMLPropertyCollection-item">namedItem</code>(<var title="">name</var>)</dt>
+ <dt><var title="">radioNodeList</var> = <var title="">collection</var> . <code title="dom-HTMLPropertyCollection-item">namedItem</code>(<var title="">name</var>)</dt>
+ <dt><var title="">collection</var>[<var title="">name</var>]</dt>
+ <dt><var title="">collection</var>(<var title="">name</var>)</dt>
+ <dd>
+ <p>Returns the element with that adds the property named <var title="">name</var> from the collection.</p>
+ <p>If there are multiple matching elements, then a <code>PropertyNodeList</code> object containing all those elements is returned.</p>
+ <p>Returns null if no element adds the property named <var title="">name</var>.</p>
+ </dd>
+
+ <dt><var title="">propertyNodeList</var> . <var title="">content</var></dt>
+
+ <dd>
+
+ <p>Returns an array of the various values that the relevant elements have.</p>
+
+ </dd>
+
+ </dl>
+
+ <div class="impl">
+
+ <hr>
+
+ <p>The object's <span>indices of the supported indexed
+ properties</span> are the numbers in the range zero to one less than
+ the number of nodes <span>represented by the collection</span>. If
+ there are no such elements, then there are no <span>supported
+ indexed properties</span>.</p>
+
+ <p>The <dfn
+ title="dom-HTMLPropertyCollection-length"><code>length</code></dfn>
+ attribute must return the number of nodes <span>represented by the
+ collection</span>.</p>
+
+ <p>The <dfn
+ title="dom-HTMLPropertyCollection-names"><code>names</code></dfn>
+ attribute must return a live <code>DOMStringList</code> object
+ giving the <span>property names</span> of all the elements
+ <span>represented by the collection</span>. The same object must be
+ returned each time.</p>
+
+ <p>The <dfn
+ title="dom-HTMLPropertyCollection-item"><code>item(<var
+ title="">index</var>)</code></dfn> method must return the <var
+ title="">index</var>th node in the collection. If there is no <var
+ title="">index</var>th node in the collection, then the method must
+ return null.</p>
+
+ <p>The <span>names of the supported named properties</span> consist
+ of the <span>property names</span> of all the elements
+ <span>represented by the collection</span>.</p>
+
+ <p>The <dfn
+ title="dom-HTMLPropertyCollection-namedItem"><code>namedItem(<var
+ title="">name</var>)</code></dfn> method must act according to the
+ following algorithm:</p>
+
+ <ol>
+
+ <li>If, at the time the method is called, there is exactly one node
+ in the collection that has a <span title="property names">property
+ name</span> equal to <var title="">name</var>, then return that
+ node and stop the algorithm.</li>
+
+ <li>Otherwise, if there are no nodes in the collection that have a
+ <span title="property names">property name</span> equal to <var
+ title="">name</var>, then return null and stop the algorithm.</li>
+
+ <li>Otherwise, create a <code>PropertyNodeList</code> object
+ representing a live view of the <code>HTMLPropertyCollection</code>
+ object, further filtered so that the only nodes in the
+ <code>RadioNodeList</code> object are those that have a <span
+ title="property names">property name</span> equal to <var
+ title="">name</var>. The nodes in the <code>PropertyNodeList</code>
+ object must be sorted in <span>tree order</span>.</li>
+
+ <li>Return that <code>PropertyNodeList</code> object.</li>
+
+ </ol>
+
+ <hr>
+
+ <p>A members of the <code>PropertyNodeList</code> interface
+ inherited from the <code>NodeList</code> interface must behave as
+ they would on a <code>NodeList</code> object.</p>
+
+ <p>The <dfn
+ title="dom-PropertyNodeList-content"><code>content</code></dfn> DOM
+ attribute on the <code>PropertyNodeList</code> object, on getting,
+ must return a newly constructed <code>DOMStringArray</code> whose
+ values are the values obtained from the <code
+ title="dom-content">content</code> DOM property of each of the
+ elements represented by the object, in <span>tree order</span>.</p>
+
+ </div>
+
+
<h4>DOMTokenList</h4>
<p>The <code>DOMTokenList</code> interface represents an interface
@@ -6572,8 +6774,45 @@
</div>
+
+ <h4>DOMSettableTokenList</h4>
+
+ <p>The <code>DOMSettableTokenList</code> interface is the same as the
+ <code>DOMTokenList</code> interface, except that it allows the
+ underlying string to be directly changed.</p>
+
+ <pre class="idl">[<span title="dom-tokenlist-toString">Stringifies</span>] interface <dfn>DOMSettableTokenList</dfn> : <span>DOMTokenList</span> {
+ attribute DOMString <span title="dom-DOMSettableTokenList-value">value</span>;
+};</pre>
+
+ <dl class="domintro">
+
+ <dt><var title="">tokenlist</var> . <code title="dom-DOMSettableTokenList-value">value</code></dt>
+ <dd>
+ <p>Returns the underlying string.</p>
+ <p>Can be set, to change the underlying string.</p>
+ </dd>
+
+ </dl>
+
<div class="impl">
+ <p>An object implementing the <code>DOMSettableTokenList</code>
+ interface must act as defined for the <code>DOMTokenList</code>
+ interface, except for the <code
+ title="dom-DOMSettableTokenList-value">value</code> attribute defined
+ here.</p>
+
+ <p>The <dfn
+ title="dom-DOMSettableTokenList-value"><code>value</code></dfn>
+ attribute must return the underlying string on getting, and must
+ replace the underlying string with the new value on setting.</p>
+
+ </div>
+
+
+ <div class="impl">
+
<h4>Safe passing of structured data</h4>
<p>When a user agent is required to obtain a <dfn>structured
@@ -6707,7 +6946,6 @@
</div>
-
<h4>DOMStringMap</h4>
<p>The <code>DOMStringMap</code> interface represents a set of
@@ -6988,6 +7226,7 @@
readonly attribute <span>HTMLCollection</span> <span title="dom-document-forms">forms</span>;
readonly attribute <span>HTMLCollection</span> <span title="dom-document-anchors">anchors</span>;
readonly attribute <span>HTMLCollection</span> <span title="dom-document-scripts">scripts</span>;
+ readonly attribute <span>HTMLCollection</span> <span title="dom-document-items">items</span>;
NodeList <span title="dom-document-getElementsByName">getElementsByName</span>(in DOMString elementName);
NodeList <span title="dom-document-getElementsByClassName">getElementsByClassName</span>(in DOMString classNames);
@@ -8019,6 +8258,13 @@
readonly attribute <span>DOMTokenList</span> <span title="dom-classList">classList</span>;
readonly attribute <span>DOMStringMap</span> <span title="dom-dataset">dataset</span>;
+ // <span>microdata</span>
+ [PutForwards=<span title="dom-DOMSettableTokenList-value">value</span>] readonly attribute <span>DOMSettableTokenList</span> <span title="dom-item">item</span>;
+ [PutForwards=<span title="dom-DOMSettableTokenList-value">value</span>] readonly attribute <span>DOMSettableTokenList</span> <span title="dom-property">property</span>;
+ readonly attribute <span>HTMLPropertyCollection</span> <span title="dom-properties">properties</span>;
+ attribute DOMString <span title="dom-content">content</span>;
+ attribute <span>HTMLElement</span> <span title="dom-subject">subject</span>;
+
// <span>user interaction</span>
attribute boolean <span title="dom-hidden">hidden</span>;
void <span title="dom-click">click</span>();
@@ -8125,10 +8371,13 @@
<li><code title="attr-dir">dir</code></li>
<li><code title="attr-draggable">draggable</code></li>
<li><code title="attr-id">id</code></li>
+ <li><code title="attr-item">item</code></li>
<li><code title="attr-hidden">hidden</code></li>
<li><code title="attr-lang">lang</code></li>
+ <li><code title="attr-property">property</code></li>
+ <li><code title="attr-spellcheck">spellcheck</code></li>
<li><code title="attr-style">style</code></li>
- <li><code title="attr-spellcheck">spellcheck</code></li>
+ <li><code title="attr-subject">subject</code></li>
<li><code title="attr-tabindex">tabindex</code></li>
<li><code title="attr-title">title</code></li>
</ul>
@@ -10480,9 +10729,11 @@
<dl class="element">
<dt>Categories</dt>
<dd><span>Metadata content</span>.</dd>
+ <dd>If the <code title="attr-property">property</code> attribute is present: <span>flow content</span>.</dd>
<dt>Contexts in which this element may be used:</dt>
<dd>Where <span>metadata content</span> is expected.</dd>
<dd>In a <code>noscript</code> element that is a child of a <code>head</code> element.</dd>
+ <dd>If the <code title="attr-property">property</code> attribute is present: where <span>flow content</span> is expected.</dd>
<dt>Content model:</dt>
<dd>Empty.</dd>
<dt>Content attributes:</dt>
@@ -10838,11 +11089,13 @@
<dl class="element">
<dt>Categories</dt>
<dd><span>Metadata content</span>.</dd>
+ <dd>If the <code title="attr-property">property</code> attribute is present: <span>flow content</span>.</dd>
<dt>Contexts in which this element may be used:</dt>
<dd>If the <code title="attr-meta-charset">charset</code> attribute is present, or if the element is in the <span title="attr-meta-http-equiv-content-type">Encoding declaration state</span>: in a <code>head</code> element.</dd>
<dd>If the <code title="attr-meta-http-equiv">http-equiv</code> attribute is present, and the element is not in the <span title="attr-meta-http-equiv-content-type">Encoding declaration state</span>: in a <code>head</code> element.</dd>
<dd>If the <code title="attr-meta-http-equiv">http-equiv</code> attribute is present, and the element is not in the <span title="attr-meta-http-equiv-content-type">Encoding declaration state</span>: in a <code>noscript</code> element that is a child of a <code>head</code> element.</dd>
<dd>If the <code title="attr-meta-name">name</code> attribute is present: where <span>metadata content</span> is expected.</dd>
+ <dd>If the <code title="attr-property">property</code> attribute is present: where <span>flow content</span> is expected.</dd>
<dt>Content model:</dt>
<dd>Empty.</dd>
<dt>Content attributes:</dt>
@@ -10854,7 +11107,6 @@
<dt>DOM interface:</dt>
<dd>
<pre class="idl">interface <dfn>HTMLMetaElement</dfn> : <span>HTMLElement</span> {
- attribute DOMString <span title="dom-meta-content">content</span>;
attribute DOMString <span title="dom-meta-name">name</span>;
attribute DOMString <span title="dom-meta-httpEquiv">httpEquiv</span>;
};</pre>
@@ -10876,14 +11128,16 @@
title="attr-meta-charset">charset</code> attribute.</p>
<p>Exactly one of the <code title="attr-meta-name">name</code>,
- <code title="attr-meta-http-equiv">http-equiv</code>, and <code
- title="attr-meta-charset">charset</code> attributes must be
+ <code title="attr-meta-http-equiv">http-equiv</code>, <code
+ title="attr-meta-charset">charset</code>, and <code
+ title="attr-property">property</code> attributes must be
specified.</p>
- <p>If either <code title="attr-meta-name">name</code> or <code
- title="attr-meta-http-equiv">http-equiv</code> is specified, then
- the <code title="attr-meta-content">content</code> attribute must
- also be specified. Otherwise, it must be omitted.</p>
+ <p>If either <code title="attr-meta-name">name</code>, <code
+ title="attr-meta-http-equiv">http-equiv</code>, or <code
+ title="attr-property">property</code> is specified, then the <code
+ title="attr-meta-content">content</code> attribute must also be
+ specified. Otherwise, it must be omitted.</p>
<p>The <dfn title="attr-meta-charset"><code>charset</code></dfn>
attribute specifies the character encoding used by the
@@ -10922,21 +11176,11 @@
then the value part of the metadata name/value pair is the empty
string.</p>
- <p>If a <code>meta</code> element has the <code
- title="attr-meta-http-equiv">http-equiv</code> attribute specified,
- it must be either in a <code>head</code> element or in a
- <code>noscript</code> element that itself is in a <code>head</code>
- element. If a <code>meta</code> element does not have the <code
- title="attr-meta-http-equiv">http-equiv</code> attribute specified,
- it must be in a <code>head</code> element.</p>
-
<div class="impl">
- <p>The DOM attributes <dfn
- title="dom-meta-name"><code>name</code></dfn> and <dfn
- title="dom-meta-content"><code>content</code></dfn> must
- <span>reflect</span> the respective content attributes of the same
- name. The DOM attribute <dfn
+ <p>The <dfn title="dom-meta-name"><code>name</code></dfn> DOM
+ attribute must <span>reflect</span> the content attribute of the
+ same name. The DOM attribute <dfn
title="dom-meta-httpEquiv"><code>httpEquiv</code></dfn> must
<span>reflect</span> the content attribute <code
title="attr-meta-http-equiv">http-equiv</code>.</p>
@@ -45558,7 +45802,685 @@
+ <h2><dfn>Microdata</dfn></h2>
+ <h3>Introduction</h3>
+
+ <p class="XXX">...</p>
+
+
+ <h3>Encoding microdata</h3>
+
+ <h4>The microdata model</h4>
+
+ <p>The microdata model consists of groups of name-value pairs known
+ as <dfn title="concept-item">items</dfn>.</p>
+
+ <p>Each group has zero or more types, each name has one or more
+ values, and each value is either a string or another group of
+ name-value pairs.</p>
+
+
+ <h4>Items: the <dfn title="attr-item"><code>item</code></dfn> attribute</h4>
+
+ <p>Every <span title="HTML elements">HTML element</span> may have an
+ <code title="attr-item">item</code> attribute specified.</p>
+
+ <p>An element with the <code title="attr-item">item</code> attribute
+ specified creates a new <span title="concept-item">item</span>, a
+ group of name-value pairs.</p>
+
+ <p>The attribute, if specified, must have a value that is an
+ <span>unordered set of unique space-separated tokens</span>
+ representing the types (if any) of the <span
+ title="concept-item">item</span>.</p>
+
+ <p>Each token must be either:</p>
+
+ <ul>
+
+ <li>A <span>valid URL</span> that is an <span>absolute URL</span>,
+ or</li>
+
+ <li>A <span>valid reversed DNS identifier</span>, or</li>
+<!--
+ <li>A <span>predefined type</span>.</li>
+-->
+ </ul>
+<!--
+ <p>If any of the tokens are a <span>predefined type</span>, then
+ there must not be any other tokens that are <span title="predefined
+ type">predefined types</span>.</p>
+-->
+ <p>The <dfn>item types</dfn> of an element with a <code
+ title="attr-item">item</code> attribute are the tokens that the
+ element's <code title="attr-item">item</code> attribute is found to
+ contain when its value is <span title="split a string on
+ spaces">split on spaces</span>.</p>
+
+
+ <h4>Associating names with items</h4>
+
+ <p>The <dfn title="attr-subject"><code>subject</code></dfn>
+ attribute may be specified on any <span title="HTML elements">HTML
+ element</span> to associate the element with an element with an
+ <code title="attr-item">item</code> attribute. If the <code
+ title="attr-subject">subject</code> attribute is specified, the
+ attribute's value must be the ID of an element with an <code
+ title="attr-item">item</code> attribute, in the same
+ <code>Document</code> as the element with the <code
+ title="attr-subject">subject</code> attribute.</p>
+
+ <p>An element's <dfn
+ title="concept-item-corresponding">corresponding item</dfn> is
+ determined by its position in the DOM and by any <code
+ title="attr-subject">subject</code> attributes on the element, and
+ is defined as follows:</p>
+
+ <dl>
+
+ <dt>If the element has neither <code
+ title="attr-subject">subject</code> attribute nor an ancestor with
+ an <code title="attr-item">item</code> attribute specified</dt>
+
+ <dd><p>The element has no <span
+ title="concept-item-corresponding">corresponding
+ item</span>.</p></dd>
+
+ <dt>If the element has no <code title="attr-subject">subject</code>
+ attribute but does have an ancestor with an <code
+ title="attr-item">item</code> attribute specified</dt>
+
+ <dd><p>The nearest ancestor element with the <code
+ title="attr-item">item</code> attribute specified is the element's
+ <span title="concept-item-corresponding">corresponding
+ item</span>.</p></dd>
+
+ <dt>If the element has a <code title="attr-subject">subject</code>
+ attribute</dt>
+
+ <dd><p>If there is an element in the document with an ID equal to
+ the value of the <code title="attr-subject">subject</code>
+ attribute, and if the first such element has an <code
+ title="attr-item">item</code> attribute specified, then that
+ element is the <span
+ title="concept-item-corresponding">corresponding
+ item</span>. Otherwise, there is no <span
+ title="concept-item-corresponding">corresponding
+ item</span>.</p></dd>
+
+ </dl>
+
+ <p>The list of elements that create <span
+ title="concept-item">items</span> but do not themselves have a <span
+ title="concept-item-corresponding">corresponding item</span> forms
+ the list of <dfn>top-level microdata items</dfn>.</p>
+
+
+ <h4>Names: the <dfn title="attr-property"><code>property</code></dfn> attribute</h4>
+
+ <p>Every <span title="HTML elements">HTML element</span> that has a
+ <span title="concept-item-corresponding">corresponding item</span>
+ may have a <code title="attr-property">property</code> attribute
+ specified.</p>
+
+ <p>An element with the <code title="attr-property">property</code>
+ attribute specified adds one or more name-value pairs to its
+ <span title="concept-item-corresponding">corresponding item</span>.</p>
+
+ <p>The <code title="attr-property">property</code> attribute, if
+ specified, must have a value that is an <span>unordered set of
+ unique space-separated tokens</span> representing the names of the
+ name-value pairs that it adds. The attribute's value must have at
+ least one token.</p>
+
+ <p>Each token must be either:</p>
+
+ <ul>
+
+ <li>A <span>valid URL</span> that is an <span>absolute URL</span>,
+ or</li>
+
+ <li>A <span>valid reversed DNS identifier</span>, or</li>
+
+ <li>If its <span title="concept-item-corresponding">corresponding
+ item</span>'s <code title="attr-item">item</code> attribute has no
+ tokens: a string containing neither a U+003A COLON character (:), a
+ U+002E FULL STOP character (.), nor a U+0020 SPACE character, or</li>
+<!--
+ <li>If its <span title="concept-item-corresponding">corresponding
+ item</span>'s <code title="attr-item">item</code> attribute
+ included a <span>predefined type</span>: one of the <span
+ title="predefined name">predefined names</span> for that particular
+ <span>predefined type</span>.</li>
+-->
+ </ul>
+
+ <p>The <dfn>property names</dfn> of an element are the tokens that
+ the element's <code title="attr-property">property</code> attribute
+ is found to contain when its value is <span title="split a string on
+ spaces">split on spaces</span>.</p>
+
+
+ <h4>Values</h4>
+
+ <p>The <dfn title="concept-property-value">property value</dfn> of a
+ name-value pair added by an element with a <code
+ title="attr-property">property</code> attribute depends on the
+ element, as follows:</p>
+
+ <dl>
+
+ <dt>If the element also has an <code title="attr-item">item</code>
+ attribute</dt>
+
+ <dd><p>The value is the <span title="concept-item">item</span>
+ created by the element.</p></dd>
+
+
+ <dt>If the element is a <code>meta</code> element</dt>
+
+ <dd><p>The value is the value of the element's <code
+ title="attr-content">content</code> attribute, if any, or the empty
+ string if there is no such attribute.</p></dd>
+
+
+ <dt>If the element is an <code>embed</code>, <code>iframe</code>,
+ <code>img</code>, <code>source</code>, or <code>video</code>
+ element</dt>
+
+ <dd><p>The value is the <span>absolute URL</span> that results from
+ <span title="resolve a url">resolving</span> the value of the
+ element's <code title="">src</code> attribute relative to the
+ element at the time the attribute is set, or the empty string if
+ there is no such attribute or if <span title="resolve a
+ url">resolving</span> it results in an error.</p></dd>
+
+
+ <dt>If the element is an <code>a</code>, <code>area</code>, or
+ <code>link</code> element</dt>
+
+ <dd><p>The value is the <span>absolute URL</span> that results from
+ <span title="resolve a url">resolving</span> the value of the
+ element's <code title="">href</code> attribute relative to the
+ element at the time the attribute is set, or the empty string if
+ there is no such attribute or if <span title="resolve a
+ url">resolving</span> it results in an error.</p></dd>
+
+
+ <dt>If the element is an <code>object</code> element</dt>
+
+ <dd><p>The value is the <span>absolute URL</span> that results from
+ <span title="resolve a url">resolving</span> the value of the
+ element's <code title="">data</code> attribute relative to the
+ element at the time the attribute is set, or the empty string if
+ there is no such attribute or if <span title="resolve a
+ url">resolving</span> it results in an error.</p></dd>
+
+
+ <dt>If the element is a <code>time</code> element with a <code
+ title="attr-datetime">datetime</code> attribute</dt>
+
+ <dd><p>The value is the value of the element's <code
+ title="attr-datetime">datetime</code> attribute.</p></dd>
+
+
+ <dt>Otherwise</dt>
+
+ <dd><p>The value is the element's
+ <code>textContent</code>.</p></dd>
+
+ </dl>
+
+
+
+ <h3>Microdata DOM API</h3>
+
+ <dl class="domintro">
+
+ <dt><var title="">document</var> . <code title="dom-items">items</code></dt>
+
+ <dd>
+
+ <p>Returns an <code>HTMLCollection</code> of the elements in the <code>Document</code> that create <span title="concept-item">items</span> and that are not part of other <span title="concept-item">items</span>.</p>
+
+ </dd>
+
+ <dt><var title="">element</var> . <code title="dom-property">properties</code></dt>
+
+ <dd>
+
+ <p>If the element has a <code title="attr-item">item</code>
+ attribute, returns an <code>HTMLPropertyCollection</code> object
+ with all the element's properties. Otherwise, an empty
+ <code>HTMLPropertyCollection</code> object.</p>
+
+ </dd>
+
+ <dt><var title="">element</var> . <code title="dom-content">content</code> [ = <var title="">value</var> ]</dt>
+
+ <dd>
+
+ <p>Returns the element's <span
+ title="concept-property-value">value</span>.</p>
+
+ <p>Can be set, to change the element's <span
+ title="concept-property-value">value</span>.</p>
+
+ </dd>
+
+ </dl>
+
+ <div class="impl">
+
+ <p>The <dfn
+ title="dom-document-items"><code>document.items</code></dfn>
+ attribute must return an <code>HTMLCollection</code> rooted at the
+ <code>Document</code> node, whose filter matches only elements in
+ the list of <span>top-level microdata items</span>.</p>
+
+ <p>The <dfn title="dom-item"><code>item</code></dfn> DOM attribute
+ on elements must <span>reflect</span> the element's <code
+ title="attr-item">item</code> content attribute.</p>
+
+ <p>The <dfn title="dom-property"><code>property</code></dfn> DOM
+ attribute on elements must <span>reflect</span> the element's <code
+ title="attr-property">property</code> content attribute.</p>
+
+ <p>The <dfn title="dom-properties"><code>properties</code></dfn> DOM
+ attribute on elements must return an
+ <code>HTMLPropertyCollection</code> rooted at the
+ <code>Document</code> node, whose filter matches only elements that
+ have <span>property names</span> and have a <span
+ title="concept-item-corresponding">corresponding item</span> that is
+ equal to the element on which the attribute was invoked.</p>
+
+ <p>The <dfn title="dom-content"><code>content</code></dfn> DOM
+ attribute's behavior depends on the element, as follows:</p>
+
+ <dl>
+
+ <dt>If the element is a <code>meta</code> element</dt>
+
+ <dd><p>The attribute must act as it would if it was <span
+ title="reflect">reflecting</span> the element's <code
+ title="attr-meta-content">content</code> content
+ attribute.</p></dd>
+
+
+ <dt>If the element is an <code>embed</code>, <code>iframe</code>,
+ <code>img</code>, <code>source</code>, or <code>video</code>
+ element</dt>
+
+ <dd><p>The attribute must act as it would if it was <span
+ title="reflect">reflecting</span> the element's <code
+ title="">src</code> content attribute.</p></dd>
+
+
+ <dt>If the element is an <code>a</code>, <code>area</code>, or
+ <code>link</code> element</dt>
+
+ <dd><p>The attribute must act as it would if it was <span
+ title="reflect">reflecting</span> the element's <code
+ title="">href</code> content attribute.</p></dd>
+
+
+ <dt>If the element is an <code>object</code> element</dt>
+
+ <dd><p>The attribute must act as it would if it was <span
+ title="reflect">reflecting</span> the element's <code
+ title="">data</code> content attribute.</p></dd>
+
+
+ <dt>If the element is a <code>time</code> element with a <code
+ title="attr-datetime">datetime</code> attribute</dt>
+
+ <dd><p>The attribute must act as it would if it was <span
+ title="reflect">reflecting</span> the element's <code
+ title="">datetime</code> content attribute.</p></dd>
+
+
+ <dt>Otherwise</dt>
+
+ <dd><p>The attribute must act the same as the element's
+ <code>textContent</code> attribute.</p></dd>
+
+ </dl>
+
+ <p>The <dfn title="dom-subject"><code>subject</code></dfn> DOM
+ attribute on elements must <span>reflect</span> the element's <code
+ title="attr-subject">subject</code> content attribute.</p>
+
+ </div>
+
+
+
+ <h3>Converting HTML to oher formats</h3>
+
+
+ <h4>JSON</h4>
+
+ <p>Given a node <var title="">node</var> in a <code>Document</code>,
+ a user agent must run the following algorithm to extract that node's
+ microdata into a JSON form:</p>
+
+ <ol>
+
+ <li><p>Let <var title="">result</var> be an empty object.</p></li>
+
+ <li><p>Let <var title="">items</var> be an empty array.</p></li>
+
+ <li><p>For <var title="">node</var> and each element that is a
+ descendant of <var title="">node</var>, check if the element is a
+ <span title="top-level microdata items">top-level microdata
+ item</span>, and if it is then <span>get the object</span> for that
+ element and add it to <var title="">items</var>.</p></li>
+
+ <li><p>Add an entry to <var title="">result</var> called "<code
+ title="">items</code>" whose value is the array <var
+ title="">items</var>.</p></li>
+
+ <li><p>Return the result of serializing <var title="">result</var>
+ to JSON.</p></li>
+
+ </ol>
+
+ <p>When the user agent is to <dfn>get the object</dfn> for an item
+ <var title="">item</var>, it must run the following substeps:</p>
+
+ <ol>
+
+ <li><p>Let <var title="">result</var> be an empty object.</p></li>
+
+ <li><p>Let <var title="">types</var> be an empty array.</p></li>
+
+ <li><p>For each <span title="item types">item type</span> <var
+ title="">type</var> of <var title="">item</var>, append <var
+ title="">type</var> to <var title="">types</var>.</p></li>
+
+ <li><p>Add an entry to <var title="">result</var> called "<code
+ title="">type</code>" whose value is the array <var
+ title="">types</var>.</p></li>
+
+ <li><p>Let <var title="">properties</var> be an empty
+ object.</p></li>
+
+ <li>
+
+ <p>For each element <var title="">element</var> that has one or
+ more <span>property names</span> and whose <span
+ title="concept-item-corresponding">corresponding item</span> is
+ <var title="">item</var>, run the following substeps:</p>
+
+ <ol>
+
+ <li><p>Let <var title="">value</var> be the <span
+ title="concept-property-value">property value</span> of <var
+ title="">element</var>.</p></li>
+
+ <li><p>If <var title="">value</var> is an element, then <span>get
+ the object</span> for the element <var title="">value</var>, and
+ then replace <var title="">value</var> with the object returned
+ from those steps.</p></li>
+
+ <li>
+
+ <p>For each name <var title="">name</var> in <var
+ title="">element</var>'s <span>property names</span>, run the
+ following substeps:</p>
+
+ <ol>
+
+ <li><p>If there is no entry named <var title="">name</var> in
+ <var title="">properties</var>, then add an entry named <var
+ title="">name</var> to <var title="">properties</var> whose
+ value is an empty array.</p></li>
+
+ <li><p>Append <var title="">value</var> to the entry named <var
+ title="">name</var> in <var title="">properties</var>.</p></li>
+
+ </ol>
+
+ </li>
+
+ </ol>
+
+ </li>
+
+ <li><p>Add an entry to <var title="">result</var> called "<code
+ title="">properties</code>" whose value is the array <var
+ title="">properties</var>.</p></li>
+
+ <li><p>Return <var title="">result</var>.</p></li>
+
+ </ol>
+
+
+ <h4>RDF</h4>
+
+ <p>To convert a <code>Document</code> to RDF, a user agent must run
+ the following algorithm:</p>
+
+ <ol>
+
+ <li>
+
+ <p>If <span>the <code>title</code> element</span> is not null,
+ then generate the following triple:</p>
+
+ <dl>
+ <dt>subject <dd> <span>the document's current address</span>
+ <dt>predicate <dd> <code title="">http://purl.org/dc/terms/title</code>
+ <dt>object <dd> the <code>textContent</code> of <span>the <code>title</code> element</span>
+ </dl>
+
+ </li>
+
+ <li>
+
+ <p>For each <code>a</code>, <code>area</code>, and
+ <code>link</code> element in the <code>Document</code>, run these
+ substeps:</p>
+
+ <ol>
+
+ <li><p>If the element does not have a <code title="">rel</code>
+ attribute, then skip this element.</p></li>
+
+ <li><p>If the element does not have an <code title="">href</code>
+ attribute, then skip this element.</p></li>
+
+ <li><p>If <span title="resolve a URL">resolving</span> the
+ element's <code title="">href</code> attribute relative to the
+ element is not successful, then skip this element.</p></li>
+
+ <li><p>Otherwise, <span title="split a string on spaces">split
+ the value of the element's <code title="">rel</code> attribute on
+ spaces</span>, obtaining <var title="">list of tokens</var>.</p></li>
+
+ <li><p><span title="converted to lowercase">Convert each token in
+ <var title="">list of tokens</var> to lowercase</span>.</p></li>
+
+ <li><p>If <var title="">list of tokens</var> contains both the
+ tokens <code title="rel-alternate">alternate</code> and <code
+ title="rel-stylesheet">stylesheet</code>, then remove them both
+ and replace them with the single token <code
+ title="">alternate-stylesheet</code>.</p></li>
+
+ <li><p>If <var title="">list of tokens</var> contains more than
+ one instance of the token <code title="rel-up">up</code>, then
+ remove all such tokens.</p></li>
+
+ <li>
+
+ <p>For each token <var title="">token</var> in <var
+ title="">list of tokens</var> that contains neither a U+003A
+ COLON character (:) nor a U+002E FULL STOP character (.),
+ generate the following triple:</p>
+
+ <dl>
+ <dt>subject <dd> <span>the document's current address</span>
+ <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and <var title="">token</var>
+ <dt>object <dd> the <span>absolute URL</span> that results from <span title="resolve a URL">resolving</span> the value of the element's <code title="">href</code> attribute relative to the element
+ </dl>
+
+ </li>
+
+ </ol>
+
+ </li>
+
+ <li>
+
+ <p>For each <code>meta</code> element in the <code>Document</code>
+ that has a <code title="attr-meta-name">name</code> attribute and
+ a <code title="attr-meta-content">content</code> attribute, if the
+ value of the <code title="attr-meta-name">name</code> attribute
+ contains neither a U+003A COLON character (:) nor a U+002E FULL
+ STOP character (.), generate the following triple:</p>
+
+ <dl>
+ <dt>subject <dd> <span>the document's current address</span>
+ <dt>predicate <dd> the concatenation of the string "<code title="">http://www.w3.org/1999/xhtml/vocab#</code>" and value of the element's <code title="attr-meta-name">name</code> attribute, <span>converted to lowercase</span>
+ <dt>object <dd> the value of the element's <code title="attr-meta-content">content</code> attribute
+ </dl>
+
+ </li>
+
+ <li>
+
+ <p>For each <code>article</code>, <code>section</code>,
+ <code>blockquote</code>, and <code>q</code> element in the
+ <code>Document</code> that has a <code title="">cite</code>
+ attribute that <span title="resolve a url">resolves</span>
+ successfully relative to the element, generate the following
+ triple:</p>
+
+ <dl>
+ <dt>subject <dd> <span>the document's current address</span>
+ <dt>predicate <dd> <code title="">http://purl.org/dc/terms/source</code>
+ <dt>object <dd> the <span>absolute URL</span> that results from <span title="resolve a URL">resolving</span> the value of the element's <code title="">cite</code> attribute relative to the element
+ </dl>
+
+ </li>
+
+ <li>
+
+ <p>For each element that is also a <span title="top-level
+ microdata items">top-level microdata item</span>, <span
+ title="generate the triples for an item">generate the triples for
+ the item</span>. (Nothing is done with the returned subject.)</p>
+
+ </li>
+
+ </ol>
+
+ <p>When the user agent is to <dfn>generate the triples for an
+ item</dfn> <var title="">item</var>, it must follow the following
+ steps:</p>
+
+ <ol>
+
+ <li><p>If there is exactly one element whose <span
+ title="concept-item-corresponding">corresponding item</span> is
+ <var title="">item</var> and that has as one of its <span>property
+ names</span> the string "<code title="">about</code>", and the
+ <span title="concept-property-value">property value</span> of that
+ element is an <span>absolute URL</span>, let <var
+ title="">subject</var> be that <span>absolute
+ URL</span>. Otherwise, let <var title="">subject</var> be a new
+ blank node.</p></li>
+
+ <li>
+
+ <p>For each <span title="item types">item type</span> <var
+ title="">type</var> of <var title="">item</var>, run the following
+ substeps:</p>
+
+ <ol>
+
+ <li><p>If <var title="">type</var> is not an <span>absolute
+ URL</span>, then let <var title="">type</var> be the result of
+ concatenating the string "<code
+ title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var
+ title="">type</var>.</p></li>
+
+ <li>
+
+ <p>Generate the following triple:</p>
+
+ <dl>
+ <dt>subject <dd> <var title="">subject</var>
+ <dt>predicate <dd> <code title="">http://www.w3.org/1999/02/22-rdf-syntax-ns#type</code>
+ <dt>object <dd> <var title="">type</var>
+ </dl>
+
+ </li>
+
+ </ol>
+
+ </li>
+
+ <li>
+
+ <p>For each element <var title="">element</var> that has one or
+ more <span>property names</span> and whose <span
+ title="concept-item-corresponding">corresponding item</span> is
+ <var title="">item</var>, run the following substeps:</p>
+
+ <ol>
+
+ <li><p>Let <var title="">value</var> be the <span
+ title="concept-property-value">property value</span> of <var
+ title="">element</var>.</p></li>
+
+ <li><p>If <var title="">value</var> is an element, then <span
+ title="generate the triples for an item">generate the triples for
+ the element <var title="">value</var></span>, and then replace
+ <var title="">value</var> with the subject returned from those
+ steps.</p></li>
+
+ <li>
+
+ <p>For each name <var title="">name</var> in <var
+ title="">element</var>'s <span>property names</span>, run the
+ following substeps:</p>
+
+ <ol>
+
+ <li><p>If <var title="">name</var> is not an <span>absolute
+ URL</span>, then let <var title="">name</var> be the result of
+ concatenating the string "<code
+ title="">http://www.w3.org/1999/xhtml/custom#</code>" with <var
+ title="">name</var>.</p></li>
+
+ <li>
+
+ <p>Generate the following triple:</p>
+
+ <dl>
+ <dt>subject <dd> <var title="">subject</var>
+ <dt>predicate <dd> <var title="">name</var>
+ <dt>object <dd> <var title="">value</var>
+ </dl>
+
+ </li>
+
+ </ol>
+
+ </li>
+
+ </ol>
+
+ </li>
+
+ <li><p>Return <var title="">subject</var>.</p></li>
+
+ </ol>
+
+
+
+
<h2 id="browsers">Web browsers</h2>
<div class="impl">
More information about the Commit-Watchers
mailing list