[prev in list] [next in list] [prev in thread] [next in thread] 

List:       html5-commit-watchers
Subject:    [html5] r8849 - [giow] (2) Flesh out how rendering happens in the event loop. This also defines [...
From:       whatwg () whatwg ! org
Date:       2014-11-19 21:56:47
Message-ID: 20141119215647.9C1D720237D874 () ps20323 ! dreamhostps ! com
[Download RAW message or body]

Author: ianh
Date: 2014-11-19 13:56:43 -0800 (Wed, 19 Nov 2014)
New Revision: 8849

Modified:
   complete.html
   index
   source
Log:
[giow] (2) Flesh out how rendering happens in the event loop. This also defines \
requestAnimationFrame() and obsoletes the 'Timing control for script-based \
animations' spec (by request of that spec's editors) Fixing \
https://www.w3.org/Bugs/Public/show_bug.cgi?id=26839 Affected topics: DOM APIs, HTML

Modified: complete.html
===================================================================
--- complete.html	2014-11-12 19:34:25 UTC (rev 8848)
+++ complete.html	2014-11-19 21:56:43 UTC (rev 8849)
@@ -340,7 +340,7 @@
   </style><body onload=init()>
   <header id=head class="head with-buttons">
    <p><a href=https://whatwg.org/ class=logo><img src=//whatwg.org/images/logo \
                width=101 alt=WHATWG height=101></a></p>
-   <hgroup><h1 class=allcaps>HTML</h1><h2 \
id=living-standard-—-last-updated-[date:-01-jan-1901] class="no-num no-toc">Living \
Standard — Last Updated <span class=pubdate>12 November 2014</span></h2></hgroup> + \
<hgroup><h1 class=allcaps>HTML</h1><h2 \
id=living-standard-—-last-updated-[date:-01-jan-1901] class="no-num no-toc">Living \
Standard — Last Updated <span class=pubdate>19 November 2014</span></h2></hgroup>  
    <nav>
     <div>
@@ -381,7 +381,7 @@
   on a <code>label</code> element to define a command</a><li><a \
href=#using-the-accesskey-attribute-on-a-legend-element-to-define-a-command>4.11.6.9 \
Using the <code>accesskey</code> attribute  on a <code>legend</code> element to \
define a command</a><li><a \
href=#using-the-accesskey-attribute-to-define-a-command-on-other-elements>4.11.6.10 \
Using the <code>accesskey</code>  attribute to define a command on other \
elements</a></ol><li><a href=#the-dialog-element>4.11.7 The <code>dialog</code> \
element</a><ol><li><a href=#anchor-points>4.11.7.1 Anchor points</a></ol></ol><li><a \
href=#scripting-3>4.12 Scripting</a><ol><li><a href=#the-script-element>4.12.1 The \
<code>script</code> element</a><ol><li><a href=#scriptingLanguages>4.12.1.1 Scripting \
languages</a><li><a href=#restrictions-for-contents-of-script-elements>4.12.1.2 \
Restrictions for contents of <code>script</code> elements</a><li><a \
href=#inline-documentation-for-external-scripts>4.12.1.3 Inline documentation for \
external scripts</a><li><a href=#scriptTagXSLT>4.12.1.4 Interaction of \
<code>script</code> elements and XSLT</a></ol><li><a \
href=#the-noscript-element>4.12.2 The <code>noscript</code> element</a><li><a \
href=#the-template-element>4.12.3 The <code>template</code> element</a><ol><li><a \
href=#template-XSLT-XPath>4.12.3.1 Interaction of <code>template</code> elements with \
XSLT and XPath  </a></ol><li><a href=#the-canvas-element>4.12.4 The \
<code>canvas</code> element</a><ol><li><a href=#proxying-canvases-to-workers>4.12.4.1 \
Proxying canvases to workers</a><li><a href=#2dcontext>4.12.4.2 The 2D rendering \
context</a><ol><li><a href=#implementation-notes>4.12.4.2.1 Implementation \
notes</a><li><a href=#the-canvas-state>4.12.4.2.2 The canvas state</a><li><a \
href=#drawingstyle-objects>4.12.4.2.3 <code>DrawingStyle</code> objects</a><li><a \
href=#line-styles>4.12.4.2.4 Line styles</a><li><a href=#text-styles>4.12.4.2.5 Text \
styles</a><li><a href=#building-paths>4.12.4.2.6 Building paths</a><li><a \
href=#path2d-objects>4.12.4.2.7 <code>Path2D</code> objects</a><li><a \
href=#transformations>4.12.4.2.8 Transformations</a><li><a \
href=#image-sources-for-2d-rendering-contexts>4.12.4.2.9 Image sources for 2D \
rendering contexts</a><li><a href=#fill-and-stroke-styles>4.12.4.2.10 Fill and stroke \
styles</a><li><a href=#drawing-rectangles-to-the-bitmap>4.12.4.2.11 Drawing rectangl  \
es to the bitmap</a><li><a href=#drawing-text-to-the-bitmap>4.12.4.2.12 Drawing text \
to the bitmap</a><li><a href=#drawing-paths-to-the-canvas>4.12.4.2.13 Drawing paths \
to the canvas</a><li><a href=#drawing-images>4.12.4.2.14 Drawing images</a><li><a \
href=#hit-regions>4.12.4.2.15 Hit regions</a><li><a \
href=#pixel-manipulation>4.12.4.2.16 Pixel manipulation</a><li><a \
href=#compositing>4.12.4.2.17 Compositing</a><li><a href=#image-smoothing>4.12.4.2.18 \
Image smoothing</a><li><a href=#shadows>4.12.4.2.19 Shadows</a><li><a \
href=#drawing-model>4.12.4.2.20 Drawing model</a><li><a \
href=#best-practices>4.12.4.2.21 Best practices</a><li><a href=#examples>4.12.4.2.22 \
Examples</a></ol><li><a href=#colour-spaces-and-colour-correction>4.12.4.3 Colour \
spaces and colour correction</a><li><a href=#serialising-bitmaps-to-a-file>4.12.4.4 \
Serialising bitmaps to a file</a><li><a href=#security-with-canvas-elements>4.12.4.5 \
Security with <code>canvas</code> elements</a></ol></ol><li><a href=#com  \
mon-idioms>4.13 Common idioms without dedicated elements</a><ol><li><a \
href=#the-main-part-of-the-content>4.13.1 The main part of the content</a><li><a \
href=#rel-up>4.13.2 Bread crumb navigation</a><li><a href=#tag-clouds>4.13.3 Tag \
clouds</a><li><a href=#conversations>4.13.4 Conversations</a><li><a \
href=#footnotes>4.13.5 Footnotes</a></ol><li><a href=#disabled-elements>4.14 Disabled \
elements</a><li><a href=#selectors>4.15 Matching HTML elements using \
selectors</a><ol><li><a href=#case-sensitivity>4.15.1 Case-sensitivity</a><li><a \
href=#pseudo-classes>4.15.2 Pseudo-classes</a></ol></ol><li id=toc-microdata><a \
href=#microdata>5 Microdata</a><ol><li><a href=#introduction-7>5.1 \
Introduction</a><ol><li><a href=#overview>5.1.1 Overview</a><li><a \
href=#the-basic-syntax>5.1.2 The basic syntax</a><li><a href=#typed-items>5.1.3 Typed \
items</a><li><a href=#global-identifiers-for-items>5.1.4 Global identifiers for \
items</a><li><a href=#selecting-names-when-defining-vocabularies>5.1.5 S  electing \
names when defining vocabularies</a><li><a href=#using-the-microdata-dom-api>5.1.6 \
Using the microdata DOM API</a></ol><li><a href=#encoding-microdata>5.2 Encoding \
microdata</a><ol><li><a href=#the-microdata-model>5.2.1 The microdata model</a><li><a \
href=#items>5.2.2 Items</a><li><a href=#names:-the-itemprop-attribute>5.2.3 Names: \
the <code>itemprop</code> attribute</a><li><a href=#values>5.2.4 Values</a><li><a \
href=#associating-names-with-items>5.2.5 Associating names with items</a><li><a \
href=#microdata-and-other-namespaces>5.2.6 Microdata and other \
namespaces</a></ol><li><a href=#microdata-dom-api>5.3 Microdata DOM API</a><li><a \
href=#mdvocabs>5.4 Sample microdata vocabularies</a><ol><li><a href=#vcard>5.4.1 \
vCard</a><ol><li><a href=#conversion-to-vcard>5.4.1.1 Conversion to vCard</a><li><a \
href=#examples-2>5.4.1.2 Examples</a></ol><li><a href=#vevent>5.4.2 \
vEvent</a><ol><li><a href=#conversion-to-icalendar>5.4.2.1 Conversion to \
                iCalendar</a><li><a href=#examples
 -3>5.4.2.2 Examples</a></ol><li><a href=#licensing-works>5.4.3 Licensing \
works</a><ol><li><a href=#examples-4>5.4.3.1 Examples</a></ol></ol><li><a \
href=#converting-html-to-other-formats>5.5 Converting HTML to other \
formats</a><ol><li><a href=#json>5.5.1 JSON</a></ol></ol><li id=toc-editing><a \
href=#editing>6 User interaction</a><ol><li><a href=#the-hidden-attribute>6.1 The \
<code>hidden</code> attribute</a><li><a href=#inert-subtrees>6.2 Inert \
subtrees</a><li><a href=#activation>6.3 Activation</a><li><a href=#focus>6.4 \
Focus</a><ol><li><a href=#introduction-8>6.4.1 Introduction</a><li><a \
href=#data-model>6.4.2 Data model</a><li><a href=#the-tabindex-attribute>6.4.3 The \
<code>tabindex</code> attribute</a><li><a href=#processing-model-6>6.4.4 Processing \
model</a><li><a href=#sequential-focus-navigation>6.4.5 Sequential focus \
navigation</a><li><a href=#focus-management-apis>6.4.6 Focus management \
APIs</a></ol><li><a href=#assigning-keyboard-shortcuts>6.5 Assigning keyboard short  \
cuts</a><ol><li><a href=#introduction-9>6.5.1 Introduction</a><li><a \
href=#the-accesskey-attribute>6.5.2 The <code>accesskey</code> attribute</a><li><a \
href=#processing-model-7>6.5.3 Processing model</a></ol><li><a href=#editing-2>6.6 \
Editing</a><ol><li><a href=#contenteditable>6.6.1 Making document regions editable: \
The <code>contenteditable</code> content attribute</a><li><a \
href=#making-entire-documents-editable:-the-designmode-idl-attribute>6.6.2 Making \
entire documents editable: The <code>designMode</code> IDL attribute</a><li><a \
href=#best-practices-for-in-page-editors>6.6.3 Best practices for in-page \
editors</a><li><a href=#editing-apis>6.6.4 Editing APIs</a><li><a \
href=#spelling-and-grammar-checking>6.6.5 Spelling and grammar \
checking</a></ol><li><a href=#dnd>6.7 Drag and drop</a><ol><li><a \
href=#introduction-10>6.7.1 Introduction</a><li><a href=#the-drag-data-store>6.7.2 \
The drag data store</a><li><a href=#the-datatransfer-interface>6.7.3 The \
<code>DataTransfer</cod  e> interface</a><ol><li><a \
href=#the-datatransferitemlist-interface>6.7.3.1 The \
<code>DataTransferItemList</code> interface</a><li><a \
href=#the-datatransferitem-interface>6.7.3.2 The <code>DataTransferItem</code> \
interface</a></ol><li><a href=#the-dragevent-interface>6.7.4 The \
<code>DragEvent</code> interface</a><li><a href=#drag-and-drop-processing-model>6.7.5 \
Drag-and-drop processing model</a><li><a href=#dndevents>6.7.6 Events \
summary</a><li><a href=#the-draggable-attribute>6.7.7 The <code>draggable</code> \
attribute</a><li><a href=#the-dropzone-attribute>6.7.8 The <code>dropzone</code> \
attribute</a><li><a href=#security-risks-in-the-drag-and-drop-model>6.7.9 Security \
risks in the drag-and-drop model</a></ol></ol><li id=toc-browsers><a href=#browsers>7 \
Loading Web pages</a><ol><li><a href=#windows>7.1 Browsing contexts</a><ol><li><a \
href=#nested-browsing-contexts>7.1.1 Nested browsing contexts</a><ol><li><a \
href=#navigating-nested-browsing-contexts-in-the-dom>7.1.1.1 Navig  ating nested \
browsing contexts in the DOM</a></ol><li><a href=#auxiliary-browsing-contexts>7.1.2 \
Auxiliary browsing contexts</a><ol><li><a \
href=#navigating-auxiliary-browsing-contexts-in-the-dom>7.1.2.1 Navigating auxiliary \
browsing contexts in the DOM</a></ol><li><a href=#secondary-browsing-contexts>7.1.3 \
Secondary browsing contexts</a><li><a href=#security-nav>7.1.4 Security</a><li><a \
href=#groupings-of-browsing-contexts>7.1.5 Groupings of browsing contexts</a><li><a \
href=#browsing-context-names>7.1.6 Browsing context names</a></ol><li><a \
href=#the-window-object>7.2 The <code>Window</code> object</a><ol><li><a \
href=#security-window>7.2.1 Security</a><li><a \
href=#apis-for-creating-and-navigating-browsing-contexts-by-name>7.2.2 APIs for \
creating and navigating browsing contexts by name</a><li><a \
href=#accessing-other-browsing-contexts>7.2.3 Accessing other browsing \
contexts</a><li><a href=#named-access-on-the-window-object>7.2.4 Named access on the \
<code>Window</code> object  </a><li><a \
href=#garbage-collection-and-browsing-contexts>7.2.5 Garbage collection and browsing \
contexts</a><li><a href=#closing-browsing-contexts>7.2.6 Closing browsing \
contexts</a><li><a href=#browser-interface-elements>7.2.7 Browser interface \
elements</a><li><a href=#the-windowproxy-object>7.2.8 The <code>WindowProxy</code> \
object</a></ol><li><a href=#origin>7.3 Origin</a><ol><li><a \
href=#relaxing-the-same-origin-restriction>7.3.1 Relaxing the same-origin \
restriction</a></ol><li><a href=#sandboxing>7.4 Sandboxing</a><li><a \
href=#history>7.5 Session history and navigation</a><ol><li><a \
href=#the-session-history-of-browsing-contexts>7.5.1 The session history of browsing \
contexts</a><li><a href=#the-history-interface>7.5.2 The <code>History</code> \
interface</a><li><a href=#the-location-interface>7.5.3 The <code>Location</code> \
interface</a><ol><li><a href=#security-location>7.5.3.1 Security</a></ol><li><a \
href=#history-notes>7.5.4 Implementation notes for session history</a>  </ol><li><a \
href=#browsing-the-web>7.6 Browsing the Web</a><ol><li><a \
href=#navigating-across-documents>7.6.1 Navigating across documents</a><li><a \
href=#read-html>7.6.2 Page load processing model for HTML files</a><li><a \
href=#read-xml>7.6.3 Page load processing model for XML files</a><li><a \
href=#read-text>7.6.4 Page load processing model for text files</a><li><a \
href=#read-multipart-x-mixed-replace>7.6.5 Page load processing model for \
<code>multipart/x-mixed-replace</code> resources</a><li><a href=#read-media>7.6.6 \
Page load processing model for media</a><li><a href=#read-plugin>7.6.7 Page load \
processing model for content that uses plugins</a><li><a href=#read-ua-inline>7.6.8 \
                Page load processing model for inline
-  content that doesn't have a DOM</a><li><a href=#scroll-to-fragid>7.6.9 Navigating \
to a fragment identifier</a><li><a href=#history-traversal>7.6.10 History \
traversal</a><ol><li><a href=#the-popstateevent-interface>7.6.10.1 The \
<code>PopStateEvent</code> interface</a><li><a \
href=#the-hashchangeevent-interface>7.6.10.2 The <code>HashChangeEvent</code> \
interface</a><li><a href=#the-pagetransitionevent-interface>7.6.10.3 The \
<code>PageTransitionEvent</code> interface</a></ol><li><a \
href=#unloading-documents>7.6.11 Unloading documents</a><ol><li><a \
href=#the-beforeunloadevent-interface>7.6.11.1 The <code>BeforeUnloadEvent</code> \
interface</a></ol><li><a href=#aborting-a-document-load>7.6.12 Aborting a document \
load</a></ol><li><a href=#offline>7.7 Offline Web applications</a><ol><li><a \
href=#introduction-11>7.7.1 Introduction</a><ol><li><a \
href=#supporting-offline-caching-for-legacy-applications>7.7.1.1 Supporting offline \
caching for legacy applications</a><li><a href=#appcache  events>7.7.1.2 Event \
summary</a></ol><li><a href=#appcache>7.7.2 Application caches</a><li><a \
href=#manifests>7.7.3 The cache manifest syntax</a><ol><li><a \
href=#some-sample-manifests>7.7.3.1 Some sample manifests</a><li><a \
href=#writing-cache-manifests>7.7.3.2 Writing cache manifests</a><li><a \
href=#parsing-cache-manifests>7.7.3.3 Parsing cache manifests</a></ol><li><a \
href=#downloading-or-updating-an-application-cache>7.7.4 Downloading or updating an \
application cache</a><li><a href=#the-application-cache-selection-algorithm>7.7.5 The \
application cache selection algorithm</a><li><a href=#changesToNetworkingModel>7.7.6 \
Changes to the networking model</a><li><a href=#expiring-application-caches>7.7.7 \
Expiring application caches</a><li><a href=#disk-space>7.7.8 Disk space</a><li><a \
href=#security-concerns-with-offline-applications-caches>7.7.9 Security concerns with \
offline applications caches</a><li><a href=#application-cache-api>7.7.10 Application \
cache API</a><li><a href=#  navigator.online>7.7.11 Browser state</a></ol></ol><li \
id=toc-webappapis><a href=#webappapis>8 Web application APIs</a><ol><li><a \
href=#scripting>8.1 Scripting</a><ol><li><a href=#introduction-12>8.1.1 \
Introduction</a><li><a href=#enabling-and-disabling-scripting>8.1.2 Enabling and \
disabling scripting</a><li><a href=#processing-model-8>8.1.3 Processing \
model</a><ol><li><a href=#definitions-2>8.1.3.1 Definitions</a><li><a \
href=#script-settings-for-browsing-contexts>8.1.3.2 Script settings for browsing \
contexts</a><li><a href=#calling-scripts>8.1.3.3 Calling scripts</a><li><a \
href=#creating-scripts>8.1.3.4 Creating scripts</a><li><a \
href=#killing-scripts>8.1.3.5 Killing scripts</a><li><a \
href=#runtime-script-errors>8.1.3.6 Runtime script errors</a><ol><li><a \
href=#runtime-script-errors-in-documents>8.1.3.6.1 Runtime script errors in \
documents</a><li><a href=#the-errorevent-interface>8.1.3.6.2 The \
<code>ErrorEvent</code> interface</a></ol></ol><li><a href=#event-loops>8.1.4 Eve  nt \
loops</a><ol><li><a href=#definitions-3>8.1.4.1 Definitions</a><li><a \
href=#processing-model-9>8.1.4.2 Processing model</a><li><a \
href=#generic-task-sources>8.1.4.3 Generic task sources</a></ol><li><a \
href=#events>8.1.5 Events</a><ol><li><a href=#event-handler-attributes>8.1.5.1 Event \
handlers</a><li><a href=#event-handlers-on-elements,-document-objects,-and-window-objects>8.1.5.2 \
Event handlers on elements, <code>Document</code> objects, and <code>Window</code> \
objects</a><ol><li><a href=#idl-definitions>8.1.5.2.1 IDL definitions</a></ol><li><a \
href=#event-firing>8.1.5.3 Event firing</a><li><a \
href=#events-and-the-window-object>8.1.5.4 Events and the <code>Window</code> \
object</a></ol></ol><li><a href=#atob>8.2 Base64 utility methods</a><li><a \
href=#dynamic-markup-insertion>8.3 Dynamic markup insertion</a><ol><li><a \
href=#opening-the-input-stream>8.3.1 Opening the input stream</a><li><a \
href=#closing-the-input-stream>8.3.2 Closing the input stream</a><li><a href=#documen \
t.write()>8.3.3 <code>document.write()</code></a><li><a \
href=#document.writeln()>8.3.4 <code>document.writeln()</code></a></ol><li><a \
href=#timers>8.4 Timers</a><li><a href=#user-prompts>8.5 User prompts</a><ol><li><a \
href=#simple-dialogs>8.5.1 Simple dialogs</a><li><a href=#printing>8.5.2 \
Printing</a><li><a href=#dialogs-implemented-using-separate-documents>8.5.3 Dialogs \
implemented using separate documents with \
<code>showModalDialog()</code></a></ol><li><a href=#system-state-and-capabilities>8.6 \
System state and capabilities</a><ol><li><a href=#the-navigator-object>8.6.1 The \
<code>Navigator</code> object</a><ol><li><a href=#client-identification>8.6.1.1 \
Client identification</a><li><a href=#language-preferences>8.6.1.2 Language \
preferences</a><li><a href=#custom-handlers>8.6.1.3 Custom scheme and content \
handlers: the <code>registerProtocolHandler()</code> and \
<code>registerContentHandler()</code> methods</a><ol><li><a \
href=#security-and-privacy>8.6.1.3.1 Security and priv  acy</a><li><a \
href=#sample-handler-impl>8.6.1.3.2 Sample user interface</a></ol><li><a \
href=#manually-releasing-the-storage-mutex>8.6.1.4 Manually releasing the storage \
mutex</a><li><a href=#plugins-2>8.6.1.5 Plugins</a></ol><li><a \
href=#the-external-interface>8.6.2 The <code>External</code> interface</a></ol><li><a \
href=#images>8.7 Images</a></ol><li id=toc-comms><a href=#comms>9 \
Communication</a><ol><li><a href=#the-messageevent-interfaces>9.1 The \
<code>MessageEvent</code> interfaces</a><li><a href=#server-sent-events>9.2 \
Server-sent events</a><ol><li><a href=#server-sent-events-intro>9.2.1 \
Introduction</a><li><a href=#the-eventsource-interface>9.2.2 The \
<code>EventSource</code> interface</a><li><a href=#processing-model-10>9.2.3 \
Processing model</a><li><a href=#parsing-an-event-stream>9.2.4 Parsing an event \
stream</a><li><a href=#event-stream-interpretation>9.2.5 Interpreting an event \
stream</a><li><a href=#authoring-notes>9.2.6 Authoring notes</a><li><a \
                href=#eventsource
 -push>9.2.7 Connectionless push and other features</a><li><a \
href=#garbage-collection-2>9.2.8 Garbage collection</a><li><a \
href=#implementation-advice>9.2.9 Implementation advice</a><li><a \
href=#iana-considerations>9.2.10 IANA considerations</a><ol><li><a \
href=#text/event-stream>9.2.10.1 <code>text/event-stream</code></a><li><a \
href=#last-event-id>9.2.10.2 <code>Last-Event-ID</code></a></ol></ol><li><a \
href=#network>9.3 Web sockets</a><ol><li><a href=#network-intro>9.3.1 \
Introduction</a><li><a href=#the-websocket-interface>9.3.2 The <code>WebSocket</code> \
interface</a><li><a href=#feedback-from-the-protocol>9.3.3 Feedback from the \
protocol</a><li><a href=#ping-and-pong-frames>9.3.4 Ping and Pong frames</a><li><a \
href=#parsing-websocket-urls>9.3.5 Parsing WebSocket URLs</a><li><a \
href=#the-closeevent-interfaces>9.3.6 The <code>CloseEvent</code> \
interfaces</a><li><a href=#garbage-collection-3>9.3.7 Garbage \
collection</a></ol><li><a href=#web-messaging>9.4 Cross-document messag  \
ing</a><ol><li><a href=#introduction-13>9.4.1 Introduction</a><li><a \
href=#security-postmsg>9.4.2 Security</a><ol><li><a href=#authors>9.4.2.1 \
Authors</a><li><a href=#user-agents>9.4.2.2 User agents</a></ol><li><a \
href=#posting-messages>9.4.3 Posting messages</a></ol><li><a \
href=#channel-messaging>9.5 Channel messaging</a><ol><li><a \
href=#introduction-14>9.5.1 Introduction</a><ol><li><a href=#examples-5>9.5.1.1 \
Examples</a><li><a href=#ports-as-the-basis-of-an-object-capability-model-on-the-web>9.5.1.2 \
Ports as the basis of an object-capability model on the Web</a><li><a \
href=#ports-as-the-basis-of-abstracting-out-service-implementations>9.5.1.3 Ports as \
the basis of abstracting out service implementations</a></ol><li><a \
href=#message-channels>9.5.2 Message channels</a><li><a href=#message-ports>9.5.3 \
Message ports</a><li><a href=#broadcasting-to-many-ports>9.5.4 Broadcasting to many \
ports</a><li><a href=#ports-and-garbage-collection>9.5.5 Ports and garbage \
collection</a></o  l><li><a href=#broadcasting-to-other-browsing-contexts>9.6 \
Broadcasting to other browsing contexts</a></ol><li id=toc-workers><a \
href=#workers>10 Web workers</a><ol><li><a href=#introduction-15>10.1 \
Introduction</a><ol><li><a href=#scope-2>10.1.1 Scope</a><li><a \
href=#examples-6>10.1.2 Examples</a><ol><li><a \
href=#a-background-number-crunching-worker>10.1.2.1 A background number-crunching \
worker</a><li><a href=#worker-used-for-background-i/o>10.1.2.2 Worker used for \
background I/O</a><li><a href=#shared-workers-introduction>10.1.2.3 Shared workers \
introduction</a><li><a href=#shared-state-using-a-shared-worker>10.1.2.4 Shared state \
using a shared worker</a><li><a href=#delegation>10.1.2.5 Delegation</a></ol><li><a \
href=#tutorials>10.1.3 Tutorials</a><ol><li><a \
href=#creating-a-dedicated-worker>10.1.3.1 Creating a dedicated worker</a><li><a \
href=#communicating-with-a-dedicated-worker>10.1.3.2 Communicating with a dedicated \
worker</a><li><a href=#shared-workers>10.1.3.3 Shared  workers</a></ol></ol><li><a \
href=#infrastructure-2>10.2 Infrastructure</a><ol><li><a \
href=#the-global-scope>10.2.1 The global scope</a><ol><li><a \
href=#the-workerglobalscope-common-interface>10.2.1.1 The \
<code>WorkerGlobalScope</code> common interface</a><li><a \
href=#dedicated-workers-and-the-dedicatedworkerglobalscope-interface>10.2.1.2 \
Dedicated workers and the <code>DedicatedWorkerGlobalScope</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworkerglobalscope-interface>10.2.1.3 Shared \
workers and the <code>SharedWorkerGlobalScope</code> interface</a></ol><li><a \
href=#worker-event-loop>10.2.2 The event loop</a><li><a \
href="#the-worker's-lifetime">10.2.3 The worker's lifetime</a><li><a \
href=#processing-model-11>10.2.4 Processing model</a><li><a \
href=#runtime-script-errors-2>10.2.5 Runtime script errors</a><li><a \
href=#creating-workers>10.2.6 Creating workers</a><ol><li><a \
href=#the-abstractworker-abstract-interface>10.2.6.1 The <code>AbstractWorker</code> \
abstr  act interface</a><li><a href=#script-settings-for-workers>10.2.6.2 Script \
settings for workers</a><li><a \
href=#dedicated-workers-and-the-worker-interface>10.2.6.3 Dedicated workers and the \
<code>Worker</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworker-interface>10.2.6.4 Shared workers and the \
<code>SharedWorker</code> interface</a></ol></ol><li><a \
href=#apis-available-to-workers>10.3 APIs available to workers</a><ol><li><a \
href=#importing-scripts-and-libraries>10.3.1 Importing scripts and \
libraries</a><li><a href=#the-workernavigator-object>10.3.2 The \
<code>WorkerNavigator</code> object</a><li><a href=#worker-locations>10.3.3 Worker \
locations</a></ol></ol><li id=toc-webstorage><a href=#webstorage>11 Web \
storage</a><ol><li><a href=#introduction-16>11.1 Introduction</a><li><a \
href=#storage>11.2 The API</a><ol><li><a href=#the-storage-interface>11.2.1 The \
<code>Storage</code> interface</a><li><a href=#the-sessionstorage-attribute>11.2.2 \
The <code>sessionStora  ge</code> attribute</a><li><a \
href=#the-localstorage-attribute>11.2.3 The <code>localStorage</code> \
attribute</a><li><a href=#the-storage-event>11.2.4 The <code>storage</code> \
event</a><ol><li><a href=#the-storageevent-interface>11.2.4.1 The \
<code>StorageEvent</code> interface</a></ol><li><a href=#threads>11.2.5 \
Threads</a></ol><li><a href=#disk-space-2>11.3 Disk space</a><li><a \
href=#privacy>11.4 Privacy</a><ol><li><a href=#user-tracking>11.4.1 User \
tracking</a><li><a href=#sensitivity-of-data>11.4.2 Sensitivity of \
data</a></ol><li><a href=#security-storage>11.5 Security</a><ol><li><a \
href=#dns-spoofing-attacks>11.5.1 DNS spoofing attacks</a><li><a \
href=#cross-directory-attacks>11.5.2 Cross-directory attacks</a><li><a \
href=#implementation-risks>11.5.3 Implementation risks</a></ol></ol><li \
id=toc-syntax><a href=#syntax>12 The HTML syntax</a><ol><li><a href=#writing>12.1 \
Writing HTML documents</a><ol><li><a href=#the-doctype>12.1.1 The DOCTYPE</a><li><a \
href=#elements-2>12.1.  2 Elements</a><ol><li><a href=#start-tags>12.1.2.1 Start \
tags</a><li><a href=#end-tags>12.1.2.2 End tags</a><li><a href=#attributes-2>12.1.2.3 \
Attributes</a><li><a href=#optional-tags>12.1.2.4 Optional tags</a><li><a \
href=#element-restrictions>12.1.2.5 Restrictions on content models</a><li><a \
href=#cdata-rcdata-restrictions>12.1.2.6 Restrictions on the contents of raw text and \
escapable raw text elements</a></ol><li><a href=#text-2>12.1.3 Text</a><ol><li><a \
href=#newlines>12.1.3.1 Newlines</a></ol><li><a href=#character-references>12.1.4 \
Character references</a><li><a href=#cdata-sections>12.1.5 CDATA sections</a><li><a \
href=#comments>12.1.6 Comments</a></ol><li><a href=#parsing>12.2 Parsing HTML \
documents</a><ol><li><a href=#overview-of-the-parsing-model>12.2.1 Overview of the \
parsing model</a><li><a href=#the-input-byte-stream>12.2.2 The input byte \
stream</a><ol><li><a href=#parsing-with-a-known-character-encoding>12.2.2.1 Parsing \
with a known character encoding</a><li><a   \
href=#determining-the-character-encoding>12.2.2.2 Determining the character \
encoding</a><li><a href=#character-encodings>12.2.2.3 Character encodings</a><li><a \
href=#changing-the-encoding-while-parsing>12.2.2.4 Changing the encoding while \
parsing</a><li><a href=#preprocessing-the-input-stream>12.2.2.5 Preprocessing the \
input stream</a></ol><li><a href=#parse-state>12.2.3 Parse state</a><ol><li><a \
href=#the-insertion-mode>12.2.3.1 The insertion mode</a><li><a \
href=#the-stack-of-open-elements>12.2.3.2 The stack of open elements</a><li><a \
href=#the-list-of-active-formatting-elements>12.2.3.3 The list of active formatting \
elements</a><li><a href=#the-element-pointers>12.2.3.4 The element pointers</a><li><a \
href=#other-parsing-state-flags>12.2.3.5 Other parsing state flags</a></ol><li><a \
href=#tokenization>12.2.4 Tokenization</a><ol><li><a href=#data-state>12.2.4.1 Data \
state</a><li><a href=#character-reference-in-data-state>12.2.4.2 Character reference \
in data state</a><li><a hr  ef=#rcdata-state>12.2.4.3 RCDATA state</a><li><a \
href=#character-reference-in-rcdata-state>12.2.4.4 Character reference in RCDATA \
state</a><li><a href=#rawtext-state>12.2.4.5 RAWTEXT state</a><li><a \
href=#script-data-state>12.2.4.6 Script data state</a><li><a \
href=#plaintext-state>12.2.4.7 PLAINTEXT state</a><li><a \
href=#tag-open-state>12.2.4.8 Tag open state</a><li><a \
href=#end-tag-open-state>12.2.4.9 End tag open state</a><li><a \
href=#tag-name-state>12.2.4.10 Tag name state</a><li><a \
href=#rcdata-less-than-sign-state>12.2.4.11 RCDATA less-than sign state</a><li><a \
href=#rcdata-end-tag-open-state>12.2.4.12 RCDATA end tag open state</a><li><a \
href=#rcdata-end-tag-name-state>12.2.4.13 RCDATA end tag name state</a><li><a \
href=#rawtext-less-than-sign-state>12.2.4.14 RAWTEXT less-than sign state</a><li><a \
href=#rawtext-end-tag-open-state>12.2.4.15 RAWTEXT end tag open state</a><li><a \
href=#rawtext-end-tag-name-state>12.2.4.16 RAWTEXT end tag name state</a><li><a \
href=#script-dat  a-less-than-sign-state>12.2.4.17 Script data less-than sign \
state</a><li><a href=#script-data-end-tag-open-state>12.2.4.18 Script data end tag \
open state</a><li><a href=#script-data-end-tag-name-state>12.2.4.19 Script data end \
tag name state</a><li><a href=#script-data-escape-start-state>12.2.4.20 Script data \
escape start state</a><li><a href=#script-data-escape-start-dash-state>12.2.4.21 \
Script data escape start dash state</a><li><a \
href=#script-data-escaped-state>12.2.4.22 Script data escaped state</a><li><a \
href=#script-data-escaped-dash-state>12.2.4.23 Script data escaped dash \
state</a><li><a href=#script-data-escaped-dash-dash-state>12.2.4.24 Script data \
escaped dash dash state</a><li><a \
href=#script-data-escaped-less-than-sign-state>12.2.4.25 Script data escaped \
less-than sign state</a><li><a href=#script-data-escaped-end-tag-open-state>12.2.4.26 \
Script data escaped end tag open state</a><li><a \
href=#script-data-escaped-end-tag-name-state>12.2.4.27 Script data escaped   end tag \
name state</a><li><a href=#script-data-double-escape-start-state>12.2.4.28 Script \
data double escape start state</a><li><a \
href=#script-data-double-escaped-state>12.2.4.29 Script data double escaped \
state</a><li><a href=#script-data-double-escaped-dash-state>12.2.4.30 Script data \
double escaped dash state</a><li><a \
href=#script-data-double-escaped-dash-dash-state>12.2.4.31 Script data double escaped \
dash dash state</a><li><a \
href=#script-data-double-escaped-less-than-sign-state>12.2.4.32 Script data double \
escaped less-than sign state</a><li><a \
href=#script-data-double-escape-end-state>12.2.4.33 Script data double escape end \
state</a><li><a href=#before-attribute-name-state>12.2.4.34 Before attribute name \
state</a><li><a href=#attribute-name-state>12.2.4.35 Attribute name state</a><li><a \
href=#after-attribute-name-state>12.2.4.36 After attribute name state</a><li><a \
href=#before-attribute-value-state>12.2.4.37 Before attribute value state</a><li><a \
href=#attribute-va  lue-(double-quoted)-state>12.2.4.38 Attribute value \
(double-quoted) state</a><li><a href=#attribute-value-(single-quoted)-state>12.2.4.39 \
Attribute value (single-quoted) state</a><li><a \
href=#attribute-value-(unquoted)-state>12.2.4.40 Attribute value (unquoted) \
state</a><li><a href=#character-reference-in-attribute-value-state>12.2.4.41 \
Character reference in attribute value state</a><li><a \
href=#after-attribute-value-(quoted)-state>12.2.4.42 After attribute value (quoted) \
state</a><li><a href=#self-closing-start-tag-state>12.2.4.43 Self-closing start tag \
state</a><li><a href=#bogus-comment-state>12.2.4.44 Bogus comment state</a><li><a \
href=#markup-declaration-open-state>12.2.4.45 Markup declaration open state</a><li><a \
href=#comment-start-state>12.2.4.46 Comment start state</a><li><a \
href=#comment-start-dash-state>12.2.4.47 Comment start dash state</a><li><a \
href=#comment-state>12.2.4.48 Comment state</a><li><a \
href=#comment-end-dash-state>12.2.4.49 Comment end dash state</  a><li><a \
href=#comment-end-state>12.2.4.50 Comment end state</a><li><a \
href=#comment-end-bang-state>12.2.4.51 Comment end bang state</a><li><a \
href=#doctype-state>12.2.4.52 DOCTYPE state</a><li><a \
href=#before-doctype-name-state>12.2.4.53 Before DOCTYPE name state</a><li><a \
href=#doctype-name-state>12.2.4.54 DOCTYPE name state</a><li><a \
href=#after-doctype-name-state>12.2.4.55 After DOCTYPE name state</a><li><a \
href=#after-doctype-public-keyword-state>12.2.4.56 After DOCTYPE public keyword \
state</a><li><a href=#before-doctype-public-identifier-state>12.2.4.57 Before DOCTYPE \
public identifier state</a><li><a \
href=#doctype-public-identifier-(double-quoted)-state>12.2.4.58 DOCTYPE public \
identifier (double-quoted) state</a><li><a \
href=#doctype-public-identifier-(single-quoted)-state>12.2.4.59 DOCTYPE public \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-public-identifier-state>12.2.4.60 After DOCTYPE public identifier \
                state</a><li><a href=#between-doctype-public
 -and-system-identifiers-state>12.2.4.61 Between DOCTYPE public and system \
identifiers state</a><li><a href=#after-doctype-system-keyword-state>12.2.4.62 After \
DOCTYPE system keyword state</a><li><a \
href=#before-doctype-system-identifier-state>12.2.4.63 Before DOCTYPE system \
identifier state</a><li><a \
href=#doctype-system-identifier-(double-quoted)-state>12.2.4.64 DOCTYPE system \
identifier (double-quoted) state</a><li><a \
href=#doctype-system-identifier-(single-quoted)-state>12.2.4.65 DOCTYPE system \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-system-identifier-state>12.2.4.66 After DOCTYPE system identifier \
state</a><li><a href=#bogus-doctype-state>12.2.4.67 Bogus DOCTYPE state</a><li><a \
href=#cdata-section-state>12.2.4.68 CDATA section state</a><li><a \
href=#tokenizing-character-references>12.2.4.69 Tokenizing character \
references</a></ol><li><a href=#tree-construction>12.2.5 Tree \
construction</a><ol><li><a href=#creating-and-inserting-nodes>12.2.5.1 Creatin  g and \
inserting nodes</a><li><a href=#parsing-elements-that-contain-only-text>12.2.5.2 \
Parsing elements that contain only text</a><li><a \
href=#closing-elements-that-have-implied-end-tags>12.2.5.3 Closing elements that have \
implied end tags</a><li><a href=#parsing-main-inhtml>12.2.5.4 The rules for parsing \
tokens in HTML content</a><ol><li><a href=#the-initial-insertion-mode>12.2.5.4.1 The \
"initial" insertion mode</a><li><a href=#the-before-html-insertion-mode>12.2.5.4.2 \
The "before html" insertion mode</a><li><a \
href=#the-before-head-insertion-mode>12.2.5.4.3 The "before head" insertion \
mode</a><li><a href=#parsing-main-inhead>12.2.5.4.4 The "in head" insertion \
mode</a><li><a href=#parsing-main-inheadnoscript>12.2.5.4.5 The "in head noscript" \
insertion mode</a><li><a href=#the-after-head-insertion-mode>12.2.5.4.6 The "after \
head" insertion mode</a><li><a href=#parsing-main-inbody>12.2.5.4.7 The "in body" \
insertion mode</a><li><a href=#parsing-main-incdata>12.2.5.4.8 The "tex  t" insertion \
mode</a><li><a href=#parsing-main-intable>12.2.5.4.9 The "in table" insertion \
mode</a><li><a href=#parsing-main-intabletext>12.2.5.4.10 The "in table text" \
insertion mode</a><li><a href=#parsing-main-incaption>12.2.5.4.11 The "in caption" \
insertion mode</a><li><a href=#parsing-main-incolgroup>12.2.5.4.12 The "in column \
group" insertion mode</a><li><a href=#parsing-main-intbody>12.2.5.4.13 The "in table \
body" insertion mode</a><li><a href=#parsing-main-intr>12.2.5.4.14 The "in row" \
insertion mode</a><li><a href=#parsing-main-intd>12.2.5.4.15 The "in cell" insertion \
mode</a><li><a href=#parsing-main-inselect>12.2.5.4.16 The "in select" insertion \
mode</a><li><a href=#parsing-main-inselectintable>12.2.5.4.17 The "in select in \
table" insertion mode</a><li><a href=#parsing-main-intemplate>12.2.5.4.18 The "in \
template" insertion mode</a><li><a href=#parsing-main-afterbody>12.2.5.4.19 The \
"after body" insertion mode</a><li><a href=#parsing-main-inframeset>12.2.5.4.20 Th  e \
"in frameset" insertion mode</a><li><a href=#parsing-main-afterframeset>12.2.5.4.21 \
The "after frameset" insertion mode</a><li><a \
href=#the-after-after-body-insertion-mode>12.2.5.4.22 The "after after body" \
insertion mode</a><li><a href=#the-after-after-frameset-insertion-mode>12.2.5.4.23 \
The "after after frameset" insertion mode</a></ol><li><a \
href=#parsing-main-inforeign>12.2.5.5 The rules for parsing tokens in foreign \
content</a></ol><li><a href=#the-end>12.2.6 The end</a><li><a \
href=#coercing-an-html-dom-into-an-infoset>12.2.7 Coercing an HTML DOM into an \
infoset</a><li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser>12.2.8 \
An introduction to error handling and strange cases in the parser</a><ol><li><a \
href=#misnested-tags:-b-i-/b-/i>12.2.8.1 Misnested tags: \
&lt;b>&lt;i>&lt;/b>&lt;/i></a><li><a href=#misnested-tags:-b-p-/b-/p>12.2.8.2 \
Misnested tags: &lt;b>&lt;p>&lt;/b>&lt;/p></a><li><a \
href=#unexpected-markup-in-tables>12.2.8.3 Unexpected ma  rkup in tables</a><li><a \
href=#scripts-that-modify-the-page-as-it-is-being-parsed>12.2.8.4 Scripts that modify \
the page as it is being parsed</a><li><a \
href=#the-execution-of-scripts-that-are-moving-across-multiple-documents>12.2.8.5 The \
execution of scripts that are moving across multiple documents</a><li><a \
href=#unclosed-formatting-elements>12.2.8.6 Unclosed formatting \
elements</a></ol></ol><li><a href=#serialising-html-fragments>12.3 Serialising HTML \
fragments</a><li><a href=#parsing-html-fragments>12.4 Parsing HTML \
fragments</a><li><a href=#named-character-references>12.5 Named character \
references</a></ol><li id=toc-the-xhtml-syntax><a href=#the-xhtml-syntax>13 The XHTML \
syntax</a><ol><li><a href=#writing-xhtml-documents>13.1 Writing XHTML \
documents</a><li><a href=#parsing-xhtml-documents>13.2 Parsing XHTML \
documents</a><li><a href=#serialising-xhtml-fragments>13.3 Serialising XHTML \
fragments</a><li><a href=#parsing-xhtml-fragments>13.4 Parsing XHTML \
fragments</a></ol>  <li id=toc-rendering><a href=#rendering>14 \
Rendering</a><ol><li><a href=#introduction-17>14.1 Introduction</a><li><a \
href=#the-css-user-agent-style-sheet-and-presentational-hints>14.2 The CSS user agent \
style sheet and presentational hints</a><li><a href=#non-replaced-elements>14.3 \
Non-replaced elements</a><ol><li><a href=#hidden-elements>14.3.1 Hidden \
elements</a><li><a href=#the-page>14.3.2 The page</a><li><a \
href=#flow-content-3>14.3.3 Flow content</a><li><a href=#phrasing-content-3>14.3.4 \
Phrasing content</a><li><a href=#bidi-rendering>14.3.5 Bidirectional text</a><li><a \
href=#quotes>14.3.6 Quotes</a><li><a href=#sections-and-headings>14.3.7 Sections and \
headings</a><li><a href=#lists>14.3.8 Lists</a><li><a href=#tables-2>14.3.9 \
Tables</a><li><a href=#margin-collapsing-quirks>14.3.10 Margin collapsing \
quirks</a><li><a href=#form-controls>14.3.11 Form controls</a><li><a \
href=#the-hr-element-2>14.3.12 The <code>hr</code> element</a><li><a \
href=#the-fieldset-and-legend-elem  ents>14.3.13 The <code>fieldset</code> and \
<code>legend</code> elements</a></ol><li><a href=#replaced-elements>14.4 Replaced \
elements</a><ol><li><a href=#embedded-content-rendering-rules>14.4.1 Embedded \
content</a><li><a href=#images-2>14.4.2 Images</a><li><a \
href=#attributes-for-embedded-content-and-images>14.4.3 Attributes for embedded \
content and images</a><li><a href=#image-maps-2>14.4.4 Image maps</a></ol><li><a \
href=#bindings>14.5 Bindings</a><ol><li><a href=#introduction-18>14.5.1 \
Introduction</a><li><a href=#the-button-element-2>14.5.2 The <code>button</code> \
element</a><li><a href=#the-details-element-2>14.5.3 The <code>details</code> \
element</a><li><a href=#the-input-element-as-a-text-entry-widget>14.5.4 The \
<code>input</code> element as a text entry widget</a><li><a \
href=#the-input-element-as-domain-specific-widgets>14.5.5 The <code>input</code> \
element as domain-specific widgets</a><li><a \
href=#the-input-element-as-a-range-control>14.5.6 The <code>input</code> el  ement as \
a range control</a><li><a href=#the-input-element-as-a-colour-well>14.5.7 The \
<code>input</code> element as a colour well</a><li><a \
href=#the-input-element-as-a-checkbox-and-radio-button-widgets>14.5.8 The \
<code>input</code> element as a checkbox and radio button widgets</a><li><a \
href=#the-input-element-as-a-file-upload-control>14.5.9 The <code>input</code> \
element as a file upload control</a><li><a \
href=#the-input-element-as-a-button>14.5.10 The <code>input</code> element as a \
button</a><li><a href=#the-marquee-element>14.5.11 The <code>marquee</code> \
element</a><li><a href=#the-meter-element-2>14.5.12 The <code>meter</code> \
element</a><li><a href=#the-progress-element-2>14.5.13 The <code>progress</code> \
element</a><li><a href=#the-select-element-2>14.5.14 The <code>select</code> \
element</a><li><a href=#the-textarea-element-2>14.5.15 The <code>textarea</code> \
element</a><li><a href=#the-keygen-element-2>14.5.16 The <code>keygen</code> \
element</a></ol><li><a href=#  frames-and-framesets>14.6 Frames and \
framesets</a><li><a href=#interactive-media>14.7 Interactive media</a><ol><li><a \
href=#links,-forms,-and-navigation>14.7.1 Links, forms, and navigation</a><li><a \
href=#the-title-attribute-2>14.7.2 The <code>title</code> attribute</a><li><a \
href=#editing-hosts>14.7.3 Editing hosts</a><li><a \
href=#text-rendered-in-native-user-interfaces>14.7.4 Text rendered in native user \
interfaces</a></ol><li><a href=#print-media>14.8 Print media</a><li><a \
href=#unstyled-xml-documents>14.9 Unstyled XML documents</a></ol><li \
id=toc-obsolete><a href=#obsolete>15 Obsolete features</a><ol><li><a \
href=#obsolete-but-conforming-features>15.1 Obsolete but conforming \
features</a><ol><li><a href=#warnings-for-obsolete-but-conforming-features>15.1.1 \
Warnings for obsolete but conforming features</a></ol><li><a \
href=#non-conforming-features>15.2 Non-conforming features</a><li><a \
href=#requirements-for-implementations>15.3 Requirements for \
implementations</a><ol><li><a  href=#the-applet-element>15.3.1 The \
<code>applet</code> element</a><li><a href=#the-marquee-element-2>15.3.2 The \
<code>marquee</code> element</a><li><a href=#frames>15.3.3 Frames</a><li><a \
href=#other-elements,-attributes-and-apis>15.3.4 Other elements, attributes and \
APIs</a></ol></ol><li id=toc-iana><a href=#iana>16 IANA considerations</a><ol><li><a \
href=#text/html>16.1 <code>text/html</code></a><li><a \
href=#multipart/x-mixed-replace>16.2 <code>multipart/x-mixed-replace</code></a><li><a \
href=#application/xhtml+xml>16.3 <code>application/xhtml+xml</code></a><li><a \
href=#application/x-www-form-urlencoded>16.4 \
<code>application/x-www-form-urlencoded</code></a><li><a \
href=#text/cache-manifest>16.5 <code>text/cache-manifest</code></a><li><a \
href=#text/ping>16.6 <code>text/ping</code></a><li><a \
href=#application/microdata+json>16.7 \
<code>application/microdata+json</code></a><li><a href=#ping-from>16.8 \
<code>Ping-From</code></a><li><a href=#ping-to>16.9 <code>Ping-To</code></a><  li><a \
href=#web+-scheme-prefix>16.10 <code>web+</code> scheme prefix</a></ol><li \
id=toc-index><a href=#index>Index</a><ol><li><a href=#elements-3>Elements</a><li><a \
href=#element-content-categories>Element content categories</a><li><a \
href=#attributes-3>Attributes</a><li><a href=#element-interfaces>Element \
Interfaces</a><li><a href=#all-interfaces>All Interfaces</a><li><a \
href=#events-2>Events</a><li><a href=#mime-types-2>MIME Types</a></ol><li \
id=toc-references><a href=#references>References</a><li id=toc-acknowledgments><a \
href=#acknowledgments>Acknowledgements</a></ol> +  content that doesn't have a \
DOM</a><li><a href=#scroll-to-fragid>7.6.9 Navigating to a fragment \
identifier</a><li><a href=#history-traversal>7.6.10 History traversal</a><ol><li><a \
href=#the-popstateevent-interface>7.6.10.1 The <code>PopStateEvent</code> \
interface</a><li><a href=#the-hashchangeevent-interface>7.6.10.2 The \
<code>HashChangeEvent</code> interface</a><li><a \
href=#the-pagetransitionevent-interface>7.6.10.3 The <code>PageTransitionEvent</code> \
interface</a></ol><li><a href=#unloading-documents>7.6.11 Unloading \
documents</a><ol><li><a href=#the-beforeunloadevent-interface>7.6.11.1 The \
<code>BeforeUnloadEvent</code> interface</a></ol><li><a \
href=#aborting-a-document-load>7.6.12 Aborting a document load</a></ol><li><a \
href=#offline>7.7 Offline Web applications</a><ol><li><a href=#introduction-11>7.7.1 \
Introduction</a><ol><li><a \
href=#supporting-offline-caching-for-legacy-applications>7.7.1.1 Supporting offline \
caching for legacy applications</a><li><a href=#appcache  events>7.7.1.2 Event \
summary</a></ol><li><a href=#appcache>7.7.2 Application caches</a><li><a \
href=#manifests>7.7.3 The cache manifest syntax</a><ol><li><a \
href=#some-sample-manifests>7.7.3.1 Some sample manifests</a><li><a \
href=#writing-cache-manifests>7.7.3.2 Writing cache manifests</a><li><a \
href=#parsing-cache-manifests>7.7.3.3 Parsing cache manifests</a></ol><li><a \
href=#downloading-or-updating-an-application-cache>7.7.4 Downloading or updating an \
application cache</a><li><a href=#the-application-cache-selection-algorithm>7.7.5 The \
application cache selection algorithm</a><li><a href=#changesToNetworkingModel>7.7.6 \
Changes to the networking model</a><li><a href=#expiring-application-caches>7.7.7 \
Expiring application caches</a><li><a href=#disk-space>7.7.8 Disk space</a><li><a \
href=#security-concerns-with-offline-applications-caches>7.7.9 Security concerns with \
offline applications caches</a><li><a href=#application-cache-api>7.7.10 Application \
cache API</a><li><a href=#  navigator.online>7.7.11 Browser state</a></ol></ol><li \
id=toc-webappapis><a href=#webappapis>8 Web application APIs</a><ol><li><a \
href=#scripting>8.1 Scripting</a><ol><li><a href=#introduction-12>8.1.1 \
Introduction</a><li><a href=#enabling-and-disabling-scripting>8.1.2 Enabling and \
disabling scripting</a><li><a href=#processing-model-8>8.1.3 Processing \
model</a><ol><li><a href=#definitions-2>8.1.3.1 Definitions</a><li><a \
href=#script-settings-for-browsing-contexts>8.1.3.2 Script settings for browsing \
contexts</a><li><a href=#calling-scripts>8.1.3.3 Calling scripts</a><li><a \
href=#creating-scripts>8.1.3.4 Creating scripts</a><li><a \
href=#killing-scripts>8.1.3.5 Killing scripts</a><li><a \
href=#runtime-script-errors>8.1.3.6 Runtime script errors</a><ol><li><a \
href=#runtime-script-errors-in-documents>8.1.3.6.1 Runtime script errors in \
documents</a><li><a href=#the-errorevent-interface>8.1.3.6.2 The \
<code>ErrorEvent</code> interface</a></ol></ol><li><a href=#event-loops>8.1.4 Eve  nt \
loops</a><ol><li><a href=#definitions-3>8.1.4.1 Definitions</a><li><a \
href=#processing-model-9>8.1.4.2 Processing model</a><li><a \
href=#generic-task-sources>8.1.4.3 Generic task sources</a></ol><li><a \
href=#events>8.1.5 Events</a><ol><li><a href=#event-handler-attributes>8.1.5.1 Event \
handlers</a><li><a href=#event-handlers-on-elements,-document-objects,-and-window-objects>8.1.5.2 \
Event handlers on elements, <code>Document</code> objects, and <code>Window</code> \
objects</a><ol><li><a href=#idl-definitions>8.1.5.2.1 IDL definitions</a></ol><li><a \
href=#event-firing>8.1.5.3 Event firing</a><li><a \
href=#events-and-the-window-object>8.1.5.4 Events and the <code>Window</code> \
object</a></ol></ol><li><a href=#atob>8.2 Base64 utility methods</a><li><a \
href=#dynamic-markup-insertion>8.3 Dynamic markup insertion</a><ol><li><a \
href=#opening-the-input-stream>8.3.1 Opening the input stream</a><li><a \
href=#closing-the-input-stream>8.3.2 Closing the input stream</a><li><a href=#documen \
t.write()>8.3.3 <code>document.write()</code></a><li><a \
href=#document.writeln()>8.3.4 <code>document.writeln()</code></a></ol><li><a \
href=#timers>8.4 Timers</a><li><a href=#user-prompts>8.5 User prompts</a><ol><li><a \
href=#simple-dialogs>8.5.1 Simple dialogs</a><li><a href=#printing>8.5.2 \
Printing</a><li><a href=#dialogs-implemented-using-separate-documents>8.5.3 Dialogs \
 acy</a><li><a href=#sample-handler-impl>8.6.1.3.2 Sample user \
interface</a></ol><li><a href=#manually-releasing-the-storage-mutex>8.6.1.4 Manually \
releasing the storage mutex</a><li><a href=#plugins-2>8.6.1.5 Plugins</a></ol><li><a \
href=#the-external-interface>8.6.2 The <code>External</code> interface</a></ol><li><a \
href=#images>8.7 Images</a><li><a href=#animation-frames>8.8 Animation \
Frames</a></ol><li id=toc-comms><a href=#comms>9 Communication</a><ol><li><a \
href=#the-messageevent-interfaces>9.1 The <code>MessageEvent</code> \
interfaces</a><li><a href=#server-sent-events>9.2 Server-sent events</a><ol><li><a \
href=#server-sent-events-intro>9.2.1 Introduction</a><li><a \
href=#the-eventsource-interface>9.2.2 The <code>EventSource</code> \
interface</a><li><a href=#processing-model-10>9.2.3 Processing model</a><li><a \
href=#parsing-an-event-stream>9.2.4 Parsing an event stream</a><li><a \
href=#event-stream-interpretation>9.2.5 Interpreting an event stream</a><li><a \
href=#authoring-n  otes>9.2.6 Authoring notes</a><li><a href=#eventsource-push>9.2.7 \
Connectionless push and other features</a><li><a href=#garbage-collection-2>9.2.8 \
Garbage collection</a><li><a href=#implementation-advice>9.2.9 Implementation \
advice</a><li><a href=#iana-considerations>9.2.10 IANA considerations</a><ol><li><a \
href=#text/event-stream>9.2.10.1 <code>text/event-stream</code></a><li><a \
href=#last-event-id>9.2.10.2 <code>Last-Event-ID</code></a></ol></ol><li><a \
href=#network>9.3 Web sockets</a><ol><li><a href=#network-intro>9.3.1 \
Introduction</a><li><a href=#the-websocket-interface>9.3.2 The <code>WebSocket</code> \
interface</a><li><a href=#feedback-from-the-protocol>9.3.3 Feedback from the \
protocol</a><li><a href=#ping-and-pong-frames>9.3.4 Ping and Pong frames</a><li><a \
href=#parsing-websocket-urls>9.3.5 Parsing WebSocket URLs</a><li><a \
href=#the-closeevent-interfaces>9.3.6 The <code>CloseEvent</code> \
interfaces</a><li><a href=#garbage-collection-3>9.3.7 Garbage collection</a></o  \
l><li><a href=#web-messaging>9.4 Cross-document messaging</a><ol><li><a \
href=#introduction-13>9.4.1 Introduction</a><li><a href=#security-postmsg>9.4.2 \
Security</a><ol><li><a href=#authors>9.4.2.1 Authors</a><li><a \
href=#user-agents>9.4.2.2 User agents</a></ol><li><a href=#posting-messages>9.4.3 \
Posting messages</a></ol><li><a href=#channel-messaging>9.5 Channel \
messaging</a><ol><li><a href=#introduction-14>9.5.1 Introduction</a><ol><li><a \
href=#examples-5>9.5.1.1 Examples</a><li><a \
href=#ports-as-the-basis-of-an-object-capability-model-on-the-web>9.5.1.2 Ports as \
the basis of an object-capability model on the Web</a><li><a \
href=#ports-as-the-basis-of-abstracting-out-service-implementations>9.5.1.3 Ports as \
the basis of abstracting out service implementations</a></ol><li><a \
href=#message-channels>9.5.2 Message channels</a><li><a href=#message-ports>9.5.3 \
Message ports</a><li><a href=#broadcasting-to-many-ports>9.5.4 Broadcasting to many \
ports</a><li><a href=#ports-and-garbag  e-collection>9.5.5 Ports and garbage \
collection</a></ol><li><a href=#broadcasting-to-other-browsing-contexts>9.6 \
Broadcasting to other browsing contexts</a></ol><li id=toc-workers><a \
href=#workers>10 Web workers</a><ol><li><a href=#introduction-15>10.1 \
Introduction</a><ol><li><a href=#scope-2>10.1.1 Scope</a><li><a \
href=#examples-6>10.1.2 Examples</a><ol><li><a \
href=#a-background-number-crunching-worker>10.1.2.1 A background number-crunching \
worker</a><li><a href=#worker-used-for-background-i/o>10.1.2.2 Worker used for \
background I/O</a><li><a href=#shared-workers-introduction>10.1.2.3 Shared workers \
introduction</a><li><a href=#shared-state-using-a-shared-worker>10.1.2.4 Shared state \
using a shared worker</a><li><a href=#delegation>10.1.2.5 Delegation</a></ol><li><a \
href=#tutorials>10.1.3 Tutorials</a><ol><li><a \
href=#creating-a-dedicated-worker>10.1.3.1 Creating a dedicated worker</a><li><a \
href=#communicating-with-a-dedicated-worker>10.1.3.2 Communicating with a dedicated  \
worker</a><li><a href=#shared-workers>10.1.3.3 Shared workers</a></ol></ol><li><a \
href=#infrastructure-2>10.2 Infrastructure</a><ol><li><a \
href=#the-global-scope>10.2.1 The global scope</a><ol><li><a \
href=#the-workerglobalscope-common-interface>10.2.1.1 The \
<code>WorkerGlobalScope</code> common interface</a><li><a \
href=#dedicated-workers-and-the-dedicatedworkerglobalscope-interface>10.2.1.2 \
Dedicated workers and the <code>DedicatedWorkerGlobalScope</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworkerglobalscope-interface>10.2.1.3 Shared \
workers and the <code>SharedWorkerGlobalScope</code> interface</a></ol><li><a \
href=#worker-event-loop>10.2.2 The event loop</a><li><a \
href="#the-worker's-lifetime">10.2.3 The worker's lifetime</a><li><a \
href=#processing-model-11>10.2.4 Processing model</a><li><a \
href=#runtime-script-errors-2>10.2.5 Runtime script errors</a><li><a \
href=#creating-workers>10.2.6 Creating workers</a><ol><li><a \
href=#the-abstractworker-abstract-in  terface>10.2.6.1 The \
<code>AbstractWorker</code> abstract interface</a><li><a \
href=#script-settings-for-workers>10.2.6.2 Script settings for workers</a><li><a \
href=#dedicated-workers-and-the-worker-interface>10.2.6.3 Dedicated workers and the \
<code>Worker</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworker-interface>10.2.6.4 Shared workers and the \
<code>SharedWorker</code> interface</a></ol></ol><li><a \
href=#apis-available-to-workers>10.3 APIs available to workers</a><ol><li><a \
href=#importing-scripts-and-libraries>10.3.1 Importing scripts and \
libraries</a><li><a href=#the-workernavigator-object>10.3.2 The \
<code>WorkerNavigator</code> object</a><li><a href=#worker-locations>10.3.3 Worker \
locations</a></ol></ol><li id=toc-webstorage><a href=#webstorage>11 Web \
storage</a><ol><li><a href=#introduction-16>11.1 Introduction</a><li><a \
href=#storage>11.2 The API</a><ol><li><a href=#the-storage-interface>11.2.1 The \
<code>Storage</code> interface</a><li><a href=#the-  sessionstorage-attribute>11.2.2 \
The <code>sessionStorage</code> attribute</a><li><a \
href=#the-localstorage-attribute>11.2.3 The <code>localStorage</code> \
attribute</a><li><a href=#the-storage-event>11.2.4 The <code>storage</code> \
event</a><ol><li><a href=#the-storageevent-interface>11.2.4.1 The \
<code>StorageEvent</code> interface</a></ol><li><a href=#threads>11.2.5 \
Threads</a></ol><li><a href=#disk-space-2>11.3 Disk space</a><li><a \
href=#privacy>11.4 Privacy</a><ol><li><a href=#user-tracking>11.4.1 User \
tracking</a><li><a href=#sensitivity-of-data>11.4.2 Sensitivity of \
data</a></ol><li><a href=#security-storage>11.5 Security</a><ol><li><a \
href=#dns-spoofing-attacks>11.5.1 DNS spoofing attacks</a><li><a \
href=#cross-directory-attacks>11.5.2 Cross-directory attacks</a><li><a \
href=#implementation-risks>11.5.3 Implementation risks</a></ol></ol><li \
id=toc-syntax><a href=#syntax>12 The HTML syntax</a><ol><li><a href=#writing>12.1 \
Writing HTML documents</a><ol><li><a href=#the-docty  pe>12.1.1 The DOCTYPE</a><li><a \
href=#elements-2>12.1.2 Elements</a><ol><li><a href=#start-tags>12.1.2.1 Start \
tags</a><li><a href=#end-tags>12.1.2.2 End tags</a><li><a href=#attributes-2>12.1.2.3 \
Attributes</a><li><a href=#optional-tags>12.1.2.4 Optional tags</a><li><a \
href=#element-restrictions>12.1.2.5 Restrictions on content models</a><li><a \
href=#cdata-rcdata-restrictions>12.1.2.6 Restrictions on the contents of raw text and \
escapable raw text elements</a></ol><li><a href=#text-2>12.1.3 Text</a><ol><li><a \
href=#newlines>12.1.3.1 Newlines</a></ol><li><a href=#character-references>12.1.4 \
Character references</a><li><a href=#cdata-sections>12.1.5 CDATA sections</a><li><a \
href=#comments>12.1.6 Comments</a></ol><li><a href=#parsing>12.2 Parsing HTML \
documents</a><ol><li><a href=#overview-of-the-parsing-model>12.2.1 Overview of the \
parsing model</a><li><a href=#the-input-byte-stream>12.2.2 The input byte \
stream</a><ol><li><a href=#parsing-with-a-known-character-encoding>12.2.  2.1 Parsing \
with a known character encoding</a><li><a \
href=#determining-the-character-encoding>12.2.2.2 Determining the character \
encoding</a><li><a href=#character-encodings>12.2.2.3 Character encodings</a><li><a \
href=#changing-the-encoding-while-parsing>12.2.2.4 Changing the encoding while \
parsing</a><li><a href=#preprocessing-the-input-stream>12.2.2.5 Preprocessing the \
input stream</a></ol><li><a href=#parse-state>12.2.3 Parse state</a><ol><li><a \
href=#the-insertion-mode>12.2.3.1 The insertion mode</a><li><a \
href=#the-stack-of-open-elements>12.2.3.2 The stack of open elements</a><li><a \
href=#the-list-of-active-formatting-elements>12.2.3.3 The list of active formatting \
elements</a><li><a href=#the-element-pointers>12.2.3.4 The element pointers</a><li><a \
href=#other-parsing-state-flags>12.2.3.5 Other parsing state flags</a></ol><li><a \
href=#tokenization>12.2.4 Tokenization</a><ol><li><a href=#data-state>12.2.4.1 Data \
state</a><li><a href=#character-reference-in-data-state>1  2.2.4.2 Character \
reference in data state</a><li><a href=#rcdata-state>12.2.4.3 RCDATA state</a><li><a \
href=#character-reference-in-rcdata-state>12.2.4.4 Character reference in RCDATA \
state</a><li><a href=#rawtext-state>12.2.4.5 RAWTEXT state</a><li><a \
href=#script-data-state>12.2.4.6 Script data state</a><li><a \
href=#plaintext-state>12.2.4.7 PLAINTEXT state</a><li><a \
href=#tag-open-state>12.2.4.8 Tag open state</a><li><a \
href=#end-tag-open-state>12.2.4.9 End tag open state</a><li><a \
href=#tag-name-state>12.2.4.10 Tag name state</a><li><a \
href=#rcdata-less-than-sign-state>12.2.4.11 RCDATA less-than sign state</a><li><a \
href=#rcdata-end-tag-open-state>12.2.4.12 RCDATA end tag open state</a><li><a \
href=#rcdata-end-tag-name-state>12.2.4.13 RCDATA end tag name state</a><li><a \
href=#rawtext-less-than-sign-state>12.2.4.14 RAWTEXT less-than sign state</a><li><a \
href=#rawtext-end-tag-open-state>12.2.4.15 RAWTEXT end tag open state</a><li><a \
href=#rawtext-end-tag-name-state>12.2.4.16  RAWTEXT end tag name state</a><li><a \
href=#script-data-less-than-sign-state>12.2.4.17 Script data less-than sign \
state</a><li><a href=#script-data-end-tag-open-state>12.2.4.18 Script data end tag \
open state</a><li><a href=#script-data-end-tag-name-state>12.2.4.19 Script data end \
tag name state</a><li><a href=#script-data-escape-start-state>12.2.4.20 Script data \
escape start state</a><li><a href=#script-data-escape-start-dash-state>12.2.4.21 \
Script data escape start dash state</a><li><a \
href=#script-data-escaped-state>12.2.4.22 Script data escaped state</a><li><a \
href=#script-data-escaped-dash-state>12.2.4.23 Script data escaped dash \
state</a><li><a href=#script-data-escaped-dash-dash-state>12.2.4.24 Script data \
escaped dash dash state</a><li><a \
href=#script-data-escaped-less-than-sign-state>12.2.4.25 Script data escaped \
less-than sign state</a><li><a href=#script-data-escaped-end-tag-open-state>12.2.4.26 \
Script data escaped end tag open state</a><li><a href=#script-data-esc  \
aped-end-tag-name-state>12.2.4.27 Script data escaped end tag name state</a><li><a \
href=#script-data-double-escape-start-state>12.2.4.28 Script data double escape start \
state</a><li><a href=#script-data-double-escaped-state>12.2.4.29 Script data double \
escaped state</a><li><a href=#script-data-double-escaped-dash-state>12.2.4.30 Script \
data double escaped dash state</a><li><a \
href=#script-data-double-escaped-dash-dash-state>12.2.4.31 Script data double escaped \
dash dash state</a><li><a \
href=#script-data-double-escaped-less-than-sign-state>12.2.4.32 Script data double \
escaped less-than sign state</a><li><a \
href=#script-data-double-escape-end-state>12.2.4.33 Script data double escape end \
state</a><li><a href=#before-attribute-name-state>12.2.4.34 Before attribute name \
state</a><li><a href=#attribute-name-state>12.2.4.35 Attribute name state</a><li><a \
href=#after-attribute-name-state>12.2.4.36 After attribute name state</a><li><a \
href=#before-attribute-value-state>12.2.4.37 Bef  ore attribute value state</a><li><a \
href=#attribute-value-(double-quoted)-state>12.2.4.38 Attribute value (double-quoted) \
state</a><li><a href=#attribute-value-(single-quoted)-state>12.2.4.39 Attribute value \
(single-quoted) state</a><li><a href=#attribute-value-(unquoted)-state>12.2.4.40 \
Attribute value (unquoted) state</a><li><a \
href=#character-reference-in-attribute-value-state>12.2.4.41 Character reference in \
attribute value state</a><li><a href=#after-attribute-value-(quoted)-state>12.2.4.42 \
After attribute value (quoted) state</a><li><a \
href=#self-closing-start-tag-state>12.2.4.43 Self-closing start tag state</a><li><a \
href=#bogus-comment-state>12.2.4.44 Bogus comment state</a><li><a \
href=#markup-declaration-open-state>12.2.4.45 Markup declaration open state</a><li><a \
href=#comment-start-state>12.2.4.46 Comment start state</a><li><a \
href=#comment-start-dash-state>12.2.4.47 Comment start dash state</a><li><a \
href=#comment-state>12.2.4.48 Comment state</a><li><a href=#com  \
ment-end-dash-state>12.2.4.49 Comment end dash state</a><li><a \
href=#comment-end-state>12.2.4.50 Comment end state</a><li><a \
href=#comment-end-bang-state>12.2.4.51 Comment end bang state</a><li><a \
href=#doctype-state>12.2.4.52 DOCTYPE state</a><li><a \
href=#before-doctype-name-state>12.2.4.53 Before DOCTYPE name state</a><li><a \
href=#doctype-name-state>12.2.4.54 DOCTYPE name state</a><li><a \
href=#after-doctype-name-state>12.2.4.55 After DOCTYPE name state</a><li><a \
href=#after-doctype-public-keyword-state>12.2.4.56 After DOCTYPE public keyword \
state</a><li><a href=#before-doctype-public-identifier-state>12.2.4.57 Before DOCTYPE \
public identifier state</a><li><a \
href=#doctype-public-identifier-(double-quoted)-state>12.2.4.58 DOCTYPE public \
identifier (double-quoted) state</a><li><a \
href=#doctype-public-identifier-(single-quoted)-state>12.2.4.59 DOCTYPE public \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-public-identifier-state>12.2.4.60 After DOCTYPE public i  \
dentifier state</a><li><a \
href=#between-doctype-public-and-system-identifiers-state>12.2.4.61 Between DOCTYPE \
public and system identifiers state</a><li><a \
href=#after-doctype-system-keyword-state>12.2.4.62 After DOCTYPE system keyword \
state</a><li><a href=#before-doctype-system-identifier-state>12.2.4.63 Before DOCTYPE \
system identifier state</a><li><a \
href=#doctype-system-identifier-(double-quoted)-state>12.2.4.64 DOCTYPE system \
identifier (double-quoted) state</a><li><a \
href=#doctype-system-identifier-(single-quoted)-state>12.2.4.65 DOCTYPE system \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-system-identifier-state>12.2.4.66 After DOCTYPE system identifier \
state</a><li><a href=#bogus-doctype-state>12.2.4.67 Bogus DOCTYPE state</a><li><a \
 <a href=#creating-and-inserting-nodes>12.2.5.1 Creating and inserting \
nodes</a><li><a href=#parsing-elements-that-contain-only-text>12.2.5.2 Parsing \
elements that contain only text</a><li><a \
href=#closing-elements-that-have-implied-end-tags>12.2.5.3 Closing elements that have \
implied end tags</a><li><a href=#parsing-main-inhtml>12.2.5.4 The rules for parsing \
tokens in HTML content</a><ol><li><a href=#the-initial-insertion-mode>12.2.5.4.1 The \
"initial" insertion mode</a><li><a href=#the-before-html-insertion-mode>12.2.5.4.2 \
The "before html" insertion mode</a><li><a \
href=#the-before-head-insertion-mode>12.2.5.4.3 The "before head" insertion \
mode</a><li><a href=#parsing-main-inhead>12.2.5.4.4 The "in head" insertion \
mode</a><li><a href=#parsing-main-inheadnoscript>12.2.5.4.5 The "in head noscript" \
insertion mode</a><li><a href=#the-after-head-insertion-mode>12.2.5.4.6 The "after \
head" insertion mode</a><li><a href=#parsing-main-inbody>12.2.5.4.7 The "in body" \
insertion mode</a  ><li><a href=#parsing-main-incdata>12.2.5.4.8 The "text" insertion \
mode</a><li><a href=#parsing-main-intable>12.2.5.4.9 The "in table" insertion \
mode</a><li><a href=#parsing-main-intabletext>12.2.5.4.10 The "in table text" \
insertion mode</a><li><a href=#parsing-main-incaption>12.2.5.4.11 The "in caption" \
insertion mode</a><li><a href=#parsing-main-incolgroup>12.2.5.4.12 The "in column \
group" insertion mode</a><li><a href=#parsing-main-intbody>12.2.5.4.13 The "in table \
body" insertion mode</a><li><a href=#parsing-main-intr>12.2.5.4.14 The "in row" \
insertion mode</a><li><a href=#parsing-main-intd>12.2.5.4.15 The "in cell" insertion \
mode</a><li><a href=#parsing-main-inselect>12.2.5.4.16 The "in select" insertion \
mode</a><li><a href=#parsing-main-inselectintable>12.2.5.4.17 The "in select in \
table" insertion mode</a><li><a href=#parsing-main-intemplate>12.2.5.4.18 The "in \
template" insertion mode</a><li><a href=#parsing-main-afterbody>12.2.5.4.19 The \
"after body" insertion mode<  /a><li><a href=#parsing-main-inframeset>12.2.5.4.20 The \
"in frameset" insertion mode</a><li><a href=#parsing-main-afterframeset>12.2.5.4.21 \
The "after frameset" insertion mode</a><li><a \
href=#the-after-after-body-insertion-mode>12.2.5.4.22 The "after after body" \
insertion mode</a><li><a href=#the-after-after-frameset-insertion-mode>12.2.5.4.23 \
The "after after frameset" insertion mode</a></ol><li><a \
href=#parsing-main-inforeign>12.2.5.5 The rules for parsing tokens in foreign \
content</a></ol><li><a href=#the-end>12.2.6 The end</a><li><a \
href=#coercing-an-html-dom-into-an-infoset>12.2.7 Coercing an HTML DOM into an \
infoset</a><li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser>12.2.8 \
An introduction to error handling and strange cases in the parser</a><ol><li><a \
href=#misnested-tags:-b-i-/b-/i>12.2.8.1 Misnested tags: \
&lt;b>&lt;i>&lt;/b>&lt;/i></a><li><a href=#misnested-tags:-b-p-/b-/p>12.2.8.2 \
Misnested tags: &lt;b>&lt;p>&lt;/b>&lt;/p></a><li><a hr  \
ef=#unexpected-markup-in-tables>12.2.8.3 Unexpected markup in tables</a><li><a \
href=#scripts-that-modify-the-page-as-it-is-being-parsed>12.2.8.4 Scripts that modify \
the page as it is being parsed</a><li><a \
href=#the-execution-of-scripts-that-are-moving-across-multiple-documents>12.2.8.5 The \
execution of scripts that are moving across multiple documents</a><li><a \
href=#unclosed-formatting-elements>12.2.8.6 Unclosed formatting \
elements</a></ol></ol><li><a href=#serialising-html-fragments>12.3 Serialising HTML \
fragments</a><li><a href=#parsing-html-fragments>12.4 Parsing HTML \
fragments</a><li><a href=#named-character-references>12.5 Named character \
references</a></ol><li id=toc-the-xhtml-syntax><a href=#the-xhtml-syntax>13 The XHTML \
syntax</a><ol><li><a href=#writing-xhtml-documents>13.1 Writing XHTML \
documents</a><li><a href=#parsing-xhtml-documents>13.2 Parsing XHTML \
documents</a><li><a href=#serialising-xhtml-fragments>13.3 Serialising XHTML \
                fragments</a><li><a href=#parsing
 -xhtml-fragments>13.4 Parsing XHTML fragments</a></ol><li id=toc-rendering><a \
href=#rendering>14 Rendering</a><ol><li><a href=#introduction-17>14.1 \
Introduction</a><li><a \
href=#the-css-user-agent-style-sheet-and-presentational-hints>14.2 The CSS user agent \
style sheet and presentational hints</a><li><a href=#non-replaced-elements>14.3 \
Non-replaced elements</a><ol><li><a href=#hidden-elements>14.3.1 Hidden \
elements</a><li><a href=#the-page>14.3.2 The page</a><li><a \
href=#flow-content-3>14.3.3 Flow content</a><li><a href=#phrasing-content-3>14.3.4 \
Phrasing content</a><li><a href=#bidi-rendering>14.3.5 Bidirectional text</a><li><a \
href=#quotes>14.3.6 Quotes</a><li><a href=#sections-and-headings>14.3.7 Sections and \
headings</a><li><a href=#lists>14.3.8 Lists</a><li><a href=#tables-2>14.3.9 \
Tables</a><li><a href=#margin-collapsing-quirks>14.3.10 Margin collapsing \
quirks</a><li><a href=#form-controls>14.3.11 Form controls</a><li><a \
href=#the-hr-element-2>14.3.12 The <code>hr</code  > element</a><li><a \
href=#the-fieldset-and-legend-elements>14.3.13 The <code>fieldset</code> and \
<code>legend</code> elements</a></ol><li><a href=#replaced-elements>14.4 Replaced \
elements</a><ol><li><a href=#embedded-content-rendering-rules>14.4.1 Embedded \
content</a><li><a href=#images-2>14.4.2 Images</a><li><a \
href=#attributes-for-embedded-content-and-images>14.4.3 Attributes for embedded \
content and images</a><li><a href=#image-maps-2>14.4.4 Image maps</a></ol><li><a \
href=#bindings>14.5 Bindings</a><ol><li><a href=#introduction-18>14.5.1 \
Introduction</a><li><a href=#the-button-element-2>14.5.2 The <code>button</code> \
element</a><li><a href=#the-details-element-2>14.5.3 The <code>details</code> \
element</a><li><a href=#the-input-element-as-a-text-entry-widget>14.5.4 The \
<code>input</code> element as a text entry widget</a><li><a \
href=#the-input-element-as-domain-specific-widgets>14.5.5 The <code>input</code> \
element as domain-specific widgets</a><li><a href=#the-input-eleme  \
nt-as-a-range-control>14.5.6 The <code>input</code> element as a range \
control</a><li><a href=#the-input-element-as-a-colour-well>14.5.7 The \
<code>input</code> element as a colour well</a><li><a \
href=#the-input-element-as-a-checkbox-and-radio-button-widgets>14.5.8 The \
<code>input</code> element as a checkbox and radio button widgets</a><li><a \
href=#the-input-element-as-a-file-upload-control>14.5.9 The <code>input</code> \
element as a file upload control</a><li><a \
href=#the-input-element-as-a-button>14.5.10 The <code>input</code> element as a \
button</a><li><a href=#the-marquee-element>14.5.11 The <code>marquee</code> \
element</a><li><a href=#the-meter-element-2>14.5.12 The <code>meter</code> \
element</a><li><a href=#the-progress-element-2>14.5.13 The <code>progress</code> \
element</a><li><a href=#the-select-element-2>14.5.14 The <code>select</code> \
element</a><li><a href=#the-textarea-element-2>14.5.15 The <code>textarea</code> \
element</a><li><a href=#the-keygen-element-2>14.5.16  The <code>keygen</code> \
element</a></ol><li><a href=#frames-and-framesets>14.6 Frames and framesets</a><li><a \
href=#interactive-media>14.7 Interactive media</a><ol><li><a \
href=#links,-forms,-and-navigation>14.7.1 Links, forms, and navigation</a><li><a \
href=#the-title-attribute-2>14.7.2 The <code>title</code> attribute</a><li><a \
href=#editing-hosts>14.7.3 Editing hosts</a><li><a \
href=#text-rendered-in-native-user-interfaces>14.7.4 Text rendered in native user \
interfaces</a></ol><li><a href=#print-media>14.8 Print media</a><li><a \
href=#unstyled-xml-documents>14.9 Unstyled XML documents</a></ol><li \
id=toc-obsolete><a href=#obsolete>15 Obsolete features</a><ol><li><a \
href=#obsolete-but-conforming-features>15.1 Obsolete but conforming \
features</a><ol><li><a href=#warnings-for-obsolete-but-conforming-features>15.1.1 \
Warnings for obsolete but conforming features</a></ol><li><a \
href=#non-conforming-features>15.2 Non-conforming features</a><li><a \
href=#requirements-for-implementatio  ns>15.3 Requirements for \
implementations</a><ol><li><a href=#the-applet-element>15.3.1 The <code>applet</code> \
element</a><li><a href=#the-marquee-element-2>15.3.2 The <code>marquee</code> \
element</a><li><a href=#frames>15.3.3 Frames</a><li><a \
href=#other-elements,-attributes-and-apis>15.3.4 Other elements, attributes and \
APIs</a></ol></ol><li id=toc-iana><a href=#iana>16 IANA considerations</a><ol><li><a \
href=#text/html>16.1 <code>text/html</code></a><li><a \
href=#multipart/x-mixed-replace>16.2 <code>multipart/x-mixed-replace</code></a><li><a \
href=#application/xhtml+xml>16.3 <code>application/xhtml+xml</code></a><li><a \
href=#application/x-www-form-urlencoded>16.4 \
<code>application/x-www-form-urlencoded</code></a><li><a \
href=#text/cache-manifest>16.5 <code>text/cache-manifest</code></a><li><a \
href=#text/ping>16.6 <code>text/ping</code></a><li><a \
href=#application/microdata+json>16.7 \
<code>application/microdata+json</code></a><li><a href=#ping-from>16.8 \
<code>Ping-From</code><  /a><li><a href=#ping-to>16.9 <code>Ping-To</code></a><li><a \
href=#web+-scheme-prefix>16.10 <code>web+</code> scheme prefix</a></ol><li \
id=toc-index><a href=#index>Index</a><ol><li><a href=#elements-3>Elements</a><li><a \
href=#element-content-categories>Element content categories</a><li><a \
href=#attributes-3>Attributes</a><li><a href=#element-interfaces>Element \
Interfaces</a><li><a href=#all-interfaces>All Interfaces</a><li><a \
href=#events-2>Events</a><li><a href=#mime-types-2>MIME Types</a></ol><li \
id=toc-references><a href=#references>References</a><li id=toc-acknowledgments><a \
href=#acknowledgments>Acknowledgements</a></ol>  
   
 
@@ -611,7 +611,7 @@
 
 
 
-  <h4 id=compliance-with-other-specifications>1.7.2 Compliance with other \
specifications</h4> +  <h4 id=compliance-with-other-specifications>1.7.2 Compliance \
with other specifications</h4><div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27367" title="Despite \
difficulties with multithreading there should be some function in scripting/search \
engine re [...]">27367</a></div>  
   <p><i>This section is non-normative.</i></p>
 
@@ -1130,7 +1130,7 @@
 
 
 
-  <h4 id=common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common \
pitfalls to avoid when using the scripting APIs</h4> +  <h4 \
id=common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common pitfalls to \
avoid when using the scripting APIs</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27316" \
title="This example is not clear enough to understand.">27316</a></div>  
   <p><i>This section is non-normative.</i></p>
 
@@ -2183,7 +2183,7 @@
   
 
 
-  <h4 id=dependencies>2.2.2 Dependencies</h4>
+  <h4 id=dependencies>2.2.2 Dependencies</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27343" \
title="i dont know">27343</a></div>  
   <p>This specification relies on several other underlying specifications.</p>
 
@@ -2475,6 +2475,9 @@
     <ul class=brief><li>The <dfn id=top-layer>top layer</dfn> concept<li><dfn \
                id=dom-element-requestfullscreen><code>requestFullscreen()</code></dfn>
                
      <li>The <dfn id=fullscreen-enabled-flag>fullscreen enabled flag</dfn><li>The \
<dfn id=fully-exit-fullscreen>fully exit fullscreen</dfn> algorithm</ul>  
+    <p>The <cite>High Resolution Time</cite> specification provides the
+    <dfn id=performance><code>Performance</code></dfn> object's <dfn \
id=dom-performance-now><code>now()</code></dfn> method. <a \
href=#refsHRT>[HRT]</a></p> +
    <dt>File API<dd>
 
     <p>This specification uses the following features defined in the File API \
specification: <a href=#refsFILEAPI>[FILEAPI]</a></p> @@ -3008,7 +3011,7 @@
 
   <p>When a user agent is to <dfn id=strip-leading-and-trailing-whitespace>strip \
leading and trailing whitespace</dfn> from a string, the  user agent must remove all \
<a href=#space-character id=common-parser-idioms:space-character-2>space \
                characters</a> that are at the
-  start or end of the string.</p>
+  start or end of the string.<div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27348" title="containers seem to \
be what's preventing the changes, srcdoc">27348</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27350" title="containers seem to \
be what's preventing the changes, srcdoc">27350</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27351" title="containers seem to \
be what's preventing the changes, srcdoc">27351</a></div>  
   <p>When a user agent is to <dfn id=strip-and-collapse-whitespace>strip and \
collapse whitespace</dfn> in a string, it must replace  any sequence of one or more \
consecutive <a href=#space-character id=common-parser-idioms:space-character-3>space \
characters</a> in @@ -4369,7 +4372,7 @@
 
   <h3 id=urls>2.5 URLs</h3>
 
-  <h4 id=terminology-2>2.5.1 Terminology</h4>
+  <h4 id=terminology-2>2.5.1 Terminology</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27349" \
title="containers seem to be what's preventing the changes, srcdoc">27349</a></div>  
   <p>A <a href=#url id=terminology-2:url>URL</a> is a <dfn id=valid-url>valid \
URL</dfn> if it conforms to the authoring conformance  requirements in the WHATWG URL \
standard. <a href=#refsURL>[URL]</a></p> @@ -8840,7 +8843,7 @@
 
   <h3 id=the-root-element>4.1 The root element</h3>
 
-  <h4 id=the-html-element>4.1.1 The <dfn><code>html</code></dfn> element</h4>
+  <h4 id=the-html-element>4.1.1 The <dfn><code>html</code></dfn> element</h4><div \
class=status><input onclick=toggleStatus(this) value=â‹° type=button><p \
class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27319" title="neither Validator \
nor any browser got a problem with immediately followed comments when not defining \
start-/ and end-tags">27319</a></div>  
   <dl class=element><dt><a href=#concept-element-categories \
id=the-html-element:concept-element-categories>Categories</a>:<dd>None.<dt><a \
href=#concept-element-contexts id=the-html-element:concept-element-contexts>Contexts \
in which this element can be used</a>:<dd>As the root element of a \
document.<dd>Wherever a subdocument fragment is allowed in a compound document.<dt><a \
href=#concept-element-content-model \
id=the-html-element:concept-element-content-model>Content model</a>:<dd>A <code \
id=the-html-element:the-head-element><a href=#the-head-element>head</a></code> \
element followed by a <code id=the-html-element:the-body-element><a \
href=#the-body-element>body</a></code> element.<dt><a \
href=#concept-element-tag-omission \
id=the-html-element:concept-element-tag-omission>Tag omission in text/html</a>:<dd>An \
<code id=the-html-element:the-html-element><a href=#the-html-element>html</a></code> \
element's <a href=#syntax-start-tag id=the-html-element:syntax-start-tag>start \
tag</a> can  be omitted
    if the first thing inside the <code id=the-html-element:the-html-element-2><a \
href=#the-html-element>html</a></code> element is not a <a href=#syntax-comments \
id=the-html-element:syntax-comments>comment</a>.<dd>An <code \
id=the-html-element:the-html-element-3><a href=#the-html-element>html</a></code> \
element's <a href=#syntax-end-tag id=the-html-element:syntax-end-tag>end tag</a> can \
be omitted if @@ -33734,7 +33737,7 @@
   </div>
 
 
-  <h6 id="e-mail-state-(type=email)">4.10.5.1.5 <dfn>E-mail</dfn> state \
(<code>type=email</code>)</h6><div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=15489" title="forms: Add an \
attribute <input type=email idna> that allows IDNA e-mail addresses to be \
round-tripped">15489</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18162" title="IDN email \
addresses should be converted to Punycode before validating them">18162</a></div> +  \
<h6 id="e-mail-state-(type=email)">4.10.5.1.5 <dfn>E-mail</dfn> state \
(<code>type=email</code>)</h6><div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=15489" title="forms: <input \
type=email> validation needs to be updated for EAI">15489</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18162" title="IDN email \
addresses should be converted to Punycode before validating them">18162</a></div>  
   
 
@@ -35782,7 +35785,7 @@
 
 
 
-  <h6 id="file-upload-state-(type=file)">4.10.5.1.18 <dfn>File Upload</dfn> state \
(<code>type=file</code>)</h6> +  <h6 id="file-upload-state-(type=file)">4.10.5.1.18 \
<dfn>File Upload</dfn> state (<code>type=file</code>)</h6><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27333" \
title="Most user agents (Chrome, Firefox) seem to distinguish between space and \
enter. Enter submits the form, even for radio buttons, space selects the \
checkbox.">27333</a></div>  
   
 
@@ -44824,7 +44827,7 @@
   </div>
 
 
-  <h4 id=the-script-element>4.12.1 The <dfn id=script><code>script</code></dfn> \
element</h4><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23165" title="Implement \
JavaScript syntax checking in <script>">23165</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23156" title="Bug filing button \
of the nightly 5.1 spec gets hidden from user upon scroll">23156</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18298" title="&quot;The script \
element gets inserted into a document.&quot; - is the order defined if multiple \
script elements are simultaneously inserted? What about the relative order of other \
things that happen on insertion and script elements?">18298</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=25943" title="Include execution \
graph by Peter">25943</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23157  " title="XHTML: validator \
doesn't check that Raw Text elements (style/script) match the \
constraints">23157</a></div> +  <h4 id=the-script-element>4.12.1 The <dfn \
id=script><code>script</code></dfn> element</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23165" \
title="Implement JavaScript syntax checking in <script>">23165</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23156" title="Bug filing button \
of the nightly 5.1 spec gets hidden from user upon scroll">23156</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18298" title="&quot;The script \
element gets inserted into a document.&quot; - is the order defined if multiple \
script elements are simultaneously inserted? What about the relative order of other \
things that happen on insertion and script elements?">18298</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=25943" title="Include execution \
graph by Peter">25943</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27332  " title="Contexts in \
which this element can be used: not where flow content is expected?">27332</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23157" title="XHTML: validator \
doesn't check that Raw Text elements (style/script) match the \
constraints">23157</a></div>  
   <dl class=element><dt><a href=#concept-element-categories \
id=the-script-element:concept-element-categories>Categories</a>:<dd><a \
href=#metadata-content-2 id=the-script-element:metadata-content-2>Metadata \
content</a>.<dd><a href=#flow-content-2 id=the-script-element:flow-content-2>Flow \
content</a>.<dd><a href=#phrasing-content-2 \
id=the-script-element:phrasing-content-2>Phrasing content</a>.<dd><a \
href=#script-supporting-elements-2 \
id=the-script-element:script-supporting-elements-2>Script-supporting \
element</a>.<dt><a href=#concept-element-contexts \
id=the-script-element:concept-element-contexts>Contexts in which this element can be \
used</a>:<dd>Where <a href=#metadata-content-2 \
id=the-script-element:metadata-content-2-2>metadata content</a> is expected.<dd>Where \
<a href=#phrasing-content-2 id=the-script-element:phrasing-content-2-2>phrasing \
content</a> is expected.<dd>Where <a href=#script-supporting-elements-2 \
id=the-script-element:script-supporting-elements-2-2>script-supp  orting elements</a> \
are expected.<dt><a href=#concept-element-content-model \
id=the-script-element:concept-element-content-model>Content model</a>:<dd>If there is \
no <code id=the-script-element:attr-script-src><a \
href=#attr-script-src>src</a></code>  attribute, depends on the value of the <code \
id=the-script-element:attr-script-type><a href=#attr-script-type>type</a></code> \
attribute, but must match @@ -57783,6 +57786,9 @@
   void <a href=#dom-print id=the-window-object:dom-print>print</a>();
   any <a href=#dom-showmodaldialog \
id=the-window-object:dom-showmodaldialog>showModalDialog</a>(DOMString url, optional \
any argument); // deprecated  
+  long <a href=#dom-window-requestanimationframe \
id=the-window-object:dom-window-requestanimationframe>requestAnimationFrame</a>(<span>FrameRequestCallback</span> \
callback); +  void <a href=#dom-window-cancelanimationframe \
id=the-window-object:dom-window-cancelanimationframe>cancelAnimationFrame</a>(long \
handle); +
   void <a href=#dom-window-postmessage \
id=the-window-object:dom-window-postmessage>postMessage</a>(any message, DOMString \
targetOrigin, optional sequence&lt;<a href=#transferable \
id=the-window-object:transferable>Transferable</a>> transfer);  
   // <a href="#Window-partial">also has obsolete members</a>
@@ -63000,12 +63006,15 @@
 
   <h6 id=runtime-script-errors-in-documents>8.1.3.6.1 Runtime script errors in \
documents</h6>  
-  <p>Whenever an uncaught runtime script error occurs in one of the scripts \
                associated with a
-  <code id=runtime-script-errors-in-documents:document><a \
href=#document>Document</a></code>, the user agent must <a href=#report-the-error \
id=runtime-script-errors-in-documents:report-the-error>report the error</a> for the \
relevant <a href=#concept-script \
id=runtime-script-errors-in-documents:concept-script>script</a>, with the problematic \
position (line number and column +  <p>When the user agent is to <dfn \
id=report-the-exception>report an exception</dfn> +  <var>E</var>, the user agent \
must <a href=#report-the-error \
id=runtime-script-errors-in-documents:report-the-error>report the error</a> for the \
relevant <a href=#concept-script \
id=runtime-script-errors-in-documents:concept-script>script</a>, with the problematic \
position (line number and column  number) in the resource containing the script, \
using the <a href=#global-object \
id=runtime-script-errors-in-documents:global-object>global object</a> specified by  \
the script's <a href=#settings-object \
id=runtime-script-errors-in-documents:settings-object>settings object</a> as the \
target. If the error is still <i \
id=runtime-script-errors-in-documents:concept-error-nothandled><a \
href=#concept-error-nothandled>not handled</a></i> after this, then the error may be \
reported to  the user.</p>
 
+  <p>When an exception is thrown during the execution of one of the scripts \
associated with a +  <code id=runtime-script-errors-in-documents:document><a \
href=#document>Document</a></code>, and the exception is not caught, the user agent \
must <a href=#report-the-exception \
id=runtime-script-errors-in-documents:report-the-exception>report the +  \
exception</a>.</p>  
 
   <h6 id=the-errorevent-interface>8.1.3.6.2 The <code \
id=the-errorevent-interface:errorevent><a href=#errorevent>ErrorEvent</a></code> \
interface</h6><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=25099" title="Should define \
default values for ErrorEventInit in the IDL, not in the prose">25099</a></div> @@ \
-63163,7 +63172,7 @@  agent must release the <a href=#storage-mutex \
id=definitions-3:storage-mutex-4>storage mutex</a>.</p>  
 
-  <h5 id=processing-model-9>8.1.4.2 Processing model</h5>
+  <h5 id=processing-model-9>8.1.4.2 Processing model</h5> 
 
   <p>An <a href=#event-loop id=processing-model-9:event-loop>event loop</a> must \
continually run through the following steps for as long as it  exists:</p>
@@ -63183,26 +63192,57 @@
 
     <p><i>Update the rendering</i>: If this <a href=#event-loop \
id=processing-model-9:event-loop-7>event loop</a> is a <a href=#browsing-context \
                id=processing-model-9:browsing-context-2>browsing
     context</a> <a href=#event-loop id=processing-model-9:event-loop-8>event \
                loop</a> (as opposed to a <a href=#workers>worker</a>
-    <a href=#event-loop id=processing-model-9:event-loop-9>event loop</a>), then, if \
necessary, run the following steps.</p> +    <a href=#event-loop \
id=processing-model-9:event-loop-9>event loop</a>), then, if necessary, run the \
following substeps.</p>  
-    <ol><li><p>Update the rendering or user interface of any <code \
id=processing-model-9:document-2><a href=#document>Document</a></code> or <a \
                href=#browsing-context \
                id=processing-model-9:browsing-context-3>browsing
-     context</a> to reflect the current state.</ol>
-
     <p class=note>Whether these steps are necessary depends on the update frequency. \
                For example,
     if the browser is attempting to achieve a 60 Hz refresh rate, then these steps \
                are only
-    necessary every 60th of a second (about 16.7ms). This specification does not \
                mandate any
-    particular model for when to update the rendering.</p>
+    necessary every 60th of a second (about 16.7ms). If the browser finds that the \
page is not able +    to sustain this rate, it might drop to a more sustainable 30Hz, \
rather than occasionally +    dropping frames. This specification does not mandate \
any particular model for when to update the +    rendering.</p>
 
-   <li><p>If this is a <a href=#workers>worker</a> <a href=#event-loop \
id=processing-model-9:event-loop-10>event loop</a> (i.e. one running for a +    \
<ol><li><p>Let <var>now</var> be the value that would be returned by the <code \
id=processing-model-9:performance><a href=#performance>Performance</a></code> +     \
object's <code id=processing-model-9:dom-performance-now><a \
href=#dom-performance-now>now()</a></code> method. <a href=#refsHRT>[HRT]</a></p> +
+     <li>
+
+      <p>Let <var>docs</var> be the list of <code \
id=processing-model-9:document-2><a href=#document>Document</a></code> objects \
associated with the +      <a href=#event-loop \
id=processing-model-9:event-loop-10>event loop</a> in question, sorted arbitrarily \
except that the following conditions +      must be met:</p>
+
+      <ul><li><p>Any <code id=processing-model-9:document-3><a \
href=#document>Document</a></code> <var>B</var> that is <span>nested through</span> a \
+       <code id=processing-model-9:document-4><a href=#document>Document</a></code> \
<var>A</var> must be listed after <var>A</var> in the list.<li><p>If there are two \
documents <var>A</var> and <var>B</var> whose <a href=#browsing-context \
id=processing-model-9:browsing-context-3>browsing contexts</a> are both <a \
href=#nested-browsing-context id=processing-model-9:nested-browsing-context>nested +  \
browsing contexts</a> and their <a href=#browsing-context-container \
id=processing-model-9:browsing-context-container>browsing context +       \
containers</a> are both elements in the same <code \
id=processing-model-9:document-5><a href=#document>Document</a></code> <var>C</var>, \
then the +       order of <var>A</var> and <var>B</var> in the list must match the \
relative <a href=#tree-order id=processing-model-9:tree-order>tree +       order</a> \
of their respective <a href=#browsing-context-container \
id=processing-model-9:browsing-context-container-2>browsing context +       \
containers</a> in <var>C</var>.</ul> +
+      <p>In the steps below that iterate over <var>docs</var>, each <code \
id=processing-model-9:document-6><a href=#document>Document</a></code> must be +      \
processed in the order it is found in the list.</p> +
+     <li><p>For each <code id=processing-model-9:document-7><a \
href=#document>Document</a></code> in <var>docs</var>, <dfn \
id=run-the-resize-steps>run the resize steps</dfn> for +     that <code \
id=processing-model-9:document-8><a href=#document>Document</a></code>, passing in \
<var>now</var> as the timestamp. <a href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li><p>For \
each <code id=processing-model-9:document-9><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=run-the-scroll-steps>run the scroll steps</dfn> for +     \
that <code id=processing-model-9:document-10><a href=#document>Document</a></code>, \
passing in <var>now</var> as the timestamp. <a \
href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li><p>For each <code \
id=processing-model-9:document-11><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=evaluate-media-queries-and-report-changes>evaluate media \
queries and +     report changes</dfn> for that <code \
id=processing-model-9:document-12><a href=#document>Document</a></code>, passing in \
<var>now</var> as the +     timestamp. <a \
href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li><p>For each <code \
id=processing-model-9:document-13><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=run-css-animations-and-send-events>run CSS animations and \
send +     events</dfn> for that <code id=processing-model-9:document-14><a \
href=#document>Document</a></code>, passing in <var>now</var> as the timestamp. <a \
href=#refsCSSANIMATIONS>[CSSANIMATIONS]</a><li><p>For each <code \
id=processing-model-9:document-15><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=run-the-fullscreen-rendering-steps>run the fullscreen \
rendering +     steps</dfn> for that <code id=processing-model-9:document-16><a \
href=#document>Document</a></code>, passing in <var>now</var> as the timestamp. <a \
href=#refsFULLSCREEN>[FULLSCREEN]</a><li><p>For each <code \
id=processing-model-9:document-17><a href=#document>Document</a></code> in \
<var>docs</var>, <a href=#run-the-animation-frame-callbacks \
id=processing-model-9:run-the-animation-frame-callbacks>run the animation frame +     \
callbacks</a> for that <code id=processing-model-9:document-18><a \
href=#document>Document</a></code>, passing in <var>now</var> as the +     \
timestamp.<li><p>For each <code id=processing-model-9:document-19><a \
href=#document>Document</a></code> in <var>docs</var>, update the rendering or user + \
interface of that <code id=processing-model-9:document-20><a \
href=#document>Document</a></code> and its <a href=#browsing-context \
id=processing-model-9:browsing-context-4>browsing context</a> to reflect the +     \
current state.</ol> +
+   <li><p>If this is a <a href=#workers>worker</a> <a href=#event-loop \
id=processing-model-9:event-loop-11>event loop</a> (i.e. one running for a  <code \
id=processing-model-9:workerglobalscope><a \
href=#workerglobalscope>WorkerGlobalScope</a></code>), but there are no <a \
                href=#concept-task id=processing-model-9:concept-task-4>tasks</a> in \
                the
-   <a href=#event-loop id=processing-model-9:event-loop-11>event loop</a>'s <a \
                href=#task-queue id=processing-model-9:task-queue-4>task queues</a> \
                and the
-   <code id=processing-model-9:workerglobalscope-2><a \
href=#workerglobalscope>WorkerGlobalScope</a></code> object's <a \
href=#dom-workerglobalscope-closing \
id=processing-model-9:dom-workerglobalscope-closing>closing</a> flag is true, then \
destroy the <a href=#event-loop id=processing-model-9:event-loop-12>event +   <a \
href=#event-loop id=processing-model-9:event-loop-12>event loop</a>'s <a \
href=#task-queue id=processing-model-9:task-queue-4>task queues</a> and the +   <code \
id=processing-model-9:workerglobalscope-2><a \
href=#workerglobalscope>WorkerGlobalScope</a></code> object's <a \
href=#dom-workerglobalscope-closing \
id=processing-model-9:dom-workerglobalscope-closing>closing</a> flag is true, then \
destroy the <a href=#event-loop id=processing-model-9:event-loop-13>event  loop</a>, \
aborting these steps, resuming the <a href=#run-a-worker \
                id=processing-model-9:run-a-worker>run a worker</a> steps described \
                in the
-   Web Workers section below.<li><p>Return to the <a href=#step1>first step</a> of \
the <a href=#event-loop id=processing-model-9:event-loop-13>event loop</a>.</ol> +   \
Web Workers section below.<li><p>Return to the <a href=#step1>first step</a> of the \
<a href=#event-loop id=processing-model-9:event-loop-14>event loop</a>.</ol>  
   <hr>
 
-  <p>Each <a href=#event-loop id=processing-model-9:event-loop-14>event loop</a> has \
a <dfn id=microtask-queue>microtask queue</dfn>. A <dfn id=microtask>microtask</dfn> \
is a +  <p>Each <a href=#event-loop id=processing-model-9:event-loop-15>event \
loop</a> has a <dfn id=microtask-queue>microtask queue</dfn>. A <dfn \
id=microtask>microtask</dfn> is a  <a href=#concept-task \
id=processing-model-9:concept-task-5>task</a> that is originally to be queued on the \
<a href=#microtask-queue id=processing-model-9:microtask-queue>microtask  queue</a> \
rather than a <a href=#task-queue id=processing-model-9:task-queue-5>task queue</a>. \
There are two kinds of <a href=#microtask \
id=processing-model-9:microtask>microtasks</a>: <dfn \
id=solitary-callback-microtask>solitary callback  microtasks</dfn>, and <dfn \
id=compound-microtask>compound microtasks</dfn>.</p> @@ -63212,7 +63252,7 @@
   microtasks</a> have to take extra care to <a \
href=#execute-a-compound-microtask-subtask \
id=processing-model-9:execute-a-compound-microtask-subtask>wrap callbacks</a> to \
handle <a href=#spin-the-event-loop \
id=processing-model-9:spin-the-event-loop>spinning the event  loop</a>.</p>
 
-  <p>When an algorithm requires a <a href=#microtask \
id=processing-model-9:microtask-2>microtask</a> to be <dfn \
id=queue-a-microtask>queued</dfn>, it must be appended to the relevant <a \
href=#event-loop id=processing-model-9:event-loop-15>event loop</a>'s +  <p>When an \
algorithm requires a <a href=#microtask \
id=processing-model-9:microtask-2>microtask</a> to be <dfn \
id=queue-a-microtask>queued</dfn>, it must be appended to the relevant <a \
href=#event-loop id=processing-model-9:event-loop-16>event loop</a>'s  <a \
href=#microtask-queue id=processing-model-9:microtask-queue-2>microtask queue</a>; \
the <a href=#task-source id=processing-model-9:task-source>task source</a> of such a \
<a href=#microtask id=processing-model-9:microtask-3>microtask</a> is the  <dfn \
id=microtask-task-source>microtask task source</dfn>.</p>  
@@ -63225,9 +63265,9 @@
   <p>When a user agent is to <dfn id=perform-a-microtask-checkpoint>perform a \
microtask checkpoint</dfn>, if the <a href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint>performing a  microtask \
checkpoint</a> flag is false, then the user agent must run the following steps:</p>  
-  <ol><li><p>Let the <a href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-2>performing a microtask \
checkpoint</a> flag be true.<li><p><i>Microtask queue handling</i>: If the <a \
href=#event-loop id=processing-model-9:event-loop-16>event loop</a>'s <a \
                href=#microtask-queue \
                id=processing-model-9:microtask-queue-3>microtask
-   queue</a> is empty, jump to the <i>done</i> step below.<li><p>Select the oldest \
<a href=#microtask id=processing-model-9:microtask-6>microtask</a> on the <a \
href=#event-loop id=processing-model-9:event-loop-17>event loop</a>'s <a \
                href=#microtask-queue \
                id=processing-model-9:microtask-queue-4>microtask
-   queue</a>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-18>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-3>currently running task</a> to the <a \
href=#concept-task id=processing-model-9:concept-task-6>task</a> selected in the \
previous step.<li> +  <ol><li><p>Let the <a href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-2>performing a microtask \
checkpoint</a> flag be true.<li><p><i>Microtask queue handling</i>: If the <a \
href=#event-loop id=processing-model-9:event-loop-17>event loop</a>'s <a \
href=#microtask-queue id=processing-model-9:microtask-queue-3>microtask +   queue</a> \
is empty, jump to the <i>done</i> step below.<li><p>Select the oldest <a \
href=#microtask id=processing-model-9:microtask-6>microtask</a> on the <a \
href=#event-loop id=processing-model-9:event-loop-18>event loop</a>'s <a \
href=#microtask-queue id=processing-model-9:microtask-queue-4>microtask +   \
queue</a>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-19>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-3>currently running task</a> to the <a \
href=#concept-task id=processing-model-9:concept-task-6>task</a> selected in the \
previous step.<li>  
     <p><i>Run</i>: Run the selected <a href=#concept-task \
id=processing-model-9:concept-task-7>task</a>.</p>  
@@ -63236,8 +63276,8 @@
     checkpoint</a> algorithm again, which is why we use the <a \
href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-3>performing a microtask  \
checkpoint</a> flag to avoid reentrancy.</p>  
-   <li><p>Set the <a href=#event-loop id=processing-model-9:event-loop-19>event \
loop</a>'s <a href=#currently-running-task \
                id=processing-model-9:currently-running-task-4>currently running \
                task</a> back to
-   null.<li><p>If the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-2>storage mutex</a> is now owned by the <a \
href=#event-loop id=processing-model-9:event-loop-20>event loop</a>, release it +   \
<li><p>Set the <a href=#event-loop id=processing-model-9:event-loop-20>event \
loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-4>currently running task</a> back to +   \
null.<li><p>If the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-2>storage mutex</a> is now owned by the <a \
href=#event-loop id=processing-model-9:event-loop-21>event loop</a>, release it  so \
that it is once again free.<li><p>Remove the <a href=#microtask \
id=processing-model-9:microtask-7>microtask</a> run in the step above from the <a \
href=#microtask-queue id=processing-model-9:microtask-queue-5>microtask  queue</a>, \
and return to the <i>microtask queue handling</i> step.<li><p><i>Done</i>: Let the <a \
href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-4>performing a microtask \
checkpoint</a> flag be  false.</ol>
@@ -63246,11 +63286,11 @@
   <dfn id=execute-a-compound-microtask-subtask>execute a compound microtask \
subtask</dfn> to run a series of steps, the user agent must run  the following \
steps:</p>  
-  <ol><li><p>Let <var>parent</var> be the <a href=#event-loop \
id=processing-model-9:event-loop-21>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-5>currently running +  <ol><li><p>Let \
<var>parent</var> be the <a href=#event-loop \
id=processing-model-9:event-loop-22>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-5>currently running  task</a> (the \
currently running <a href=#compound-microtask \
id=processing-model-9:compound-microtask-3>compound microtask</a>).<li><p>Let \
<var>subtask</var> be a new <a href=#concept-task \
id=processing-model-9:concept-task-8>task</a> that  consists of running the given \
series of steps. The <a href=#task-source id=processing-model-9:task-source-4>task \
source</a> of such a  <a href=#microtask \
id=processing-model-9:microtask-8>microtask</a> is the <a href=#microtask-task-source \
id=processing-model-9:microtask-task-source-2>microtask task source</a>. This is a \
                <dfn id=compound-microtask-subtask>compound
-   microtask subtask</dfn>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-22>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-6>currently running task</a> to \
<var>subtask</var>.<li><p>Run <var>subtask</var>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-23>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-7>currently running task</a> back to \
<var>parent</var>.</ol> +   microtask subtask</dfn>.<li><p>Set the <a \
href=#event-loop id=processing-model-9:event-loop-23>event loop</a>'s <a \
href=#currently-running-task id=processing-model-9:currently-running-task-6>currently \
running task</a> to <var>subtask</var>.<li><p>Run <var>subtask</var>.<li><p>Set the \
<a href=#event-loop id=processing-model-9:event-loop-24>event loop</a>'s <a \
href=#currently-running-task id=processing-model-9:currently-running-task-7>currently \
running task</a> back to <var>parent</var>.</ol>  
   <hr>
 
@@ -63271,7 +63311,7 @@
 
   <ol><li>
 
-    <p>Let <var>task</var> be the <a href=#event-loop \
id=processing-model-9:event-loop-24>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-8>currently running +    <p>Let \
<var>task</var> be the <a href=#event-loop id=processing-model-9:event-loop-25>event \
loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-8>currently running  task</a>.</p>
 
     <p class=note>This might be a <a href=#microtask \
id=processing-model-9:microtask-9>microtask</a>, in which case it is a <a \
href=#solitary-callback-microtask \
id=processing-model-9:solitary-callback-microtask-2>solitary @@ -63286,7 +63326,7 @@
     <p>Stop <var>task</var>, allowing whatever algorithm that invoked it to resume, \
                but
     continue these steps <a href=#in-parallel id=processing-model-9:in-parallel-3>in \
parallel</a>.</p>  
-    <p class=note>This causes one of the following algorithms to continue: the <a \
href=#event-loop id=processing-model-9:event-loop-25>event +    <p class=note>This \
causes one of the following algorithms to continue: the <a href=#event-loop \
id=processing-model-9:event-loop-26>event  loop</a>'s main set of steps, the <a \
href=#perform-a-microtask-checkpoint \
id=processing-model-9:perform-a-microtask-checkpoint-4>perform a microtask \
checkpoint</a> algorithm, or  the <a href=#execute-a-compound-microtask-subtask \
id=processing-model-9:execute-a-compound-microtask-subtask-2>execute a compound \
microtask subtask</a> algorithm to continue.</p>  
@@ -63300,19 +63340,19 @@
   <p>Some of the algorithms in this specification, for historical reasons, require \
the user agent to  <dfn id=pause>pause</dfn> while running a <a href=#concept-task \
id=processing-model-9:concept-task-10>task</a> until a condition <var>goal</var> is \
met. This means running the following steps:</p>  
-  <ol><li><p>If necessary, update the rendering or user interface of any <code \
                id=processing-model-9:document-3><a \
                href=#document>Document</a></code> or
-   <a href=#browsing-context id=processing-model-9:browsing-context-4>browsing \
context</a> to reflect the current state.<li><p>Wait until the condition \
                <var>goal</var> is met. While a user agent has a paused
-   <a href=#concept-task id=processing-model-9:concept-task-11>task</a>, the \
corresponding <a href=#event-loop id=processing-model-9:event-loop-26>event loop</a> \
must not run +  <ol><li><p>If necessary, update the rendering or user interface of \
any <code id=processing-model-9:document-21><a href=#document>Document</a></code> or \
+   <a href=#browsing-context id=processing-model-9:browsing-context-5>browsing \
context</a> to reflect the current state.<li><p>Wait until the condition \
<var>goal</var> is met. While a user agent has a paused +   <a href=#concept-task \
id=processing-model-9:concept-task-11>task</a>, the corresponding <a href=#event-loop \
id=processing-model-9:event-loop-27>event loop</a> must not run  further <a \
href=#concept-task id=processing-model-9:concept-task-12>tasks</a>, and any script in \
the currently running <a href=#concept-task \
id=processing-model-9:concept-task-13>task</a> must block. User agents should remain \
                responsive to user input
-   while paused, however, albeit in a reduced capacity since the <a href=#event-loop \
id=processing-model-9:event-loop-27>event loop</a> will not be +   while paused, \
however, albeit in a reduced capacity since the <a href=#event-loop \
id=processing-model-9:event-loop-28>event loop</a> will not be  doing anything.</ol>
 
   <hr>
 
   <p>When a user agent is to <dfn id=obtain-the-storage-mutex>obtain the storage \
mutex</dfn> as part of running a <a href=#concept-task \
id=processing-model-9:concept-task-14>task</a>, it must run through the following \
steps:</p>  
-  <ol><li><p>If the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-3>storage mutex</a> is already owned by this <a \
href=#concept-task id=processing-model-9:concept-task-15>task</a>'s <a \
href=#event-loop id=processing-model-9:event-loop-28>event loop</a>, then abort these \
steps.<li><p>Otherwise, <a href=#pause id=processing-model-9:pause>pause</a> until \
the <a href=#storage-mutex id=processing-model-9:storage-mutex-4>storage mutex</a> \
                can be taken by the
-   <a href=#event-loop id=processing-model-9:event-loop-29>event \
loop</a>.<li><p>Take ownership of the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-5>storage mutex</a>.</ol> +  <ol><li><p>If the <a \
href=#storage-mutex id=processing-model-9:storage-mutex-3>storage mutex</a> is \
already owned by this <a href=#concept-task \
id=processing-model-9:concept-task-15>task</a>'s <a href=#event-loop \
id=processing-model-9:event-loop-29>event loop</a>, then abort these \
steps.<li><p>Otherwise, <a href=#pause id=processing-model-9:pause>pause</a> until \
the <a href=#storage-mutex id=processing-model-9:storage-mutex-4>storage mutex</a> \
can be taken by the +   <a href=#event-loop id=processing-model-9:event-loop-30>event \
loop</a>.<li><p>Take ownership of the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-5>storage mutex</a>.</ol>  
   
 
@@ -66336,6 +66376,42 @@
 
 
 
+  <h3 id=animation-frames>8.8 Animation Frames</h3>
+
+  <p>Each <code id=animation-frames:document><a href=#document>Document</a></code> \
has a <dfn id=list-of-animation-frame-callbacks>list of animation frame \
callbacks</dfn>, which must be +  initially empty, and an <dfn \
id=animation-frame-callback-identifier>animation frame callback identifier</dfn>, \
which is a number which +  must initially be zero.</p>
+
+  <p>When the <dfn id=dom-window-requestanimationframe><code>requestAnimationFrame()</code></dfn> \
method is called, +  the user agent must run the following steps:</p>
+
+  <ol><li><p>Let <var>document</var> be <a href=#concept-document-window \
id=animation-frames:concept-document-window>the +   <code>Window</code> object's \
<code>Document</code> object</a>.<li><p>Increment <var>document</var>'s <a \
href=#animation-frame-callback-identifier \
id=animation-frames:animation-frame-callback-identifier>animation frame callback \
identifier</a> by +   one.<li><p>Append the method's argument to \
<var>document</var>'s <a href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks>list of animation frame +   \
callbacks</a>, associated with <var>document</var>'s <a \
href=#animation-frame-callback-identifier \
id=animation-frames:animation-frame-callback-identifier-2>animation frame callback +  \
identifier</a>'s current value.<li><p>Return <var>document</var>'s <a \
href=#animation-frame-callback-identifier \
id=animation-frames:animation-frame-callback-identifier-3>animation frame callback \
identifier</a>'s current +   value.</ol>
+
+  <p>When the <dfn id=dom-window-cancelanimationframe><code>cancelAnimationFrame()</code></dfn> \
method is called, +  the user agent must run the following steps:</p>
+
+  <ol><li><p>Let <var>document</var> be <a href=#concept-document-window \
id=animation-frames:concept-document-window-2>the +   <code>Window</code> object's \
<code>Document</code> object</a>.<li><p>Find the entry in <var>document</var>'s <a \
href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-2>list of animation frame \
callbacks</a> +   that is associated with the value given by the method's \
argument.<li><p>If there is such an entry, remove it from <var>document</var>'s <a \
href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-3>list of animation +   frame \
callbacks</a>.</ol> +
+  <p>When the user agent is to <dfn id=run-the-animation-frame-callbacks>run the \
animation frame callbacks</dfn> for a +  <code id=animation-frames:document-2><a \
href=#document>Document</a></code> <var>doc</var> with a timestamp <var>now</var>, it \
must run the following +  steps:</p>
+
+  <ol><li><p>Let <var>callbacks</var> be a list of the entries in <var>doc</var>'s \
<a href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-4>list of +   animation frame \
callbacks</a>, in the order in which they were added to the list.<li><p>Set \
<var>doc</var>'s <a href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-5>list of animation frame \
callbacks</a> to the empty +   list.<li><p>For each entry in <var>callbacks</var>, in \
order: invoke the callback, passing +   <var>now</var> as the only argument, and if \
an exception is thrown, <a href=#report-the-exception \
id=animation-frames:report-the-exception>report the +   exception</a>. <a \
href=#refsWEBIDL>[WEBIDL]</a></ol> +
+
+
   <h2 id=comms>9 Communication</h2>
 
   <h3 id=the-messageevent-interfaces>9.1 The <code \
id=the-messageevent-interfaces:messageevent><a \
href=#messageevent>MessageEvent</a></code> interfaces</h3><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27128" \
title="MessageEventInit should probably use Window, not WindowProxy">27128</a></div> \
@@ -81780,7 +81856,7 @@  
 
 
-  <h3 id=web+-scheme-prefix>16.10 <dfn><code>web+</code> scheme \
prefix</dfn></h3><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18496" title="Change the IANA \
sections to refer to the new registration system and not IANA">18496</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18671" title="Find a solution to \
the problem of the IANA scheme registry being so incomplete (especially given \
web+)">18671</a></div> +  <h3 id=web+-scheme-prefix>16.10 <dfn><code>web+</code> \
scheme prefix</dfn></h3><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18496" title="Change the IANA \
sections to refer to the new registration system and not IANA">18496</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18671" title="Find a solution to \
the problem of the IANA scheme registry being so incomplete (especially given \
web+)">18671</a>, <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27364" \
title="Encoding considerations: none,">27364</a></div>  
   <p>This section describes a convention for use with the IANA URI scheme registry. \
It does not  itself register a specific scheme. <a \
href=#refsRFC4395>[RFC4395]</a></p> @@ -84713,7 +84789,7 @@
 
   
 
-  <dl id=ref-list><dt id=refsABNF>[ABNF]<dd><cite><a \
href=http://www.ietf.org/rfc/std/std68.txt>Augmented BNF for Syntax Specifications: \
ABNF</a></cite>, D. Crocker, P. Overell. IETF.<dt id=refsABOUT>[ABOUT]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6694>The 'about' URI scheme</a></cite>, S. \
Moonesamy. IETF.<dt id=refsAPNG>[APNG]<dd>(Non-normative) <cite><a \
href=https://wiki.mozilla.org/APNG_Specification>APNG Specification</a></cite>. S. \
Parmenter, V. Vukicevic, A. Smith. Mozilla.<dt id=refsARIA>[ARIA]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria/>Accessible Rich Internet Applications \
(WAI-ARIA)</a></cite>, J. Craig, M. Cooper, L. Pappas, R. Schwerdtfeger, L. Seeman. \
W3C.<dt id=refsARIAIMPL>[ARIAIMPL]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria-implementation/>WAI-ARIA 1.0 User Agent \
Implementation Guide</a></cite>, A. Snow-Weaver, M. Cooper. W3C.<dt \
id=refsATAG>[ATAG]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/ATAG20/>Authoring Tool Accessibility Guide  lines (ATAG) \
2.0</a></cite>, J. Richards, J. Spellman, J. Treviranus. W3C.<dt \
id=refsATOM>[ATOM]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc4287>The Atom Syndication Format</a></cite>, M. \
Nottingham, R. Sayre. IETF.<dt id=refsBCP47>[BCP47]<dd><cite><a \
href=http://www.ietf.org/rfc/bcp/bcp47.txt>Tags for Identifying Languages; Matching \
of Language Tags</a></cite>, A. Phillips, M. Davis. IETF.<dt \
id=refsBECSS>[BECSS]<dd><cite><a href=http://www.w3.org/TR/becss/>Behavioral \
Extensions to CSS</a></cite>, I. Hickson. W3C.<dt \
id=refsBEZIER>[BEZIER]<dd><cite>Courbes à poles</cite>, P. de Casteljau. INPI, \
1959.<dt id=refsBIDI>[BIDI]<dd><cite><a href=http://www.unicode.org/reports/tr9/>UAX \
#9: Unicode Bidirectional Algorithm</a></cite>, M. Davis. Unicode Consortium.<dt \
id=refsBOCU1>[BOCU1]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/notes/tn6/>UTN #6: BOCU-1: MIME-Compatible Unicode \
Compression</a></cite>, M. Scherer, M. Davis. Unicode Consortium.<dt id  \
=refsCESU8>[CESU8]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/reports/tr26/>UTR #26: Compatibility Encoding Scheme For \
UTF-16: 8-BIT (CESU-8)</a></cite>, T. Phipps. Unicode Consortium.<dt \
id=refsCHARMOD>[CHARMOD]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/charmod/>Character Model for the World Wide Web 1.0: \
Fundamentals</a></cite>, M. Dürst, F. Yergeau, R. Ishida, M. Wolf, T. Texin. W3C.<dt \
id=refsCLDR>[CLDR]<dd><cite><a href=http://cldr.unicode.org/>Unicode Common Locale \
Data Repository</a></cite>. Unicode.<dt id=refsCOMPOSITE>[COMPOSITE]<dd><cite><a \
href=http://dev.w3.org/fxtf/compositing/>Compositing and Blending</a></cite>. R. \
Cabanier, N. Andronikos. W3C.<dt id=refsCOMPUTABLE>[COMPUTABLE]<dd>(Non-normative) \
<cite><a href=http://www.turingarchive.org/browse.php/B/12>On computable numbers, \
with an application to the Entscheidungsproblem</a></cite>, A. Turing. In \
<cite>Proceedings of the London Mathematical Society</cite>, series 2, volume 42, \
page  s 230-265. London Mathematical Society, 1937.<dt \
id=refsCOOKIES>[COOKIES]<dd><cite><a href=http://tools.ietf.org/html/rfc6265>HTTP \
State Management Mechanism</a></cite>, A. Barth. IETF.<dt \
id=refsCP50220>[CP50220]<dd>(Non-normative) <cite><a \
href=http://www.iana.org/assignments/charset-reg/CP50220>CP50220</a></cite>, Y. \
Naruse. IANA.<dt id=refsCSP>[CSP]<dd>(Non-normative) <cite><a \
href=https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html>Content \
Security Policy</a></cite>, B. Sterne, A. Barth. W3C.<dt id=refsCSS>[CSS]<dd><cite><a \
href=http://www.w3.org/TR/CSS2/>Cascading Style Sheets Level 2 Revision 1</a></cite>, \
B. Bos, T. Çelik, I. Hickson, H. Lie. W3C.<dt \
id=refsCSSANIMATIONS>[CSSANIMATIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-animations/>CSS Animations</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, S. Galineau, L. Baron. W3C.<dt \
id=refsCSSATTR>[CSSATTR]<dd><cite><a href=http://dev.w3.org/csswg/css-style-attr/>CSS \
Styling Attribute Syntax</a></cite>, T. Çelik, E. Etemad. W3C.<dt \
id=refsCSSCOLOR>[CSSCOLOR]<dd><cite><a href=http://dev.w3.org/csswg/css-color/>CSS \
Color Module Level 3</a></cite>, T. Çelik, C. Lilley, L. Baron. W3C.<dt \
id=refsCSSFONTLOAD>[CSSFONTLOAD]<dd><cite><a \
href=http://dev.w3.org/csswg/css-font-loading/>CSS Font Loading</a></cite>, T. \
Atkins, J. Daggett. W3C.<dt id=refsCSSFONTS>[CSSFONTS]<dd><cite><a \
href=http://dev.w3.org/csswg/css-fonts/>CSS Fonts</a></cite>, J. Daggett. W3C.<dt \
id=refsCSSGC>[CSSGC]<dd><cite><a href=http://dev.w3.org/csswg/css-content>CSS \
Generated Content</a></cite>, H. Lie, E. Etemad, I. Hickson. W3C.<dt \
id=refsCSSIMAGES>[CSSIMAGES]<dd><cite><a href=http://dev.w3.org/csswg/css-images/>CSS \
Image Values and Replaced Content Module</a></cite>, E. Etemad, T. Atkins. W3C.<dt \
id=refsCSSOM>[CSSOM]<dd><cite><a href=http://dev.w3.org/csswg/cssom/>Cascading Style \
Sheets Object Model (CSSOM)</a></cite>, S. Pieters, G. Adams. W3C.<dt \
id=refsCSSOMVIEW>[CSS  OMVIEW]<dd><cite><a \
href=http://dev.w3.org/csswg/cssom-view/>CSSOM View Module</a></cite>, S. Pieters, G. \
Adams. W3C.<dt id=refsCSSRUBY>[CSSRUBY]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ruby/>CSS3 Ruby Module</a></cite>, R. Ishida. \
W3C.<dt id=refsCSSTRANSITIONS>[CSSTRANSITIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-transitions/>CSS Transitions</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, L. Baron. W3C.<dt id=refsCSSUI>[CSSUI]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ui/>CSS3 Basic User Interface Module</a></cite>, T. \
Çelik. W3C.<dt id=refsCSSSCOPED>[CSSSCOPED]<dd><cite><a \
href=http://dev.w3.org/csswg/css-scoping/>CSS Scoping</a></cite>, T. Atkins, E. \
Etemad. W3C.<dt id=refsCSSSYNTAX>[CSSSYNTAX]<dd><cite><a \
href=http://dev.w3.org/csswg/css-syntax/>CSS Syntax</a></cite>, T. Atkins, S. Sapin. \
W3C.<dt id=refsCSSVALUES>[CSSVALUES]<dd><cite><a \
href=http://dev.w3.org/csswg/css-values/>CSS3 Values and Units</a></cite>, H. Lie, T. \
Atkins, E. Etemad. W  3C.<dt id=refsCSSWM>[CSSWM]<dd><cite><a \
href=http://dev.w3.org/csswg/css-writing-modes>CSS Writing Modes</a></cite>, E. \
Etemad, K. Ishii. W3C.<dt id=refsDASH>[DASH]<dd><cite><a \
href="http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=65274">Dynamic \
adaptive streaming over HTTP (DASH)</a></cite>. ISO.<dt id=refsDOM>[DOM]<dd><cite><a \
href=https://dom.spec.whatwg.org/>DOM</a></cite>, A. van Kesteren, A. Gregor, Ms2ger. \
WHATWG.<dt id=refsDOMEVENTS>[DOMEVENTS]<dd><cite><a \
href=https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html>Document \
Object Model (DOM) Level 3 Events Specification</a></cite>, G. Kacmarcik, T. \
Leithead, J. Rossi, D. Schepers, B. Höhrmann, P. Le Hégaret, T. Pixley. W3C.<dt \
id=refsDOMPARSING>[DOMPARSING]<dd><cite><a \
href=https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html lang=en-US>DOM Parsing \
and Serialization</a></cite>, T. Leithead. W3C.<dt \
id=refsDOT>[DOT]<dd>(Non-normative) <cite><a href=http://www.grap  \
hviz.org/content/dot-language>The DOT Language</a></cite>. Graphviz.<dt \
id=refsE163>[E163]<dd><cite>Recommendation E.163 — Numbering Plan for The \
International Telephone Service</cite>, CCITT Blue Book, Fascicle II.2, pp. 128-134, \
November 1988.<dt id=refsECMA262>[ECMA262]<dd><cite><a \
href=http://people.mozilla.org/~jorendorff/es6-draft.html>ECMAScript Language \
Specification</a></cite>. ECMA.<dt id=refsEDITING>[EDITING]<dd><cite><a \
href=https://dvcs.w3.org/hg/editing/raw-file/tip/editing.html>HTML Editing \
APIs</a></cite>, A. Gregor. W3C Editing APIs CG.<dt \
id=refsENCODING>[ENCODING]<dd><cite><a \
href=https://encoding.spec.whatwg.org/>Encoding</a></cite>, A. van Kesteren, J. Bell. \
WHATWG.<dt id=refsFETCH>[FETCH]<dd><cite><a \
href=https://fetch.spec.whatwg.org/>Fetch</a></cite>, A. van Kesteren. WHATWG.<dt \
id=refsFILEAPI>[FILEAPI]<dd><cite><a href=http://dev.w3.org/2006/webapi/FileAPI/>File \
API</a></cite>, A. Ranganathan. W3C.<dt id=refsFULLSCREEN>[FULLSCREEN]<dd><cite><a \
href  =https://fullscreen.spec.whatwg.org/>Fullscreen</a></cite>, A. van Kesteren, T. \
Çelik. WHATWG.<dt id=refsGIF>[GIF]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/Graphics/GIF/spec-gif89a.txt>Graphics Interchange \
Format</a></cite>. CompuServe.<dt id=refsGRAPHICS>[GRAPHICS]<dd>(Non-normative) \
<cite>Computer Graphics: Principles and Practice in C</cite>, Second Edition, J. \
Foley, A. van Dam, S. Feiner, J. Hughes. Addison-Wesley. ISBN 0-201-84840-6.<dt \
id=refsGREGORIAN>[GREGORIAN]<dd>(Non-normative) <cite>Inter Gravissimas</cite>, A. \
Lilius, C. Clavius. Gregory XIII Papal Bull, February 1582.<dt \
id=refsHTTP>[HTTP]<dd><cite><a href=http://tools.ietf.org/html/rfc7230>Hypertext \
Transfer Protocol (HTTP/1.1): Message Syntax and Routing</a></cite>, R. Fielding, J. \
Reschke. IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7231>Hypertext Transfer \
Protocol (HTTP/1.1): Semantics and Content</a></cite>, R. Fielding, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc  7232>Hypertext Transfer \
Protocol (HTTP/1.1): Conditional Requests</a></cite>, R. Fielding, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7233>Hypertext Transfer Protocol \
(HTTP/1.1): Range Requests</a></cite>, R. Fielding, Y. Lafon, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7234>Hypertext Transfer Protocol \
(HTTP/1.1): Caching</a></cite>, R. Fielding, M. Nottingham, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7235>Hypertext Transfer Protocol \
(HTTP/1.1): Authentication</a></cite>, R. Fielding, J. Reschke. IETF.<dt \
id=refsIANAPERMHEADERS>[IANAPERMHEADERS]<dd><cite><a \
href=http://www.iana.org/assignments/message-headers/perm-headers.html>Permanent \
Message Header Field Names</a></cite>. IANA.<dt id=refsINBAND>[INBAND]<dd><cite><a \
href=http://dev.w3.org/html5/html-sourcing-inband-tracks/>Sourcing In-band Media \
Resource Tracks from Media Containers into HTML</a></cite>, S. Pfeiffer, B. Lund. \
W3C.<dt id=refsISO3166>[ISO31  66]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/country_codes.htm>ISO 3166: Codes for the \
representation of names of countries and their subdivisions</a></cite>. ISO.<dt \
id=refsISO4217>[ISO4217]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/currency_codes.htm>ISO 4217: Codes for the \
representation of currencies and funds</a></cite>. ISO.<dt \
id=refsISO8601>[ISO8601]<dd>(Non-normative) <cite><a \
href="http://isotc.iso.org/livelink/livelink/4021199/ISO_8601_2004_E.zip?func=doc.Fetch&amp;nodeid=4021199">ISO8601: \
Data elements and interchange formats — Information interchange — Representation \
of dates and times</a></cite>. ISO.<dt id=refsJLREQ>[JLREQ]<dd><cite><a \
href=http://www.w3.org/TR/jlreq/>Requirements for Japanese Text Layout</a></cite>. \
W3C.<dt id=refsJPEG>[JPEG]<dd><cite><a \
href=http://www.w3.org/Graphics/JPEG/jfif3.pdf>JPEG File Interchange \
Format</a></cite>, E. Hamilton.<dt id=refsJSON>[JSON]<dd><cite><a \
href=http://tools.ietf.org/html/rfc4627>Th  e application/json Media Type for \
JavaScript Object Notation (JSON)</a></cite>, D. Crockford. IETF.<dt \
id=refsMAILTO>[MAILTO]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc6068>The 'mailto' URI scheme</a></cite>, M. \
Duerst, L. Masinter, J. Zawinski. IETF.<dt id=refsMATHML>[MATHML]<dd><cite><a \
href=http://www.w3.org/TR/MathML/>Mathematical Markup Language (MathML)</a></cite>, \
D. Carlisle, P. Ion, R. Miner, N. Poppelier. W3C.<dt \
id=refsMEDIAFRAG>[MEDIAFRAG]<dd><cite><a \
href=http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/>Media \
Fragments URI</a></cite>, R. Troncy, E. Mannens, S. Pfeiffer, D. Van Deursen. W3C.<dt \
id=refsMEDIASOURCE>[MEDIASOURCE]<dd><cite><a \
href=https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html>Media \
Source Extensions</a></cite>, A. Colwell, A. Bateman, M. Watson. W3C.<dt \
id=refsMEDIASTREAM>[MEDIASTREAM]<dd><cite><a \
href=http://w3c.github.io/mediacapture-main/getusermedia.html>Media Capture and Stre  \
ams</a></cite>, D. Burnett, A. Bergkvist, C. Jennings, A. Narayanan. W3C.<dt \
id=refsMFREL>[MFREL]<dd><cite><a \
href=http://microformats.org/wiki/existing-rel-values#HTML5_link_type_extensions>Microformats \
Wiki: existing rel values</a></cite>. Microformats.<dt \
id=refsMIMESNIFF>[MIMESNIFF]<dd><cite><a href=https://mimesniff.spec.whatwg.org/>MIME \
Sniffing</a></cite>, G. Hemsley. WHATWG.<dt id=refsMNG>[MNG]<dd><cite><a \
href=http://www.libpng.org/pub/mng/spec/>MNG (Multiple-image Network Graphics) \
Format</a></cite>. G. Randers-Pehrson.<dt id=refsMPEG2>[MPEG2]<dd><cite>ISO/IEC \
13818-1: Information technology — Generic coding of moving pictures and associated \
audio information: Systems</cite>. ISO/IEC.<dt id=refsMPEG4>[MPEG4]<dd><cite>ISO/IEC \
14496-12: ISO base media file format</cite>. ISO/IEC.<dt id=refsMQ>[MQ]<dd><cite><a \
href=http://drafts.csswg.org/mediaqueries/>Media Queries</a></cite>, H. Lie, T. \
Çelik, D. Glazman, A. van Kesteren. W3C.<dt id=refsNPAPI>[NPAPI]<dd>(Non-norm  \
ative) <cite><a href=https://developer.mozilla.org/en-US/Add-ons/Plugins/Gecko_Plugin_API_Reference>Gecko \
Plugin API Reference</a></cite>. Mozilla.<dt \
id=refsOGGSKELETONHEADERS>[OGGSKELETONHEADERS]<dd><cite><a \
href=http://wiki.xiph.org/SkeletonHeaders>SkeletonHeaders</a></cite>. Xiph.Org.<dt \
id=refsOPENSEARCH>[OPENSEARCH]<dd><cite><a \
href=http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_HTML.2FXHTML>Autodiscovery \
in HTML/XHTML</a></cite>. In <cite>OpenSearch 1.1 Draft 4</cite>, Section 4.6.2. \
OpenSearch.org.<dt id=refsORIGIN>[ORIGIN]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6454>The Web Origin Concept</a></cite>, A. Barth. \
IETF.<dt id=refsPAGEVIS>[PAGEVIS]<dd>(Non-normative) <cite><a \
href=https://w3c.github.io/web-performance/specs/PageVisibility/Overview.html>Page \
Visibility</a></cite>, J. Mann, A. Jain. W3C.<dt id=refsPDF>[PDF]<dd>(Non-normative) \
<cite><a href=http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf>Document \
management — P  ortable document format — Part 1: PDF</a></cite>. ISO.<dt \
id=refsPINGBACK>[PINGBACK]<dd><cite><a \
href=http://www.hixie.ch/specs/pingback/pingback>Pingback 1.0</a></cite>, S. \
Langridge, I. Hickson.<dt id=refsPNG>[PNG]<dd><cite><a \
href=http://www.w3.org/TR/PNG/>Portable Network Graphics (PNG) \
Specification</a></cite>, D. Duce. W3C.<dt \
id=refsPOINTERLOCK>[POINTERLOCK]<dd><cite><a \
href=https://dvcs.w3.org/hg/pointerlock/raw-file/default/index.html>Pointer \
Lock</a></cite>, V. Scheib. W3C.<dt id=refsPPUTF8>[PPUTF8]<dd>(Non-normative) \
<cite><a href=http://www.sw.it.aoyama.ac.jp/2012/pub/IUC11-UTF-8.pdf>The Properties \
and Promises  of UTF-8</a></cite>, M. Dürst. University of Zürich. In \
<cite>Proceedings of the 11th International Unicode Conference</cite>.<dt \
+  <dl id=ref-list><dt id=refsABNF>[ABNF]<dd><cite><a \
href=http://www.ietf.org/rfc/std/std68.txt>Augmented BNF for Syntax Specifications: \
ABNF</a></cite>, D. Crocker, P. Overell. IETF.<dt id=refsABOUT>[ABOUT]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6694>The 'about' URI scheme</a></cite>, S. \
Moonesamy. IETF.<dt id=refsAPNG>[APNG]<dd>(Non-normative) <cite><a \
href=https://wiki.mozilla.org/APNG_Specification>APNG Specification</a></cite>. S. \
Parmenter, V. Vukicevic, A. Smith. Mozilla.<dt id=refsARIA>[ARIA]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria/>Accessible Rich Internet Applications \
(WAI-ARIA)</a></cite>, J. Craig, M. Cooper, L. Pappas, R. Schwerdtfeger, L. Seeman. \
W3C.<dt id=refsARIAIMPL>[ARIAIMPL]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria-implementation/>WAI-ARIA 1.0 User Agent \
Implementation Guide</a></cite>, A. Snow-Weaver, M. Cooper. W3C.<dt \
id=refsATAG>[ATAG]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/ATAG20/>Authoring Tool Accessibility Guide  lines (ATAG) \
2.0</a></cite>, J. Richards, J. Spellman, J. Treviranus. W3C.<dt \
id=refsATOM>[ATOM]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc4287>The Atom Syndication Format</a></cite>, M. \
Nottingham, R. Sayre. IETF.<dt id=refsBCP47>[BCP47]<dd><cite><a \
href=http://www.ietf.org/rfc/bcp/bcp47.txt>Tags for Identifying Languages; Matching \
of Language Tags</a></cite>, A. Phillips, M. Davis. IETF.<dt \
id=refsBECSS>[BECSS]<dd><cite><a href=http://www.w3.org/TR/becss/>Behavioral \
Extensions to CSS</a></cite>, I. Hickson. W3C.<dt \
id=refsBEZIER>[BEZIER]<dd><cite>Courbes à poles</cite>, P. de Casteljau. INPI, \
1959.<dt id=refsBIDI>[BIDI]<dd><cite><a href=http://www.unicode.org/reports/tr9/>UAX \
#9: Unicode Bidirectional Algorithm</a></cite>, M. Davis. Unicode Consortium.<dt \
id=refsBOCU1>[BOCU1]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/notes/tn6/>UTN #6: BOCU-1: MIME-Compatible Unicode \
Compression</a></cite>, M. Scherer, M. Davis. Unicode Consortium.<dt id  \
=refsCESU8>[CESU8]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/reports/tr26/>UTR #26: Compatibility Encoding Scheme For \
UTF-16: 8-BIT (CESU-8)</a></cite>, T. Phipps. Unicode Consortium.<dt \
id=refsCHARMOD>[CHARMOD]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/charmod/>Character Model for the World Wide Web 1.0: \
Fundamentals</a></cite>, M. Dürst, F. Yergeau, R. Ishida, M. Wolf, T. Texin. W3C.<dt \
id=refsCLDR>[CLDR]<dd><cite><a href=http://cldr.unicode.org/>Unicode Common Locale \
Data Repository</a></cite>. Unicode.<dt id=refsCOMPOSITE>[COMPOSITE]<dd><cite><a \
href=http://dev.w3.org/fxtf/compositing/>Compositing and Blending</a></cite>. R. \
Cabanier, N. Andronikos. W3C.<dt id=refsCOMPUTABLE>[COMPUTABLE]<dd>(Non-normative) \
<cite><a href=http://www.turingarchive.org/browse.php/B/12>On computable numbers, \
with an application to the Entscheidungsproblem</a></cite>, A. Turing. In \
<cite>Proceedings of the London Mathematical Society</cite>, series 2, volume 42, \
page  s 230-265. London Mathematical Society, 1937.<dt \
id=refsCOOKIES>[COOKIES]<dd><cite><a href=http://tools.ietf.org/html/rfc6265>HTTP \
State Management Mechanism</a></cite>, A. Barth. IETF.<dt \
id=refsCP50220>[CP50220]<dd>(Non-normative) <cite><a \
href=http://www.iana.org/assignments/charset-reg/CP50220>CP50220</a></cite>, Y. \
Naruse. IANA.<dt id=refsCSP>[CSP]<dd>(Non-normative) <cite><a \
href=https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html>Content \
Security Policy</a></cite>, B. Sterne, A. Barth. W3C.<dt id=refsCSS>[CSS]<dd><cite><a \
href=http://www.w3.org/TR/CSS2/>Cascading Style Sheets Level 2 Revision 1</a></cite>, \
B. Bos, T. Çelik, I. Hickson, H. Lie. W3C.<dt \
id=refsCSSANIMATIONS>[CSSANIMATIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-animations/>CSS Animations</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, S. Galineau, L. Baron. W3C.<dt \
id=refsCSSATTR>[CSSATTR]<dd><cite><a href=http://dev.w3.org/csswg/css-style-attr/>CSS \
Styling Attribute Syntax</a></cite>, T. Çelik, E. Etemad. W3C.<dt \
id=refsCSSCOLOR>[CSSCOLOR]<dd><cite><a href=http://dev.w3.org/csswg/css-color/>CSS \
Color Module Level 3</a></cite>, T. Çelik, C. Lilley, L. Baron. W3C.<dt \
id=refsCSSFONTLOAD>[CSSFONTLOAD]<dd><cite><a \
href=http://dev.w3.org/csswg/css-font-loading/>CSS Font Loading</a></cite>, T. \
Atkins, J. Daggett. W3C.<dt id=refsCSSFONTS>[CSSFONTS]<dd><cite><a \
href=http://dev.w3.org/csswg/css-fonts/>CSS Fonts</a></cite>, J. Daggett. W3C.<dt \
id=refsCSSGC>[CSSGC]<dd><cite><a href=http://dev.w3.org/csswg/css-content>CSS \
Generated Content</a></cite>, H. Lie, E. Etemad, I. Hickson. W3C.<dt \
id=refsCSSIMAGES>[CSSIMAGES]<dd><cite><a href=http://dev.w3.org/csswg/css-images/>CSS \
Image Values and Replaced Content Module</a></cite>, E. Etemad, T. Atkins. W3C.<dt \
id=refsCSSOM>[CSSOM]<dd><cite><a href=http://dev.w3.org/csswg/cssom/>Cascading Style \
Sheets Object Model (CSSOM)</a></cite>, S. Pieters, G. Adams. W3C.<dt \
id=refsCSSOMVIEW>[CSS  OMVIEW]<dd><cite><a \
href=http://dev.w3.org/csswg/cssom-view/>CSSOM View Module</a></cite>, S. Pieters, G. \
Adams. W3C.<dt id=refsCSSRUBY>[CSSRUBY]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ruby/>CSS3 Ruby Module</a></cite>, R. Ishida. \
W3C.<dt id=refsCSSTRANSITIONS>[CSSTRANSITIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-transitions/>CSS Transitions</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, L. Baron. W3C.<dt id=refsCSSUI>[CSSUI]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ui/>CSS3 Basic User Interface Module</a></cite>, T. \
Çelik. W3C.<dt id=refsCSSSCOPED>[CSSSCOPED]<dd><cite><a \
href=http://dev.w3.org/csswg/css-scoping/>CSS Scoping</a></cite>, T. Atkins, E. \
Etemad. W3C.<dt id=refsCSSSYNTAX>[CSSSYNTAX]<dd><cite><a \
href=http://dev.w3.org/csswg/css-syntax/>CSS Syntax</a></cite>, T. Atkins, S. Sapin. \
W3C.<dt id=refsCSSVALUES>[CSSVALUES]<dd><cite><a \
href=http://dev.w3.org/csswg/css-values/>CSS3 Values and Units</a></cite>, H. Lie, T. \
Atkins, E. Etemad. W  3C.<dt id=refsCSSWM>[CSSWM]<dd><cite><a \
href=http://dev.w3.org/csswg/css-writing-modes>CSS Writing Modes</a></cite>, E. \
Etemad, K. Ishii. W3C.<dt id=refsDASH>[DASH]<dd><cite><a \
href="http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=65274">Dynamic \
adaptive streaming over HTTP (DASH)</a></cite>. ISO.<dt id=refsDOM>[DOM]<dd><cite><a \
href=https://dom.spec.whatwg.org/>DOM</a></cite>, A. van Kesteren, A. Gregor, Ms2ger. \
WHATWG.<dt id=refsDOMEVENTS>[DOMEVENTS]<dd><cite><a \
href=https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html>Document \
Object Model (DOM) Level 3 Events Specification</a></cite>, G. Kacmarcik, T. \
Leithead, J. Rossi, D. Schepers, B. Höhrmann, P. Le Hégaret, T. Pixley. W3C.<dt \
id=refsDOMPARSING>[DOMPARSING]<dd><cite><a \
href=https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html lang=en-US>DOM Parsing \
and Serialization</a></cite>, T. Leithead. W3C.<dt \
id=refsDOT>[DOT]<dd>(Non-normative) <cite><a href=http://www.grap  \
hviz.org/content/dot-language>The DOT Language</a></cite>. Graphviz.<dt \
id=refsE163>[E163]<dd><cite>Recommendation E.163 — Numbering Plan for The \
International Telephone Service</cite>, CCITT Blue Book, Fascicle II.2, pp. 128-134, \
November 1988.<dt id=refsECMA262>[ECMA262]<dd><cite><a \
href=http://people.mozilla.org/~jorendorff/es6-draft.html>ECMAScript Language \
Specification</a></cite>. ECMA.<dt id=refsEDITING>[EDITING]<dd><cite><a \
href=https://dvcs.w3.org/hg/editing/raw-file/tip/editing.html>HTML Editing \
APIs</a></cite>, A. Gregor. W3C Editing APIs CG.<dt \
id=refsENCODING>[ENCODING]<dd><cite><a \
href=https://encoding.spec.whatwg.org/>Encoding</a></cite>, A. van Kesteren, J. Bell. \
WHATWG.<dt id=refsFETCH>[FETCH]<dd><cite><a \
href=https://fetch.spec.whatwg.org/>Fetch</a></cite>, A. van Kesteren. WHATWG.<dt \
id=refsFILEAPI>[FILEAPI]<dd><cite><a href=http://dev.w3.org/2006/webapi/FileAPI/>File \
API</a></cite>, A. Ranganathan. W3C.<dt id=refsFULLSCREEN>[FULLSCREEN]<dd><cite><a \
href  =https://fullscreen.spec.whatwg.org/>Fullscreen</a></cite>, A. van Kesteren, T. \
Çelik. WHATWG.<dt id=refsGIF>[GIF]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/Graphics/GIF/spec-gif89a.txt>Graphics Interchange \
Format</a></cite>. CompuServe.<dt id=refsGRAPHICS>[GRAPHICS]<dd>(Non-normative) \
<cite>Computer Graphics: Principles and Practice in C</cite>, Second Edition, J. \
Foley, A. van Dam, S. Feiner, J. Hughes. Addison-Wesley. ISBN 0-201-84840-6.<dt \
id=refsGREGORIAN>[GREGORIAN]<dd>(Non-normative) <cite>Inter Gravissimas</cite>, A. \
Lilius, C. Clavius. Gregory XIII Papal Bull, February 1582.<dt \
id=refsHRT>[HRT]<dd><cite><a \
href=https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/HighResolutionTime/Overview.html>High \
Resolution Time</a></cite>, J. Mann. W3C.<dt id=refsHTTP>[HTTP]<dd><cite><a \
href=http://tools.ietf.org/html/rfc7230>Hypertext Transfer Protocol (HTTP/1.1): \
Message Syntax and Routing</a></cite>, R. Fielding, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.or  g/html/rfc7231>Hypertext Transfer Protocol (HTTP/1.1): \
Semantics and Content</a></cite>, R. Fielding, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7232>Hypertext Transfer Protocol (HTTP/1.1): \
Conditional Requests</a></cite>, R. Fielding, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7233>Hypertext Transfer Protocol (HTTP/1.1): Range \
Requests</a></cite>, R. Fielding, Y. Lafon, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7234>Hypertext Transfer Protocol (HTTP/1.1): \
Caching</a></cite>, R. Fielding, M. Nottingham, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7235>Hypertext Transfer Protocol (HTTP/1.1): \
Authentication</a></cite>, R. Fielding, J. Reschke. IETF.<dt \
id=refsIANAPERMHEADERS>[IANAPERMHEADERS]<dd><cite><a \
href=http://www.iana.org/assignments/message-headers/perm-headers.html>Permanent \
Message Header Field Names</a></cite>. IANA.<dt id=refsINBAND>[INBAND]<dd><cite><a \
href=http://dev.w3.org/ht  ml5/html-sourcing-inband-tracks/>Sourcing In-band Media \
Resource Tracks from Media Containers into HTML</a></cite>, S. Pfeiffer, B. Lund. \
W3C.<dt id=refsISO3166>[ISO3166]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/country_codes.htm>ISO 3166: Codes for the \
representation of names of countries and their subdivisions</a></cite>. ISO.<dt \
id=refsISO4217>[ISO4217]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/currency_codes.htm>ISO 4217: Codes for the \
representation of currencies and funds</a></cite>. ISO.<dt \
id=refsISO8601>[ISO8601]<dd>(Non-normative) <cite><a \
href="http://isotc.iso.org/livelink/livelink/4021199/ISO_8601_2004_E.zip?func=doc.Fetch&amp;nodeid=4021199">ISO8601: \
Data elements and interchange formats — Information interchange — Representation \
of dates and times</a></cite>. ISO.<dt id=refsJLREQ>[JLREQ]<dd><cite><a \
href=http://www.w3.org/TR/jlreq/>Requirements for Japanese Text Layout</a></cite>. \
W3C.<dt id=refsJPEG>[JPEG]<dd><cite><a href=http:  \
//www.w3.org/Graphics/JPEG/jfif3.pdf>JPEG File Interchange Format</a></cite>, E. \
Hamilton.<dt id=refsJSON>[JSON]<dd><cite><a \
href=http://tools.ietf.org/html/rfc4627>The application/json Media Type for \
JavaScript Object Notation (JSON)</a></cite>, D. Crockford. IETF.<dt \
id=refsMAILTO>[MAILTO]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc6068>The 'mailto' URI scheme</a></cite>, M. \
Duerst, L. Masinter, J. Zawinski. IETF.<dt id=refsMATHML>[MATHML]<dd><cite><a \
href=http://www.w3.org/TR/MathML/>Mathematical Markup Language (MathML)</a></cite>, \
D. Carlisle, P. Ion, R. Miner, N. Poppelier. W3C.<dt \
id=refsMEDIAFRAG>[MEDIAFRAG]<dd><cite><a \
href=http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/>Media \
Fragments URI</a></cite>, R. Troncy, E. Mannens, S. Pfeiffer, D. Van Deursen. W3C.<dt \
id=refsMEDIASOURCE>[MEDIASOURCE]<dd><cite><a \
href=https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html>Media \
Source Extensions</a></cite>, A. Co  lwell, A. Bateman, M. Watson. W3C.<dt \
id=refsMEDIASTREAM>[MEDIASTREAM]<dd><cite><a \
href=http://w3c.github.io/mediacapture-main/getusermedia.html>Media Capture and \
Streams</a></cite>, D. Burnett, A. Bergkvist, C. Jennings, A. Narayanan. W3C.<dt \
id=refsMFREL>[MFREL]<dd><cite><a \
href=http://microformats.org/wiki/existing-rel-values#HTML5_link_type_extensions>Microformats \
Wiki: existing rel values</a></cite>. Microformats.<dt \
id=refsMIMESNIFF>[MIMESNIFF]<dd><cite><a href=https://mimesniff.spec.whatwg.org/>MIME \
Sniffing</a></cite>, G. Hemsley. WHATWG.<dt id=refsMNG>[MNG]<dd><cite><a \
href=http://www.libpng.org/pub/mng/spec/>MNG (Multiple-image Network Graphics) \
Format</a></cite>. G. Randers-Pehrson.<dt id=refsMPEG2>[MPEG2]<dd><cite>ISO/IEC \
13818-1: Information technology — Generic coding of moving pictures and associated \
audio information: Systems</cite>. ISO/IEC.<dt id=refsMPEG4>[MPEG4]<dd><cite>ISO/IEC \
14496-12: ISO base media file format</cite>. ISO/IEC.<dt id=refsMQ>[MQ]<dd>  <cite><a \
href=http://drafts.csswg.org/mediaqueries/>Media Queries</a></cite>, H. Lie, T. \
Çelik, D. Glazman, A. van Kesteren. W3C.<dt id=refsNPAPI>[NPAPI]<dd>(Non-normative) \
<cite><a href=https://developer.mozilla.org/en-US/Add-ons/Plugins/Gecko_Plugin_API_Reference>Gecko \
Plugin API Reference</a></cite>. Mozilla.<dt \
id=refsOGGSKELETONHEADERS>[OGGSKELETONHEADERS]<dd><cite><a \
href=http://wiki.xiph.org/SkeletonHeaders>SkeletonHeaders</a></cite>. Xiph.Org.<dt \
id=refsOPENSEARCH>[OPENSEARCH]<dd><cite><a \
href=http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_HTML.2FXHTML>Autodiscovery \
in HTML/XHTML</a></cite>. In <cite>OpenSearch 1.1 Draft 4</cite>, Section 4.6.2. \
OpenSearch.org.<dt id=refsORIGIN>[ORIGIN]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6454>The Web Origin Concept</a></cite>, A. Barth. \
IETF.<dt id=refsPAGEVIS>[PAGEVIS]<dd>(Non-normative) <cite><a \
href=https://w3c.github.io/web-performance/specs/PageVisibility/Overview.html>Page \
Visibility</a></  cite>, J. Mann, A. Jain. W3C.<dt \
id=refsPDF>[PDF]<dd>(Non-normative) <cite><a \
href=http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf>Document management \
— Portable document format — Part 1: PDF</a></cite>. ISO.<dt \
id=refsPINGBACK>[PINGBACK]<dd><cite><a \
href=http://www.hixie.ch/specs/pingback/pingback>Pingback 1.0</a></cite>, S. \
Langridge, I. Hickson.<dt id=refsPNG>[PNG]<dd><cite><a \
href=http://www.w3.org/TR/PNG/>Portable Network Graphics (PNG) \
Specification</a></cite>, D. Duce. W3C.<dt \
id=refsPOINTERLOCK>[POINTERLOCK]<dd><cite><a \
href=https://dvcs.w3.org/hg/pointerlock/raw-file/default/index.html>Pointer \
 rg/>Public Suffix List</a></cite>.
    Mozilla Foundation.<dt id=refsRFC1034>[RFC1034]<dd><cite><a \
href=http://tools.ietf.org/html/rfc1034>Domain Names - Concepts and \
Facilities</a></cite>, P. Mockapetris. IETF, November 1987.<dt \
id=refsRFC1123>[RFC1123]<dd><cite><a \
href=http://tools.ietf.org/html/rfc1123>Requirements for Internet Hosts -- \
Application and Support</a></cite>, R. Braden. IETF, October 1989.<dt \
id=refsRFC1345>[RFC1345]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1345>Character Mnemonics and Character \
Sets</a></cite>, K. Simonsen. IETF.<dt id=refsRFC1468>[RFC1468]<dd>(Non-normative) \
<cite><a href=http://tools.ietf.org/html/rfc1468>Japanese Character Encoding for \
Internet Messages</a></cite>, J. Murai, M. Crispin, E. van der Poel. IETF.<dt \
id=refsRFC1554>[RFC1554]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1554>ISO-2022-JP-2: Multilingual Extension of \
ISO-2022-JP</a></cite>, M. Ohta, K. Handa. IETF.<dt \
id=refsRFC1557>[RFC1557]<dd>(Non-normative) <cite><a href=  \
http://tools.ietf.org/html/rfc1557>Korean Character Encoding for Internet \
Messages</a></cite>, U. Choi, K. Chon, H. Park. IETF.<dt \
id=refsRFC1842>[RFC1842]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1842>ASCII Printable Characters-Based Chinese \
Character Encoding for Internet Messages</a></cite>, Y. Wei, Y. Zhang, J. Li, J. \
Ding, Y. Jiang. IETF.<dt id=refsRFC1922>[RFC1922]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1922>Chinese Character Encoding for Internet \
Messages</a></cite>, HF. Zhu, DY. Hu, ZG. Wang, TC. Kao, WCH. Chang, M. Crispin. \
IETF.<dt id=refsRFC2046>[RFC2046]<dd><cite><a \
href=http://tools.ietf.org/html/rfc2046>Multipurpose Internet Mail Extensions (MIME) \
Part Two: Media Types</a></cite>, N. Freed, N.  Borenstein. IETF.<dt \
id=refsRFC2119>[RFC2119]<dd><cite><a href=http://tools.ietf.org/html/rfc2119>Key \
words for use in RFCs to Indicate Requirement Levels</a></cite>, S. Bradner. IETF.<dt \
id=refsRFC2237>[RFC2237]<dd>(Non-norm  ative) <cite><a \
href=http://tools.ietf.org/html/rfc2237>Japanese Character Encoding for Internet \
Messages</a></cite>, K. Tamaru. IETF.<dt id=refsRFC3447>[RFC3447]<dd><cite><a \
href=http://tools.ietf.org/html/rfc3447>Public-Key Cryptography Standards (PKCS) #1: \
RSA Cryptography Specifications</a></cite>, J. Jonsson, B. Kaliski. IETF.<dt \
id=refsRFC2318>[RFC2318]<dd><cite><a href=http://tools.ietf.org/html/rfc2318>The \
text/css Media Type</a></cite>, H. Lie, B. Bos, C. Lilley. IETF.<dt \
id=refsRFC2388>[RFC2388]<dd><cite><a \
href=http://tools.ietf.org/html/rfc2388>Returning Values from Forms: \
multipart/form-data</a></cite>, L. Masinter. IETF.<dt \
id=refsRFC2397>[RFC2397]<dd><cite><a href=http://tools.ietf.org/html/rfc2397>The \
"data" URL scheme</a></cite>, L. Masinter. IETF.<dt \
id=refsRFC2445>[RFC2445]<dd><cite><a href=http://tools.ietf.org/html/rfc2445>Internet \
Calendaring and Scheduling Core Object Specification (iCalendar)</a></cite>, F. \
Dawson, D. Stenerson. IETF.<dt id=refsRFC248  3>[RFC2483]<dd><cite><a \
href=http://tools.ietf.org/html/rfc2483>URI Resolution Services Necessary for URN \
Resolution</a></cite>, M. Mealling, R. Daniel. IETF.<dt \
id=refsRFC3279>[RFC3279]<dd><cite><a \
href=http://tools.ietf.org/html/rfc3279>Algorithms and Identifiers for the Internet \
X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) \
Profile</a></cite>, W. Polk, R. Housley, L. Bassham. IETF.<dt \
id=refsRFC3676>[RFC3676]<dd><cite><a href=http://tools.ietf.org/html/rfc3676>The \
Text/Plain Format and DelSp Parameters</a></cite>, R. Gellens. IETF.<dt \
id=refsRFC3864>[RFC3864]<dd><cite><a \
href=http://tools.ietf.org/html/rfc3864>Registration Procedures for Message Header \
Fields</a></cite>, G. Klyne, M. Nottingham, J. Mogul. IETF.<dt \
id=refsRFC4329>[RFC4329]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc4329>Scripting Media Types</a></cite>, B. \
Höhrmann. IETF.<dt id=refsRFC4337>[RFC4337]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.  org/html/rfc4337>MIME Type Registration for \
MPEG-4</a></cite>, Y. Lim, D. Singer. IETF.<dt id=refsRFC4395>[RFC4395]<dd><cite><a \
href=http://tools.ietf.org/html/rfc4395>Guidelines and Registration Procedures for \
New URI Schemes</a></cite>, T. Hansen, T. Hardie, L. Masinter. IETF.<dt \
id=refsRFC4648>[RFC4648]<dd><cite><a href=http://tools.ietf.org/html/rfc4648>The \
Base16, Base32, and Base64 Data Encodings</a></cite>, S. Josefsson. IETF.<dt \
id=refsRFC5280>[RFC5280]<dd><cite><a href=http://tools.ietf.org/html/rfc5280>Internet \
X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) \
Profile</a></cite>, D. Cooper, S. Santesson, S. Farrell, S. Boeyen, R. Housley, W. \
Polk. IETF.<dt id=refsRFC5322>[RFC5322]<dd><cite><a \
href=http://tools.ietf.org/html/rfc5322>Internet Message Format</a></cite>, P. \
Resnick. IETF.<dt id=refsRFC6381>[RFC6381]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6381>The 'Codecs' and 'Profiles' Parameters for \
"Bucket" Media Types</a></ci  te>, R. Gellens, D. Singer, P. Frojdh. IETF.<dt \
id=refsRFC6266>[RFC6266]<dd><cite><a href=http://tools.ietf.org/html/rfc6266>Use of \
the Content-Disposition Header Field in the Hypertext Transfer Protocol \
(HTTP)</a></cite>, J. Reschke. IETF.<dt id=refsRFC6350>[RFC6350]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6350>vCard Format Specification</a></cite>, S. \
Perreault. IETF.<dt id=refsRFC7303>[RFC7303]<dd><cite><a \
href=http://tools.ietf.org/html/rfc7303>XML Media Types</a></cite>, H. Thompson, C. \
Lilley. IETF.<dt id=refsSCSU>[SCSU]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/reports/tr6/>UTR #6: A Standard Compression Scheme For \
Unicode</a></cite>, M. Wolf, K. Whistler, C. Wicksteed, M. Davis, A. Freytag, M. \
Scherer. Unicode Consortium.<dt id=refsSELECTORS>[SELECTORS]<dd><cite><a \
href=http://dev.w3.org/csswg/selectors/>Selectors</a></cite>, E. Etemad, T. Çelik, \
D. Glazman, I. Hickson, P. Linss, J. Williams. W3C.<dt \
id=refsSMS>[SMS]<dd>(Non-normative) <cite><a   \
href=http://tools.ietf.org/html/rfc5724>URI Scheme for Global System for Mobile \
Communications (GSM) Short Message Service (SMS)</a></cite>, E. Wilde, A. \
Vaha-Sipila. IETF.<dt id=refsSRGB>[SRGB]<dd><cite lang=en-GB><a \
href="http://webstore.iec.ch/webstore/webstore.nsf/artnum/025408!OpenDocument&amp;Click=">IEC \
61966-2-1: Multimedia systems and equipment — Colour measurement and management — \
Part 2-1: Colour management — Default RGB colour space — sRGB</a></cite>. IEC.<dt \
id=refsSVG>[SVG]<dd><cite><a href=http://www.w3.org/TR/SVGTiny12/>Scalable Vector \
Graphics (SVG) Tiny 1.2 Specification</a></cite>, O. Andersson, R. Berjon, E. \
Dahlström, A. Emmons, J. Ferraiolo, A. Grasso, V. Hardy, S. Hayman, D. Jackson, C. \
Lilley, C. McCormack, A. Neumann, C. Northway, A. Quint, N. Ramani, D. Schepers, A. \
Shellshear. W3C.<dt id=refsTOR>[TOR]<dd>(Non-normative) <cite><a \
href=https://www.torproject.org/>Tor</a></cite>.<dt id=refsTOUCH>[TOUCH]<dd><cite><a \
href=https://dvcs.w3.org/hg  /webevents/raw-file/v1/touchevents.html>Touch \
Events</a></cite>, D. Schepers, S. Moon, M. Brubeck, A. Barstow. W3C.<dt \
id=refsTZDATABASE>[TZDATABASE]<dd>(Non-normative) <cite><a \
href=http://www.iana.org/time-zones>Time Zone Database</a></cite>. IANA.<dt \
id=refsUAAG>[UAAG]<dd>(Non-normative) <cite><a href=http://www.w3.org/TR/UAAG20/>User \
Agent Accessibility Guidelines (UAAG) 2.0</a></cite>, J. Allan, K. Ford, J. Richards, \
J. Spellman. W3C.<dt id=refsUCA>[UCA]<dd><cite><a \
href=http://www.unicode.org/reports/tr10/>UTR #10: Unicode Collation \
Algorithm</a></cite>, M. Davis, K. Whistler. Unicode Consortium.<dt \
id=refsUNICODE>[UNICODE]<dd><cite><a href=http://www.unicode.org/versions/>The \
Unicode Standard</a></cite>. Unicode Consortium.<dt \
id=refsUNIVCHARDET>[UNIVCHARDET]<dd>(Non-normative) <cite><a \
href=http://www-archive.mozilla.org/projects/intl/UniversalCharsetDetection.html>A \
composite approach to language/encoding detection</a></cite>, S. Li, K. Momoi. \
Netscape. In <cite>Pro  ceedings of the 19th International Unicode \
Conference</cite>.<dt id=refsURL>[URL]<dd><cite><a \
href=https://url.spec.whatwg.org/>URL</a></cite>, A. van Kesteren. WHATWG.<dt \
id=refsURN>[URN]<dd><cite><a href=http://tools.ietf.org/html/rfc2141>URN \
Syntax</a></cite>, R. Moats. IETF.<dt id=refsUTF7>[UTF7]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc2152>UTF-7: A Mail-Safe Transformation Format of \
Unicode</a></cite>, D. Goldsmith, M. Davis. IETF.<dt \
id=refsUTF8DET>[UTF8DET]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/International/questions/qa-forms-utf-8>Multilingual form \
encoding</a></cite>, M. Dürst. W3C.<dt id=refsUTR36>[UTR36]<dd>(Non-normative) \
<cite><a href=http://www.unicode.org/reports/tr36/>UTR #36: Unicode Security \
Considerations</a></cite>, M. Davis, M. Suignard. Unicode Consortium.<dt \
id=refsWCAG>[WCAG]<dd>(Non-normative) <cite><a href=http://www.w3.org/TR/WCAG20/>Web \
Content Accessibility Guidelines (WCAG) 2.0</a></cite>, B. Caldwell, M. Co  oper, L. \
Reid, G. Vanderheiden. W3C.<dt id=refsWEBGL>[WEBGL]<dd><cite><a \
href=http://www.khronos.org/registry/webgl/specs/latest/>WebGL \
Specification</a></cite>, D. Jackson. Khronos Group.<dt \
id=refsWEBIDL>[WEBIDL]<dd><cite><a href=http://dev.w3.org/2006/webapi/WebIDL/>Web \
IDL</a></cite>, C. McCormack. W3C.<dt id=refsWEBLINK>[WEBLINK]<dd><cite><a \
href=http://tools.ietf.org/html/rfc5988>Web Linking</a></cite>, M. Nottingham. \
IETF.<dt id=refsWEBMCG>[WEBMCG]<dd><cite><a \
href=http://www.webmproject.org/code/specs/container/>WebM Container \
Guidelines</a></cite>. The WebM Project.<dt id=refsWEBVTT>[WEBVTT]<dd><cite><a \
href=http://dev.w3.org/html5/webvtt/>WebVTT</a></cite>, I. Hickson. W3C.<dt \
id=refsWHATWGWIKI>[WHATWGWIKI]<dd><cite><a href=https://wiki.whatwg.org/>The WHATWG \
Wiki</a></cite>. WHATWG.<dt id=refsWSP>[WSP]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6455>The WebSocket protocol</a></cite>, I. Fette, \
A. Melnikov. IETF.<dt id=refsX121>[X121]<dd><cite>Recommendation X.  121 — \
International Numbering Plan for Public Data Networks</cite>, CCITT Blue Book, \
Fascicle VIII.3, pp. 317-332.<dt id=refsX690>[X690]<dd><cite><a \
href=http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf>Recommendation \
X.690 — Information Technology — ASN.1 Encoding Rules — Specification of Basic \
Encoding Rules (BER), Canonical Encoding Rules (CER), and Distinguished Encoding \
Rules (DER)</a></cite>. International Telecommunication Union.<dt \
id=refsXFN>[XFN]<dd><cite><a href=http://gmpg.org/xfn/11>XFN 1.1 profile</a></cite>, \
T. Çelik, M. Mullenweg, E. Meyer. GMPG.<dt id=refsXHR>[XHR]<dd><cite><a \
href=https://xhr.spec.whatwg.org/><code>XMLHttpRequest</code></a></cite>, A. van \
Kesteren. WHATWG.<dt id=refsXML>[XML]<dd><cite><a \
href=http://www.w3.org/TR/xml/>Extensible Markup Language</a></cite>, T. Bray, J. \
Paoli, C. Sperberg-McQueen, E. Maler, F. Yergeau. W3C.<dt \
id=refsXMLBASE>[XMLBASE]<dd><cite><a href=http://www.w3.org/TR/xmlbase/>XML \
Base</a></cit  e>, J. Marsh, R. Tobin. W3C.<dt id=refsXMLNS>[XMLNS]<dd><cite><a \
href=http://www.w3.org/TR/xml-names/>Namespaces in XML</a></cite>, T. Bray, D. \
Hollander, A. Layman, R. Tobin. W3C.<dt id=refsXMLSSPI>[XMLSSPI]<dd><cite><a \
href=http://www.w3.org/TR/xml-stylesheet/>Associating Style Sheets with XML \
documents</a></cite>, J. Clark, S. Pieters, H. Thompson. W3C.<dt \
id=refsXPATH10>[XPATH10]<dd><cite><a \
href=http://www.w3.org/TR/1999/REC-xpath-19991116/>XML Path Language (XPath) Version \
1.0</a></cite>, J. Clark, S. DeRose. W3C.<dt \
id=refsXSLT10>[XSLT10]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/1999/REC-xslt-19991116>XSL Transformations (XSLT) Version \
1.0</a></cite>, J. Clark. W3C.</dl>  
 

Modified: index
===================================================================
--- index	2014-11-12 19:34:25 UTC (rev 8848)
+++ index	2014-11-19 21:56:43 UTC (rev 8849)
@@ -340,7 +340,7 @@
   </style><body onload=init()>
   <header id=head class="head with-buttons">
    <p><a href=https://whatwg.org/ class=logo><img src=//whatwg.org/images/logo \
                width=101 alt=WHATWG height=101></a></p>
-   <hgroup><h1 class=allcaps>HTML</h1><h2 \
id=living-standard-—-last-updated-[date:-01-jan-1901] class="no-num no-toc">Living \
Standard — Last Updated <span class=pubdate>12 November 2014</span></h2></hgroup> + \
<hgroup><h1 class=allcaps>HTML</h1><h2 \
id=living-standard-—-last-updated-[date:-01-jan-1901] class="no-num no-toc">Living \
Standard — Last Updated <span class=pubdate>19 November 2014</span></h2></hgroup>  
    <nav>
     <div>
@@ -381,7 +381,7 @@
   on a <code>label</code> element to define a command</a><li><a \
href=#using-the-accesskey-attribute-on-a-legend-element-to-define-a-command>4.11.6.9 \
Using the <code>accesskey</code> attribute  on a <code>legend</code> element to \
define a command</a><li><a \
href=#using-the-accesskey-attribute-to-define-a-command-on-other-elements>4.11.6.10 \
Using the <code>accesskey</code>  attribute to define a command on other \
elements</a></ol><li><a href=#the-dialog-element>4.11.7 The <code>dialog</code> \
element</a><ol><li><a href=#anchor-points>4.11.7.1 Anchor points</a></ol></ol><li><a \
href=#scripting-3>4.12 Scripting</a><ol><li><a href=#the-script-element>4.12.1 The \
<code>script</code> element</a><ol><li><a href=#scriptingLanguages>4.12.1.1 Scripting \
languages</a><li><a href=#restrictions-for-contents-of-script-elements>4.12.1.2 \
Restrictions for contents of <code>script</code> elements</a><li><a \
href=#inline-documentation-for-external-scripts>4.12.1.3 Inline documentation for \
external scripts</a><li><a href=#scriptTagXSLT>4.12.1.4 Interaction of \
<code>script</code> elements and XSLT</a></ol><li><a \
href=#the-noscript-element>4.12.2 The <code>noscript</code> element</a><li><a \
href=#the-template-element>4.12.3 The <code>template</code> element</a><ol><li><a \
href=#template-XSLT-XPath>4.12.3.1 Interaction of <code>template</code> elements with \
XSLT and XPath  </a></ol><li><a href=#the-canvas-element>4.12.4 The \
<code>canvas</code> element</a><ol><li><a href=#proxying-canvases-to-workers>4.12.4.1 \
Proxying canvases to workers</a><li><a href=#2dcontext>4.12.4.2 The 2D rendering \
context</a><ol><li><a href=#implementation-notes>4.12.4.2.1 Implementation \
notes</a><li><a href=#the-canvas-state>4.12.4.2.2 The canvas state</a><li><a \
href=#drawingstyle-objects>4.12.4.2.3 <code>DrawingStyle</code> objects</a><li><a \
href=#line-styles>4.12.4.2.4 Line styles</a><li><a href=#text-styles>4.12.4.2.5 Text \
styles</a><li><a href=#building-paths>4.12.4.2.6 Building paths</a><li><a \
href=#path2d-objects>4.12.4.2.7 <code>Path2D</code> objects</a><li><a \
href=#transformations>4.12.4.2.8 Transformations</a><li><a \
href=#image-sources-for-2d-rendering-contexts>4.12.4.2.9 Image sources for 2D \
rendering contexts</a><li><a href=#fill-and-stroke-styles>4.12.4.2.10 Fill and stroke \
styles</a><li><a href=#drawing-rectangles-to-the-bitmap>4.12.4.2.11 Drawing rectangl  \
es to the bitmap</a><li><a href=#drawing-text-to-the-bitmap>4.12.4.2.12 Drawing text \
to the bitmap</a><li><a href=#drawing-paths-to-the-canvas>4.12.4.2.13 Drawing paths \
to the canvas</a><li><a href=#drawing-images>4.12.4.2.14 Drawing images</a><li><a \
href=#hit-regions>4.12.4.2.15 Hit regions</a><li><a \
href=#pixel-manipulation>4.12.4.2.16 Pixel manipulation</a><li><a \
href=#compositing>4.12.4.2.17 Compositing</a><li><a href=#image-smoothing>4.12.4.2.18 \
Image smoothing</a><li><a href=#shadows>4.12.4.2.19 Shadows</a><li><a \
href=#drawing-model>4.12.4.2.20 Drawing model</a><li><a \
href=#best-practices>4.12.4.2.21 Best practices</a><li><a href=#examples>4.12.4.2.22 \
Examples</a></ol><li><a href=#colour-spaces-and-colour-correction>4.12.4.3 Colour \
spaces and colour correction</a><li><a href=#serialising-bitmaps-to-a-file>4.12.4.4 \
Serialising bitmaps to a file</a><li><a href=#security-with-canvas-elements>4.12.4.5 \
Security with <code>canvas</code> elements</a></ol></ol><li><a href=#com  \
mon-idioms>4.13 Common idioms without dedicated elements</a><ol><li><a \
href=#the-main-part-of-the-content>4.13.1 The main part of the content</a><li><a \
href=#rel-up>4.13.2 Bread crumb navigation</a><li><a href=#tag-clouds>4.13.3 Tag \
clouds</a><li><a href=#conversations>4.13.4 Conversations</a><li><a \
href=#footnotes>4.13.5 Footnotes</a></ol><li><a href=#disabled-elements>4.14 Disabled \
elements</a><li><a href=#selectors>4.15 Matching HTML elements using \
selectors</a><ol><li><a href=#case-sensitivity>4.15.1 Case-sensitivity</a><li><a \
href=#pseudo-classes>4.15.2 Pseudo-classes</a></ol></ol><li id=toc-microdata><a \
href=#microdata>5 Microdata</a><ol><li><a href=#introduction-7>5.1 \
Introduction</a><ol><li><a href=#overview>5.1.1 Overview</a><li><a \
href=#the-basic-syntax>5.1.2 The basic syntax</a><li><a href=#typed-items>5.1.3 Typed \
items</a><li><a href=#global-identifiers-for-items>5.1.4 Global identifiers for \
items</a><li><a href=#selecting-names-when-defining-vocabularies>5.1.5 S  electing \
names when defining vocabularies</a><li><a href=#using-the-microdata-dom-api>5.1.6 \
Using the microdata DOM API</a></ol><li><a href=#encoding-microdata>5.2 Encoding \
microdata</a><ol><li><a href=#the-microdata-model>5.2.1 The microdata model</a><li><a \
href=#items>5.2.2 Items</a><li><a href=#names:-the-itemprop-attribute>5.2.3 Names: \
the <code>itemprop</code> attribute</a><li><a href=#values>5.2.4 Values</a><li><a \
href=#associating-names-with-items>5.2.5 Associating names with items</a><li><a \
href=#microdata-and-other-namespaces>5.2.6 Microdata and other \
namespaces</a></ol><li><a href=#microdata-dom-api>5.3 Microdata DOM API</a><li><a \
href=#mdvocabs>5.4 Sample microdata vocabularies</a><ol><li><a href=#vcard>5.4.1 \
vCard</a><ol><li><a href=#conversion-to-vcard>5.4.1.1 Conversion to vCard</a><li><a \
href=#examples-2>5.4.1.2 Examples</a></ol><li><a href=#vevent>5.4.2 \
vEvent</a><ol><li><a href=#conversion-to-icalendar>5.4.2.1 Conversion to \
                iCalendar</a><li><a href=#examples
 -3>5.4.2.2 Examples</a></ol><li><a href=#licensing-works>5.4.3 Licensing \
works</a><ol><li><a href=#examples-4>5.4.3.1 Examples</a></ol></ol><li><a \
href=#converting-html-to-other-formats>5.5 Converting HTML to other \
formats</a><ol><li><a href=#json>5.5.1 JSON</a></ol></ol><li id=toc-editing><a \
href=#editing>6 User interaction</a><ol><li><a href=#the-hidden-attribute>6.1 The \
<code>hidden</code> attribute</a><li><a href=#inert-subtrees>6.2 Inert \
subtrees</a><li><a href=#activation>6.3 Activation</a><li><a href=#focus>6.4 \
Focus</a><ol><li><a href=#introduction-8>6.4.1 Introduction</a><li><a \
href=#data-model>6.4.2 Data model</a><li><a href=#the-tabindex-attribute>6.4.3 The \
<code>tabindex</code> attribute</a><li><a href=#processing-model-6>6.4.4 Processing \
model</a><li><a href=#sequential-focus-navigation>6.4.5 Sequential focus \
navigation</a><li><a href=#focus-management-apis>6.4.6 Focus management \
APIs</a></ol><li><a href=#assigning-keyboard-shortcuts>6.5 Assigning keyboard short  \
cuts</a><ol><li><a href=#introduction-9>6.5.1 Introduction</a><li><a \
href=#the-accesskey-attribute>6.5.2 The <code>accesskey</code> attribute</a><li><a \
href=#processing-model-7>6.5.3 Processing model</a></ol><li><a href=#editing-2>6.6 \
Editing</a><ol><li><a href=#contenteditable>6.6.1 Making document regions editable: \
The <code>contenteditable</code> content attribute</a><li><a \
href=#making-entire-documents-editable:-the-designmode-idl-attribute>6.6.2 Making \
entire documents editable: The <code>designMode</code> IDL attribute</a><li><a \
href=#best-practices-for-in-page-editors>6.6.3 Best practices for in-page \
editors</a><li><a href=#editing-apis>6.6.4 Editing APIs</a><li><a \
href=#spelling-and-grammar-checking>6.6.5 Spelling and grammar \
checking</a></ol><li><a href=#dnd>6.7 Drag and drop</a><ol><li><a \
href=#introduction-10>6.7.1 Introduction</a><li><a href=#the-drag-data-store>6.7.2 \
The drag data store</a><li><a href=#the-datatransfer-interface>6.7.3 The \
<code>DataTransfer</cod  e> interface</a><ol><li><a \
href=#the-datatransferitemlist-interface>6.7.3.1 The \
<code>DataTransferItemList</code> interface</a><li><a \
href=#the-datatransferitem-interface>6.7.3.2 The <code>DataTransferItem</code> \
interface</a></ol><li><a href=#the-dragevent-interface>6.7.4 The \
<code>DragEvent</code> interface</a><li><a href=#drag-and-drop-processing-model>6.7.5 \
Drag-and-drop processing model</a><li><a href=#dndevents>6.7.6 Events \
summary</a><li><a href=#the-draggable-attribute>6.7.7 The <code>draggable</code> \
attribute</a><li><a href=#the-dropzone-attribute>6.7.8 The <code>dropzone</code> \
attribute</a><li><a href=#security-risks-in-the-drag-and-drop-model>6.7.9 Security \
risks in the drag-and-drop model</a></ol></ol><li id=toc-browsers><a href=#browsers>7 \
Loading Web pages</a><ol><li><a href=#windows>7.1 Browsing contexts</a><ol><li><a \
href=#nested-browsing-contexts>7.1.1 Nested browsing contexts</a><ol><li><a \
href=#navigating-nested-browsing-contexts-in-the-dom>7.1.1.1 Navig  ating nested \
browsing contexts in the DOM</a></ol><li><a href=#auxiliary-browsing-contexts>7.1.2 \
Auxiliary browsing contexts</a><ol><li><a \
href=#navigating-auxiliary-browsing-contexts-in-the-dom>7.1.2.1 Navigating auxiliary \
browsing contexts in the DOM</a></ol><li><a href=#secondary-browsing-contexts>7.1.3 \
Secondary browsing contexts</a><li><a href=#security-nav>7.1.4 Security</a><li><a \
href=#groupings-of-browsing-contexts>7.1.5 Groupings of browsing contexts</a><li><a \
href=#browsing-context-names>7.1.6 Browsing context names</a></ol><li><a \
href=#the-window-object>7.2 The <code>Window</code> object</a><ol><li><a \
href=#security-window>7.2.1 Security</a><li><a \
href=#apis-for-creating-and-navigating-browsing-contexts-by-name>7.2.2 APIs for \
creating and navigating browsing contexts by name</a><li><a \
href=#accessing-other-browsing-contexts>7.2.3 Accessing other browsing \
contexts</a><li><a href=#named-access-on-the-window-object>7.2.4 Named access on the \
<code>Window</code> object  </a><li><a \
href=#garbage-collection-and-browsing-contexts>7.2.5 Garbage collection and browsing \
contexts</a><li><a href=#closing-browsing-contexts>7.2.6 Closing browsing \
contexts</a><li><a href=#browser-interface-elements>7.2.7 Browser interface \
elements</a><li><a href=#the-windowproxy-object>7.2.8 The <code>WindowProxy</code> \
object</a></ol><li><a href=#origin>7.3 Origin</a><ol><li><a \
href=#relaxing-the-same-origin-restriction>7.3.1 Relaxing the same-origin \
restriction</a></ol><li><a href=#sandboxing>7.4 Sandboxing</a><li><a \
href=#history>7.5 Session history and navigation</a><ol><li><a \
href=#the-session-history-of-browsing-contexts>7.5.1 The session history of browsing \
contexts</a><li><a href=#the-history-interface>7.5.2 The <code>History</code> \
interface</a><li><a href=#the-location-interface>7.5.3 The <code>Location</code> \
interface</a><ol><li><a href=#security-location>7.5.3.1 Security</a></ol><li><a \
href=#history-notes>7.5.4 Implementation notes for session history</a>  </ol><li><a \
href=#browsing-the-web>7.6 Browsing the Web</a><ol><li><a \
href=#navigating-across-documents>7.6.1 Navigating across documents</a><li><a \
href=#read-html>7.6.2 Page load processing model for HTML files</a><li><a \
href=#read-xml>7.6.3 Page load processing model for XML files</a><li><a \
href=#read-text>7.6.4 Page load processing model for text files</a><li><a \
href=#read-multipart-x-mixed-replace>7.6.5 Page load processing model for \
<code>multipart/x-mixed-replace</code> resources</a><li><a href=#read-media>7.6.6 \
Page load processing model for media</a><li><a href=#read-plugin>7.6.7 Page load \
processing model for content that uses plugins</a><li><a href=#read-ua-inline>7.6.8 \
                Page load processing model for inline
-  content that doesn't have a DOM</a><li><a href=#scroll-to-fragid>7.6.9 Navigating \
to a fragment identifier</a><li><a href=#history-traversal>7.6.10 History \
traversal</a><ol><li><a href=#the-popstateevent-interface>7.6.10.1 The \
<code>PopStateEvent</code> interface</a><li><a \
href=#the-hashchangeevent-interface>7.6.10.2 The <code>HashChangeEvent</code> \
interface</a><li><a href=#the-pagetransitionevent-interface>7.6.10.3 The \
<code>PageTransitionEvent</code> interface</a></ol><li><a \
href=#unloading-documents>7.6.11 Unloading documents</a><ol><li><a \
href=#the-beforeunloadevent-interface>7.6.11.1 The <code>BeforeUnloadEvent</code> \
interface</a></ol><li><a href=#aborting-a-document-load>7.6.12 Aborting a document \
load</a></ol><li><a href=#offline>7.7 Offline Web applications</a><ol><li><a \
href=#introduction-11>7.7.1 Introduction</a><ol><li><a \
href=#supporting-offline-caching-for-legacy-applications>7.7.1.1 Supporting offline \
caching for legacy applications</a><li><a href=#appcache  events>7.7.1.2 Event \
summary</a></ol><li><a href=#appcache>7.7.2 Application caches</a><li><a \
href=#manifests>7.7.3 The cache manifest syntax</a><ol><li><a \
href=#some-sample-manifests>7.7.3.1 Some sample manifests</a><li><a \
href=#writing-cache-manifests>7.7.3.2 Writing cache manifests</a><li><a \
href=#parsing-cache-manifests>7.7.3.3 Parsing cache manifests</a></ol><li><a \
href=#downloading-or-updating-an-application-cache>7.7.4 Downloading or updating an \
application cache</a><li><a href=#the-application-cache-selection-algorithm>7.7.5 The \
application cache selection algorithm</a><li><a href=#changesToNetworkingModel>7.7.6 \
Changes to the networking model</a><li><a href=#expiring-application-caches>7.7.7 \
Expiring application caches</a><li><a href=#disk-space>7.7.8 Disk space</a><li><a \
href=#security-concerns-with-offline-applications-caches>7.7.9 Security concerns with \
offline applications caches</a><li><a href=#application-cache-api>7.7.10 Application \
cache API</a><li><a href=#  navigator.online>7.7.11 Browser state</a></ol></ol><li \
id=toc-webappapis><a href=#webappapis>8 Web application APIs</a><ol><li><a \
href=#scripting>8.1 Scripting</a><ol><li><a href=#introduction-12>8.1.1 \
Introduction</a><li><a href=#enabling-and-disabling-scripting>8.1.2 Enabling and \
disabling scripting</a><li><a href=#processing-model-8>8.1.3 Processing \
model</a><ol><li><a href=#definitions-2>8.1.3.1 Definitions</a><li><a \
href=#script-settings-for-browsing-contexts>8.1.3.2 Script settings for browsing \
contexts</a><li><a href=#calling-scripts>8.1.3.3 Calling scripts</a><li><a \
href=#creating-scripts>8.1.3.4 Creating scripts</a><li><a \
href=#killing-scripts>8.1.3.5 Killing scripts</a><li><a \
href=#runtime-script-errors>8.1.3.6 Runtime script errors</a><ol><li><a \
href=#runtime-script-errors-in-documents>8.1.3.6.1 Runtime script errors in \
documents</a><li><a href=#the-errorevent-interface>8.1.3.6.2 The \
<code>ErrorEvent</code> interface</a></ol></ol><li><a href=#event-loops>8.1.4 Eve  nt \
loops</a><ol><li><a href=#definitions-3>8.1.4.1 Definitions</a><li><a \
href=#processing-model-9>8.1.4.2 Processing model</a><li><a \
href=#generic-task-sources>8.1.4.3 Generic task sources</a></ol><li><a \
href=#events>8.1.5 Events</a><ol><li><a href=#event-handler-attributes>8.1.5.1 Event \
handlers</a><li><a href=#event-handlers-on-elements,-document-objects,-and-window-objects>8.1.5.2 \
Event handlers on elements, <code>Document</code> objects, and <code>Window</code> \
objects</a><ol><li><a href=#idl-definitions>8.1.5.2.1 IDL definitions</a></ol><li><a \
href=#event-firing>8.1.5.3 Event firing</a><li><a \
href=#events-and-the-window-object>8.1.5.4 Events and the <code>Window</code> \
object</a></ol></ol><li><a href=#atob>8.2 Base64 utility methods</a><li><a \
href=#dynamic-markup-insertion>8.3 Dynamic markup insertion</a><ol><li><a \
href=#opening-the-input-stream>8.3.1 Opening the input stream</a><li><a \
href=#closing-the-input-stream>8.3.2 Closing the input stream</a><li><a href=#documen \
t.write()>8.3.3 <code>document.write()</code></a><li><a \
href=#document.writeln()>8.3.4 <code>document.writeln()</code></a></ol><li><a \
href=#timers>8.4 Timers</a><li><a href=#user-prompts>8.5 User prompts</a><ol><li><a \
href=#simple-dialogs>8.5.1 Simple dialogs</a><li><a href=#printing>8.5.2 \
Printing</a><li><a href=#dialogs-implemented-using-separate-documents>8.5.3 Dialogs \
implemented using separate documents with \
<code>showModalDialog()</code></a></ol><li><a href=#system-state-and-capabilities>8.6 \
System state and capabilities</a><ol><li><a href=#the-navigator-object>8.6.1 The \
<code>Navigator</code> object</a><ol><li><a href=#client-identification>8.6.1.1 \
Client identification</a><li><a href=#language-preferences>8.6.1.2 Language \
preferences</a><li><a href=#custom-handlers>8.6.1.3 Custom scheme and content \
handlers: the <code>registerProtocolHandler()</code> and \
<code>registerContentHandler()</code> methods</a><ol><li><a \
href=#security-and-privacy>8.6.1.3.1 Security and priv  acy</a><li><a \
href=#sample-handler-impl>8.6.1.3.2 Sample user interface</a></ol><li><a \
href=#manually-releasing-the-storage-mutex>8.6.1.4 Manually releasing the storage \
mutex</a><li><a href=#plugins-2>8.6.1.5 Plugins</a></ol><li><a \
href=#the-external-interface>8.6.2 The <code>External</code> interface</a></ol><li><a \
href=#images>8.7 Images</a></ol><li id=toc-comms><a href=#comms>9 \
Communication</a><ol><li><a href=#the-messageevent-interfaces>9.1 The \
<code>MessageEvent</code> interfaces</a><li><a href=#server-sent-events>9.2 \
Server-sent events</a><ol><li><a href=#server-sent-events-intro>9.2.1 \
Introduction</a><li><a href=#the-eventsource-interface>9.2.2 The \
<code>EventSource</code> interface</a><li><a href=#processing-model-10>9.2.3 \
Processing model</a><li><a href=#parsing-an-event-stream>9.2.4 Parsing an event \
stream</a><li><a href=#event-stream-interpretation>9.2.5 Interpreting an event \
stream</a><li><a href=#authoring-notes>9.2.6 Authoring notes</a><li><a \
                href=#eventsource
 -push>9.2.7 Connectionless push and other features</a><li><a \
href=#garbage-collection-2>9.2.8 Garbage collection</a><li><a \
href=#implementation-advice>9.2.9 Implementation advice</a><li><a \
href=#iana-considerations>9.2.10 IANA considerations</a><ol><li><a \
href=#text/event-stream>9.2.10.1 <code>text/event-stream</code></a><li><a \
href=#last-event-id>9.2.10.2 <code>Last-Event-ID</code></a></ol></ol><li><a \
href=#network>9.3 Web sockets</a><ol><li><a href=#network-intro>9.3.1 \
Introduction</a><li><a href=#the-websocket-interface>9.3.2 The <code>WebSocket</code> \
interface</a><li><a href=#feedback-from-the-protocol>9.3.3 Feedback from the \
protocol</a><li><a href=#ping-and-pong-frames>9.3.4 Ping and Pong frames</a><li><a \
href=#parsing-websocket-urls>9.3.5 Parsing WebSocket URLs</a><li><a \
href=#the-closeevent-interfaces>9.3.6 The <code>CloseEvent</code> \
interfaces</a><li><a href=#garbage-collection-3>9.3.7 Garbage \
collection</a></ol><li><a href=#web-messaging>9.4 Cross-document messag  \
ing</a><ol><li><a href=#introduction-13>9.4.1 Introduction</a><li><a \
href=#security-postmsg>9.4.2 Security</a><ol><li><a href=#authors>9.4.2.1 \
Authors</a><li><a href=#user-agents>9.4.2.2 User agents</a></ol><li><a \
href=#posting-messages>9.4.3 Posting messages</a></ol><li><a \
href=#channel-messaging>9.5 Channel messaging</a><ol><li><a \
href=#introduction-14>9.5.1 Introduction</a><ol><li><a href=#examples-5>9.5.1.1 \
Examples</a><li><a href=#ports-as-the-basis-of-an-object-capability-model-on-the-web>9.5.1.2 \
Ports as the basis of an object-capability model on the Web</a><li><a \
href=#ports-as-the-basis-of-abstracting-out-service-implementations>9.5.1.3 Ports as \
the basis of abstracting out service implementations</a></ol><li><a \
href=#message-channels>9.5.2 Message channels</a><li><a href=#message-ports>9.5.3 \
Message ports</a><li><a href=#broadcasting-to-many-ports>9.5.4 Broadcasting to many \
ports</a><li><a href=#ports-and-garbage-collection>9.5.5 Ports and garbage \
collection</a></o  l><li><a href=#broadcasting-to-other-browsing-contexts>9.6 \
Broadcasting to other browsing contexts</a></ol><li id=toc-workers><a \
href=#workers>10 Web workers</a><ol><li><a href=#introduction-15>10.1 \
Introduction</a><ol><li><a href=#scope-2>10.1.1 Scope</a><li><a \
href=#examples-6>10.1.2 Examples</a><ol><li><a \
href=#a-background-number-crunching-worker>10.1.2.1 A background number-crunching \
worker</a><li><a href=#worker-used-for-background-i/o>10.1.2.2 Worker used for \
background I/O</a><li><a href=#shared-workers-introduction>10.1.2.3 Shared workers \
introduction</a><li><a href=#shared-state-using-a-shared-worker>10.1.2.4 Shared state \
using a shared worker</a><li><a href=#delegation>10.1.2.5 Delegation</a></ol><li><a \
href=#tutorials>10.1.3 Tutorials</a><ol><li><a \
href=#creating-a-dedicated-worker>10.1.3.1 Creating a dedicated worker</a><li><a \
href=#communicating-with-a-dedicated-worker>10.1.3.2 Communicating with a dedicated \
worker</a><li><a href=#shared-workers>10.1.3.3 Shared  workers</a></ol></ol><li><a \
href=#infrastructure-2>10.2 Infrastructure</a><ol><li><a \
href=#the-global-scope>10.2.1 The global scope</a><ol><li><a \
href=#the-workerglobalscope-common-interface>10.2.1.1 The \
<code>WorkerGlobalScope</code> common interface</a><li><a \
href=#dedicated-workers-and-the-dedicatedworkerglobalscope-interface>10.2.1.2 \
Dedicated workers and the <code>DedicatedWorkerGlobalScope</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworkerglobalscope-interface>10.2.1.3 Shared \
workers and the <code>SharedWorkerGlobalScope</code> interface</a></ol><li><a \
href=#worker-event-loop>10.2.2 The event loop</a><li><a \
href="#the-worker's-lifetime">10.2.3 The worker's lifetime</a><li><a \
href=#processing-model-11>10.2.4 Processing model</a><li><a \
href=#runtime-script-errors-2>10.2.5 Runtime script errors</a><li><a \
href=#creating-workers>10.2.6 Creating workers</a><ol><li><a \
href=#the-abstractworker-abstract-interface>10.2.6.1 The <code>AbstractWorker</code> \
abstr  act interface</a><li><a href=#script-settings-for-workers>10.2.6.2 Script \
settings for workers</a><li><a \
href=#dedicated-workers-and-the-worker-interface>10.2.6.3 Dedicated workers and the \
<code>Worker</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworker-interface>10.2.6.4 Shared workers and the \
<code>SharedWorker</code> interface</a></ol></ol><li><a \
href=#apis-available-to-workers>10.3 APIs available to workers</a><ol><li><a \
href=#importing-scripts-and-libraries>10.3.1 Importing scripts and \
libraries</a><li><a href=#the-workernavigator-object>10.3.2 The \
<code>WorkerNavigator</code> object</a><li><a href=#worker-locations>10.3.3 Worker \
locations</a></ol></ol><li id=toc-webstorage><a href=#webstorage>11 Web \
storage</a><ol><li><a href=#introduction-16>11.1 Introduction</a><li><a \
href=#storage>11.2 The API</a><ol><li><a href=#the-storage-interface>11.2.1 The \
<code>Storage</code> interface</a><li><a href=#the-sessionstorage-attribute>11.2.2 \
The <code>sessionStora  ge</code> attribute</a><li><a \
href=#the-localstorage-attribute>11.2.3 The <code>localStorage</code> \
attribute</a><li><a href=#the-storage-event>11.2.4 The <code>storage</code> \
event</a><ol><li><a href=#the-storageevent-interface>11.2.4.1 The \
<code>StorageEvent</code> interface</a></ol><li><a href=#threads>11.2.5 \
Threads</a></ol><li><a href=#disk-space-2>11.3 Disk space</a><li><a \
href=#privacy>11.4 Privacy</a><ol><li><a href=#user-tracking>11.4.1 User \
tracking</a><li><a href=#sensitivity-of-data>11.4.2 Sensitivity of \
data</a></ol><li><a href=#security-storage>11.5 Security</a><ol><li><a \
href=#dns-spoofing-attacks>11.5.1 DNS spoofing attacks</a><li><a \
href=#cross-directory-attacks>11.5.2 Cross-directory attacks</a><li><a \
href=#implementation-risks>11.5.3 Implementation risks</a></ol></ol><li \
id=toc-syntax><a href=#syntax>12 The HTML syntax</a><ol><li><a href=#writing>12.1 \
Writing HTML documents</a><ol><li><a href=#the-doctype>12.1.1 The DOCTYPE</a><li><a \
href=#elements-2>12.1.  2 Elements</a><ol><li><a href=#start-tags>12.1.2.1 Start \
tags</a><li><a href=#end-tags>12.1.2.2 End tags</a><li><a href=#attributes-2>12.1.2.3 \
Attributes</a><li><a href=#optional-tags>12.1.2.4 Optional tags</a><li><a \
href=#element-restrictions>12.1.2.5 Restrictions on content models</a><li><a \
href=#cdata-rcdata-restrictions>12.1.2.6 Restrictions on the contents of raw text and \
escapable raw text elements</a></ol><li><a href=#text-2>12.1.3 Text</a><ol><li><a \
href=#newlines>12.1.3.1 Newlines</a></ol><li><a href=#character-references>12.1.4 \
Character references</a><li><a href=#cdata-sections>12.1.5 CDATA sections</a><li><a \
href=#comments>12.1.6 Comments</a></ol><li><a href=#parsing>12.2 Parsing HTML \
documents</a><ol><li><a href=#overview-of-the-parsing-model>12.2.1 Overview of the \
parsing model</a><li><a href=#the-input-byte-stream>12.2.2 The input byte \
stream</a><ol><li><a href=#parsing-with-a-known-character-encoding>12.2.2.1 Parsing \
with a known character encoding</a><li><a   \
href=#determining-the-character-encoding>12.2.2.2 Determining the character \
encoding</a><li><a href=#character-encodings>12.2.2.3 Character encodings</a><li><a \
href=#changing-the-encoding-while-parsing>12.2.2.4 Changing the encoding while \
parsing</a><li><a href=#preprocessing-the-input-stream>12.2.2.5 Preprocessing the \
input stream</a></ol><li><a href=#parse-state>12.2.3 Parse state</a><ol><li><a \
href=#the-insertion-mode>12.2.3.1 The insertion mode</a><li><a \
href=#the-stack-of-open-elements>12.2.3.2 The stack of open elements</a><li><a \
href=#the-list-of-active-formatting-elements>12.2.3.3 The list of active formatting \
elements</a><li><a href=#the-element-pointers>12.2.3.4 The element pointers</a><li><a \
href=#other-parsing-state-flags>12.2.3.5 Other parsing state flags</a></ol><li><a \
href=#tokenization>12.2.4 Tokenization</a><ol><li><a href=#data-state>12.2.4.1 Data \
state</a><li><a href=#character-reference-in-data-state>12.2.4.2 Character reference \
in data state</a><li><a hr  ef=#rcdata-state>12.2.4.3 RCDATA state</a><li><a \
href=#character-reference-in-rcdata-state>12.2.4.4 Character reference in RCDATA \
state</a><li><a href=#rawtext-state>12.2.4.5 RAWTEXT state</a><li><a \
href=#script-data-state>12.2.4.6 Script data state</a><li><a \
href=#plaintext-state>12.2.4.7 PLAINTEXT state</a><li><a \
href=#tag-open-state>12.2.4.8 Tag open state</a><li><a \
href=#end-tag-open-state>12.2.4.9 End tag open state</a><li><a \
href=#tag-name-state>12.2.4.10 Tag name state</a><li><a \
href=#rcdata-less-than-sign-state>12.2.4.11 RCDATA less-than sign state</a><li><a \
href=#rcdata-end-tag-open-state>12.2.4.12 RCDATA end tag open state</a><li><a \
href=#rcdata-end-tag-name-state>12.2.4.13 RCDATA end tag name state</a><li><a \
href=#rawtext-less-than-sign-state>12.2.4.14 RAWTEXT less-than sign state</a><li><a \
href=#rawtext-end-tag-open-state>12.2.4.15 RAWTEXT end tag open state</a><li><a \
href=#rawtext-end-tag-name-state>12.2.4.16 RAWTEXT end tag name state</a><li><a \
href=#script-dat  a-less-than-sign-state>12.2.4.17 Script data less-than sign \
state</a><li><a href=#script-data-end-tag-open-state>12.2.4.18 Script data end tag \
open state</a><li><a href=#script-data-end-tag-name-state>12.2.4.19 Script data end \
tag name state</a><li><a href=#script-data-escape-start-state>12.2.4.20 Script data \
escape start state</a><li><a href=#script-data-escape-start-dash-state>12.2.4.21 \
Script data escape start dash state</a><li><a \
href=#script-data-escaped-state>12.2.4.22 Script data escaped state</a><li><a \
href=#script-data-escaped-dash-state>12.2.4.23 Script data escaped dash \
state</a><li><a href=#script-data-escaped-dash-dash-state>12.2.4.24 Script data \
escaped dash dash state</a><li><a \
href=#script-data-escaped-less-than-sign-state>12.2.4.25 Script data escaped \
less-than sign state</a><li><a href=#script-data-escaped-end-tag-open-state>12.2.4.26 \
Script data escaped end tag open state</a><li><a \
href=#script-data-escaped-end-tag-name-state>12.2.4.27 Script data escaped   end tag \
name state</a><li><a href=#script-data-double-escape-start-state>12.2.4.28 Script \
data double escape start state</a><li><a \
href=#script-data-double-escaped-state>12.2.4.29 Script data double escaped \
state</a><li><a href=#script-data-double-escaped-dash-state>12.2.4.30 Script data \
double escaped dash state</a><li><a \
href=#script-data-double-escaped-dash-dash-state>12.2.4.31 Script data double escaped \
dash dash state</a><li><a \
href=#script-data-double-escaped-less-than-sign-state>12.2.4.32 Script data double \
escaped less-than sign state</a><li><a \
href=#script-data-double-escape-end-state>12.2.4.33 Script data double escape end \
state</a><li><a href=#before-attribute-name-state>12.2.4.34 Before attribute name \
state</a><li><a href=#attribute-name-state>12.2.4.35 Attribute name state</a><li><a \
href=#after-attribute-name-state>12.2.4.36 After attribute name state</a><li><a \
href=#before-attribute-value-state>12.2.4.37 Before attribute value state</a><li><a \
href=#attribute-va  lue-(double-quoted)-state>12.2.4.38 Attribute value \
(double-quoted) state</a><li><a href=#attribute-value-(single-quoted)-state>12.2.4.39 \
Attribute value (single-quoted) state</a><li><a \
href=#attribute-value-(unquoted)-state>12.2.4.40 Attribute value (unquoted) \
state</a><li><a href=#character-reference-in-attribute-value-state>12.2.4.41 \
Character reference in attribute value state</a><li><a \
href=#after-attribute-value-(quoted)-state>12.2.4.42 After attribute value (quoted) \
state</a><li><a href=#self-closing-start-tag-state>12.2.4.43 Self-closing start tag \
state</a><li><a href=#bogus-comment-state>12.2.4.44 Bogus comment state</a><li><a \
href=#markup-declaration-open-state>12.2.4.45 Markup declaration open state</a><li><a \
href=#comment-start-state>12.2.4.46 Comment start state</a><li><a \
href=#comment-start-dash-state>12.2.4.47 Comment start dash state</a><li><a \
href=#comment-state>12.2.4.48 Comment state</a><li><a \
href=#comment-end-dash-state>12.2.4.49 Comment end dash state</  a><li><a \
href=#comment-end-state>12.2.4.50 Comment end state</a><li><a \
href=#comment-end-bang-state>12.2.4.51 Comment end bang state</a><li><a \
href=#doctype-state>12.2.4.52 DOCTYPE state</a><li><a \
href=#before-doctype-name-state>12.2.4.53 Before DOCTYPE name state</a><li><a \
href=#doctype-name-state>12.2.4.54 DOCTYPE name state</a><li><a \
href=#after-doctype-name-state>12.2.4.55 After DOCTYPE name state</a><li><a \
href=#after-doctype-public-keyword-state>12.2.4.56 After DOCTYPE public keyword \
state</a><li><a href=#before-doctype-public-identifier-state>12.2.4.57 Before DOCTYPE \
public identifier state</a><li><a \
href=#doctype-public-identifier-(double-quoted)-state>12.2.4.58 DOCTYPE public \
identifier (double-quoted) state</a><li><a \
href=#doctype-public-identifier-(single-quoted)-state>12.2.4.59 DOCTYPE public \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-public-identifier-state>12.2.4.60 After DOCTYPE public identifier \
                state</a><li><a href=#between-doctype-public
 -and-system-identifiers-state>12.2.4.61 Between DOCTYPE public and system \
identifiers state</a><li><a href=#after-doctype-system-keyword-state>12.2.4.62 After \
DOCTYPE system keyword state</a><li><a \
href=#before-doctype-system-identifier-state>12.2.4.63 Before DOCTYPE system \
identifier state</a><li><a \
href=#doctype-system-identifier-(double-quoted)-state>12.2.4.64 DOCTYPE system \
identifier (double-quoted) state</a><li><a \
href=#doctype-system-identifier-(single-quoted)-state>12.2.4.65 DOCTYPE system \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-system-identifier-state>12.2.4.66 After DOCTYPE system identifier \
state</a><li><a href=#bogus-doctype-state>12.2.4.67 Bogus DOCTYPE state</a><li><a \
href=#cdata-section-state>12.2.4.68 CDATA section state</a><li><a \
href=#tokenizing-character-references>12.2.4.69 Tokenizing character \
references</a></ol><li><a href=#tree-construction>12.2.5 Tree \
construction</a><ol><li><a href=#creating-and-inserting-nodes>12.2.5.1 Creatin  g and \
inserting nodes</a><li><a href=#parsing-elements-that-contain-only-text>12.2.5.2 \
Parsing elements that contain only text</a><li><a \
href=#closing-elements-that-have-implied-end-tags>12.2.5.3 Closing elements that have \
implied end tags</a><li><a href=#parsing-main-inhtml>12.2.5.4 The rules for parsing \
tokens in HTML content</a><ol><li><a href=#the-initial-insertion-mode>12.2.5.4.1 The \
"initial" insertion mode</a><li><a href=#the-before-html-insertion-mode>12.2.5.4.2 \
The "before html" insertion mode</a><li><a \
href=#the-before-head-insertion-mode>12.2.5.4.3 The "before head" insertion \
mode</a><li><a href=#parsing-main-inhead>12.2.5.4.4 The "in head" insertion \
mode</a><li><a href=#parsing-main-inheadnoscript>12.2.5.4.5 The "in head noscript" \
insertion mode</a><li><a href=#the-after-head-insertion-mode>12.2.5.4.6 The "after \
head" insertion mode</a><li><a href=#parsing-main-inbody>12.2.5.4.7 The "in body" \
insertion mode</a><li><a href=#parsing-main-incdata>12.2.5.4.8 The "tex  t" insertion \
mode</a><li><a href=#parsing-main-intable>12.2.5.4.9 The "in table" insertion \
mode</a><li><a href=#parsing-main-intabletext>12.2.5.4.10 The "in table text" \
insertion mode</a><li><a href=#parsing-main-incaption>12.2.5.4.11 The "in caption" \
insertion mode</a><li><a href=#parsing-main-incolgroup>12.2.5.4.12 The "in column \
group" insertion mode</a><li><a href=#parsing-main-intbody>12.2.5.4.13 The "in table \
body" insertion mode</a><li><a href=#parsing-main-intr>12.2.5.4.14 The "in row" \
insertion mode</a><li><a href=#parsing-main-intd>12.2.5.4.15 The "in cell" insertion \
mode</a><li><a href=#parsing-main-inselect>12.2.5.4.16 The "in select" insertion \
mode</a><li><a href=#parsing-main-inselectintable>12.2.5.4.17 The "in select in \
table" insertion mode</a><li><a href=#parsing-main-intemplate>12.2.5.4.18 The "in \
template" insertion mode</a><li><a href=#parsing-main-afterbody>12.2.5.4.19 The \
"after body" insertion mode</a><li><a href=#parsing-main-inframeset>12.2.5.4.20 Th  e \
"in frameset" insertion mode</a><li><a href=#parsing-main-afterframeset>12.2.5.4.21 \
The "after frameset" insertion mode</a><li><a \
href=#the-after-after-body-insertion-mode>12.2.5.4.22 The "after after body" \
insertion mode</a><li><a href=#the-after-after-frameset-insertion-mode>12.2.5.4.23 \
The "after after frameset" insertion mode</a></ol><li><a \
href=#parsing-main-inforeign>12.2.5.5 The rules for parsing tokens in foreign \
content</a></ol><li><a href=#the-end>12.2.6 The end</a><li><a \
href=#coercing-an-html-dom-into-an-infoset>12.2.7 Coercing an HTML DOM into an \
infoset</a><li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser>12.2.8 \
An introduction to error handling and strange cases in the parser</a><ol><li><a \
href=#misnested-tags:-b-i-/b-/i>12.2.8.1 Misnested tags: \
&lt;b>&lt;i>&lt;/b>&lt;/i></a><li><a href=#misnested-tags:-b-p-/b-/p>12.2.8.2 \
Misnested tags: &lt;b>&lt;p>&lt;/b>&lt;/p></a><li><a \
href=#unexpected-markup-in-tables>12.2.8.3 Unexpected ma  rkup in tables</a><li><a \
href=#scripts-that-modify-the-page-as-it-is-being-parsed>12.2.8.4 Scripts that modify \
the page as it is being parsed</a><li><a \
href=#the-execution-of-scripts-that-are-moving-across-multiple-documents>12.2.8.5 The \
execution of scripts that are moving across multiple documents</a><li><a \
href=#unclosed-formatting-elements>12.2.8.6 Unclosed formatting \
elements</a></ol></ol><li><a href=#serialising-html-fragments>12.3 Serialising HTML \
fragments</a><li><a href=#parsing-html-fragments>12.4 Parsing HTML \
fragments</a><li><a href=#named-character-references>12.5 Named character \
references</a></ol><li id=toc-the-xhtml-syntax><a href=#the-xhtml-syntax>13 The XHTML \
syntax</a><ol><li><a href=#writing-xhtml-documents>13.1 Writing XHTML \
documents</a><li><a href=#parsing-xhtml-documents>13.2 Parsing XHTML \
documents</a><li><a href=#serialising-xhtml-fragments>13.3 Serialising XHTML \
fragments</a><li><a href=#parsing-xhtml-fragments>13.4 Parsing XHTML \
fragments</a></ol>  <li id=toc-rendering><a href=#rendering>14 \
Rendering</a><ol><li><a href=#introduction-17>14.1 Introduction</a><li><a \
href=#the-css-user-agent-style-sheet-and-presentational-hints>14.2 The CSS user agent \
style sheet and presentational hints</a><li><a href=#non-replaced-elements>14.3 \
Non-replaced elements</a><ol><li><a href=#hidden-elements>14.3.1 Hidden \
elements</a><li><a href=#the-page>14.3.2 The page</a><li><a \
href=#flow-content-3>14.3.3 Flow content</a><li><a href=#phrasing-content-3>14.3.4 \
Phrasing content</a><li><a href=#bidi-rendering>14.3.5 Bidirectional text</a><li><a \
href=#quotes>14.3.6 Quotes</a><li><a href=#sections-and-headings>14.3.7 Sections and \
headings</a><li><a href=#lists>14.3.8 Lists</a><li><a href=#tables-2>14.3.9 \
Tables</a><li><a href=#margin-collapsing-quirks>14.3.10 Margin collapsing \
quirks</a><li><a href=#form-controls>14.3.11 Form controls</a><li><a \
href=#the-hr-element-2>14.3.12 The <code>hr</code> element</a><li><a \
href=#the-fieldset-and-legend-elem  ents>14.3.13 The <code>fieldset</code> and \
<code>legend</code> elements</a></ol><li><a href=#replaced-elements>14.4 Replaced \
elements</a><ol><li><a href=#embedded-content-rendering-rules>14.4.1 Embedded \
content</a><li><a href=#images-2>14.4.2 Images</a><li><a \
href=#attributes-for-embedded-content-and-images>14.4.3 Attributes for embedded \
content and images</a><li><a href=#image-maps-2>14.4.4 Image maps</a></ol><li><a \
href=#bindings>14.5 Bindings</a><ol><li><a href=#introduction-18>14.5.1 \
Introduction</a><li><a href=#the-button-element-2>14.5.2 The <code>button</code> \
element</a><li><a href=#the-details-element-2>14.5.3 The <code>details</code> \
element</a><li><a href=#the-input-element-as-a-text-entry-widget>14.5.4 The \
<code>input</code> element as a text entry widget</a><li><a \
href=#the-input-element-as-domain-specific-widgets>14.5.5 The <code>input</code> \
element as domain-specific widgets</a><li><a \
href=#the-input-element-as-a-range-control>14.5.6 The <code>input</code> el  ement as \
a range control</a><li><a href=#the-input-element-as-a-colour-well>14.5.7 The \
<code>input</code> element as a colour well</a><li><a \
href=#the-input-element-as-a-checkbox-and-radio-button-widgets>14.5.8 The \
<code>input</code> element as a checkbox and radio button widgets</a><li><a \
href=#the-input-element-as-a-file-upload-control>14.5.9 The <code>input</code> \
element as a file upload control</a><li><a \
href=#the-input-element-as-a-button>14.5.10 The <code>input</code> element as a \
button</a><li><a href=#the-marquee-element>14.5.11 The <code>marquee</code> \
element</a><li><a href=#the-meter-element-2>14.5.12 The <code>meter</code> \
element</a><li><a href=#the-progress-element-2>14.5.13 The <code>progress</code> \
element</a><li><a href=#the-select-element-2>14.5.14 The <code>select</code> \
element</a><li><a href=#the-textarea-element-2>14.5.15 The <code>textarea</code> \
element</a><li><a href=#the-keygen-element-2>14.5.16 The <code>keygen</code> \
element</a></ol><li><a href=#  frames-and-framesets>14.6 Frames and \
framesets</a><li><a href=#interactive-media>14.7 Interactive media</a><ol><li><a \
href=#links,-forms,-and-navigation>14.7.1 Links, forms, and navigation</a><li><a \
href=#the-title-attribute-2>14.7.2 The <code>title</code> attribute</a><li><a \
href=#editing-hosts>14.7.3 Editing hosts</a><li><a \
href=#text-rendered-in-native-user-interfaces>14.7.4 Text rendered in native user \
interfaces</a></ol><li><a href=#print-media>14.8 Print media</a><li><a \
href=#unstyled-xml-documents>14.9 Unstyled XML documents</a></ol><li \
id=toc-obsolete><a href=#obsolete>15 Obsolete features</a><ol><li><a \
href=#obsolete-but-conforming-features>15.1 Obsolete but conforming \
features</a><ol><li><a href=#warnings-for-obsolete-but-conforming-features>15.1.1 \
Warnings for obsolete but conforming features</a></ol><li><a \
href=#non-conforming-features>15.2 Non-conforming features</a><li><a \
href=#requirements-for-implementations>15.3 Requirements for \
implementations</a><ol><li><a  href=#the-applet-element>15.3.1 The \
<code>applet</code> element</a><li><a href=#the-marquee-element-2>15.3.2 The \
<code>marquee</code> element</a><li><a href=#frames>15.3.3 Frames</a><li><a \
href=#other-elements,-attributes-and-apis>15.3.4 Other elements, attributes and \
APIs</a></ol></ol><li id=toc-iana><a href=#iana>16 IANA considerations</a><ol><li><a \
href=#text/html>16.1 <code>text/html</code></a><li><a \
href=#multipart/x-mixed-replace>16.2 <code>multipart/x-mixed-replace</code></a><li><a \
href=#application/xhtml+xml>16.3 <code>application/xhtml+xml</code></a><li><a \
href=#application/x-www-form-urlencoded>16.4 \
<code>application/x-www-form-urlencoded</code></a><li><a \
href=#text/cache-manifest>16.5 <code>text/cache-manifest</code></a><li><a \
href=#text/ping>16.6 <code>text/ping</code></a><li><a \
href=#application/microdata+json>16.7 \
<code>application/microdata+json</code></a><li><a href=#ping-from>16.8 \
<code>Ping-From</code></a><li><a href=#ping-to>16.9 <code>Ping-To</code></a><  li><a \
href=#web+-scheme-prefix>16.10 <code>web+</code> scheme prefix</a></ol><li \
id=toc-index><a href=#index>Index</a><ol><li><a href=#elements-3>Elements</a><li><a \
href=#element-content-categories>Element content categories</a><li><a \
href=#attributes-3>Attributes</a><li><a href=#element-interfaces>Element \
Interfaces</a><li><a href=#all-interfaces>All Interfaces</a><li><a \
href=#events-2>Events</a><li><a href=#mime-types-2>MIME Types</a></ol><li \
id=toc-references><a href=#references>References</a><li id=toc-acknowledgments><a \
href=#acknowledgments>Acknowledgements</a></ol> +  content that doesn't have a \
DOM</a><li><a href=#scroll-to-fragid>7.6.9 Navigating to a fragment \
identifier</a><li><a href=#history-traversal>7.6.10 History traversal</a><ol><li><a \
href=#the-popstateevent-interface>7.6.10.1 The <code>PopStateEvent</code> \
interface</a><li><a href=#the-hashchangeevent-interface>7.6.10.2 The \
<code>HashChangeEvent</code> interface</a><li><a \
href=#the-pagetransitionevent-interface>7.6.10.3 The <code>PageTransitionEvent</code> \
interface</a></ol><li><a href=#unloading-documents>7.6.11 Unloading \
documents</a><ol><li><a href=#the-beforeunloadevent-interface>7.6.11.1 The \
<code>BeforeUnloadEvent</code> interface</a></ol><li><a \
href=#aborting-a-document-load>7.6.12 Aborting a document load</a></ol><li><a \
href=#offline>7.7 Offline Web applications</a><ol><li><a href=#introduction-11>7.7.1 \
Introduction</a><ol><li><a \
href=#supporting-offline-caching-for-legacy-applications>7.7.1.1 Supporting offline \
caching for legacy applications</a><li><a href=#appcache  events>7.7.1.2 Event \
summary</a></ol><li><a href=#appcache>7.7.2 Application caches</a><li><a \
href=#manifests>7.7.3 The cache manifest syntax</a><ol><li><a \
href=#some-sample-manifests>7.7.3.1 Some sample manifests</a><li><a \
href=#writing-cache-manifests>7.7.3.2 Writing cache manifests</a><li><a \
href=#parsing-cache-manifests>7.7.3.3 Parsing cache manifests</a></ol><li><a \
href=#downloading-or-updating-an-application-cache>7.7.4 Downloading or updating an \
application cache</a><li><a href=#the-application-cache-selection-algorithm>7.7.5 The \
application cache selection algorithm</a><li><a href=#changesToNetworkingModel>7.7.6 \
Changes to the networking model</a><li><a href=#expiring-application-caches>7.7.7 \
Expiring application caches</a><li><a href=#disk-space>7.7.8 Disk space</a><li><a \
href=#security-concerns-with-offline-applications-caches>7.7.9 Security concerns with \
offline applications caches</a><li><a href=#application-cache-api>7.7.10 Application \
cache API</a><li><a href=#  navigator.online>7.7.11 Browser state</a></ol></ol><li \
id=toc-webappapis><a href=#webappapis>8 Web application APIs</a><ol><li><a \
href=#scripting>8.1 Scripting</a><ol><li><a href=#introduction-12>8.1.1 \
Introduction</a><li><a href=#enabling-and-disabling-scripting>8.1.2 Enabling and \
disabling scripting</a><li><a href=#processing-model-8>8.1.3 Processing \
model</a><ol><li><a href=#definitions-2>8.1.3.1 Definitions</a><li><a \
href=#script-settings-for-browsing-contexts>8.1.3.2 Script settings for browsing \
contexts</a><li><a href=#calling-scripts>8.1.3.3 Calling scripts</a><li><a \
href=#creating-scripts>8.1.3.4 Creating scripts</a><li><a \
href=#killing-scripts>8.1.3.5 Killing scripts</a><li><a \
href=#runtime-script-errors>8.1.3.6 Runtime script errors</a><ol><li><a \
href=#runtime-script-errors-in-documents>8.1.3.6.1 Runtime script errors in \
documents</a><li><a href=#the-errorevent-interface>8.1.3.6.2 The \
<code>ErrorEvent</code> interface</a></ol></ol><li><a href=#event-loops>8.1.4 Eve  nt \
loops</a><ol><li><a href=#definitions-3>8.1.4.1 Definitions</a><li><a \
href=#processing-model-9>8.1.4.2 Processing model</a><li><a \
href=#generic-task-sources>8.1.4.3 Generic task sources</a></ol><li><a \
href=#events>8.1.5 Events</a><ol><li><a href=#event-handler-attributes>8.1.5.1 Event \
handlers</a><li><a href=#event-handlers-on-elements,-document-objects,-and-window-objects>8.1.5.2 \
Event handlers on elements, <code>Document</code> objects, and <code>Window</code> \
objects</a><ol><li><a href=#idl-definitions>8.1.5.2.1 IDL definitions</a></ol><li><a \
href=#event-firing>8.1.5.3 Event firing</a><li><a \
href=#events-and-the-window-object>8.1.5.4 Events and the <code>Window</code> \
object</a></ol></ol><li><a href=#atob>8.2 Base64 utility methods</a><li><a \
href=#dynamic-markup-insertion>8.3 Dynamic markup insertion</a><ol><li><a \
href=#opening-the-input-stream>8.3.1 Opening the input stream</a><li><a \
href=#closing-the-input-stream>8.3.2 Closing the input stream</a><li><a href=#documen \
t.write()>8.3.3 <code>document.write()</code></a><li><a \
href=#document.writeln()>8.3.4 <code>document.writeln()</code></a></ol><li><a \
href=#timers>8.4 Timers</a><li><a href=#user-prompts>8.5 User prompts</a><ol><li><a \
href=#simple-dialogs>8.5.1 Simple dialogs</a><li><a href=#printing>8.5.2 \
Printing</a><li><a href=#dialogs-implemented-using-separate-documents>8.5.3 Dialogs \
 acy</a><li><a href=#sample-handler-impl>8.6.1.3.2 Sample user \
interface</a></ol><li><a href=#manually-releasing-the-storage-mutex>8.6.1.4 Manually \
releasing the storage mutex</a><li><a href=#plugins-2>8.6.1.5 Plugins</a></ol><li><a \
href=#the-external-interface>8.6.2 The <code>External</code> interface</a></ol><li><a \
href=#images>8.7 Images</a><li><a href=#animation-frames>8.8 Animation \
Frames</a></ol><li id=toc-comms><a href=#comms>9 Communication</a><ol><li><a \
href=#the-messageevent-interfaces>9.1 The <code>MessageEvent</code> \
interfaces</a><li><a href=#server-sent-events>9.2 Server-sent events</a><ol><li><a \
href=#server-sent-events-intro>9.2.1 Introduction</a><li><a \
href=#the-eventsource-interface>9.2.2 The <code>EventSource</code> \
interface</a><li><a href=#processing-model-10>9.2.3 Processing model</a><li><a \
href=#parsing-an-event-stream>9.2.4 Parsing an event stream</a><li><a \
href=#event-stream-interpretation>9.2.5 Interpreting an event stream</a><li><a \
href=#authoring-n  otes>9.2.6 Authoring notes</a><li><a href=#eventsource-push>9.2.7 \
Connectionless push and other features</a><li><a href=#garbage-collection-2>9.2.8 \
Garbage collection</a><li><a href=#implementation-advice>9.2.9 Implementation \
advice</a><li><a href=#iana-considerations>9.2.10 IANA considerations</a><ol><li><a \
href=#text/event-stream>9.2.10.1 <code>text/event-stream</code></a><li><a \
href=#last-event-id>9.2.10.2 <code>Last-Event-ID</code></a></ol></ol><li><a \
href=#network>9.3 Web sockets</a><ol><li><a href=#network-intro>9.3.1 \
Introduction</a><li><a href=#the-websocket-interface>9.3.2 The <code>WebSocket</code> \
interface</a><li><a href=#feedback-from-the-protocol>9.3.3 Feedback from the \
protocol</a><li><a href=#ping-and-pong-frames>9.3.4 Ping and Pong frames</a><li><a \
href=#parsing-websocket-urls>9.3.5 Parsing WebSocket URLs</a><li><a \
href=#the-closeevent-interfaces>9.3.6 The <code>CloseEvent</code> \
interfaces</a><li><a href=#garbage-collection-3>9.3.7 Garbage collection</a></o  \
l><li><a href=#web-messaging>9.4 Cross-document messaging</a><ol><li><a \
href=#introduction-13>9.4.1 Introduction</a><li><a href=#security-postmsg>9.4.2 \
Security</a><ol><li><a href=#authors>9.4.2.1 Authors</a><li><a \
href=#user-agents>9.4.2.2 User agents</a></ol><li><a href=#posting-messages>9.4.3 \
Posting messages</a></ol><li><a href=#channel-messaging>9.5 Channel \
messaging</a><ol><li><a href=#introduction-14>9.5.1 Introduction</a><ol><li><a \
href=#examples-5>9.5.1.1 Examples</a><li><a \
href=#ports-as-the-basis-of-an-object-capability-model-on-the-web>9.5.1.2 Ports as \
the basis of an object-capability model on the Web</a><li><a \
href=#ports-as-the-basis-of-abstracting-out-service-implementations>9.5.1.3 Ports as \
the basis of abstracting out service implementations</a></ol><li><a \
href=#message-channels>9.5.2 Message channels</a><li><a href=#message-ports>9.5.3 \
Message ports</a><li><a href=#broadcasting-to-many-ports>9.5.4 Broadcasting to many \
ports</a><li><a href=#ports-and-garbag  e-collection>9.5.5 Ports and garbage \
collection</a></ol><li><a href=#broadcasting-to-other-browsing-contexts>9.6 \
Broadcasting to other browsing contexts</a></ol><li id=toc-workers><a \
href=#workers>10 Web workers</a><ol><li><a href=#introduction-15>10.1 \
Introduction</a><ol><li><a href=#scope-2>10.1.1 Scope</a><li><a \
href=#examples-6>10.1.2 Examples</a><ol><li><a \
href=#a-background-number-crunching-worker>10.1.2.1 A background number-crunching \
worker</a><li><a href=#worker-used-for-background-i/o>10.1.2.2 Worker used for \
background I/O</a><li><a href=#shared-workers-introduction>10.1.2.3 Shared workers \
introduction</a><li><a href=#shared-state-using-a-shared-worker>10.1.2.4 Shared state \
using a shared worker</a><li><a href=#delegation>10.1.2.5 Delegation</a></ol><li><a \
href=#tutorials>10.1.3 Tutorials</a><ol><li><a \
href=#creating-a-dedicated-worker>10.1.3.1 Creating a dedicated worker</a><li><a \
href=#communicating-with-a-dedicated-worker>10.1.3.2 Communicating with a dedicated  \
worker</a><li><a href=#shared-workers>10.1.3.3 Shared workers</a></ol></ol><li><a \
href=#infrastructure-2>10.2 Infrastructure</a><ol><li><a \
href=#the-global-scope>10.2.1 The global scope</a><ol><li><a \
href=#the-workerglobalscope-common-interface>10.2.1.1 The \
<code>WorkerGlobalScope</code> common interface</a><li><a \
href=#dedicated-workers-and-the-dedicatedworkerglobalscope-interface>10.2.1.2 \
Dedicated workers and the <code>DedicatedWorkerGlobalScope</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworkerglobalscope-interface>10.2.1.3 Shared \
workers and the <code>SharedWorkerGlobalScope</code> interface</a></ol><li><a \
href=#worker-event-loop>10.2.2 The event loop</a><li><a \
href="#the-worker's-lifetime">10.2.3 The worker's lifetime</a><li><a \
href=#processing-model-11>10.2.4 Processing model</a><li><a \
href=#runtime-script-errors-2>10.2.5 Runtime script errors</a><li><a \
href=#creating-workers>10.2.6 Creating workers</a><ol><li><a \
href=#the-abstractworker-abstract-in  terface>10.2.6.1 The \
<code>AbstractWorker</code> abstract interface</a><li><a \
href=#script-settings-for-workers>10.2.6.2 Script settings for workers</a><li><a \
href=#dedicated-workers-and-the-worker-interface>10.2.6.3 Dedicated workers and the \
<code>Worker</code> interface</a><li><a \
href=#shared-workers-and-the-sharedworker-interface>10.2.6.4 Shared workers and the \
<code>SharedWorker</code> interface</a></ol></ol><li><a \
href=#apis-available-to-workers>10.3 APIs available to workers</a><ol><li><a \
href=#importing-scripts-and-libraries>10.3.1 Importing scripts and \
libraries</a><li><a href=#the-workernavigator-object>10.3.2 The \
<code>WorkerNavigator</code> object</a><li><a href=#worker-locations>10.3.3 Worker \
locations</a></ol></ol><li id=toc-webstorage><a href=#webstorage>11 Web \
storage</a><ol><li><a href=#introduction-16>11.1 Introduction</a><li><a \
href=#storage>11.2 The API</a><ol><li><a href=#the-storage-interface>11.2.1 The \
<code>Storage</code> interface</a><li><a href=#the-  sessionstorage-attribute>11.2.2 \
The <code>sessionStorage</code> attribute</a><li><a \
href=#the-localstorage-attribute>11.2.3 The <code>localStorage</code> \
attribute</a><li><a href=#the-storage-event>11.2.4 The <code>storage</code> \
event</a><ol><li><a href=#the-storageevent-interface>11.2.4.1 The \
<code>StorageEvent</code> interface</a></ol><li><a href=#threads>11.2.5 \
Threads</a></ol><li><a href=#disk-space-2>11.3 Disk space</a><li><a \
href=#privacy>11.4 Privacy</a><ol><li><a href=#user-tracking>11.4.1 User \
tracking</a><li><a href=#sensitivity-of-data>11.4.2 Sensitivity of \
data</a></ol><li><a href=#security-storage>11.5 Security</a><ol><li><a \
href=#dns-spoofing-attacks>11.5.1 DNS spoofing attacks</a><li><a \
href=#cross-directory-attacks>11.5.2 Cross-directory attacks</a><li><a \
href=#implementation-risks>11.5.3 Implementation risks</a></ol></ol><li \
id=toc-syntax><a href=#syntax>12 The HTML syntax</a><ol><li><a href=#writing>12.1 \
Writing HTML documents</a><ol><li><a href=#the-docty  pe>12.1.1 The DOCTYPE</a><li><a \
href=#elements-2>12.1.2 Elements</a><ol><li><a href=#start-tags>12.1.2.1 Start \
tags</a><li><a href=#end-tags>12.1.2.2 End tags</a><li><a href=#attributes-2>12.1.2.3 \
Attributes</a><li><a href=#optional-tags>12.1.2.4 Optional tags</a><li><a \
href=#element-restrictions>12.1.2.5 Restrictions on content models</a><li><a \
href=#cdata-rcdata-restrictions>12.1.2.6 Restrictions on the contents of raw text and \
escapable raw text elements</a></ol><li><a href=#text-2>12.1.3 Text</a><ol><li><a \
href=#newlines>12.1.3.1 Newlines</a></ol><li><a href=#character-references>12.1.4 \
Character references</a><li><a href=#cdata-sections>12.1.5 CDATA sections</a><li><a \
href=#comments>12.1.6 Comments</a></ol><li><a href=#parsing>12.2 Parsing HTML \
documents</a><ol><li><a href=#overview-of-the-parsing-model>12.2.1 Overview of the \
parsing model</a><li><a href=#the-input-byte-stream>12.2.2 The input byte \
stream</a><ol><li><a href=#parsing-with-a-known-character-encoding>12.2.  2.1 Parsing \
with a known character encoding</a><li><a \
href=#determining-the-character-encoding>12.2.2.2 Determining the character \
encoding</a><li><a href=#character-encodings>12.2.2.3 Character encodings</a><li><a \
href=#changing-the-encoding-while-parsing>12.2.2.4 Changing the encoding while \
parsing</a><li><a href=#preprocessing-the-input-stream>12.2.2.5 Preprocessing the \
input stream</a></ol><li><a href=#parse-state>12.2.3 Parse state</a><ol><li><a \
href=#the-insertion-mode>12.2.3.1 The insertion mode</a><li><a \
href=#the-stack-of-open-elements>12.2.3.2 The stack of open elements</a><li><a \
href=#the-list-of-active-formatting-elements>12.2.3.3 The list of active formatting \
elements</a><li><a href=#the-element-pointers>12.2.3.4 The element pointers</a><li><a \
href=#other-parsing-state-flags>12.2.3.5 Other parsing state flags</a></ol><li><a \
href=#tokenization>12.2.4 Tokenization</a><ol><li><a href=#data-state>12.2.4.1 Data \
state</a><li><a href=#character-reference-in-data-state>1  2.2.4.2 Character \
reference in data state</a><li><a href=#rcdata-state>12.2.4.3 RCDATA state</a><li><a \
href=#character-reference-in-rcdata-state>12.2.4.4 Character reference in RCDATA \
state</a><li><a href=#rawtext-state>12.2.4.5 RAWTEXT state</a><li><a \
href=#script-data-state>12.2.4.6 Script data state</a><li><a \
href=#plaintext-state>12.2.4.7 PLAINTEXT state</a><li><a \
href=#tag-open-state>12.2.4.8 Tag open state</a><li><a \
href=#end-tag-open-state>12.2.4.9 End tag open state</a><li><a \
href=#tag-name-state>12.2.4.10 Tag name state</a><li><a \
href=#rcdata-less-than-sign-state>12.2.4.11 RCDATA less-than sign state</a><li><a \
href=#rcdata-end-tag-open-state>12.2.4.12 RCDATA end tag open state</a><li><a \
href=#rcdata-end-tag-name-state>12.2.4.13 RCDATA end tag name state</a><li><a \
href=#rawtext-less-than-sign-state>12.2.4.14 RAWTEXT less-than sign state</a><li><a \
href=#rawtext-end-tag-open-state>12.2.4.15 RAWTEXT end tag open state</a><li><a \
href=#rawtext-end-tag-name-state>12.2.4.16  RAWTEXT end tag name state</a><li><a \
href=#script-data-less-than-sign-state>12.2.4.17 Script data less-than sign \
state</a><li><a href=#script-data-end-tag-open-state>12.2.4.18 Script data end tag \
open state</a><li><a href=#script-data-end-tag-name-state>12.2.4.19 Script data end \
tag name state</a><li><a href=#script-data-escape-start-state>12.2.4.20 Script data \
escape start state</a><li><a href=#script-data-escape-start-dash-state>12.2.4.21 \
Script data escape start dash state</a><li><a \
href=#script-data-escaped-state>12.2.4.22 Script data escaped state</a><li><a \
href=#script-data-escaped-dash-state>12.2.4.23 Script data escaped dash \
state</a><li><a href=#script-data-escaped-dash-dash-state>12.2.4.24 Script data \
escaped dash dash state</a><li><a \
href=#script-data-escaped-less-than-sign-state>12.2.4.25 Script data escaped \
less-than sign state</a><li><a href=#script-data-escaped-end-tag-open-state>12.2.4.26 \
Script data escaped end tag open state</a><li><a href=#script-data-esc  \
aped-end-tag-name-state>12.2.4.27 Script data escaped end tag name state</a><li><a \
href=#script-data-double-escape-start-state>12.2.4.28 Script data double escape start \
state</a><li><a href=#script-data-double-escaped-state>12.2.4.29 Script data double \
escaped state</a><li><a href=#script-data-double-escaped-dash-state>12.2.4.30 Script \
data double escaped dash state</a><li><a \
href=#script-data-double-escaped-dash-dash-state>12.2.4.31 Script data double escaped \
dash dash state</a><li><a \
href=#script-data-double-escaped-less-than-sign-state>12.2.4.32 Script data double \
escaped less-than sign state</a><li><a \
href=#script-data-double-escape-end-state>12.2.4.33 Script data double escape end \
state</a><li><a href=#before-attribute-name-state>12.2.4.34 Before attribute name \
state</a><li><a href=#attribute-name-state>12.2.4.35 Attribute name state</a><li><a \
href=#after-attribute-name-state>12.2.4.36 After attribute name state</a><li><a \
href=#before-attribute-value-state>12.2.4.37 Bef  ore attribute value state</a><li><a \
href=#attribute-value-(double-quoted)-state>12.2.4.38 Attribute value (double-quoted) \
state</a><li><a href=#attribute-value-(single-quoted)-state>12.2.4.39 Attribute value \
(single-quoted) state</a><li><a href=#attribute-value-(unquoted)-state>12.2.4.40 \
Attribute value (unquoted) state</a><li><a \
href=#character-reference-in-attribute-value-state>12.2.4.41 Character reference in \
attribute value state</a><li><a href=#after-attribute-value-(quoted)-state>12.2.4.42 \
After attribute value (quoted) state</a><li><a \
href=#self-closing-start-tag-state>12.2.4.43 Self-closing start tag state</a><li><a \
href=#bogus-comment-state>12.2.4.44 Bogus comment state</a><li><a \
href=#markup-declaration-open-state>12.2.4.45 Markup declaration open state</a><li><a \
href=#comment-start-state>12.2.4.46 Comment start state</a><li><a \
href=#comment-start-dash-state>12.2.4.47 Comment start dash state</a><li><a \
href=#comment-state>12.2.4.48 Comment state</a><li><a href=#com  \
ment-end-dash-state>12.2.4.49 Comment end dash state</a><li><a \
href=#comment-end-state>12.2.4.50 Comment end state</a><li><a \
href=#comment-end-bang-state>12.2.4.51 Comment end bang state</a><li><a \
href=#doctype-state>12.2.4.52 DOCTYPE state</a><li><a \
href=#before-doctype-name-state>12.2.4.53 Before DOCTYPE name state</a><li><a \
href=#doctype-name-state>12.2.4.54 DOCTYPE name state</a><li><a \
href=#after-doctype-name-state>12.2.4.55 After DOCTYPE name state</a><li><a \
href=#after-doctype-public-keyword-state>12.2.4.56 After DOCTYPE public keyword \
state</a><li><a href=#before-doctype-public-identifier-state>12.2.4.57 Before DOCTYPE \
public identifier state</a><li><a \
href=#doctype-public-identifier-(double-quoted)-state>12.2.4.58 DOCTYPE public \
identifier (double-quoted) state</a><li><a \
href=#doctype-public-identifier-(single-quoted)-state>12.2.4.59 DOCTYPE public \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-public-identifier-state>12.2.4.60 After DOCTYPE public i  \
dentifier state</a><li><a \
href=#between-doctype-public-and-system-identifiers-state>12.2.4.61 Between DOCTYPE \
public and system identifiers state</a><li><a \
href=#after-doctype-system-keyword-state>12.2.4.62 After DOCTYPE system keyword \
state</a><li><a href=#before-doctype-system-identifier-state>12.2.4.63 Before DOCTYPE \
system identifier state</a><li><a \
href=#doctype-system-identifier-(double-quoted)-state>12.2.4.64 DOCTYPE system \
identifier (double-quoted) state</a><li><a \
href=#doctype-system-identifier-(single-quoted)-state>12.2.4.65 DOCTYPE system \
identifier (single-quoted) state</a><li><a \
href=#after-doctype-system-identifier-state>12.2.4.66 After DOCTYPE system identifier \
state</a><li><a href=#bogus-doctype-state>12.2.4.67 Bogus DOCTYPE state</a><li><a \
 <a href=#creating-and-inserting-nodes>12.2.5.1 Creating and inserting \
nodes</a><li><a href=#parsing-elements-that-contain-only-text>12.2.5.2 Parsing \
elements that contain only text</a><li><a \
href=#closing-elements-that-have-implied-end-tags>12.2.5.3 Closing elements that have \
implied end tags</a><li><a href=#parsing-main-inhtml>12.2.5.4 The rules for parsing \
tokens in HTML content</a><ol><li><a href=#the-initial-insertion-mode>12.2.5.4.1 The \
"initial" insertion mode</a><li><a href=#the-before-html-insertion-mode>12.2.5.4.2 \
The "before html" insertion mode</a><li><a \
href=#the-before-head-insertion-mode>12.2.5.4.3 The "before head" insertion \
mode</a><li><a href=#parsing-main-inhead>12.2.5.4.4 The "in head" insertion \
mode</a><li><a href=#parsing-main-inheadnoscript>12.2.5.4.5 The "in head noscript" \
insertion mode</a><li><a href=#the-after-head-insertion-mode>12.2.5.4.6 The "after \
head" insertion mode</a><li><a href=#parsing-main-inbody>12.2.5.4.7 The "in body" \
insertion mode</a  ><li><a href=#parsing-main-incdata>12.2.5.4.8 The "text" insertion \
mode</a><li><a href=#parsing-main-intable>12.2.5.4.9 The "in table" insertion \
mode</a><li><a href=#parsing-main-intabletext>12.2.5.4.10 The "in table text" \
insertion mode</a><li><a href=#parsing-main-incaption>12.2.5.4.11 The "in caption" \
insertion mode</a><li><a href=#parsing-main-incolgroup>12.2.5.4.12 The "in column \
group" insertion mode</a><li><a href=#parsing-main-intbody>12.2.5.4.13 The "in table \
body" insertion mode</a><li><a href=#parsing-main-intr>12.2.5.4.14 The "in row" \
insertion mode</a><li><a href=#parsing-main-intd>12.2.5.4.15 The "in cell" insertion \
mode</a><li><a href=#parsing-main-inselect>12.2.5.4.16 The "in select" insertion \
mode</a><li><a href=#parsing-main-inselectintable>12.2.5.4.17 The "in select in \
table" insertion mode</a><li><a href=#parsing-main-intemplate>12.2.5.4.18 The "in \
template" insertion mode</a><li><a href=#parsing-main-afterbody>12.2.5.4.19 The \
"after body" insertion mode<  /a><li><a href=#parsing-main-inframeset>12.2.5.4.20 The \
"in frameset" insertion mode</a><li><a href=#parsing-main-afterframeset>12.2.5.4.21 \
The "after frameset" insertion mode</a><li><a \
href=#the-after-after-body-insertion-mode>12.2.5.4.22 The "after after body" \
insertion mode</a><li><a href=#the-after-after-frameset-insertion-mode>12.2.5.4.23 \
The "after after frameset" insertion mode</a></ol><li><a \
href=#parsing-main-inforeign>12.2.5.5 The rules for parsing tokens in foreign \
content</a></ol><li><a href=#the-end>12.2.6 The end</a><li><a \
href=#coercing-an-html-dom-into-an-infoset>12.2.7 Coercing an HTML DOM into an \
infoset</a><li><a href=#an-introduction-to-error-handling-and-strange-cases-in-the-parser>12.2.8 \
An introduction to error handling and strange cases in the parser</a><ol><li><a \
href=#misnested-tags:-b-i-/b-/i>12.2.8.1 Misnested tags: \
&lt;b>&lt;i>&lt;/b>&lt;/i></a><li><a href=#misnested-tags:-b-p-/b-/p>12.2.8.2 \
Misnested tags: &lt;b>&lt;p>&lt;/b>&lt;/p></a><li><a hr  \
ef=#unexpected-markup-in-tables>12.2.8.3 Unexpected markup in tables</a><li><a \
href=#scripts-that-modify-the-page-as-it-is-being-parsed>12.2.8.4 Scripts that modify \
the page as it is being parsed</a><li><a \
href=#the-execution-of-scripts-that-are-moving-across-multiple-documents>12.2.8.5 The \
execution of scripts that are moving across multiple documents</a><li><a \
href=#unclosed-formatting-elements>12.2.8.6 Unclosed formatting \
elements</a></ol></ol><li><a href=#serialising-html-fragments>12.3 Serialising HTML \
fragments</a><li><a href=#parsing-html-fragments>12.4 Parsing HTML \
fragments</a><li><a href=#named-character-references>12.5 Named character \
references</a></ol><li id=toc-the-xhtml-syntax><a href=#the-xhtml-syntax>13 The XHTML \
syntax</a><ol><li><a href=#writing-xhtml-documents>13.1 Writing XHTML \
documents</a><li><a href=#parsing-xhtml-documents>13.2 Parsing XHTML \
documents</a><li><a href=#serialising-xhtml-fragments>13.3 Serialising XHTML \
                fragments</a><li><a href=#parsing
 -xhtml-fragments>13.4 Parsing XHTML fragments</a></ol><li id=toc-rendering><a \
href=#rendering>14 Rendering</a><ol><li><a href=#introduction-17>14.1 \
Introduction</a><li><a \
href=#the-css-user-agent-style-sheet-and-presentational-hints>14.2 The CSS user agent \
style sheet and presentational hints</a><li><a href=#non-replaced-elements>14.3 \
Non-replaced elements</a><ol><li><a href=#hidden-elements>14.3.1 Hidden \
elements</a><li><a href=#the-page>14.3.2 The page</a><li><a \
href=#flow-content-3>14.3.3 Flow content</a><li><a href=#phrasing-content-3>14.3.4 \
Phrasing content</a><li><a href=#bidi-rendering>14.3.5 Bidirectional text</a><li><a \
href=#quotes>14.3.6 Quotes</a><li><a href=#sections-and-headings>14.3.7 Sections and \
headings</a><li><a href=#lists>14.3.8 Lists</a><li><a href=#tables-2>14.3.9 \
Tables</a><li><a href=#margin-collapsing-quirks>14.3.10 Margin collapsing \
quirks</a><li><a href=#form-controls>14.3.11 Form controls</a><li><a \
href=#the-hr-element-2>14.3.12 The <code>hr</code  > element</a><li><a \
href=#the-fieldset-and-legend-elements>14.3.13 The <code>fieldset</code> and \
<code>legend</code> elements</a></ol><li><a href=#replaced-elements>14.4 Replaced \
elements</a><ol><li><a href=#embedded-content-rendering-rules>14.4.1 Embedded \
content</a><li><a href=#images-2>14.4.2 Images</a><li><a \
href=#attributes-for-embedded-content-and-images>14.4.3 Attributes for embedded \
content and images</a><li><a href=#image-maps-2>14.4.4 Image maps</a></ol><li><a \
href=#bindings>14.5 Bindings</a><ol><li><a href=#introduction-18>14.5.1 \
Introduction</a><li><a href=#the-button-element-2>14.5.2 The <code>button</code> \
element</a><li><a href=#the-details-element-2>14.5.3 The <code>details</code> \
element</a><li><a href=#the-input-element-as-a-text-entry-widget>14.5.4 The \
<code>input</code> element as a text entry widget</a><li><a \
href=#the-input-element-as-domain-specific-widgets>14.5.5 The <code>input</code> \
element as domain-specific widgets</a><li><a href=#the-input-eleme  \
nt-as-a-range-control>14.5.6 The <code>input</code> element as a range \
control</a><li><a href=#the-input-element-as-a-colour-well>14.5.7 The \
<code>input</code> element as a colour well</a><li><a \
href=#the-input-element-as-a-checkbox-and-radio-button-widgets>14.5.8 The \
<code>input</code> element as a checkbox and radio button widgets</a><li><a \
href=#the-input-element-as-a-file-upload-control>14.5.9 The <code>input</code> \
element as a file upload control</a><li><a \
href=#the-input-element-as-a-button>14.5.10 The <code>input</code> element as a \
button</a><li><a href=#the-marquee-element>14.5.11 The <code>marquee</code> \
element</a><li><a href=#the-meter-element-2>14.5.12 The <code>meter</code> \
element</a><li><a href=#the-progress-element-2>14.5.13 The <code>progress</code> \
element</a><li><a href=#the-select-element-2>14.5.14 The <code>select</code> \
element</a><li><a href=#the-textarea-element-2>14.5.15 The <code>textarea</code> \
element</a><li><a href=#the-keygen-element-2>14.5.16  The <code>keygen</code> \
element</a></ol><li><a href=#frames-and-framesets>14.6 Frames and framesets</a><li><a \
href=#interactive-media>14.7 Interactive media</a><ol><li><a \
href=#links,-forms,-and-navigation>14.7.1 Links, forms, and navigation</a><li><a \
href=#the-title-attribute-2>14.7.2 The <code>title</code> attribute</a><li><a \
href=#editing-hosts>14.7.3 Editing hosts</a><li><a \
href=#text-rendered-in-native-user-interfaces>14.7.4 Text rendered in native user \
interfaces</a></ol><li><a href=#print-media>14.8 Print media</a><li><a \
href=#unstyled-xml-documents>14.9 Unstyled XML documents</a></ol><li \
id=toc-obsolete><a href=#obsolete>15 Obsolete features</a><ol><li><a \
href=#obsolete-but-conforming-features>15.1 Obsolete but conforming \
features</a><ol><li><a href=#warnings-for-obsolete-but-conforming-features>15.1.1 \
Warnings for obsolete but conforming features</a></ol><li><a \
href=#non-conforming-features>15.2 Non-conforming features</a><li><a \
href=#requirements-for-implementatio  ns>15.3 Requirements for \
implementations</a><ol><li><a href=#the-applet-element>15.3.1 The <code>applet</code> \
element</a><li><a href=#the-marquee-element-2>15.3.2 The <code>marquee</code> \
element</a><li><a href=#frames>15.3.3 Frames</a><li><a \
href=#other-elements,-attributes-and-apis>15.3.4 Other elements, attributes and \
APIs</a></ol></ol><li id=toc-iana><a href=#iana>16 IANA considerations</a><ol><li><a \
href=#text/html>16.1 <code>text/html</code></a><li><a \
href=#multipart/x-mixed-replace>16.2 <code>multipart/x-mixed-replace</code></a><li><a \
href=#application/xhtml+xml>16.3 <code>application/xhtml+xml</code></a><li><a \
href=#application/x-www-form-urlencoded>16.4 \
<code>application/x-www-form-urlencoded</code></a><li><a \
href=#text/cache-manifest>16.5 <code>text/cache-manifest</code></a><li><a \
href=#text/ping>16.6 <code>text/ping</code></a><li><a \
href=#application/microdata+json>16.7 \
<code>application/microdata+json</code></a><li><a href=#ping-from>16.8 \
<code>Ping-From</code><  /a><li><a href=#ping-to>16.9 <code>Ping-To</code></a><li><a \
href=#web+-scheme-prefix>16.10 <code>web+</code> scheme prefix</a></ol><li \
id=toc-index><a href=#index>Index</a><ol><li><a href=#elements-3>Elements</a><li><a \
href=#element-content-categories>Element content categories</a><li><a \
href=#attributes-3>Attributes</a><li><a href=#element-interfaces>Element \
Interfaces</a><li><a href=#all-interfaces>All Interfaces</a><li><a \
href=#events-2>Events</a><li><a href=#mime-types-2>MIME Types</a></ol><li \
id=toc-references><a href=#references>References</a><li id=toc-acknowledgments><a \
href=#acknowledgments>Acknowledgements</a></ol>  
   
 
@@ -611,7 +611,7 @@
 
 
 
-  <h4 id=compliance-with-other-specifications>1.7.2 Compliance with other \
specifications</h4> +  <h4 id=compliance-with-other-specifications>1.7.2 Compliance \
with other specifications</h4><div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27367" title="Despite \
difficulties with multithreading there should be some function in scripting/search \
engine re [...]">27367</a></div>  
   <p><i>This section is non-normative.</i></p>
 
@@ -1130,7 +1130,7 @@
 
 
 
-  <h4 id=common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common \
pitfalls to avoid when using the scripting APIs</h4> +  <h4 \
id=common-pitfalls-to-avoid-when-using-the-scripting-apis>1.11.2 Common pitfalls to \
avoid when using the scripting APIs</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27316" \
title="This example is not clear enough to understand.">27316</a></div>  
   <p><i>This section is non-normative.</i></p>
 
@@ -2183,7 +2183,7 @@
   
 
 
-  <h4 id=dependencies>2.2.2 Dependencies</h4>
+  <h4 id=dependencies>2.2.2 Dependencies</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27343" \
title="i dont know">27343</a></div>  
   <p>This specification relies on several other underlying specifications.</p>
 
@@ -2475,6 +2475,9 @@
     <ul class=brief><li>The <dfn id=top-layer>top layer</dfn> concept<li><dfn \
                id=dom-element-requestfullscreen><code>requestFullscreen()</code></dfn>
                
      <li>The <dfn id=fullscreen-enabled-flag>fullscreen enabled flag</dfn><li>The \
<dfn id=fully-exit-fullscreen>fully exit fullscreen</dfn> algorithm</ul>  
+    <p>The <cite>High Resolution Time</cite> specification provides the
+    <dfn id=performance><code>Performance</code></dfn> object's <dfn \
id=dom-performance-now><code>now()</code></dfn> method. <a \
href=#refsHRT>[HRT]</a></p> +
    <dt>File API<dd>
 
     <p>This specification uses the following features defined in the File API \
specification: <a href=#refsFILEAPI>[FILEAPI]</a></p> @@ -3008,7 +3011,7 @@
 
   <p>When a user agent is to <dfn id=strip-leading-and-trailing-whitespace>strip \
leading and trailing whitespace</dfn> from a string, the  user agent must remove all \
<a href=#space-character id=common-parser-idioms:space-character-2>space \
                characters</a> that are at the
-  start or end of the string.</p>
+  start or end of the string.<div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27348" title="containers seem to \
be what's preventing the changes, srcdoc">27348</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27350" title="containers seem to \
be what's preventing the changes, srcdoc">27350</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27351" title="containers seem to \
be what's preventing the changes, srcdoc">27351</a></div>  
   <p>When a user agent is to <dfn id=strip-and-collapse-whitespace>strip and \
collapse whitespace</dfn> in a string, it must replace  any sequence of one or more \
consecutive <a href=#space-character id=common-parser-idioms:space-character-3>space \
characters</a> in @@ -4369,7 +4372,7 @@
 
   <h3 id=urls>2.5 URLs</h3>
 
-  <h4 id=terminology-2>2.5.1 Terminology</h4>
+  <h4 id=terminology-2>2.5.1 Terminology</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27349" \
title="containers seem to be what's preventing the changes, srcdoc">27349</a></div>  
   <p>A <a href=#url id=terminology-2:url>URL</a> is a <dfn id=valid-url>valid \
URL</dfn> if it conforms to the authoring conformance  requirements in the WHATWG URL \
standard. <a href=#refsURL>[URL]</a></p> @@ -8840,7 +8843,7 @@
 
   <h3 id=the-root-element>4.1 The root element</h3>
 
-  <h4 id=the-html-element>4.1.1 The <dfn><code>html</code></dfn> element</h4>
+  <h4 id=the-html-element>4.1.1 The <dfn><code>html</code></dfn> element</h4><div \
class=status><input onclick=toggleStatus(this) value=â‹° type=button><p \
class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27319" title="neither Validator \
nor any browser got a problem with immediately followed comments when not defining \
start-/ and end-tags">27319</a></div>  
   <dl class=element><dt><a href=#concept-element-categories \
id=the-html-element:concept-element-categories>Categories</a>:<dd>None.<dt><a \
href=#concept-element-contexts id=the-html-element:concept-element-contexts>Contexts \
in which this element can be used</a>:<dd>As the root element of a \
document.<dd>Wherever a subdocument fragment is allowed in a compound document.<dt><a \
href=#concept-element-content-model \
id=the-html-element:concept-element-content-model>Content model</a>:<dd>A <code \
id=the-html-element:the-head-element><a href=#the-head-element>head</a></code> \
element followed by a <code id=the-html-element:the-body-element><a \
href=#the-body-element>body</a></code> element.<dt><a \
href=#concept-element-tag-omission \
id=the-html-element:concept-element-tag-omission>Tag omission in text/html</a>:<dd>An \
<code id=the-html-element:the-html-element><a href=#the-html-element>html</a></code> \
element's <a href=#syntax-start-tag id=the-html-element:syntax-start-tag>start \
tag</a> can  be omitted
    if the first thing inside the <code id=the-html-element:the-html-element-2><a \
href=#the-html-element>html</a></code> element is not a <a href=#syntax-comments \
id=the-html-element:syntax-comments>comment</a>.<dd>An <code \
id=the-html-element:the-html-element-3><a href=#the-html-element>html</a></code> \
element's <a href=#syntax-end-tag id=the-html-element:syntax-end-tag>end tag</a> can \
be omitted if @@ -33734,7 +33737,7 @@
   </div>
 
 
-  <h6 id="e-mail-state-(type=email)">4.10.5.1.5 <dfn>E-mail</dfn> state \
(<code>type=email</code>)</h6><div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=15489" title="forms: Add an \
attribute <input type=email idna> that allows IDNA e-mail addresses to be \
round-tripped">15489</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18162" title="IDN email \
addresses should be converted to Punycode before validating them">18162</a></div> +  \
<h6 id="e-mail-state-(type=email)">4.10.5.1.5 <dfn>E-mail</dfn> state \
(<code>type=email</code>)</h6><div class=status><input onclick=toggleStatus(this) \
value=â‹° type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=15489" title="forms: <input \
type=email> validation needs to be updated for EAI">15489</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18162" title="IDN email \
addresses should be converted to Punycode before validating them">18162</a></div>  
   
 
@@ -35782,7 +35785,7 @@
 
 
 
-  <h6 id="file-upload-state-(type=file)">4.10.5.1.18 <dfn>File Upload</dfn> state \
(<code>type=file</code>)</h6> +  <h6 id="file-upload-state-(type=file)">4.10.5.1.18 \
<dfn>File Upload</dfn> state (<code>type=file</code>)</h6><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27333" \
title="Most user agents (Chrome, Firefox) seem to distinguish between space and \
enter. Enter submits the form, even for radio buttons, space selects the \
checkbox.">27333</a></div>  
   
 
@@ -44824,7 +44827,7 @@
   </div>
 
 
-  <h4 id=the-script-element>4.12.1 The <dfn id=script><code>script</code></dfn> \
element</h4><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23165" title="Implement \
JavaScript syntax checking in <script>">23165</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23156" title="Bug filing button \
of the nightly 5.1 spec gets hidden from user upon scroll">23156</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18298" title="&quot;The script \
element gets inserted into a document.&quot; - is the order defined if multiple \
script elements are simultaneously inserted? What about the relative order of other \
things that happen on insertion and script elements?">18298</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=25943" title="Include execution \
graph by Peter">25943</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23157  " title="XHTML: validator \
doesn't check that Raw Text elements (style/script) match the \
constraints">23157</a></div> +  <h4 id=the-script-element>4.12.1 The <dfn \
id=script><code>script</code></dfn> element</h4><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23165" \
title="Implement JavaScript syntax checking in <script>">23165</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23156" title="Bug filing button \
of the nightly 5.1 spec gets hidden from user upon scroll">23156</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18298" title="&quot;The script \
element gets inserted into a document.&quot; - is the order defined if multiple \
script elements are simultaneously inserted? What about the relative order of other \
things that happen on insertion and script elements?">18298</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=25943" title="Include execution \
graph by Peter">25943</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27332  " title="Contexts in \
which this element can be used: not where flow content is expected?">27332</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23157" title="XHTML: validator \
doesn't check that Raw Text elements (style/script) match the \
constraints">23157</a></div>  
   <dl class=element><dt><a href=#concept-element-categories \
id=the-script-element:concept-element-categories>Categories</a>:<dd><a \
href=#metadata-content-2 id=the-script-element:metadata-content-2>Metadata \
content</a>.<dd><a href=#flow-content-2 id=the-script-element:flow-content-2>Flow \
content</a>.<dd><a href=#phrasing-content-2 \
id=the-script-element:phrasing-content-2>Phrasing content</a>.<dd><a \
href=#script-supporting-elements-2 \
id=the-script-element:script-supporting-elements-2>Script-supporting \
element</a>.<dt><a href=#concept-element-contexts \
id=the-script-element:concept-element-contexts>Contexts in which this element can be \
used</a>:<dd>Where <a href=#metadata-content-2 \
id=the-script-element:metadata-content-2-2>metadata content</a> is expected.<dd>Where \
<a href=#phrasing-content-2 id=the-script-element:phrasing-content-2-2>phrasing \
content</a> is expected.<dd>Where <a href=#script-supporting-elements-2 \
id=the-script-element:script-supporting-elements-2-2>script-supp  orting elements</a> \
are expected.<dt><a href=#concept-element-content-model \
id=the-script-element:concept-element-content-model>Content model</a>:<dd>If there is \
no <code id=the-script-element:attr-script-src><a \
href=#attr-script-src>src</a></code>  attribute, depends on the value of the <code \
id=the-script-element:attr-script-type><a href=#attr-script-type>type</a></code> \
attribute, but must match @@ -57783,6 +57786,9 @@
   void <a href=#dom-print id=the-window-object:dom-print>print</a>();
   any <a href=#dom-showmodaldialog \
id=the-window-object:dom-showmodaldialog>showModalDialog</a>(DOMString url, optional \
any argument); // deprecated  
+  long <a href=#dom-window-requestanimationframe \
id=the-window-object:dom-window-requestanimationframe>requestAnimationFrame</a>(<span>FrameRequestCallback</span> \
callback); +  void <a href=#dom-window-cancelanimationframe \
id=the-window-object:dom-window-cancelanimationframe>cancelAnimationFrame</a>(long \
handle); +
   void <a href=#dom-window-postmessage \
id=the-window-object:dom-window-postmessage>postMessage</a>(any message, DOMString \
targetOrigin, optional sequence&lt;<a href=#transferable \
id=the-window-object:transferable>Transferable</a>> transfer);  
   // <a href="#Window-partial">also has obsolete members</a>
@@ -63000,12 +63006,15 @@
 
   <h6 id=runtime-script-errors-in-documents>8.1.3.6.1 Runtime script errors in \
documents</h6>  
-  <p>Whenever an uncaught runtime script error occurs in one of the scripts \
                associated with a
-  <code id=runtime-script-errors-in-documents:document><a \
href=#document>Document</a></code>, the user agent must <a href=#report-the-error \
id=runtime-script-errors-in-documents:report-the-error>report the error</a> for the \
relevant <a href=#concept-script \
id=runtime-script-errors-in-documents:concept-script>script</a>, with the problematic \
position (line number and column +  <p>When the user agent is to <dfn \
id=report-the-exception>report an exception</dfn> +  <var>E</var>, the user agent \
must <a href=#report-the-error \
id=runtime-script-errors-in-documents:report-the-error>report the error</a> for the \
relevant <a href=#concept-script \
id=runtime-script-errors-in-documents:concept-script>script</a>, with the problematic \
position (line number and column  number) in the resource containing the script, \
using the <a href=#global-object \
id=runtime-script-errors-in-documents:global-object>global object</a> specified by  \
the script's <a href=#settings-object \
id=runtime-script-errors-in-documents:settings-object>settings object</a> as the \
target. If the error is still <i \
id=runtime-script-errors-in-documents:concept-error-nothandled><a \
href=#concept-error-nothandled>not handled</a></i> after this, then the error may be \
reported to  the user.</p>
 
+  <p>When an exception is thrown during the execution of one of the scripts \
associated with a +  <code id=runtime-script-errors-in-documents:document><a \
href=#document>Document</a></code>, and the exception is not caught, the user agent \
must <a href=#report-the-exception \
id=runtime-script-errors-in-documents:report-the-exception>report the +  \
exception</a>.</p>  
 
   <h6 id=the-errorevent-interface>8.1.3.6.2 The <code \
id=the-errorevent-interface:errorevent><a href=#errorevent>ErrorEvent</a></code> \
interface</h6><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=25099" title="Should define \
default values for ErrorEventInit in the IDL, not in the prose">25099</a></div> @@ \
-63163,7 +63172,7 @@  agent must release the <a href=#storage-mutex \
id=definitions-3:storage-mutex-4>storage mutex</a>.</p>  
 
-  <h5 id=processing-model-9>8.1.4.2 Processing model</h5>
+  <h5 id=processing-model-9>8.1.4.2 Processing model</h5> 
 
   <p>An <a href=#event-loop id=processing-model-9:event-loop>event loop</a> must \
continually run through the following steps for as long as it  exists:</p>
@@ -63183,26 +63192,57 @@
 
     <p><i>Update the rendering</i>: If this <a href=#event-loop \
id=processing-model-9:event-loop-7>event loop</a> is a <a href=#browsing-context \
                id=processing-model-9:browsing-context-2>browsing
     context</a> <a href=#event-loop id=processing-model-9:event-loop-8>event \
                loop</a> (as opposed to a <a href=#workers>worker</a>
-    <a href=#event-loop id=processing-model-9:event-loop-9>event loop</a>), then, if \
necessary, run the following steps.</p> +    <a href=#event-loop \
id=processing-model-9:event-loop-9>event loop</a>), then, if necessary, run the \
following substeps.</p>  
-    <ol><li><p>Update the rendering or user interface of any <code \
id=processing-model-9:document-2><a href=#document>Document</a></code> or <a \
                href=#browsing-context \
                id=processing-model-9:browsing-context-3>browsing
-     context</a> to reflect the current state.</ol>
-
     <p class=note>Whether these steps are necessary depends on the update frequency. \
                For example,
     if the browser is attempting to achieve a 60 Hz refresh rate, then these steps \
                are only
-    necessary every 60th of a second (about 16.7ms). This specification does not \
                mandate any
-    particular model for when to update the rendering.</p>
+    necessary every 60th of a second (about 16.7ms). If the browser finds that the \
page is not able +    to sustain this rate, it might drop to a more sustainable 30Hz, \
rather than occasionally +    dropping frames. This specification does not mandate \
any particular model for when to update the +    rendering.</p>
 
-   <li><p>If this is a <a href=#workers>worker</a> <a href=#event-loop \
id=processing-model-9:event-loop-10>event loop</a> (i.e. one running for a +    \
<ol><li><p>Let <var>now</var> be the value that would be returned by the <code \
id=processing-model-9:performance><a href=#performance>Performance</a></code> +     \
object's <code id=processing-model-9:dom-performance-now><a \
href=#dom-performance-now>now()</a></code> method. <a href=#refsHRT>[HRT]</a></p> +
+     <li>
+
+      <p>Let <var>docs</var> be the list of <code \
id=processing-model-9:document-2><a href=#document>Document</a></code> objects \
associated with the +      <a href=#event-loop \
id=processing-model-9:event-loop-10>event loop</a> in question, sorted arbitrarily \
except that the following conditions +      must be met:</p>
+
+      <ul><li><p>Any <code id=processing-model-9:document-3><a \
href=#document>Document</a></code> <var>B</var> that is <span>nested through</span> a \
+       <code id=processing-model-9:document-4><a href=#document>Document</a></code> \
<var>A</var> must be listed after <var>A</var> in the list.<li><p>If there are two \
documents <var>A</var> and <var>B</var> whose <a href=#browsing-context \
id=processing-model-9:browsing-context-3>browsing contexts</a> are both <a \
href=#nested-browsing-context id=processing-model-9:nested-browsing-context>nested +  \
browsing contexts</a> and their <a href=#browsing-context-container \
id=processing-model-9:browsing-context-container>browsing context +       \
containers</a> are both elements in the same <code \
id=processing-model-9:document-5><a href=#document>Document</a></code> <var>C</var>, \
then the +       order of <var>A</var> and <var>B</var> in the list must match the \
relative <a href=#tree-order id=processing-model-9:tree-order>tree +       order</a> \
of their respective <a href=#browsing-context-container \
id=processing-model-9:browsing-context-container-2>browsing context +       \
containers</a> in <var>C</var>.</ul> +
+      <p>In the steps below that iterate over <var>docs</var>, each <code \
id=processing-model-9:document-6><a href=#document>Document</a></code> must be +      \
processed in the order it is found in the list.</p> +
+     <li><p>For each <code id=processing-model-9:document-7><a \
href=#document>Document</a></code> in <var>docs</var>, <dfn \
id=run-the-resize-steps>run the resize steps</dfn> for +     that <code \
id=processing-model-9:document-8><a href=#document>Document</a></code>, passing in \
<var>now</var> as the timestamp. <a href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li><p>For \
each <code id=processing-model-9:document-9><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=run-the-scroll-steps>run the scroll steps</dfn> for +     \
that <code id=processing-model-9:document-10><a href=#document>Document</a></code>, \
passing in <var>now</var> as the timestamp. <a \
href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li><p>For each <code \
id=processing-model-9:document-11><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=evaluate-media-queries-and-report-changes>evaluate media \
queries and +     report changes</dfn> for that <code \
id=processing-model-9:document-12><a href=#document>Document</a></code>, passing in \
<var>now</var> as the +     timestamp. <a \
href=#refsCSSOMVIEW>[CSSOMVIEW]</a><li><p>For each <code \
id=processing-model-9:document-13><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=run-css-animations-and-send-events>run CSS animations and \
send +     events</dfn> for that <code id=processing-model-9:document-14><a \
href=#document>Document</a></code>, passing in <var>now</var> as the timestamp. <a \
href=#refsCSSANIMATIONS>[CSSANIMATIONS]</a><li><p>For each <code \
id=processing-model-9:document-15><a href=#document>Document</a></code> in \
<var>docs</var>, <dfn id=run-the-fullscreen-rendering-steps>run the fullscreen \
rendering +     steps</dfn> for that <code id=processing-model-9:document-16><a \
href=#document>Document</a></code>, passing in <var>now</var> as the timestamp. <a \
href=#refsFULLSCREEN>[FULLSCREEN]</a><li><p>For each <code \
id=processing-model-9:document-17><a href=#document>Document</a></code> in \
<var>docs</var>, <a href=#run-the-animation-frame-callbacks \
id=processing-model-9:run-the-animation-frame-callbacks>run the animation frame +     \
callbacks</a> for that <code id=processing-model-9:document-18><a \
href=#document>Document</a></code>, passing in <var>now</var> as the +     \
timestamp.<li><p>For each <code id=processing-model-9:document-19><a \
href=#document>Document</a></code> in <var>docs</var>, update the rendering or user + \
interface of that <code id=processing-model-9:document-20><a \
href=#document>Document</a></code> and its <a href=#browsing-context \
id=processing-model-9:browsing-context-4>browsing context</a> to reflect the +     \
current state.</ol> +
+   <li><p>If this is a <a href=#workers>worker</a> <a href=#event-loop \
id=processing-model-9:event-loop-11>event loop</a> (i.e. one running for a  <code \
id=processing-model-9:workerglobalscope><a \
href=#workerglobalscope>WorkerGlobalScope</a></code>), but there are no <a \
                href=#concept-task id=processing-model-9:concept-task-4>tasks</a> in \
                the
-   <a href=#event-loop id=processing-model-9:event-loop-11>event loop</a>'s <a \
                href=#task-queue id=processing-model-9:task-queue-4>task queues</a> \
                and the
-   <code id=processing-model-9:workerglobalscope-2><a \
href=#workerglobalscope>WorkerGlobalScope</a></code> object's <a \
href=#dom-workerglobalscope-closing \
id=processing-model-9:dom-workerglobalscope-closing>closing</a> flag is true, then \
destroy the <a href=#event-loop id=processing-model-9:event-loop-12>event +   <a \
href=#event-loop id=processing-model-9:event-loop-12>event loop</a>'s <a \
href=#task-queue id=processing-model-9:task-queue-4>task queues</a> and the +   <code \
id=processing-model-9:workerglobalscope-2><a \
href=#workerglobalscope>WorkerGlobalScope</a></code> object's <a \
href=#dom-workerglobalscope-closing \
id=processing-model-9:dom-workerglobalscope-closing>closing</a> flag is true, then \
destroy the <a href=#event-loop id=processing-model-9:event-loop-13>event  loop</a>, \
aborting these steps, resuming the <a href=#run-a-worker \
                id=processing-model-9:run-a-worker>run a worker</a> steps described \
                in the
-   Web Workers section below.<li><p>Return to the <a href=#step1>first step</a> of \
the <a href=#event-loop id=processing-model-9:event-loop-13>event loop</a>.</ol> +   \
Web Workers section below.<li><p>Return to the <a href=#step1>first step</a> of the \
<a href=#event-loop id=processing-model-9:event-loop-14>event loop</a>.</ol>  
   <hr>
 
-  <p>Each <a href=#event-loop id=processing-model-9:event-loop-14>event loop</a> has \
a <dfn id=microtask-queue>microtask queue</dfn>. A <dfn id=microtask>microtask</dfn> \
is a +  <p>Each <a href=#event-loop id=processing-model-9:event-loop-15>event \
loop</a> has a <dfn id=microtask-queue>microtask queue</dfn>. A <dfn \
id=microtask>microtask</dfn> is a  <a href=#concept-task \
id=processing-model-9:concept-task-5>task</a> that is originally to be queued on the \
<a href=#microtask-queue id=processing-model-9:microtask-queue>microtask  queue</a> \
rather than a <a href=#task-queue id=processing-model-9:task-queue-5>task queue</a>. \
There are two kinds of <a href=#microtask \
id=processing-model-9:microtask>microtasks</a>: <dfn \
id=solitary-callback-microtask>solitary callback  microtasks</dfn>, and <dfn \
id=compound-microtask>compound microtasks</dfn>.</p> @@ -63212,7 +63252,7 @@
   microtasks</a> have to take extra care to <a \
href=#execute-a-compound-microtask-subtask \
id=processing-model-9:execute-a-compound-microtask-subtask>wrap callbacks</a> to \
handle <a href=#spin-the-event-loop \
id=processing-model-9:spin-the-event-loop>spinning the event  loop</a>.</p>
 
-  <p>When an algorithm requires a <a href=#microtask \
id=processing-model-9:microtask-2>microtask</a> to be <dfn \
id=queue-a-microtask>queued</dfn>, it must be appended to the relevant <a \
href=#event-loop id=processing-model-9:event-loop-15>event loop</a>'s +  <p>When an \
algorithm requires a <a href=#microtask \
id=processing-model-9:microtask-2>microtask</a> to be <dfn \
id=queue-a-microtask>queued</dfn>, it must be appended to the relevant <a \
href=#event-loop id=processing-model-9:event-loop-16>event loop</a>'s  <a \
href=#microtask-queue id=processing-model-9:microtask-queue-2>microtask queue</a>; \
the <a href=#task-source id=processing-model-9:task-source>task source</a> of such a \
<a href=#microtask id=processing-model-9:microtask-3>microtask</a> is the  <dfn \
id=microtask-task-source>microtask task source</dfn>.</p>  
@@ -63225,9 +63265,9 @@
   <p>When a user agent is to <dfn id=perform-a-microtask-checkpoint>perform a \
microtask checkpoint</dfn>, if the <a href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint>performing a  microtask \
checkpoint</a> flag is false, then the user agent must run the following steps:</p>  
-  <ol><li><p>Let the <a href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-2>performing a microtask \
checkpoint</a> flag be true.<li><p><i>Microtask queue handling</i>: If the <a \
href=#event-loop id=processing-model-9:event-loop-16>event loop</a>'s <a \
                href=#microtask-queue \
                id=processing-model-9:microtask-queue-3>microtask
-   queue</a> is empty, jump to the <i>done</i> step below.<li><p>Select the oldest \
<a href=#microtask id=processing-model-9:microtask-6>microtask</a> on the <a \
href=#event-loop id=processing-model-9:event-loop-17>event loop</a>'s <a \
                href=#microtask-queue \
                id=processing-model-9:microtask-queue-4>microtask
-   queue</a>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-18>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-3>currently running task</a> to the <a \
href=#concept-task id=processing-model-9:concept-task-6>task</a> selected in the \
previous step.<li> +  <ol><li><p>Let the <a href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-2>performing a microtask \
checkpoint</a> flag be true.<li><p><i>Microtask queue handling</i>: If the <a \
href=#event-loop id=processing-model-9:event-loop-17>event loop</a>'s <a \
href=#microtask-queue id=processing-model-9:microtask-queue-3>microtask +   queue</a> \
is empty, jump to the <i>done</i> step below.<li><p>Select the oldest <a \
href=#microtask id=processing-model-9:microtask-6>microtask</a> on the <a \
href=#event-loop id=processing-model-9:event-loop-18>event loop</a>'s <a \
href=#microtask-queue id=processing-model-9:microtask-queue-4>microtask +   \
queue</a>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-19>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-3>currently running task</a> to the <a \
href=#concept-task id=processing-model-9:concept-task-6>task</a> selected in the \
previous step.<li>  
     <p><i>Run</i>: Run the selected <a href=#concept-task \
id=processing-model-9:concept-task-7>task</a>.</p>  
@@ -63236,8 +63276,8 @@
     checkpoint</a> algorithm again, which is why we use the <a \
href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-3>performing a microtask  \
checkpoint</a> flag to avoid reentrancy.</p>  
-   <li><p>Set the <a href=#event-loop id=processing-model-9:event-loop-19>event \
loop</a>'s <a href=#currently-running-task \
                id=processing-model-9:currently-running-task-4>currently running \
                task</a> back to
-   null.<li><p>If the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-2>storage mutex</a> is now owned by the <a \
href=#event-loop id=processing-model-9:event-loop-20>event loop</a>, release it +   \
<li><p>Set the <a href=#event-loop id=processing-model-9:event-loop-20>event \
loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-4>currently running task</a> back to +   \
null.<li><p>If the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-2>storage mutex</a> is now owned by the <a \
href=#event-loop id=processing-model-9:event-loop-21>event loop</a>, release it  so \
that it is once again free.<li><p>Remove the <a href=#microtask \
id=processing-model-9:microtask-7>microtask</a> run in the step above from the <a \
href=#microtask-queue id=processing-model-9:microtask-queue-5>microtask  queue</a>, \
and return to the <i>microtask queue handling</i> step.<li><p><i>Done</i>: Let the <a \
href=#performing-a-microtask-checkpoint \
id=processing-model-9:performing-a-microtask-checkpoint-4>performing a microtask \
checkpoint</a> flag be  false.</ol>
@@ -63246,11 +63286,11 @@
   <dfn id=execute-a-compound-microtask-subtask>execute a compound microtask \
subtask</dfn> to run a series of steps, the user agent must run  the following \
steps:</p>  
-  <ol><li><p>Let <var>parent</var> be the <a href=#event-loop \
id=processing-model-9:event-loop-21>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-5>currently running +  <ol><li><p>Let \
<var>parent</var> be the <a href=#event-loop \
id=processing-model-9:event-loop-22>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-5>currently running  task</a> (the \
currently running <a href=#compound-microtask \
id=processing-model-9:compound-microtask-3>compound microtask</a>).<li><p>Let \
<var>subtask</var> be a new <a href=#concept-task \
id=processing-model-9:concept-task-8>task</a> that  consists of running the given \
series of steps. The <a href=#task-source id=processing-model-9:task-source-4>task \
source</a> of such a  <a href=#microtask \
id=processing-model-9:microtask-8>microtask</a> is the <a href=#microtask-task-source \
id=processing-model-9:microtask-task-source-2>microtask task source</a>. This is a \
                <dfn id=compound-microtask-subtask>compound
-   microtask subtask</dfn>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-22>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-6>currently running task</a> to \
<var>subtask</var>.<li><p>Run <var>subtask</var>.<li><p>Set the <a href=#event-loop \
id=processing-model-9:event-loop-23>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-7>currently running task</a> back to \
<var>parent</var>.</ol> +   microtask subtask</dfn>.<li><p>Set the <a \
href=#event-loop id=processing-model-9:event-loop-23>event loop</a>'s <a \
href=#currently-running-task id=processing-model-9:currently-running-task-6>currently \
running task</a> to <var>subtask</var>.<li><p>Run <var>subtask</var>.<li><p>Set the \
<a href=#event-loop id=processing-model-9:event-loop-24>event loop</a>'s <a \
href=#currently-running-task id=processing-model-9:currently-running-task-7>currently \
running task</a> back to <var>parent</var>.</ol>  
   <hr>
 
@@ -63271,7 +63311,7 @@
 
   <ol><li>
 
-    <p>Let <var>task</var> be the <a href=#event-loop \
id=processing-model-9:event-loop-24>event loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-8>currently running +    <p>Let \
<var>task</var> be the <a href=#event-loop id=processing-model-9:event-loop-25>event \
loop</a>'s <a href=#currently-running-task \
id=processing-model-9:currently-running-task-8>currently running  task</a>.</p>
 
     <p class=note>This might be a <a href=#microtask \
id=processing-model-9:microtask-9>microtask</a>, in which case it is a <a \
href=#solitary-callback-microtask \
id=processing-model-9:solitary-callback-microtask-2>solitary @@ -63286,7 +63326,7 @@
     <p>Stop <var>task</var>, allowing whatever algorithm that invoked it to resume, \
                but
     continue these steps <a href=#in-parallel id=processing-model-9:in-parallel-3>in \
parallel</a>.</p>  
-    <p class=note>This causes one of the following algorithms to continue: the <a \
href=#event-loop id=processing-model-9:event-loop-25>event +    <p class=note>This \
causes one of the following algorithms to continue: the <a href=#event-loop \
id=processing-model-9:event-loop-26>event  loop</a>'s main set of steps, the <a \
href=#perform-a-microtask-checkpoint \
id=processing-model-9:perform-a-microtask-checkpoint-4>perform a microtask \
checkpoint</a> algorithm, or  the <a href=#execute-a-compound-microtask-subtask \
id=processing-model-9:execute-a-compound-microtask-subtask-2>execute a compound \
microtask subtask</a> algorithm to continue.</p>  
@@ -63300,19 +63340,19 @@
   <p>Some of the algorithms in this specification, for historical reasons, require \
the user agent to  <dfn id=pause>pause</dfn> while running a <a href=#concept-task \
id=processing-model-9:concept-task-10>task</a> until a condition <var>goal</var> is \
met. This means running the following steps:</p>  
-  <ol><li><p>If necessary, update the rendering or user interface of any <code \
                id=processing-model-9:document-3><a \
                href=#document>Document</a></code> or
-   <a href=#browsing-context id=processing-model-9:browsing-context-4>browsing \
context</a> to reflect the current state.<li><p>Wait until the condition \
                <var>goal</var> is met. While a user agent has a paused
-   <a href=#concept-task id=processing-model-9:concept-task-11>task</a>, the \
corresponding <a href=#event-loop id=processing-model-9:event-loop-26>event loop</a> \
must not run +  <ol><li><p>If necessary, update the rendering or user interface of \
any <code id=processing-model-9:document-21><a href=#document>Document</a></code> or \
+   <a href=#browsing-context id=processing-model-9:browsing-context-5>browsing \
context</a> to reflect the current state.<li><p>Wait until the condition \
<var>goal</var> is met. While a user agent has a paused +   <a href=#concept-task \
id=processing-model-9:concept-task-11>task</a>, the corresponding <a href=#event-loop \
id=processing-model-9:event-loop-27>event loop</a> must not run  further <a \
href=#concept-task id=processing-model-9:concept-task-12>tasks</a>, and any script in \
the currently running <a href=#concept-task \
id=processing-model-9:concept-task-13>task</a> must block. User agents should remain \
                responsive to user input
-   while paused, however, albeit in a reduced capacity since the <a href=#event-loop \
id=processing-model-9:event-loop-27>event loop</a> will not be +   while paused, \
however, albeit in a reduced capacity since the <a href=#event-loop \
id=processing-model-9:event-loop-28>event loop</a> will not be  doing anything.</ol>
 
   <hr>
 
   <p>When a user agent is to <dfn id=obtain-the-storage-mutex>obtain the storage \
mutex</dfn> as part of running a <a href=#concept-task \
id=processing-model-9:concept-task-14>task</a>, it must run through the following \
steps:</p>  
-  <ol><li><p>If the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-3>storage mutex</a> is already owned by this <a \
href=#concept-task id=processing-model-9:concept-task-15>task</a>'s <a \
href=#event-loop id=processing-model-9:event-loop-28>event loop</a>, then abort these \
steps.<li><p>Otherwise, <a href=#pause id=processing-model-9:pause>pause</a> until \
the <a href=#storage-mutex id=processing-model-9:storage-mutex-4>storage mutex</a> \
                can be taken by the
-   <a href=#event-loop id=processing-model-9:event-loop-29>event \
loop</a>.<li><p>Take ownership of the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-5>storage mutex</a>.</ol> +  <ol><li><p>If the <a \
href=#storage-mutex id=processing-model-9:storage-mutex-3>storage mutex</a> is \
already owned by this <a href=#concept-task \
id=processing-model-9:concept-task-15>task</a>'s <a href=#event-loop \
id=processing-model-9:event-loop-29>event loop</a>, then abort these \
steps.<li><p>Otherwise, <a href=#pause id=processing-model-9:pause>pause</a> until \
the <a href=#storage-mutex id=processing-model-9:storage-mutex-4>storage mutex</a> \
can be taken by the +   <a href=#event-loop id=processing-model-9:event-loop-30>event \
loop</a>.<li><p>Take ownership of the <a href=#storage-mutex \
id=processing-model-9:storage-mutex-5>storage mutex</a>.</ol>  
   
 
@@ -66336,6 +66376,42 @@
 
 
 
+  <h3 id=animation-frames>8.8 Animation Frames</h3>
+
+  <p>Each <code id=animation-frames:document><a href=#document>Document</a></code> \
has a <dfn id=list-of-animation-frame-callbacks>list of animation frame \
callbacks</dfn>, which must be +  initially empty, and an <dfn \
id=animation-frame-callback-identifier>animation frame callback identifier</dfn>, \
which is a number which +  must initially be zero.</p>
+
+  <p>When the <dfn id=dom-window-requestanimationframe><code>requestAnimationFrame()</code></dfn> \
method is called, +  the user agent must run the following steps:</p>
+
+  <ol><li><p>Let <var>document</var> be <a href=#concept-document-window \
id=animation-frames:concept-document-window>the +   <code>Window</code> object's \
<code>Document</code> object</a>.<li><p>Increment <var>document</var>'s <a \
href=#animation-frame-callback-identifier \
id=animation-frames:animation-frame-callback-identifier>animation frame callback \
identifier</a> by +   one.<li><p>Append the method's argument to \
<var>document</var>'s <a href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks>list of animation frame +   \
callbacks</a>, associated with <var>document</var>'s <a \
href=#animation-frame-callback-identifier \
id=animation-frames:animation-frame-callback-identifier-2>animation frame callback +  \
identifier</a>'s current value.<li><p>Return <var>document</var>'s <a \
href=#animation-frame-callback-identifier \
id=animation-frames:animation-frame-callback-identifier-3>animation frame callback \
identifier</a>'s current +   value.</ol>
+
+  <p>When the <dfn id=dom-window-cancelanimationframe><code>cancelAnimationFrame()</code></dfn> \
method is called, +  the user agent must run the following steps:</p>
+
+  <ol><li><p>Let <var>document</var> be <a href=#concept-document-window \
id=animation-frames:concept-document-window-2>the +   <code>Window</code> object's \
<code>Document</code> object</a>.<li><p>Find the entry in <var>document</var>'s <a \
href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-2>list of animation frame \
callbacks</a> +   that is associated with the value given by the method's \
argument.<li><p>If there is such an entry, remove it from <var>document</var>'s <a \
href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-3>list of animation +   frame \
callbacks</a>.</ol> +
+  <p>When the user agent is to <dfn id=run-the-animation-frame-callbacks>run the \
animation frame callbacks</dfn> for a +  <code id=animation-frames:document-2><a \
href=#document>Document</a></code> <var>doc</var> with a timestamp <var>now</var>, it \
must run the following +  steps:</p>
+
+  <ol><li><p>Let <var>callbacks</var> be a list of the entries in <var>doc</var>'s \
<a href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-4>list of +   animation frame \
callbacks</a>, in the order in which they were added to the list.<li><p>Set \
<var>doc</var>'s <a href=#list-of-animation-frame-callbacks \
id=animation-frames:list-of-animation-frame-callbacks-5>list of animation frame \
callbacks</a> to the empty +   list.<li><p>For each entry in <var>callbacks</var>, in \
order: invoke the callback, passing +   <var>now</var> as the only argument, and if \
an exception is thrown, <a href=#report-the-exception \
id=animation-frames:report-the-exception>report the +   exception</a>. <a \
href=#refsWEBIDL>[WEBIDL]</a></ol> +
+
+
   <h2 id=comms>9 Communication</h2>
 
   <h3 id=the-messageevent-interfaces>9.1 The <code \
id=the-messageevent-interfaces:messageevent><a \
href=#messageevent>MessageEvent</a></code> interfaces</h3><div class=status><input \
onclick=toggleStatus(this) value=â‹° type=button><p class=bugs><strong>Spec \
bugs:</strong> <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27128" \
title="MessageEventInit should probably use Window, not WindowProxy">27128</a></div> \
@@ -81780,7 +81856,7 @@  
 
 
-  <h3 id=web+-scheme-prefix>16.10 <dfn><code>web+</code> scheme \
prefix</dfn></h3><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18496" title="Change the IANA \
sections to refer to the new registration system and not IANA">18496</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18671" title="Find a solution to \
the problem of the IANA scheme registry being so incomplete (especially given \
web+)">18671</a></div> +  <h3 id=web+-scheme-prefix>16.10 <dfn><code>web+</code> \
scheme prefix</dfn></h3><div class=status><input onclick=toggleStatus(this) value=â‹° \
type=button><p class=bugs><strong>Spec bugs:</strong> <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18496" title="Change the IANA \
sections to refer to the new registration system and not IANA">18496</a>, <a \
href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=18671" title="Find a solution to \
the problem of the IANA scheme registry being so incomplete (especially given \
web+)">18671</a>, <a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=27364" \
title="Encoding considerations: none,">27364</a></div>  
   <p>This section describes a convention for use with the IANA URI scheme registry. \
It does not  itself register a specific scheme. <a \
href=#refsRFC4395>[RFC4395]</a></p> @@ -84713,7 +84789,7 @@
 
   
 
-  <dl id=ref-list><dt id=refsABNF>[ABNF]<dd><cite><a \
href=http://www.ietf.org/rfc/std/std68.txt>Augmented BNF for Syntax Specifications: \
ABNF</a></cite>, D. Crocker, P. Overell. IETF.<dt id=refsABOUT>[ABOUT]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6694>The 'about' URI scheme</a></cite>, S. \
Moonesamy. IETF.<dt id=refsAPNG>[APNG]<dd>(Non-normative) <cite><a \
href=https://wiki.mozilla.org/APNG_Specification>APNG Specification</a></cite>. S. \
Parmenter, V. Vukicevic, A. Smith. Mozilla.<dt id=refsARIA>[ARIA]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria/>Accessible Rich Internet Applications \
(WAI-ARIA)</a></cite>, J. Craig, M. Cooper, L. Pappas, R. Schwerdtfeger, L. Seeman. \
W3C.<dt id=refsARIAIMPL>[ARIAIMPL]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria-implementation/>WAI-ARIA 1.0 User Agent \
Implementation Guide</a></cite>, A. Snow-Weaver, M. Cooper. W3C.<dt \
id=refsATAG>[ATAG]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/ATAG20/>Authoring Tool Accessibility Guide  lines (ATAG) \
2.0</a></cite>, J. Richards, J. Spellman, J. Treviranus. W3C.<dt \
id=refsATOM>[ATOM]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc4287>The Atom Syndication Format</a></cite>, M. \
Nottingham, R. Sayre. IETF.<dt id=refsBCP47>[BCP47]<dd><cite><a \
href=http://www.ietf.org/rfc/bcp/bcp47.txt>Tags for Identifying Languages; Matching \
of Language Tags</a></cite>, A. Phillips, M. Davis. IETF.<dt \
id=refsBECSS>[BECSS]<dd><cite><a href=http://www.w3.org/TR/becss/>Behavioral \
Extensions to CSS</a></cite>, I. Hickson. W3C.<dt \
id=refsBEZIER>[BEZIER]<dd><cite>Courbes à poles</cite>, P. de Casteljau. INPI, \
1959.<dt id=refsBIDI>[BIDI]<dd><cite><a href=http://www.unicode.org/reports/tr9/>UAX \
#9: Unicode Bidirectional Algorithm</a></cite>, M. Davis. Unicode Consortium.<dt \
id=refsBOCU1>[BOCU1]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/notes/tn6/>UTN #6: BOCU-1: MIME-Compatible Unicode \
Compression</a></cite>, M. Scherer, M. Davis. Unicode Consortium.<dt id  \
=refsCESU8>[CESU8]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/reports/tr26/>UTR #26: Compatibility Encoding Scheme For \
UTF-16: 8-BIT (CESU-8)</a></cite>, T. Phipps. Unicode Consortium.<dt \
id=refsCHARMOD>[CHARMOD]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/charmod/>Character Model for the World Wide Web 1.0: \
Fundamentals</a></cite>, M. Dürst, F. Yergeau, R. Ishida, M. Wolf, T. Texin. W3C.<dt \
id=refsCLDR>[CLDR]<dd><cite><a href=http://cldr.unicode.org/>Unicode Common Locale \
Data Repository</a></cite>. Unicode.<dt id=refsCOMPOSITE>[COMPOSITE]<dd><cite><a \
href=http://dev.w3.org/fxtf/compositing/>Compositing and Blending</a></cite>. R. \
Cabanier, N. Andronikos. W3C.<dt id=refsCOMPUTABLE>[COMPUTABLE]<dd>(Non-normative) \
<cite><a href=http://www.turingarchive.org/browse.php/B/12>On computable numbers, \
with an application to the Entscheidungsproblem</a></cite>, A. Turing. In \
<cite>Proceedings of the London Mathematical Society</cite>, series 2, volume 42, \
page  s 230-265. London Mathematical Society, 1937.<dt \
id=refsCOOKIES>[COOKIES]<dd><cite><a href=http://tools.ietf.org/html/rfc6265>HTTP \
State Management Mechanism</a></cite>, A. Barth. IETF.<dt \
id=refsCP50220>[CP50220]<dd>(Non-normative) <cite><a \
href=http://www.iana.org/assignments/charset-reg/CP50220>CP50220</a></cite>, Y. \
Naruse. IANA.<dt id=refsCSP>[CSP]<dd>(Non-normative) <cite><a \
href=https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html>Content \
Security Policy</a></cite>, B. Sterne, A. Barth. W3C.<dt id=refsCSS>[CSS]<dd><cite><a \
href=http://www.w3.org/TR/CSS2/>Cascading Style Sheets Level 2 Revision 1</a></cite>, \
B. Bos, T. Çelik, I. Hickson, H. Lie. W3C.<dt \
id=refsCSSANIMATIONS>[CSSANIMATIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-animations/>CSS Animations</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, S. Galineau, L. Baron. W3C.<dt \
id=refsCSSATTR>[CSSATTR]<dd><cite><a href=http://dev.w3.org/csswg/css-style-attr/>CSS \
Styling Attribute Syntax</a></cite>, T. Çelik, E. Etemad. W3C.<dt \
id=refsCSSCOLOR>[CSSCOLOR]<dd><cite><a href=http://dev.w3.org/csswg/css-color/>CSS \
Color Module Level 3</a></cite>, T. Çelik, C. Lilley, L. Baron. W3C.<dt \
id=refsCSSFONTLOAD>[CSSFONTLOAD]<dd><cite><a \
href=http://dev.w3.org/csswg/css-font-loading/>CSS Font Loading</a></cite>, T. \
Atkins, J. Daggett. W3C.<dt id=refsCSSFONTS>[CSSFONTS]<dd><cite><a \
href=http://dev.w3.org/csswg/css-fonts/>CSS Fonts</a></cite>, J. Daggett. W3C.<dt \
id=refsCSSGC>[CSSGC]<dd><cite><a href=http://dev.w3.org/csswg/css-content>CSS \
Generated Content</a></cite>, H. Lie, E. Etemad, I. Hickson. W3C.<dt \
id=refsCSSIMAGES>[CSSIMAGES]<dd><cite><a href=http://dev.w3.org/csswg/css-images/>CSS \
Image Values and Replaced Content Module</a></cite>, E. Etemad, T. Atkins. W3C.<dt \
id=refsCSSOM>[CSSOM]<dd><cite><a href=http://dev.w3.org/csswg/cssom/>Cascading Style \
Sheets Object Model (CSSOM)</a></cite>, S. Pieters, G. Adams. W3C.<dt \
id=refsCSSOMVIEW>[CSS  OMVIEW]<dd><cite><a \
href=http://dev.w3.org/csswg/cssom-view/>CSSOM View Module</a></cite>, S. Pieters, G. \
Adams. W3C.<dt id=refsCSSRUBY>[CSSRUBY]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ruby/>CSS3 Ruby Module</a></cite>, R. Ishida. \
W3C.<dt id=refsCSSTRANSITIONS>[CSSTRANSITIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-transitions/>CSS Transitions</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, L. Baron. W3C.<dt id=refsCSSUI>[CSSUI]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ui/>CSS3 Basic User Interface Module</a></cite>, T. \
Çelik. W3C.<dt id=refsCSSSCOPED>[CSSSCOPED]<dd><cite><a \
href=http://dev.w3.org/csswg/css-scoping/>CSS Scoping</a></cite>, T. Atkins, E. \
Etemad. W3C.<dt id=refsCSSSYNTAX>[CSSSYNTAX]<dd><cite><a \
href=http://dev.w3.org/csswg/css-syntax/>CSS Syntax</a></cite>, T. Atkins, S. Sapin. \
W3C.<dt id=refsCSSVALUES>[CSSVALUES]<dd><cite><a \
href=http://dev.w3.org/csswg/css-values/>CSS3 Values and Units</a></cite>, H. Lie, T. \
Atkins, E. Etemad. W  3C.<dt id=refsCSSWM>[CSSWM]<dd><cite><a \
href=http://dev.w3.org/csswg/css-writing-modes>CSS Writing Modes</a></cite>, E. \
Etemad, K. Ishii. W3C.<dt id=refsDASH>[DASH]<dd><cite><a \
href="http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=65274">Dynamic \
adaptive streaming over HTTP (DASH)</a></cite>. ISO.<dt id=refsDOM>[DOM]<dd><cite><a \
href=https://dom.spec.whatwg.org/>DOM</a></cite>, A. van Kesteren, A. Gregor, Ms2ger. \
WHATWG.<dt id=refsDOMEVENTS>[DOMEVENTS]<dd><cite><a \
href=https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html>Document \
Object Model (DOM) Level 3 Events Specification</a></cite>, G. Kacmarcik, T. \
Leithead, J. Rossi, D. Schepers, B. Höhrmann, P. Le Hégaret, T. Pixley. W3C.<dt \
id=refsDOMPARSING>[DOMPARSING]<dd><cite><a \
href=https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html lang=en-US>DOM Parsing \
and Serialization</a></cite>, T. Leithead. W3C.<dt \
id=refsDOT>[DOT]<dd>(Non-normative) <cite><a href=http://www.grap  \
hviz.org/content/dot-language>The DOT Language</a></cite>. Graphviz.<dt \
id=refsE163>[E163]<dd><cite>Recommendation E.163 — Numbering Plan for The \
International Telephone Service</cite>, CCITT Blue Book, Fascicle II.2, pp. 128-134, \
November 1988.<dt id=refsECMA262>[ECMA262]<dd><cite><a \
href=http://people.mozilla.org/~jorendorff/es6-draft.html>ECMAScript Language \
Specification</a></cite>. ECMA.<dt id=refsEDITING>[EDITING]<dd><cite><a \
href=https://dvcs.w3.org/hg/editing/raw-file/tip/editing.html>HTML Editing \
APIs</a></cite>, A. Gregor. W3C Editing APIs CG.<dt \
id=refsENCODING>[ENCODING]<dd><cite><a \
href=https://encoding.spec.whatwg.org/>Encoding</a></cite>, A. van Kesteren, J. Bell. \
WHATWG.<dt id=refsFETCH>[FETCH]<dd><cite><a \
href=https://fetch.spec.whatwg.org/>Fetch</a></cite>, A. van Kesteren. WHATWG.<dt \
id=refsFILEAPI>[FILEAPI]<dd><cite><a href=http://dev.w3.org/2006/webapi/FileAPI/>File \
API</a></cite>, A. Ranganathan. W3C.<dt id=refsFULLSCREEN>[FULLSCREEN]<dd><cite><a \
href  =https://fullscreen.spec.whatwg.org/>Fullscreen</a></cite>, A. van Kesteren, T. \
Çelik. WHATWG.<dt id=refsGIF>[GIF]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/Graphics/GIF/spec-gif89a.txt>Graphics Interchange \
Format</a></cite>. CompuServe.<dt id=refsGRAPHICS>[GRAPHICS]<dd>(Non-normative) \
<cite>Computer Graphics: Principles and Practice in C</cite>, Second Edition, J. \
Foley, A. van Dam, S. Feiner, J. Hughes. Addison-Wesley. ISBN 0-201-84840-6.<dt \
id=refsGREGORIAN>[GREGORIAN]<dd>(Non-normative) <cite>Inter Gravissimas</cite>, A. \
Lilius, C. Clavius. Gregory XIII Papal Bull, February 1582.<dt \
id=refsHTTP>[HTTP]<dd><cite><a href=http://tools.ietf.org/html/rfc7230>Hypertext \
Transfer Protocol (HTTP/1.1): Message Syntax and Routing</a></cite>, R. Fielding, J. \
Reschke. IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7231>Hypertext Transfer \
Protocol (HTTP/1.1): Semantics and Content</a></cite>, R. Fielding, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc  7232>Hypertext Transfer \
Protocol (HTTP/1.1): Conditional Requests</a></cite>, R. Fielding, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7233>Hypertext Transfer Protocol \
(HTTP/1.1): Range Requests</a></cite>, R. Fielding, Y. Lafon, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7234>Hypertext Transfer Protocol \
(HTTP/1.1): Caching</a></cite>, R. Fielding, M. Nottingham, J. Reschke. \
IETF.<dd><cite><a href=http://tools.ietf.org/html/rfc7235>Hypertext Transfer Protocol \
(HTTP/1.1): Authentication</a></cite>, R. Fielding, J. Reschke. IETF.<dt \
id=refsIANAPERMHEADERS>[IANAPERMHEADERS]<dd><cite><a \
href=http://www.iana.org/assignments/message-headers/perm-headers.html>Permanent \
Message Header Field Names</a></cite>. IANA.<dt id=refsINBAND>[INBAND]<dd><cite><a \
href=http://dev.w3.org/html5/html-sourcing-inband-tracks/>Sourcing In-band Media \
Resource Tracks from Media Containers into HTML</a></cite>, S. Pfeiffer, B. Lund. \
W3C.<dt id=refsISO3166>[ISO31  66]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/country_codes.htm>ISO 3166: Codes for the \
representation of names of countries and their subdivisions</a></cite>. ISO.<dt \
id=refsISO4217>[ISO4217]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/currency_codes.htm>ISO 4217: Codes for the \
representation of currencies and funds</a></cite>. ISO.<dt \
id=refsISO8601>[ISO8601]<dd>(Non-normative) <cite><a \
href="http://isotc.iso.org/livelink/livelink/4021199/ISO_8601_2004_E.zip?func=doc.Fetch&amp;nodeid=4021199">ISO8601: \
Data elements and interchange formats — Information interchange — Representation \
of dates and times</a></cite>. ISO.<dt id=refsJLREQ>[JLREQ]<dd><cite><a \
href=http://www.w3.org/TR/jlreq/>Requirements for Japanese Text Layout</a></cite>. \
W3C.<dt id=refsJPEG>[JPEG]<dd><cite><a \
href=http://www.w3.org/Graphics/JPEG/jfif3.pdf>JPEG File Interchange \
Format</a></cite>, E. Hamilton.<dt id=refsJSON>[JSON]<dd><cite><a \
href=http://tools.ietf.org/html/rfc4627>Th  e application/json Media Type for \
JavaScript Object Notation (JSON)</a></cite>, D. Crockford. IETF.<dt \
id=refsMAILTO>[MAILTO]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc6068>The 'mailto' URI scheme</a></cite>, M. \
Duerst, L. Masinter, J. Zawinski. IETF.<dt id=refsMATHML>[MATHML]<dd><cite><a \
href=http://www.w3.org/TR/MathML/>Mathematical Markup Language (MathML)</a></cite>, \
D. Carlisle, P. Ion, R. Miner, N. Poppelier. W3C.<dt \
id=refsMEDIAFRAG>[MEDIAFRAG]<dd><cite><a \
href=http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/>Media \
Fragments URI</a></cite>, R. Troncy, E. Mannens, S. Pfeiffer, D. Van Deursen. W3C.<dt \
id=refsMEDIASOURCE>[MEDIASOURCE]<dd><cite><a \
href=https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html>Media \
Source Extensions</a></cite>, A. Colwell, A. Bateman, M. Watson. W3C.<dt \
id=refsMEDIASTREAM>[MEDIASTREAM]<dd><cite><a \
href=http://w3c.github.io/mediacapture-main/getusermedia.html>Media Capture and Stre  \
ams</a></cite>, D. Burnett, A. Bergkvist, C. Jennings, A. Narayanan. W3C.<dt \
id=refsMFREL>[MFREL]<dd><cite><a \
href=http://microformats.org/wiki/existing-rel-values#HTML5_link_type_extensions>Microformats \
Wiki: existing rel values</a></cite>. Microformats.<dt \
id=refsMIMESNIFF>[MIMESNIFF]<dd><cite><a href=https://mimesniff.spec.whatwg.org/>MIME \
Sniffing</a></cite>, G. Hemsley. WHATWG.<dt id=refsMNG>[MNG]<dd><cite><a \
href=http://www.libpng.org/pub/mng/spec/>MNG (Multiple-image Network Graphics) \
Format</a></cite>. G. Randers-Pehrson.<dt id=refsMPEG2>[MPEG2]<dd><cite>ISO/IEC \
13818-1: Information technology — Generic coding of moving pictures and associated \
audio information: Systems</cite>. ISO/IEC.<dt id=refsMPEG4>[MPEG4]<dd><cite>ISO/IEC \
14496-12: ISO base media file format</cite>. ISO/IEC.<dt id=refsMQ>[MQ]<dd><cite><a \
href=http://drafts.csswg.org/mediaqueries/>Media Queries</a></cite>, H. Lie, T. \
Çelik, D. Glazman, A. van Kesteren. W3C.<dt id=refsNPAPI>[NPAPI]<dd>(Non-norm  \
ative) <cite><a href=https://developer.mozilla.org/en-US/Add-ons/Plugins/Gecko_Plugin_API_Reference>Gecko \
Plugin API Reference</a></cite>. Mozilla.<dt \
id=refsOGGSKELETONHEADERS>[OGGSKELETONHEADERS]<dd><cite><a \
href=http://wiki.xiph.org/SkeletonHeaders>SkeletonHeaders</a></cite>. Xiph.Org.<dt \
id=refsOPENSEARCH>[OPENSEARCH]<dd><cite><a \
href=http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_HTML.2FXHTML>Autodiscovery \
in HTML/XHTML</a></cite>. In <cite>OpenSearch 1.1 Draft 4</cite>, Section 4.6.2. \
OpenSearch.org.<dt id=refsORIGIN>[ORIGIN]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6454>The Web Origin Concept</a></cite>, A. Barth. \
IETF.<dt id=refsPAGEVIS>[PAGEVIS]<dd>(Non-normative) <cite><a \
href=https://w3c.github.io/web-performance/specs/PageVisibility/Overview.html>Page \
Visibility</a></cite>, J. Mann, A. Jain. W3C.<dt id=refsPDF>[PDF]<dd>(Non-normative) \
<cite><a href=http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf>Document \
management — P  ortable document format — Part 1: PDF</a></cite>. ISO.<dt \
id=refsPINGBACK>[PINGBACK]<dd><cite><a \
href=http://www.hixie.ch/specs/pingback/pingback>Pingback 1.0</a></cite>, S. \
Langridge, I. Hickson.<dt id=refsPNG>[PNG]<dd><cite><a \
href=http://www.w3.org/TR/PNG/>Portable Network Graphics (PNG) \
Specification</a></cite>, D. Duce. W3C.<dt \
id=refsPOINTERLOCK>[POINTERLOCK]<dd><cite><a \
href=https://dvcs.w3.org/hg/pointerlock/raw-file/default/index.html>Pointer \
Lock</a></cite>, V. Scheib. W3C.<dt id=refsPPUTF8>[PPUTF8]<dd>(Non-normative) \
<cite><a href=http://www.sw.it.aoyama.ac.jp/2012/pub/IUC11-UTF-8.pdf>The Properties \
and Promises  of UTF-8</a></cite>, M. Dürst. University of Zürich. In \
<cite>Proceedings of the 11th International Unicode Conference</cite>.<dt \
+  <dl id=ref-list><dt id=refsABNF>[ABNF]<dd><cite><a \
href=http://www.ietf.org/rfc/std/std68.txt>Augmented BNF for Syntax Specifications: \
ABNF</a></cite>, D. Crocker, P. Overell. IETF.<dt id=refsABOUT>[ABOUT]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6694>The 'about' URI scheme</a></cite>, S. \
Moonesamy. IETF.<dt id=refsAPNG>[APNG]<dd>(Non-normative) <cite><a \
href=https://wiki.mozilla.org/APNG_Specification>APNG Specification</a></cite>. S. \
Parmenter, V. Vukicevic, A. Smith. Mozilla.<dt id=refsARIA>[ARIA]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria/>Accessible Rich Internet Applications \
(WAI-ARIA)</a></cite>, J. Craig, M. Cooper, L. Pappas, R. Schwerdtfeger, L. Seeman. \
W3C.<dt id=refsARIAIMPL>[ARIAIMPL]<dd><cite><a \
href=http://www.w3.org/WAI/PF/aria-implementation/>WAI-ARIA 1.0 User Agent \
Implementation Guide</a></cite>, A. Snow-Weaver, M. Cooper. W3C.<dt \
id=refsATAG>[ATAG]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/ATAG20/>Authoring Tool Accessibility Guide  lines (ATAG) \
2.0</a></cite>, J. Richards, J. Spellman, J. Treviranus. W3C.<dt \
id=refsATOM>[ATOM]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc4287>The Atom Syndication Format</a></cite>, M. \
Nottingham, R. Sayre. IETF.<dt id=refsBCP47>[BCP47]<dd><cite><a \
href=http://www.ietf.org/rfc/bcp/bcp47.txt>Tags for Identifying Languages; Matching \
of Language Tags</a></cite>, A. Phillips, M. Davis. IETF.<dt \
id=refsBECSS>[BECSS]<dd><cite><a href=http://www.w3.org/TR/becss/>Behavioral \
Extensions to CSS</a></cite>, I. Hickson. W3C.<dt \
id=refsBEZIER>[BEZIER]<dd><cite>Courbes à poles</cite>, P. de Casteljau. INPI, \
1959.<dt id=refsBIDI>[BIDI]<dd><cite><a href=http://www.unicode.org/reports/tr9/>UAX \
#9: Unicode Bidirectional Algorithm</a></cite>, M. Davis. Unicode Consortium.<dt \
id=refsBOCU1>[BOCU1]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/notes/tn6/>UTN #6: BOCU-1: MIME-Compatible Unicode \
Compression</a></cite>, M. Scherer, M. Davis. Unicode Consortium.<dt id  \
=refsCESU8>[CESU8]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/reports/tr26/>UTR #26: Compatibility Encoding Scheme For \
UTF-16: 8-BIT (CESU-8)</a></cite>, T. Phipps. Unicode Consortium.<dt \
id=refsCHARMOD>[CHARMOD]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/charmod/>Character Model for the World Wide Web 1.0: \
Fundamentals</a></cite>, M. Dürst, F. Yergeau, R. Ishida, M. Wolf, T. Texin. W3C.<dt \
id=refsCLDR>[CLDR]<dd><cite><a href=http://cldr.unicode.org/>Unicode Common Locale \
Data Repository</a></cite>. Unicode.<dt id=refsCOMPOSITE>[COMPOSITE]<dd><cite><a \
href=http://dev.w3.org/fxtf/compositing/>Compositing and Blending</a></cite>. R. \
Cabanier, N. Andronikos. W3C.<dt id=refsCOMPUTABLE>[COMPUTABLE]<dd>(Non-normative) \
<cite><a href=http://www.turingarchive.org/browse.php/B/12>On computable numbers, \
with an application to the Entscheidungsproblem</a></cite>, A. Turing. In \
<cite>Proceedings of the London Mathematical Society</cite>, series 2, volume 42, \
page  s 230-265. London Mathematical Society, 1937.<dt \
id=refsCOOKIES>[COOKIES]<dd><cite><a href=http://tools.ietf.org/html/rfc6265>HTTP \
State Management Mechanism</a></cite>, A. Barth. IETF.<dt \
id=refsCP50220>[CP50220]<dd>(Non-normative) <cite><a \
href=http://www.iana.org/assignments/charset-reg/CP50220>CP50220</a></cite>, Y. \
Naruse. IANA.<dt id=refsCSP>[CSP]<dd>(Non-normative) <cite><a \
href=https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html>Content \
Security Policy</a></cite>, B. Sterne, A. Barth. W3C.<dt id=refsCSS>[CSS]<dd><cite><a \
href=http://www.w3.org/TR/CSS2/>Cascading Style Sheets Level 2 Revision 1</a></cite>, \
B. Bos, T. Çelik, I. Hickson, H. Lie. W3C.<dt \
id=refsCSSANIMATIONS>[CSSANIMATIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-animations/>CSS Animations</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, S. Galineau, L. Baron. W3C.<dt \
id=refsCSSATTR>[CSSATTR]<dd><cite><a href=http://dev.w3.org/csswg/css-style-attr/>CSS \
Styling Attribute Syntax</a></cite>, T. Çelik, E. Etemad. W3C.<dt \
id=refsCSSCOLOR>[CSSCOLOR]<dd><cite><a href=http://dev.w3.org/csswg/css-color/>CSS \
Color Module Level 3</a></cite>, T. Çelik, C. Lilley, L. Baron. W3C.<dt \
id=refsCSSFONTLOAD>[CSSFONTLOAD]<dd><cite><a \
href=http://dev.w3.org/csswg/css-font-loading/>CSS Font Loading</a></cite>, T. \
Atkins, J. Daggett. W3C.<dt id=refsCSSFONTS>[CSSFONTS]<dd><cite><a \
href=http://dev.w3.org/csswg/css-fonts/>CSS Fonts</a></cite>, J. Daggett. W3C.<dt \
id=refsCSSGC>[CSSGC]<dd><cite><a href=http://dev.w3.org/csswg/css-content>CSS \
Generated Content</a></cite>, H. Lie, E. Etemad, I. Hickson. W3C.<dt \
id=refsCSSIMAGES>[CSSIMAGES]<dd><cite><a href=http://dev.w3.org/csswg/css-images/>CSS \
Image Values and Replaced Content Module</a></cite>, E. Etemad, T. Atkins. W3C.<dt \
id=refsCSSOM>[CSSOM]<dd><cite><a href=http://dev.w3.org/csswg/cssom/>Cascading Style \
Sheets Object Model (CSSOM)</a></cite>, S. Pieters, G. Adams. W3C.<dt \
id=refsCSSOMVIEW>[CSS  OMVIEW]<dd><cite><a \
href=http://dev.w3.org/csswg/cssom-view/>CSSOM View Module</a></cite>, S. Pieters, G. \
Adams. W3C.<dt id=refsCSSRUBY>[CSSRUBY]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ruby/>CSS3 Ruby Module</a></cite>, R. Ishida. \
W3C.<dt id=refsCSSTRANSITIONS>[CSSTRANSITIONS]<dd>(Non-normative) <cite><a \
href=http://dev.w3.org/csswg/css-transitions/>CSS Transitions</a></cite>, D. Jackson, \
D. Hyatt, C. Marrin, L. Baron. W3C.<dt id=refsCSSUI>[CSSUI]<dd><cite><a \
href=http://dev.w3.org/csswg/css-ui/>CSS3 Basic User Interface Module</a></cite>, T. \
Çelik. W3C.<dt id=refsCSSSCOPED>[CSSSCOPED]<dd><cite><a \
href=http://dev.w3.org/csswg/css-scoping/>CSS Scoping</a></cite>, T. Atkins, E. \
Etemad. W3C.<dt id=refsCSSSYNTAX>[CSSSYNTAX]<dd><cite><a \
href=http://dev.w3.org/csswg/css-syntax/>CSS Syntax</a></cite>, T. Atkins, S. Sapin. \
W3C.<dt id=refsCSSVALUES>[CSSVALUES]<dd><cite><a \
href=http://dev.w3.org/csswg/css-values/>CSS3 Values and Units</a></cite>, H. Lie, T. \
Atkins, E. Etemad. W  3C.<dt id=refsCSSWM>[CSSWM]<dd><cite><a \
href=http://dev.w3.org/csswg/css-writing-modes>CSS Writing Modes</a></cite>, E. \
Etemad, K. Ishii. W3C.<dt id=refsDASH>[DASH]<dd><cite><a \
href="http://www.iso.org/iso/home/store/catalogue_ics/catalogue_detail_ics.htm?csnumber=65274">Dynamic \
adaptive streaming over HTTP (DASH)</a></cite>. ISO.<dt id=refsDOM>[DOM]<dd><cite><a \
href=https://dom.spec.whatwg.org/>DOM</a></cite>, A. van Kesteren, A. Gregor, Ms2ger. \
WHATWG.<dt id=refsDOMEVENTS>[DOMEVENTS]<dd><cite><a \
href=https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html>Document \
Object Model (DOM) Level 3 Events Specification</a></cite>, G. Kacmarcik, T. \
Leithead, J. Rossi, D. Schepers, B. Höhrmann, P. Le Hégaret, T. Pixley. W3C.<dt \
id=refsDOMPARSING>[DOMPARSING]<dd><cite><a \
href=https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html lang=en-US>DOM Parsing \
and Serialization</a></cite>, T. Leithead. W3C.<dt \
id=refsDOT>[DOT]<dd>(Non-normative) <cite><a href=http://www.grap  \
hviz.org/content/dot-language>The DOT Language</a></cite>. Graphviz.<dt \
id=refsE163>[E163]<dd><cite>Recommendation E.163 — Numbering Plan for The \
International Telephone Service</cite>, CCITT Blue Book, Fascicle II.2, pp. 128-134, \
November 1988.<dt id=refsECMA262>[ECMA262]<dd><cite><a \
href=http://people.mozilla.org/~jorendorff/es6-draft.html>ECMAScript Language \
Specification</a></cite>. ECMA.<dt id=refsEDITING>[EDITING]<dd><cite><a \
href=https://dvcs.w3.org/hg/editing/raw-file/tip/editing.html>HTML Editing \
APIs</a></cite>, A. Gregor. W3C Editing APIs CG.<dt \
id=refsENCODING>[ENCODING]<dd><cite><a \
href=https://encoding.spec.whatwg.org/>Encoding</a></cite>, A. van Kesteren, J. Bell. \
WHATWG.<dt id=refsFETCH>[FETCH]<dd><cite><a \
href=https://fetch.spec.whatwg.org/>Fetch</a></cite>, A. van Kesteren. WHATWG.<dt \
id=refsFILEAPI>[FILEAPI]<dd><cite><a href=http://dev.w3.org/2006/webapi/FileAPI/>File \
API</a></cite>, A. Ranganathan. W3C.<dt id=refsFULLSCREEN>[FULLSCREEN]<dd><cite><a \
href  =https://fullscreen.spec.whatwg.org/>Fullscreen</a></cite>, A. van Kesteren, T. \
Çelik. WHATWG.<dt id=refsGIF>[GIF]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/Graphics/GIF/spec-gif89a.txt>Graphics Interchange \
Format</a></cite>. CompuServe.<dt id=refsGRAPHICS>[GRAPHICS]<dd>(Non-normative) \
<cite>Computer Graphics: Principles and Practice in C</cite>, Second Edition, J. \
Foley, A. van Dam, S. Feiner, J. Hughes. Addison-Wesley. ISBN 0-201-84840-6.<dt \
id=refsGREGORIAN>[GREGORIAN]<dd>(Non-normative) <cite>Inter Gravissimas</cite>, A. \
Lilius, C. Clavius. Gregory XIII Papal Bull, February 1582.<dt \
id=refsHRT>[HRT]<dd><cite><a \
href=https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/HighResolutionTime/Overview.html>High \
Resolution Time</a></cite>, J. Mann. W3C.<dt id=refsHTTP>[HTTP]<dd><cite><a \
href=http://tools.ietf.org/html/rfc7230>Hypertext Transfer Protocol (HTTP/1.1): \
Message Syntax and Routing</a></cite>, R. Fielding, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.or  g/html/rfc7231>Hypertext Transfer Protocol (HTTP/1.1): \
Semantics and Content</a></cite>, R. Fielding, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7232>Hypertext Transfer Protocol (HTTP/1.1): \
Conditional Requests</a></cite>, R. Fielding, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7233>Hypertext Transfer Protocol (HTTP/1.1): Range \
Requests</a></cite>, R. Fielding, Y. Lafon, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7234>Hypertext Transfer Protocol (HTTP/1.1): \
Caching</a></cite>, R. Fielding, M. Nottingham, J. Reschke. IETF.<dd><cite><a \
href=http://tools.ietf.org/html/rfc7235>Hypertext Transfer Protocol (HTTP/1.1): \
Authentication</a></cite>, R. Fielding, J. Reschke. IETF.<dt \
id=refsIANAPERMHEADERS>[IANAPERMHEADERS]<dd><cite><a \
href=http://www.iana.org/assignments/message-headers/perm-headers.html>Permanent \
Message Header Field Names</a></cite>. IANA.<dt id=refsINBAND>[INBAND]<dd><cite><a \
href=http://dev.w3.org/ht  ml5/html-sourcing-inband-tracks/>Sourcing In-band Media \
Resource Tracks from Media Containers into HTML</a></cite>, S. Pfeiffer, B. Lund. \
W3C.<dt id=refsISO3166>[ISO3166]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/country_codes.htm>ISO 3166: Codes for the \
representation of names of countries and their subdivisions</a></cite>. ISO.<dt \
id=refsISO4217>[ISO4217]<dd><cite><a \
href=http://www.iso.org/iso/home/standards/currency_codes.htm>ISO 4217: Codes for the \
representation of currencies and funds</a></cite>. ISO.<dt \
id=refsISO8601>[ISO8601]<dd>(Non-normative) <cite><a \
href="http://isotc.iso.org/livelink/livelink/4021199/ISO_8601_2004_E.zip?func=doc.Fetch&amp;nodeid=4021199">ISO8601: \
Data elements and interchange formats — Information interchange — Representation \
of dates and times</a></cite>. ISO.<dt id=refsJLREQ>[JLREQ]<dd><cite><a \
href=http://www.w3.org/TR/jlreq/>Requirements for Japanese Text Layout</a></cite>. \
W3C.<dt id=refsJPEG>[JPEG]<dd><cite><a href=http:  \
//www.w3.org/Graphics/JPEG/jfif3.pdf>JPEG File Interchange Format</a></cite>, E. \
Hamilton.<dt id=refsJSON>[JSON]<dd><cite><a \
href=http://tools.ietf.org/html/rfc4627>The application/json Media Type for \
JavaScript Object Notation (JSON)</a></cite>, D. Crockford. IETF.<dt \
id=refsMAILTO>[MAILTO]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc6068>The 'mailto' URI scheme</a></cite>, M. \
Duerst, L. Masinter, J. Zawinski. IETF.<dt id=refsMATHML>[MATHML]<dd><cite><a \
href=http://www.w3.org/TR/MathML/>Mathematical Markup Language (MathML)</a></cite>, \
D. Carlisle, P. Ion, R. Miner, N. Poppelier. W3C.<dt \
id=refsMEDIAFRAG>[MEDIAFRAG]<dd><cite><a \
href=http://www.w3.org/2008/WebVideo/Fragments/WD-media-fragments-spec/>Media \
Fragments URI</a></cite>, R. Troncy, E. Mannens, S. Pfeiffer, D. Van Deursen. W3C.<dt \
id=refsMEDIASOURCE>[MEDIASOURCE]<dd><cite><a \
href=https://dvcs.w3.org/hg/html-media/raw-file/tip/media-source/media-source.html>Media \
Source Extensions</a></cite>, A. Co  lwell, A. Bateman, M. Watson. W3C.<dt \
id=refsMEDIASTREAM>[MEDIASTREAM]<dd><cite><a \
href=http://w3c.github.io/mediacapture-main/getusermedia.html>Media Capture and \
Streams</a></cite>, D. Burnett, A. Bergkvist, C. Jennings, A. Narayanan. W3C.<dt \
id=refsMFREL>[MFREL]<dd><cite><a \
href=http://microformats.org/wiki/existing-rel-values#HTML5_link_type_extensions>Microformats \
Wiki: existing rel values</a></cite>. Microformats.<dt \
id=refsMIMESNIFF>[MIMESNIFF]<dd><cite><a href=https://mimesniff.spec.whatwg.org/>MIME \
Sniffing</a></cite>, G. Hemsley. WHATWG.<dt id=refsMNG>[MNG]<dd><cite><a \
href=http://www.libpng.org/pub/mng/spec/>MNG (Multiple-image Network Graphics) \
Format</a></cite>. G. Randers-Pehrson.<dt id=refsMPEG2>[MPEG2]<dd><cite>ISO/IEC \
13818-1: Information technology — Generic coding of moving pictures and associated \
audio information: Systems</cite>. ISO/IEC.<dt id=refsMPEG4>[MPEG4]<dd><cite>ISO/IEC \
14496-12: ISO base media file format</cite>. ISO/IEC.<dt id=refsMQ>[MQ]<dd>  <cite><a \
href=http://drafts.csswg.org/mediaqueries/>Media Queries</a></cite>, H. Lie, T. \
Çelik, D. Glazman, A. van Kesteren. W3C.<dt id=refsNPAPI>[NPAPI]<dd>(Non-normative) \
<cite><a href=https://developer.mozilla.org/en-US/Add-ons/Plugins/Gecko_Plugin_API_Reference>Gecko \
Plugin API Reference</a></cite>. Mozilla.<dt \
id=refsOGGSKELETONHEADERS>[OGGSKELETONHEADERS]<dd><cite><a \
href=http://wiki.xiph.org/SkeletonHeaders>SkeletonHeaders</a></cite>. Xiph.Org.<dt \
id=refsOPENSEARCH>[OPENSEARCH]<dd><cite><a \
href=http://www.opensearch.org/Specifications/OpenSearch/1.1#Autodiscovery_in_HTML.2FXHTML>Autodiscovery \
in HTML/XHTML</a></cite>. In <cite>OpenSearch 1.1 Draft 4</cite>, Section 4.6.2. \
OpenSearch.org.<dt id=refsORIGIN>[ORIGIN]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6454>The Web Origin Concept</a></cite>, A. Barth. \
IETF.<dt id=refsPAGEVIS>[PAGEVIS]<dd>(Non-normative) <cite><a \
href=https://w3c.github.io/web-performance/specs/PageVisibility/Overview.html>Page \
Visibility</a></  cite>, J. Mann, A. Jain. W3C.<dt \
id=refsPDF>[PDF]<dd>(Non-normative) <cite><a \
href=http://www.adobe.com/devnet/acrobat/pdfs/PDF32000_2008.pdf>Document management \
— Portable document format — Part 1: PDF</a></cite>. ISO.<dt \
id=refsPINGBACK>[PINGBACK]<dd><cite><a \
href=http://www.hixie.ch/specs/pingback/pingback>Pingback 1.0</a></cite>, S. \
Langridge, I. Hickson.<dt id=refsPNG>[PNG]<dd><cite><a \
href=http://www.w3.org/TR/PNG/>Portable Network Graphics (PNG) \
Specification</a></cite>, D. Duce. W3C.<dt \
id=refsPOINTERLOCK>[POINTERLOCK]<dd><cite><a \
href=https://dvcs.w3.org/hg/pointerlock/raw-file/default/index.html>Pointer \
 rg/>Public Suffix List</a></cite>.
    Mozilla Foundation.<dt id=refsRFC1034>[RFC1034]<dd><cite><a \
href=http://tools.ietf.org/html/rfc1034>Domain Names - Concepts and \
Facilities</a></cite>, P. Mockapetris. IETF, November 1987.<dt \
id=refsRFC1123>[RFC1123]<dd><cite><a \
href=http://tools.ietf.org/html/rfc1123>Requirements for Internet Hosts -- \
Application and Support</a></cite>, R. Braden. IETF, October 1989.<dt \
id=refsRFC1345>[RFC1345]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1345>Character Mnemonics and Character \
Sets</a></cite>, K. Simonsen. IETF.<dt id=refsRFC1468>[RFC1468]<dd>(Non-normative) \
<cite><a href=http://tools.ietf.org/html/rfc1468>Japanese Character Encoding for \
Internet Messages</a></cite>, J. Murai, M. Crispin, E. van der Poel. IETF.<dt \
id=refsRFC1554>[RFC1554]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1554>ISO-2022-JP-2: Multilingual Extension of \
ISO-2022-JP</a></cite>, M. Ohta, K. Handa. IETF.<dt \
id=refsRFC1557>[RFC1557]<dd>(Non-normative) <cite><a href=  \
http://tools.ietf.org/html/rfc1557>Korean Character Encoding for Internet \
Messages</a></cite>, U. Choi, K. Chon, H. Park. IETF.<dt \
id=refsRFC1842>[RFC1842]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1842>ASCII Printable Characters-Based Chinese \
Character Encoding for Internet Messages</a></cite>, Y. Wei, Y. Zhang, J. Li, J. \
Ding, Y. Jiang. IETF.<dt id=refsRFC1922>[RFC1922]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc1922>Chinese Character Encoding for Internet \
Messages</a></cite>, HF. Zhu, DY. Hu, ZG. Wang, TC. Kao, WCH. Chang, M. Crispin. \
IETF.<dt id=refsRFC2046>[RFC2046]<dd><cite><a \
href=http://tools.ietf.org/html/rfc2046>Multipurpose Internet Mail Extensions (MIME) \
Part Two: Media Types</a></cite>, N. Freed, N.  Borenstein. IETF.<dt \
id=refsRFC2119>[RFC2119]<dd><cite><a href=http://tools.ietf.org/html/rfc2119>Key \
words for use in RFCs to Indicate Requirement Levels</a></cite>, S. Bradner. IETF.<dt \
id=refsRFC2237>[RFC2237]<dd>(Non-norm  ative) <cite><a \
href=http://tools.ietf.org/html/rfc2237>Japanese Character Encoding for Internet \
Messages</a></cite>, K. Tamaru. IETF.<dt id=refsRFC3447>[RFC3447]<dd><cite><a \
href=http://tools.ietf.org/html/rfc3447>Public-Key Cryptography Standards (PKCS) #1: \
RSA Cryptography Specifications</a></cite>, J. Jonsson, B. Kaliski. IETF.<dt \
id=refsRFC2318>[RFC2318]<dd><cite><a href=http://tools.ietf.org/html/rfc2318>The \
text/css Media Type</a></cite>, H. Lie, B. Bos, C. Lilley. IETF.<dt \
id=refsRFC2388>[RFC2388]<dd><cite><a \
href=http://tools.ietf.org/html/rfc2388>Returning Values from Forms: \
multipart/form-data</a></cite>, L. Masinter. IETF.<dt \
id=refsRFC2397>[RFC2397]<dd><cite><a href=http://tools.ietf.org/html/rfc2397>The \
"data" URL scheme</a></cite>, L. Masinter. IETF.<dt \
id=refsRFC2445>[RFC2445]<dd><cite><a href=http://tools.ietf.org/html/rfc2445>Internet \
Calendaring and Scheduling Core Object Specification (iCalendar)</a></cite>, F. \
Dawson, D. Stenerson. IETF.<dt id=refsRFC248  3>[RFC2483]<dd><cite><a \
href=http://tools.ietf.org/html/rfc2483>URI Resolution Services Necessary for URN \
Resolution</a></cite>, M. Mealling, R. Daniel. IETF.<dt \
id=refsRFC3279>[RFC3279]<dd><cite><a \
href=http://tools.ietf.org/html/rfc3279>Algorithms and Identifiers for the Internet \
X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) \
Profile</a></cite>, W. Polk, R. Housley, L. Bassham. IETF.<dt \
id=refsRFC3676>[RFC3676]<dd><cite><a href=http://tools.ietf.org/html/rfc3676>The \
Text/Plain Format and DelSp Parameters</a></cite>, R. Gellens. IETF.<dt \
id=refsRFC3864>[RFC3864]<dd><cite><a \
href=http://tools.ietf.org/html/rfc3864>Registration Procedures for Message Header \
Fields</a></cite>, G. Klyne, M. Nottingham, J. Mogul. IETF.<dt \
id=refsRFC4329>[RFC4329]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc4329>Scripting Media Types</a></cite>, B. \
Höhrmann. IETF.<dt id=refsRFC4337>[RFC4337]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.  org/html/rfc4337>MIME Type Registration for \
MPEG-4</a></cite>, Y. Lim, D. Singer. IETF.<dt id=refsRFC4395>[RFC4395]<dd><cite><a \
href=http://tools.ietf.org/html/rfc4395>Guidelines and Registration Procedures for \
New URI Schemes</a></cite>, T. Hansen, T. Hardie, L. Masinter. IETF.<dt \
id=refsRFC4648>[RFC4648]<dd><cite><a href=http://tools.ietf.org/html/rfc4648>The \
Base16, Base32, and Base64 Data Encodings</a></cite>, S. Josefsson. IETF.<dt \
id=refsRFC5280>[RFC5280]<dd><cite><a href=http://tools.ietf.org/html/rfc5280>Internet \
X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) \
Profile</a></cite>, D. Cooper, S. Santesson, S. Farrell, S. Boeyen, R. Housley, W. \
Polk. IETF.<dt id=refsRFC5322>[RFC5322]<dd><cite><a \
href=http://tools.ietf.org/html/rfc5322>Internet Message Format</a></cite>, P. \
Resnick. IETF.<dt id=refsRFC6381>[RFC6381]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6381>The 'Codecs' and 'Profiles' Parameters for \
"Bucket" Media Types</a></ci  te>, R. Gellens, D. Singer, P. Frojdh. IETF.<dt \
id=refsRFC6266>[RFC6266]<dd><cite><a href=http://tools.ietf.org/html/rfc6266>Use of \
the Content-Disposition Header Field in the Hypertext Transfer Protocol \
(HTTP)</a></cite>, J. Reschke. IETF.<dt id=refsRFC6350>[RFC6350]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6350>vCard Format Specification</a></cite>, S. \
Perreault. IETF.<dt id=refsRFC7303>[RFC7303]<dd><cite><a \
href=http://tools.ietf.org/html/rfc7303>XML Media Types</a></cite>, H. Thompson, C. \
Lilley. IETF.<dt id=refsSCSU>[SCSU]<dd>(Non-normative) <cite><a \
href=http://www.unicode.org/reports/tr6/>UTR #6: A Standard Compression Scheme For \
Unicode</a></cite>, M. Wolf, K. Whistler, C. Wicksteed, M. Davis, A. Freytag, M. \
Scherer. Unicode Consortium.<dt id=refsSELECTORS>[SELECTORS]<dd><cite><a \
href=http://dev.w3.org/csswg/selectors/>Selectors</a></cite>, E. Etemad, T. Çelik, \
D. Glazman, I. Hickson, P. Linss, J. Williams. W3C.<dt \
id=refsSMS>[SMS]<dd>(Non-normative) <cite><a   \
href=http://tools.ietf.org/html/rfc5724>URI Scheme for Global System for Mobile \
Communications (GSM) Short Message Service (SMS)</a></cite>, E. Wilde, A. \
Vaha-Sipila. IETF.<dt id=refsSRGB>[SRGB]<dd><cite lang=en-GB><a \
href="http://webstore.iec.ch/webstore/webstore.nsf/artnum/025408!OpenDocument&amp;Click=">IEC \
61966-2-1: Multimedia systems and equipment — Colour measurement and management — \
Part 2-1: Colour management — Default RGB colour space — sRGB</a></cite>. IEC.<dt \
id=refsSVG>[SVG]<dd><cite><a href=http://www.w3.org/TR/SVGTiny12/>Scalable Vector \
Graphics (SVG) Tiny 1.2 Specification</a></cite>, O. Andersson, R. Berjon, E. \
Dahlström, A. Emmons, J. Ferraiolo, A. Grasso, V. Hardy, S. Hayman, D. Jackson, C. \
Lilley, C. McCormack, A. Neumann, C. Northway, A. Quint, N. Ramani, D. Schepers, A. \
Shellshear. W3C.<dt id=refsTOR>[TOR]<dd>(Non-normative) <cite><a \
href=https://www.torproject.org/>Tor</a></cite>.<dt id=refsTOUCH>[TOUCH]<dd><cite><a \
href=https://dvcs.w3.org/hg  /webevents/raw-file/v1/touchevents.html>Touch \
Events</a></cite>, D. Schepers, S. Moon, M. Brubeck, A. Barstow. W3C.<dt \
id=refsTZDATABASE>[TZDATABASE]<dd>(Non-normative) <cite><a \
href=http://www.iana.org/time-zones>Time Zone Database</a></cite>. IANA.<dt \
id=refsUAAG>[UAAG]<dd>(Non-normative) <cite><a href=http://www.w3.org/TR/UAAG20/>User \
Agent Accessibility Guidelines (UAAG) 2.0</a></cite>, J. Allan, K. Ford, J. Richards, \
J. Spellman. W3C.<dt id=refsUCA>[UCA]<dd><cite><a \
href=http://www.unicode.org/reports/tr10/>UTR #10: Unicode Collation \
Algorithm</a></cite>, M. Davis, K. Whistler. Unicode Consortium.<dt \
id=refsUNICODE>[UNICODE]<dd><cite><a href=http://www.unicode.org/versions/>The \
Unicode Standard</a></cite>. Unicode Consortium.<dt \
id=refsUNIVCHARDET>[UNIVCHARDET]<dd>(Non-normative) <cite><a \
href=http://www-archive.mozilla.org/projects/intl/UniversalCharsetDetection.html>A \
composite approach to language/encoding detection</a></cite>, S. Li, K. Momoi. \
Netscape. In <cite>Pro  ceedings of the 19th International Unicode \
Conference</cite>.<dt id=refsURL>[URL]<dd><cite><a \
href=https://url.spec.whatwg.org/>URL</a></cite>, A. van Kesteren. WHATWG.<dt \
id=refsURN>[URN]<dd><cite><a href=http://tools.ietf.org/html/rfc2141>URN \
Syntax</a></cite>, R. Moats. IETF.<dt id=refsUTF7>[UTF7]<dd>(Non-normative) <cite><a \
href=http://tools.ietf.org/html/rfc2152>UTF-7: A Mail-Safe Transformation Format of \
Unicode</a></cite>, D. Goldsmith, M. Davis. IETF.<dt \
id=refsUTF8DET>[UTF8DET]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/International/questions/qa-forms-utf-8>Multilingual form \
encoding</a></cite>, M. Dürst. W3C.<dt id=refsUTR36>[UTR36]<dd>(Non-normative) \
<cite><a href=http://www.unicode.org/reports/tr36/>UTR #36: Unicode Security \
Considerations</a></cite>, M. Davis, M. Suignard. Unicode Consortium.<dt \
id=refsWCAG>[WCAG]<dd>(Non-normative) <cite><a href=http://www.w3.org/TR/WCAG20/>Web \
Content Accessibility Guidelines (WCAG) 2.0</a></cite>, B. Caldwell, M. Co  oper, L. \
Reid, G. Vanderheiden. W3C.<dt id=refsWEBGL>[WEBGL]<dd><cite><a \
href=http://www.khronos.org/registry/webgl/specs/latest/>WebGL \
Specification</a></cite>, D. Jackson. Khronos Group.<dt \
id=refsWEBIDL>[WEBIDL]<dd><cite><a href=http://dev.w3.org/2006/webapi/WebIDL/>Web \
IDL</a></cite>, C. McCormack. W3C.<dt id=refsWEBLINK>[WEBLINK]<dd><cite><a \
href=http://tools.ietf.org/html/rfc5988>Web Linking</a></cite>, M. Nottingham. \
IETF.<dt id=refsWEBMCG>[WEBMCG]<dd><cite><a \
href=http://www.webmproject.org/code/specs/container/>WebM Container \
Guidelines</a></cite>. The WebM Project.<dt id=refsWEBVTT>[WEBVTT]<dd><cite><a \
href=http://dev.w3.org/html5/webvtt/>WebVTT</a></cite>, I. Hickson. W3C.<dt \
id=refsWHATWGWIKI>[WHATWGWIKI]<dd><cite><a href=https://wiki.whatwg.org/>The WHATWG \
Wiki</a></cite>. WHATWG.<dt id=refsWSP>[WSP]<dd><cite><a \
href=http://tools.ietf.org/html/rfc6455>The WebSocket protocol</a></cite>, I. Fette, \
A. Melnikov. IETF.<dt id=refsX121>[X121]<dd><cite>Recommendation X.  121 — \
International Numbering Plan for Public Data Networks</cite>, CCITT Blue Book, \
Fascicle VIII.3, pp. 317-332.<dt id=refsX690>[X690]<dd><cite><a \
href=http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf>Recommendation \
X.690 — Information Technology — ASN.1 Encoding Rules — Specification of Basic \
Encoding Rules (BER), Canonical Encoding Rules (CER), and Distinguished Encoding \
Rules (DER)</a></cite>. International Telecommunication Union.<dt \
id=refsXFN>[XFN]<dd><cite><a href=http://gmpg.org/xfn/11>XFN 1.1 profile</a></cite>, \
T. Çelik, M. Mullenweg, E. Meyer. GMPG.<dt id=refsXHR>[XHR]<dd><cite><a \
href=https://xhr.spec.whatwg.org/><code>XMLHttpRequest</code></a></cite>, A. van \
Kesteren. WHATWG.<dt id=refsXML>[XML]<dd><cite><a \
href=http://www.w3.org/TR/xml/>Extensible Markup Language</a></cite>, T. Bray, J. \
Paoli, C. Sperberg-McQueen, E. Maler, F. Yergeau. W3C.<dt \
id=refsXMLBASE>[XMLBASE]<dd><cite><a href=http://www.w3.org/TR/xmlbase/>XML \
Base</a></cit  e>, J. Marsh, R. Tobin. W3C.<dt id=refsXMLNS>[XMLNS]<dd><cite><a \
href=http://www.w3.org/TR/xml-names/>Namespaces in XML</a></cite>, T. Bray, D. \
Hollander, A. Layman, R. Tobin. W3C.<dt id=refsXMLSSPI>[XMLSSPI]<dd><cite><a \
href=http://www.w3.org/TR/xml-stylesheet/>Associating Style Sheets with XML \
documents</a></cite>, J. Clark, S. Pieters, H. Thompson. W3C.<dt \
id=refsXPATH10>[XPATH10]<dd><cite><a \
href=http://www.w3.org/TR/1999/REC-xpath-19991116/>XML Path Language (XPath) Version \
1.0</a></cite>, J. Clark, S. DeRose. W3C.<dt \
id=refsXSLT10>[XSLT10]<dd>(Non-normative) <cite><a \
href=http://www.w3.org/TR/1999/REC-xslt-19991116>XSL Transformations (XSLT) Version \
1.0</a></cite>, J. Clark. W3C.</dl>  
 

Modified: source
===================================================================
--- source	2014-11-12 19:34:25 UTC (rev 8848)
+++ source	2014-11-19 21:56:43 UTC (rev 8849)
@@ -3131,6 +3131,11 @@
      <li>The <dfn>fully exit fullscreen</dfn> algorithm</li>
     </ul>
 
+    <p>The <cite>High Resolution Time</cite> specification provides the
+    <dfn><code>Performance</code></dfn> object's <dfn><code \
data-x="dom-Performance-now" +    \
data-x-href="http://www.w3.org/TR/hr-time/#dom-performance-now">now()</code></dfn> \
method. <ref +    spec=HRT></p>
+
    </dd>
 
 
@@ -77719,6 +77724,9 @@
   void <span data-x="dom-print">print</span>();
   any <span data-x="dom-showModalDialog">showModalDialog</span>(DOMString url, \
optional any argument<!--, optional DOMString features-->); // deprecated  
+  long <span data-x="dom-window-requestAnimationFrame">requestAnimationFrame</span>(<span>FrameRequestCallback</span> \
callback); +  void <span \
data-x="dom-window-cancelAnimationFrame">cancelAnimationFrame</span>(long handle); +
   void <span data-x="dom-window-postMessage">postMessage</span>(any message, \
DOMString targetOrigin, optional sequence&lt;<span>Transferable</span>&gt; transfer); \
};  <span>Window</span> implements <span>GlobalEventHandlers</span>;
@@ -85102,14 +85110,17 @@
 
   <h6>Runtime script errors in documents</h6>
 
-  <p>Whenever an uncaught runtime script error occurs in one of the scripts \
                associated with a
-  <code>Document</code>, the user agent must <span>report the error</span> for the \
relevant <span +  <p>When the user agent is to <dfn data-x="report the \
exception">report an exception</dfn> +  <var>E</var>, the user agent must \
<span>report the error</span> for the relevant <span  \
data-x="concept-script">script</span>, with the problematic position (line number and \
column  number) in the resource containing the script, using the <span>global \
object</span> specified by  the script's <span>settings object</span> as the target. \
If the error is still <i  data-x="concept-error-nothandled">not handled</i> after \
this, then the error may be reported to  the user.</p>
 
+  <p>When an exception is thrown during the execution of one of the scripts \
associated with a +  <code>Document</code>, and the exception is not caught, the user \
agent must <span>report the +  exception</span>.</p>
 
 
   <h6>The <code>ErrorEvent</code> interface</h6>
@@ -85296,7 +85307,7 @@
   agent must release the <span>storage mutex</span>.</p>
 
 
-  <h5>Processing model</h5>
+  <h5>Processing model</h5> <!-- EVENT LOOP -->
 
   <p>An <span>event loop</span> must continually run through the following steps for \
as long as it  exists:</p>
@@ -85337,20 +85348,76 @@
 
     <p><i>Update the rendering</i>: If this <span>event loop</span> is a \
                <span>browsing
     context</span> <span>event loop</span> (as opposed to a <a \
                href="#workers">worker</a>
-    <span>event loop</span>), then, if necessary, run the following steps.</p>
+    <span>event loop</span>), then, if necessary, run the following substeps.</p>
 
+    <p class="note">Whether these steps are necessary depends on the update \
frequency. For example, +    if the browser is attempting to achieve a 60 Hz refresh \
rate, then these steps are only +    necessary every 60th of a second (about 16.7ms). \
If the browser finds that the page is not able +    to sustain this rate, it might \
drop to a more sustainable 30Hz, rather than occasionally +    dropping frames. This \
specification does not mandate any particular model for when to update the +    \
rendering.</p> +
     <ol>
 
-     <li><p>Update the rendering or user interface of any <code>Document</code> or \
                <span>browsing
-     context</span> to reflect the current state.</p></li>
+     <li><p>Let <var>now</var> be the value that would be returned by the \
<code>Performance</code> +     object's <code \
data-x="dom-Performance-now">now()</code> method. <ref spec=HRT></p>  
+     <li>
+
+      <p>Let <var>docs</var> be the list of <code>Document</code> objects associated \
with the +      <span>event loop</span> in question, sorted arbitrarily except that \
the following conditions +      must be met:</p>
+
+      <ul>
+
+       <li><p>Any <code>Document</code> <var>B</var> that is <span>nested \
through</span> a +       <code>Document</code> <var>A</var> must be listed after \
<var>A</var> in the list.</p></li> +
+       <li><p>If there are two documents <var>A</var> and <var>B</var> whose <span \
data-x="browsing +       context">browsing contexts</span> are both <span \
data-x="nested browsing context">nested +       browsing contexts</span> and their \
<span data-x="browsing context container">browsing context +       containers</span> \
are both elements in the same <code>Document</code> <var>C</var>, then the +       \
order of <var>A</var> and <var>B</var> in the list must match the relative <span>tree \
+       order</span> of their respective <span data-x="browsing context \
container">browsing context +       containers</span> in <var>C</var>.</p></li>
+
+      </ul>
+
+      <p>In the steps below that iterate over <var>docs</var>, each \
<code>Document</code> must be +      processed in the order it is found in the \
list.</p> +
+     </li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, <dfn>run the resize \
steps</dfn> for +     that <code>Document</code>, passing in <var>now</var> as the \
timestamp. <ref +     spec="CSSOMVIEW"/></p></li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, <dfn>run the scroll \
steps</dfn> for +     that <code>Document</code>, passing in <var>now</var> as the \
timestamp. <ref +     spec="CSSOMVIEW"/></p></li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, <dfn>evaluate media \
queries and +     report changes</dfn> for that <code>Document</code>, passing in \
<var>now</var> as the +     timestamp. <ref spec="CSSOMVIEW"/></p></li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, <dfn>run CSS \
animations and send +     events</dfn> for that <code>Document</code>, passing in \
<var>now</var> as the timestamp. <ref +     spec="CSSANIMATIONS"/></p></li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, <dfn>run the \
fullscreen rendering +     steps</dfn> for that <code>Document</code>, passing in \
<var>now</var> as the timestamp. <ref +     spec="FULLSCREEN"/></p></li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, <span>run the \
animation frame +     callbacks</span> for that <code>Document</code>, passing in \
<var>now</var> as the +     timestamp.</p></li>
+
+     <li><p>For each <code>Document</code> in <var>docs</var>, update the rendering \
or user +     interface of that <code>Document</code> and its <span>browsing \
context</span> to reflect the +     current state.</p></li>
+
     </ol>
 
-    <p class="note">Whether these steps are necessary depends on the update \
                frequency. For example,
-    if the browser is attempting to achieve a 60 Hz refresh rate, then these steps \
                are only
-    necessary every 60th of a second (about 16.7ms). This specification does not \
                mandate any
-    particular model for when to update the rendering.</p>
-
    </li>
 
    <li><p>If this is a <a href="#workers">worker</a> <span>event loop</span> (i.e. \
one running for a @@ -89860,6 +89927,70 @@
 
 <!--TOPIC:DOM APIs-->
 
+  <h3>Animation Frames</h3>
+
+  <p>Each <code>Document</code> has a <dfn>list of animation frame callbacks</dfn>, \
which must be +  initially empty, and an <dfn>animation frame callback \
identifier</dfn>, which is a number which +  must initially be zero.</p>
+
+  <p>When the <dfn><code
+  data-x="dom-window-requestAnimationFrame">requestAnimationFrame()</code></dfn> \
method is called, +  the user agent must run the following steps:</p>
+
+  <ol>
+
+   <li><p>Let <var>document</var> be <span data-x="concept-document-window">the
+   <code>Window</code> object's <code>Document</code> object</span>.</p></li>
+
+   <li><p>Increment <var>document</var>'s <span>animation frame callback \
identifier</span> by +   one.</p></li>
+
+   <li><p>Append the method's argument to <var>document</var>'s <span>list of \
animation frame +   callbacks</span>, associated with <var>document</var>'s \
<span>animation frame callback +   identifier</span>'s current value.</p></li>
+
+   <li><p>Return <var>document</var>'s <span>animation frame callback \
identifier</span>'s current +   value.</p></li>
+
+  </ol>
+
+  <p>When the <dfn><code
+  data-x="dom-window-cancelAnimationFrame">cancelAnimationFrame()</code></dfn> \
method is called, +  the user agent must run the following steps:</p>
+
+  <ol>
+
+   <li><p>Let <var>document</var> be <span data-x="concept-document-window">the
+   <code>Window</code> object's <code>Document</code> object</span>.</p></li>
+
+   <li><p>Find the entry in <var>document</var>'s <span>list of animation frame \
callbacks</span> +   that is associated with the value given by the method's \
argument.</p></li> +
+   <li><p>If there is such an entry, remove it from <var>document</var>'s <span>list \
of animation +   frame callbacks</span>.</p></li>
+
+  </ol>
+
+  <p>When the user agent is to <dfn>run the animation frame callbacks</dfn> for a
+  <code>Document</code> <var>doc</var> with a timestamp <var>now</var>, it must run \
the following +  steps:</p>
+
+  <ol>
+
+   <li><p>Let <var>callbacks</var> be a list of the entries in <var>doc</var>'s \
<span>list of +   animation frame callbacks</span>, in the order in which they were \
added to the list.</p></li> +
+   <li><p>Set <var>doc</var>'s <span>list of animation frame callbacks</span> to the \
empty +   list.</p></li>
+
+   <li><p>For each entry in <var>callbacks</var>, in order: invoke the callback, \
passing +   <var>now</var> as the only argument, and if an exception is thrown, \
<span>report the +   exception</span>. <ref spec=WEBIDL></p></li>
+
+  </ol>
+
+
+
   <h2 split-filename="comms" id="comms">Communication</h2>
 
   <h3>The <code>MessageEvent</code> interfaces</h3>
@@ -115862,6 +115993,10 @@
    <dt id="refsHPAAIG">[HPAAIG]</dt>
    <dd><cite><a href="http://dev.w3.org/html5/html-api-map/overview.html">HTML to \
Platform Accessibility APIs Implementation Guide</a></cite>. W3C.</dd>  
+   <dt id="refsHRT">[HRT]</dt>
+   <dd><cite><a href="https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/HighResolutionTime/Overview.html">High \
Resolution Time</a></cite>, J. Mann. W3C.</dd> +   <!-- or \
http://www.w3.org/TR/hr-time/ ? it's highly unclear what URL is the one that would \
have the latest changes --> +
    <dt id="refsHTML">[HTML]</dt>
    <dd><cite><a href="https://html.spec.whatwg.org/">HTML</a></cite>, I. Hickson. \
WHATWG.</dd>  

_______________________________________________
Commit-Watchers mailing list
Commit-Watchers@lists.whatwg.org
http://lists.whatwg.org/listinfo.cgi/commit-watchers-whatwg.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic