W3C home > Mailing lists > Public > public-dap-commits@w3.org > January 2010

2009/dap/system-info FPWD.html,1.2,1.3

From: Robin Berjon via cvs-syncmail <cvsmail@w3.org>
Date: Thu, 28 Jan 2010 15:55:36 +0000
To: public-dap-commits@w3.org
Message-Id: <E1NaWiW-0006Ib-Ol@lionel-hutz.w3.org>
Update of /sources/public/2009/dap/system-info
In directory hutz:/tmp/cvs-serv24195/system-info

Modified Files:
	FPWD.html 
Log Message:
bleached FPWD

Index: FPWD.html
===================================================================
RCS file: /sources/public/2009/dap/system-info/FPWD.html,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- FPWD.html	28 Jan 2010 15:44:02 -0000	1.2
+++ FPWD.html	28 Jan 2010 15:55:34 -0000	1.3
@@ -438,8 +438,8 @@
 pre.sh_sourceCode .sh_paren { color: red; }
 pre.sh_sourceCode .sh_attribute { color: #006400; }
 
-</style><link charset="utf-8" type="text/css" rel="stylesheet" href="http://www.w3.org/StyleSheets/TR/W3C-WD"></head><body style="display: inherit;"><div class="head"><p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width="72"></a></p><h1>The System Information API</h1><h2><acronym title="World Wide Web Consortium">W3C</acronym> Working Draft 28 January 2010</h2><dl><dt>This Version:</dt><dd><a href="http://www.w3.org/TR/2010/WD-system-info-api-20100128/">http://www.w3.org/TR/2010/WD-system-info-api-20100128/</a></dd><dt>Latest Published Version:</dt><dd><a href="http://www.w3.org/TR/system-info-api/">http://www.w3.org/TR/system-info-api/</a></dd><dt>Latest Editor's Draft:</dt><dd><a href="http://dev.w3.org/2009/dap/system-info/">http://dev.w3.org/2009/dap/system-info/</a></dd><dt>Editors:</dt><dd>Dzung Tran, <a href="http://intel.com">Intel</a></dd><dd>Max Froumentin, <a href="http://www.opera.com">Opera Software ASA</a></dd></dl><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2010 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium"><acronym title="World Wide Web Consortium">W3C</acronym></acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology"><acronym title="Massachusetts Institute of Technology">MIT</acronym></acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. <acronym title="World Wide Web Consortium">W3C</acronym> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p><hr></div>
-    <div class="introductory section" id="abstract"><h2>Abstract</h2>
+</style><link charset="utf-8" type="text/css" rel="stylesheet" href="http://www.w3.org/StyleSheets/TR/W3C-WD"></head><body style="display: inherit;"><div class="head"><p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width="72"></a></p><h1>The System Information API</h1><h2 id="w3c-working-draft-28-january-2010"><acronym title="World Wide Web Consortium">W3C</acronym> Working Draft 28 January 2010</h2><dl><dt>This Version:</dt><dd><a href="http://www.w3.org/TR/2010/WD-system-info-api-20100128/">http://www.w3.org/TR/2010/WD-system-info-api-20100128/</a></dd><dt>Latest Published Version:</dt><dd><a href="http://www.w3.org/TR/system-info-api/">http://www.w3.org/TR/system-info-api/</a></dd><dt>Latest Editor's Draft:</dt><dd><a href="http://dev.w3.org/2009/dap/system-info/">http://dev.w3.org/2009/dap/system-info/</a></dd><dt>Editors:</dt><dd>Dzung Tran, <a href="http://intel.com">Intel</a></dd><dd>Max Froumentin, <a href="http://www.opera.com">Opera Software ASA</a></dd></dl><p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2010 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium"><acronym title="World Wide Web Consortium">W3C</acronym></acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology"><acronym title="Massachusetts Institute of Technology">MIT</acronym></acronym></a>, <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. <acronym title="World Wide Web Consortium">W3C</acronym> <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p><hr></div>
+    <div class="introductory section" id="abstract"><h2 id="abstract-1">Abstract</h2>
       <p>This specification defines an API to provide Web applications
       with access to various properties of the system which they are
       running on. Specifically, properties pertaining to the device
@@ -447,18 +447,18 @@
       current network bandwidth. Additionally, some of those
       properties offer access to the environment around the device,
       such as ambient brightness or atmospheric pressure.</p>
-    </div><div id="sotd" class="introductory section"><h2>Status of This Document</h2><p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current <acronym title="World Wide Web Consortium">W3C</acronym> publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><acronym title="World Wide Web Consortium">W3C</acronym> technical reports index</a> at http://www.w3.org/TR/.</em></p>
+    </div><div id="sotd" class="introductory section"><h2 id="status-of-this-document">Status of This Document</h2><p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current <acronym title="World Wide Web Consortium">W3C</acronym> publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/"><acronym title="World Wide Web Consortium">W3C</acronym> technical reports index</a> at http://www.w3.org/TR/.</em></p>
       <p>This document represents the early consensus of the group on
       the scope and features of the proposed System Information
       API. Issues and editors notes in the document highlight some of
       the points on which the group is still working and would
       particularly like to get feedback.</p>
-    <p>This document was published by the <a href="http://www.w3.org/2009/dap/">Device APIs and Policy Working Group</a> as a First Public Working Draft. This document is intended to become a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation. If you wish to make comments regarding this document, please send them to <a href="mailto:public-device-apis@w3.org">public-device-apis@w3.org</a> (<a href="mailto:public-device-apis-request@w3.org?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-device-apis/">archives</a>). All feedback is welcome.</p><p>Publication as a Working Draft does not imply endorsement by the <acronym title="World Wide Web Consortium">W3C</acronym> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>. <acronym title="World Wide Web Consortium">W3C</acronym> maintains a <a href="http://www.w3.org/2004/01/pp-impl/43696/status" rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>.</p></div><div class="section" id="toc"><h2 class="introductory">Table of Contents</h2><ul class="toc"><li><a href="#introduction"><span class="secno">1. </span>Introduction</a></li><li><a href="#conformance"><span class="secno">2. </span>Conformance</a></li><li><a href="#security-and-privacy-considerations"><span class="secno">3. </span>Security and Privacy Considerations</a></li><li><ul class="toc"><li><a href="#privacy-considerations-for-implementors"><span class="secno">3.1 </span>Privacy considerations for implementors</a></li><li><a href="#privacy-considerations-for-recipients-of-system-information"><span class="secno">3.2 </span>Privacy considerations for recipients of system information</a></li><li><a href="#additional-implementation-considerations"><span class="secno">3.3 </span>Additional implementation considerations</a></li></ul></li><li><a href="#api-description---properties"><span class="secno">4. </span>API Description &amp; Properties</a></li><li><ul class="toc"><li><a href="#system-properties"><span class="secno">4.1 </span>System Properties</a></li><li><a href="#the-systeminfo-interface"><span class="secno">4.2 </span>The <span class="idlType formerLink idlType"><code>SystemInfo</code></span> interface</a></li><li><a href="#the-systemdevice-interface"><span class="secno">4.3 </span>The <span class="idlType formerLink idlType"><code>SystemDevice</code></span> interface</a></li><li><a href="#power"><span class="secno">4.4 </span>Power</a></li><li><a href="#extensibility"><span class="secno">4.5 </span>Extensibility</a></li><li><a href="#requirements---use-cases"><span class="secno">4.6 </span>Requirements &amp; Use cases</a></li><li><a href="#acknowledgements"><span class="secno">4.7 </span>Acknowledgements</a></li></ul></li><li><a href="#references"><span class="secno">A. </span>References</a></li><li><ul class="toc"><li><a href="#normative-references"><span class="secno">A.1 </span>Normative references</a></li><li><a href="#informative-references"><span class="secno">A.2 </span>Informative references</a></li></ul></li></ul></div>
+    <p>This document was published by the <a href="http://www.w3.org/2009/dap/">Device APIs and Policy Working Group</a> as a First Public Working Draft. This document is intended to become a <acronym title="World Wide Web Consortium">W3C</acronym> Recommendation. If you wish to make comments regarding this document, please send them to <a href="mailto:public-device-apis@w3.org">public-device-apis@w3.org</a> (<a href="mailto:public-device-apis-request@w3.org?subject=subscribe">subscribe</a>, <a href="http://lists.w3.org/Archives/Public/public-device-apis/">archives</a>). All feedback is welcome.</p><p>Publication as a Working Draft does not imply endorsement by the <acronym title="World Wide Web Consortium">W3C</acronym> Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.</p><p>This document was produced by a group operating under the <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5 February 2004 <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>. <acronym title="World Wide Web Consortium">W3C</acronym> maintains a <a href="http://www.w3.org/2004/01/pp-impl/43696/status" rel="disclosure">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the <acronym title="World Wide Web Consortium">W3C</acronym> Patent Policy</a>.</p></div><div class="section" id="toc"><h2 id="table-of-contents" class="introductory">Table of Contents</h2><ul class="toc"><li><a href="#introduction"><span class="secno">1. </span>Introduction</a></li><li><a href="#conformance"><span class="secno">2. </span>Conformance</a></li><li><a href="#security-and-privacy-considerations"><span class="secno">3. </span>Security and Privacy Considerations</a></li><li><ul class="toc"><li><a href="#privacy-considerations-for-implementors"><span class="secno">3.1 </span>Privacy considerations for implementors</a></li><li><a href="#privacy-considerations-for-recipients-of-system-information"><span class="secno">3.2 </span>Privacy considerations for recipients of system information</a></li><li><a href="#additional-implementation-considerations"><span class="secno">3.3 </span>Additional implementation considerations</a></li></ul></li><li><a href="#api-description---properties"><span class="secno">4. </span>API Description &amp; Properties</a></li><li><ul class="toc"><li><a href="#system-properties"><span class="secno">4.1 </span>System Properties</a></li><li><a href="#the-systeminfo-interface"><span class="secno">4.2 </span>The <span class="idlType formerLink idlType"><code>SystemInfo</code></span> interface</a></li><li><a href="#the-systemdevice-interface"><span class="secno">4.3 </span>The <span class="idlType formerLink idlType"><code>SystemDevice</code></span> interface</a></li><li><a href="#power"><span class="secno">4.4 </span>Power</a></li><li><a href="#extensibility"><span class="secno">4.5 </span>Extensibility</a></li><li><a href="#requirements---use-cases"><span class="secno">4.6 </span>Requirements &amp; Use cases</a></li><li><a href="#acknowledgements"><span class="secno">4.7 </span>Acknowledgements</a></li></ul></li><li><a href="#references"><span class="secno">A. </span>References</a></li><li><ul class="toc"><li><a href="#normative-references"><span class="secno">A.1 </span>Normative references</a></li><li><a href="#informative-references"><span class="secno">A.2 </span>Informative references</a></li></ul></li></ul></div>
 
     
 
     <div id="introduction" class="introduction section">
-      <h2><span class="secno">1. </span>Introduction</h2>
+      <h2 id="x1.-introduction"><span class="secno">1. </span>Introduction</h2>
       <p>In order for web applications to gain access to information
       only available to an operating system's native applications,
       they must be able to access various data present on the device,
@@ -472,12 +472,12 @@
 
     </div>
 
-    <div class="section" id="conformance"><h2><span class="secno">2. </span>Conformance</h2><p>As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.</p>
+    <div class="section" id="conformance"><h2 id="x2.-conformance"><span class="secno">2. </span>Conformance</h2><p>As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.</p>
 <p>The key words <em title="must" class="rfc2119">must</em>, <em title="must not" class="rfc2119">must not</em>, <em title="required" class="rfc2119">required</em>, <em title="should" class="rfc2119">should</em>, <em title="should not" class="rfc2119">should not</em>, <em title="recommended" class="rfc2119">recommended</em>, <em title="may" class="rfc2119">may</em>, and <em title="optional" class="rfc2119">optional</em> in this specification are to be interpreted as described in [<a href="#bib-RFC2119" rel="biblioentry" class="bibref">RFC2119</a>].</p>
 </div>
 
     <div id="security-and-privacy-considerations" class="privacy section">
-      <h2><span class="secno">3. </span>Security and Privacy Considerations</h2>
+      <h2 id="x3.-security-and-privacy-considerations"><span class="secno">3. </span>Security and Privacy Considerations</h2>
       <p>A Web application using this API has access to device
       specific data which may contain information that the user
       considers private. For instance a user may object to a Web
@@ -491,7 +491,7 @@
       permission</p>
 
       <div class="section" id="privacy-considerations-for-implementors">
-        <h3><span class="secno">3.1 </span>Privacy considerations for implementors</h3> <p>User
+        <h3 id="x3.1-privacy-considerations-for-implementors"><span class="secno">3.1 </span>Privacy considerations for implementors</h3> <p>User
         Agents <em title="must not" class="rfc2119">must not</em> retrieve or update system information to Web
         sites without the express permission of the user. User Agents
         <em title="must" class="rfc2119">must</em> acquire permission through a user interface, unless they
@@ -524,7 +524,7 @@
         information.</p>
       </div>
       <div id="privacy-considerations-for-recipients-of-system-information" class="informative section">
-        <h3><span class="secno">3.2 </span>Privacy considerations for recipients of system information</h3><p><em>This section is non-normative.</em></p>
+        <h3 id="x3.2-privacy-considerations-for-recipients-of-system-information"><span class="secno">3.2 </span>Privacy considerations for recipients of system information</h3><p><em>This section is non-normative.</em></p>
         
         <p>Recipients should only request system information when
         necessary. Recipients should only use the system information
@@ -551,7 +551,7 @@
         the guidelines listed above.</p>
       </div>
       <div id="additional-implementation-considerations" class="informative section">
-        <h3><span class="secno">3.3 </span>Additional implementation considerations</h3><p><em>This section is non-normative.</em></p>
+        <h3 id="x3.3-additional-implementation-considerations"><span class="secno">3.3 </span>Additional implementation considerations</h3><p><em>This section is non-normative.</em></p>
 
         <p>Further to the requirements listed in the previous section,
         implementors of this API are also advised to consider the
@@ -574,10 +574,10 @@
     </div>
 
     <div class="section" id="api-description---properties">
-      <h2><span class="secno">4. </span>API Description &amp; Properties</h2>
+      <h2 id="x4.-api-description---properties"><span class="secno">4. </span>API Description &amp; Properties</h2>
 
       <div class="section" id="system-properties">
-        <h3><span class="secno">4.1 </span>System Properties</h3>
+        <h3 id="x4.1-system-properties"><span class="secno">4.1 </span>System Properties</h3>
 
         <p>A <dfn id="dfn-property">property</dfn> is defined as a set of related device
         characteristics. For instance, the <a class="idlType" href="#idl-def-Power"><code>Power</code></a> property
@@ -617,7 +617,7 @@
       </div>
 
       <div class="section" id="the-systeminfo-interface">
-        <h3><span class="secno">4.2 </span>The <a class="idlType" href="#idl-def-SystemInfo"><code>SystemInfo</code></a> interface</h3>
+        <h3 id="x4.2-the-systeminfo-interface"><span class="secno">4.2 </span>The <a class="idlType" href="#idl-def-SystemInfo"><code>SystemInfo</code></a> interface</h3>
         
         <p>This interface contains the functions that enable access to
         the properties defined in the following sections. Objects
@@ -633,7 +633,7 @@
 interface <span class="idlInterfaceID">NavigatorSystem</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-SystemInfo"><code>SystemInfo</code></a></span> <span class="idlAttrName"><a href="#widl-NavigatorSystem-system">system</a></span>;</span>
 };</span>
-</pre><div class="section"><h4>Attributes</h4><dl class="attributes"><dt id="widl-NavigatorSystem-system"><code>system</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-SystemInfo"><code>SystemInfo</code></a></span>, readonly</dt><dd>The root node from which the system information functionality can be accessed.<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h4 id="attributes">Attributes</h4><dl class="attributes"><dt id="widl-NavigatorSystem-system"><code>system</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-SystemInfo"><code>SystemInfo</code></a></span>, readonly</dt><dd>The root node from which the system information functionality can be accessed.<div><em>No exceptions.</em></div></dd></dl></div>
 
         <pre class="idl"><span class="idlInterface" id="idl-def-SystemInfo">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">SystemInfo</span> {
@@ -641,7 +641,7 @@
 <span class="idlMethod">    <span class="idlMethType"><a>PendingOp</a></span> <span class="idlMethName"><a href="#widl-SystemInfo-watch">watch</a></span> (<span class="idlParam"><span class="idlParamType"><a>DOMString</a></span> <span class="idlParamName">propertyId</span></span>, <span class="idlParam"><span class="idlParamType"><a class="idlType" href="#idl-def-SuccessCB"><code>SuccessCB</code></a></span> <span class="idlParamName">successCallback</span></span>, <span class="idlParam">optional <span class="idlParamType"><a class="idlType" href="#idl-def-ErrorCB"><code>ErrorCB</code></a>?</span> <span class="idlParamName">errorCallback</span></span>, <span class="idlParam">optional <span class="idlParamType"><a class="idlType" href="#idl-def-Options"><code>Options</code></a></span> <span class="idlParamName">options</span></span>);</span>
 <span class="idlMethod">    <span class="idlMethType"><a>PendingOp</a></span> <span class="idlMethName"><a href="#widl-SystemInfo-set">set</a></span> (<span class="idlParam"><span class="idlParamType"><a>DOMString</a></span> <span class="idlParamName">propertyId</span></span>, <span class="idlParam">optional <span class="idlParamType"><a>Object</a></span> <span class="idlParamName">value</span></span>, <span class="idlParam">optional <span class="idlParamType"><a class="idlType" href="#idl-def-SuccessCB"><code>SuccessCB</code></a></span> <span class="idlParamName">successCallback</span></span>, <span class="idlParam">optional <span class="idlParamType"><a class="idlType" href="#idl-def-ErrorCB"><code>ErrorCB</code></a>?</span> <span class="idlParamName">errorCallback</span></span>);</span>
 };</span>
-</pre><div class="section"><h4>Methods</h4><dl class="methods"><dt id="widl-SystemInfo-get"><code>get</code></dt><dd>
+</pre><div class="section"><h4 id="methods">Methods</h4><dl class="methods"><dt id="widl-SystemInfo-get"><code>get</code></dt><dd>
             This function retrieves the current state of a given
             system property. When called, the function <em title="must" class="rfc2119">must</em>
             immediately return and asynchronously acquire the current
@@ -707,12 +707,12 @@
         <p>All functions return a <a>PendingOp</a> object, defined in [<a href="#bib-CORE-DEVICE" rel="biblioentry" class="bibref">CORE-DEVICE</a>], which has a <a>cancel</a> function allowing the asynchronous operation to be interrupted.</p>
 
         <div class="section">
-          <h4>Callback interfaces</h4>
+          <h4 id="callback-interfaces">Callback interfaces</h4>
           <pre class="idl"><span class="idlInterface" id="idl-def-SuccessCB">[<span class="extAttr">Callback=FunctionOnly, NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">SuccessCB</span> {
 <span class="idlMethod">    <span class="idlMethType"><a>void</a></span> <span class="idlMethName"><a href="#widl-SuccessCB-onSuccess">onSuccess</a></span> (<span class="idlParam">optional <span class="idlParamType"><a>Object</a></span> <span class="idlParamName">obj</span></span>);</span>
 };</span>
-</pre><div class="section"><h5>Methods</h5><dl class="methods"><dt id="widl-SuccessCB-onSuccess"><code>onSuccess</code></dt><dd>
+</pre><div class="section"><h5 id="methods-1">Methods</h5><dl class="methods"><dt id="widl-SuccessCB-onSuccess"><code>onSuccess</code></dt><dd>
               			
             <table class="parameters"><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">obj</td><td class="prmType"><code><a>Object</a></code></td><td class="prmNullFalse">✘</td><td class="prmOptTrue">✔</td><td class="prmDesc">The return object of a successful asynchronous operation.</td></tr></table><div><em>No exceptions.</em></div><div><em>Return type: </em><code><a>void</a></code></div></dd></dl></div>
           
@@ -720,12 +720,12 @@
 interface <span class="idlInterfaceID">ErrorCB</span> {
 <span class="idlMethod">    <span class="idlMethType"><a>void</a></span> <span class="idlMethName"><a href="#widl-ErrorCB-onError">onError</a></span> (<span class="idlParam"><span class="idlParamType"><a class="idlType" href="#idl-def-Error"><code>Error</code></a></span> <span class="idlParamName">error</span></span>);</span>
 };</span>
-</pre><div class="section"><h5>Methods</h5><dl class="methods"><dt id="widl-ErrorCB-onError"><code>onError</code></dt><dd>
+</pre><div class="section"><h5 id="methods-2">Methods</h5><dl class="methods"><dt id="widl-ErrorCB-onError"><code>onError</code></dt><dd>
               
             <table class="parameters"><tr><th>Parameter</th><th>Type</th><th>Nullable</th><th>Optional</th><th>Description</th></tr><tr><td class="prmName">error</td><td class="prmType"><code><a class="idlType" href="#idl-def-Error"><code>Error</code></a></code></td><td class="prmNullFalse">✘</td><td class="prmOptFalse">✘</td><td class="prmDesc">The error object of an unsuccessful asynchronous operation.</td></tr></table><div><em>No exceptions.</em></div><div><em>Return type: </em><code><a>void</a></code></div></dd></dl></div>
         </div>
         <div class="section">
-          <h4>The Error interface</h4>
+          <h4 id="the-error-interface">The Error interface</h4>
           <pre class="idl"><span class="idlInterface" id="idl-def-Error">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">Error</span> {
 <span class="idlConst">    const <span class="idlConstType"><a>unsigned short</a></span> <span class="idlConstName"><a href="#widl-Error-PERMISSION_DENIED">PERMISSION_DENIED</a></span> = <span class="idlConstValue">0</span>;</span>
@@ -735,10 +735,10 @@
 <span class="idlConst">    const <span class="idlConstType"><a>unsigned short</a></span> <span class="idlConstName"><a href="#widl-Error-TIMEOUT">TIMEOUT</a></span> = <span class="idlConstValue">4</span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned short</a></span> <span class="idlAttrName"><a href="#widl-Error-code">code</a></span>;</span>
 };</span>
-</pre><div class="section"><h5>Attributes</h5><dl class="attributes"><dt id="widl-Error-code"><code>code</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The <a>code</a> attribute <em title="should" class="rfc2119">should</em> contain one of the
+</pre><div class="section"><h5 id="attributes-1">Attributes</h5><dl class="attributes"><dt id="widl-Error-code"><code>code</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The <a>code</a> attribute <em title="should" class="rfc2119">should</em> contain one of the
             error values defined in this specification. An implementation <em title="may" class="rfc2119">may</em>
             define additional error codes, but those <em title="must not" class="rfc2119">must not</em> use the numeric
-            values defined here.<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h5>Constants</h5><dl class="constants"><dt id="widl-Error-PERMISSION_DENIED"><code>PERMISSION_DENIED</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The application context does not have permission to
+            values defined here.<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h5 id="constants">Constants</h5><dl class="constants"><dt id="widl-Error-PERMISSION_DENIED"><code>PERMISSION_DENIED</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The application context does not have permission to
             access this property</dd><dt id="widl-Error-INFORMATION_UNAVAILABLE"><code>INFORMATION_UNAVAILABLE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The property accessed is unavailable on this device (e.g. the battery level on a device that only has an external power source).</dd><dt id="widl-Error-INVALID_VALUE"><code>INVALID_VALUE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>One or more of the values in the <a class="idlType" href="#idl-def-Options"><code>Options</code></a>
             object passed was invalid. For example, if the
             <a>highThreshold</a> attribute is set to a value
@@ -750,7 +750,7 @@
         </div>
 
         <div class="section">
-          <h4>The <a class="idlType" href="#idl-def-Options"><code>Options</code></a> interface</h4>
+          <h4 id="the-options-interface">The <a class="idlType" href="#idl-def-Options"><code>Options</code></a> interface</h4>
           <pre class="idl"><span class="idlInterface" id="idl-def-Options">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">Options</span> {
 <span class="idlAttribute">    attribute <span class="idlAttrType"><a>unsigned long</a></span> <span class="idlAttrName"><a href="#widl-Options-timeout">timeout</a></span>;</span>
@@ -758,7 +758,7 @@
 <span class="idlAttribute">    attribute <span class="idlAttrType"><a>double</a></span>        <span class="idlAttrName"><a href="#widl-Options-lowThreshold">lowThreshold</a></span>;</span>
 <span class="idlAttribute">    attribute <span class="idlAttrType"><a>DOMString</a></span>     <span class="idlAttrName"><a href="#widl-Options-id">id</a></span>;</span>
 };</span>
-</pre><div class="section"><h5>Attributes</h5><dl class="attributes"><dt id="widl-Options-timeout"><code>timeout</code> of type <span class="idlAttrType"><a>unsigned long</a></span></dt><dd>The number of milliseconds beyond which the operation
+</pre><div class="section"><h5 id="attributes-2">Attributes</h5><dl class="attributes"><dt id="widl-Options-timeout"><code>timeout</code> of type <span class="idlAttrType"><a>unsigned long</a></span></dt><dd>The number of milliseconds beyond which the operation
             must be interrupted and the <a>cancel</a> method of
             the <a>PendingOp</a> object must be called.<div><em>No exceptions.</em></div></dd><dt id="widl-Options-highThreshold"><code>highThreshold</code> of type <span class="idlAttrType"><a>double</a></span></dt><dd>This attribute has no effect on the <a>get</a>
             method. On the <a class="internalDFN" href="#function%20watch%28%29%20%7B%0A%20%20%20%20[native%20code]%0A%7D">watch</a> method, it indicates that
@@ -789,25 +789,25 @@
 
       <!--******************Device ************************************************-->
       <div class="section" id="the-systemdevice-interface">
-        <h3><span class="secno">4.3 </span>The <a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a> interface</h3>
+        <h3 id="x4.3-the-systemdevice-interface"><span class="secno">4.3 </span>The <a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a> interface</h3>
           <p>This interface gathers attributes shared by all properties describing system devices (i.e. all the <a class="internalDFN" href="#dfn-enumerable">enumerable</a> properties). Examples: single battery units, CPU, or network connections.</p>
           <pre class="idl"><span class="idlInterface" id="idl-def-SystemDevice">[<span class="extAttr">NoInterfaceObject, PrototypeRoot</span>]
 interface <span class="idlInterfaceID">SystemDevice</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>DOMString</a>?</span> <span class="idlAttrName"><a href="#widl-SystemDevice-info">info</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>DOMString</a></span>  <span class="idlAttrName"><a href="#widl-SystemDevice-id">id</a></span>;</span>
 };</span>
-</pre><div class="section"><h4>Attributes</h4><dl class="attributes"><dt id="widl-SystemDevice-info"><code>info</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>A free-form string describing this device, e.g. the name of its manufacturer.<div><em>No exceptions.</em></div></dd><dt id="widl-SystemDevice-id"><code>id</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>A free-form string identifying this device. The value of this element <em title="must" class="rfc2119">must</em> be unique within the list reported in the object enumerating this device, e.g. the Power object.<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h4 id="attributes-3">Attributes</h4><dl class="attributes"><dt id="widl-SystemDevice-info"><code>info</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>A free-form string describing this device, e.g. the name of its manufacturer.<div><em>No exceptions.</em></div></dd><dt id="widl-SystemDevice-id"><code>id</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>A free-form string identifying this device. The value of this element <em title="must" class="rfc2119">must</em> be unique within the list reported in the object enumerating this device, e.g. the Power object.<div><em>No exceptions.</em></div></dd></dl></div>
       </div>
 
           
       <!--****************** Power ************************************************-->
       <div class="section" id="power">
-        <h3><span class="secno">4.4 </span>Power</h3>
+        <h3 id="x4.4-power"><span class="secno">4.4 </span>Power</h3>
 
         <p>The properties below expose the device's power information, either internal (battery) or external.</p>
 
         <div class="section">
-          <h4>ECMAScript Example</h4>
+          <h4 id="ecmascript-example">ECMAScript Example</h4>
           <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Alert the user when the power level is below 20%</span>
 
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">watch</span><span class="sh_symbol">(</span><span class="sh_string">"Power"</span><span class="sh_symbol">,</span>success<span class="sh_symbol">,</span><span class="sh_keyword">null</span><span class="sh_symbol">,</span><span class="sh_cbracket">{</span>lowThreshold<span class="sh_symbol">:</span><span class="sh_number">0.2</span><span class="sh_cbracket">}</span><span class="sh_symbol">);</span>
@@ -818,7 +818,7 @@
         </div>
 
         <div class="section">
-          <h4>The <a class="idlType" href="#idl-def-Power"><code>Power</code></a> Property</h4>
+          <h4 id="the-power-property">The <a class="idlType" href="#idl-def-Power"><code>Power</code></a> Property</h4>
           <p>This property reflects the general state of the system's power sources</p>
 
           <p class="issue">Find the corresponding DCO properties everywhere</p>
@@ -831,7 +831,7 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>        <span class="idlAttrName"><a href="#widl-Power-isExternal">isExternal</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>        <span class="idlAttrName"><a href="#widl-Power-isCharging">isCharging</a></span>;</span>
 };</span>
-</pre><div class="section"><h5>Attributes</h5><dl class="attributes"><dt id="widl-Power-level"><code>level</code> of type <span class="idlAttrType"><a>float</a></span>, readonly, nullable</dt><dd>
+</pre><div class="section"><h5 id="attributes-4">Attributes</h5><dl class="attributes"><dt id="widl-Power-level"><code>level</code> of type <span class="idlAttrType"><a>float</a></span>, readonly, nullable</dt><dd>
               Specifies how much the internal power source remains,
               scaled from 0 to 1. A value of 0 means that the battery
               level is lowest before the system enters shutdown mode,
@@ -862,13 +862,13 @@
       <!--******************* CPU *******************************************-->
 
       <div class="section">
-        <h4>CPU</h4>
+        <h4 id="cpu">CPU</h4>
         <p>This section defines interfaces that expose the system's
         CPU information, including type, specifications, current
         system load information.</p>
 
         <div class="section">
-          <h5>ECMAScript Example</h5>
+          <h5 id="ecmascript-example-1">ECMAScript Example</h5>
           <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">//Monitor and display the CPU load</span>
 
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">watch</span><span class="sh_symbol">(</span><span class="sh_string">"Processing"</span><span class="sh_symbol">,</span>success<span class="sh_symbol">);</span>
@@ -880,14 +880,14 @@
         </div>
         
         <div class="section">
-          <h5>The <a class="idlType" href="#idl-def-CPU"><code>CPU</code></a> Property</h5>
+          <h5 id="the-cpu-property">The <a class="idlType" href="#idl-def-CPU"><code>CPU</code></a> Property</h5>
           <p>This property reflects the state of the CPUs available to this system.</p>
 
           <pre class="idl"><span class="idlInterface" id="idl-def-CPU">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">CPU</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-CPU-load">load</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-CPU-load"><code>load</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>
+</pre><div class="section"><h6 id="attributes-5">Attributes</h6><dl class="attributes"><dt id="widl-CPU-load"><code>load</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>
               This attribute indicates the current CPU load, as a
               number between 0.0 and 1.0, representing the minimum and
               maximum values allowed on this system.  Any
@@ -900,13 +900,13 @@
 
       <!--******************* Thermal ****************************-->
       <div class="section">
-        <h4>Thermal</h4>
+        <h4 id="thermal">Thermal</h4>
         <p>The properties described in this section expose the
         system's temperature, as reported to the various internal
         thermometers.</p>
         
         <div class="section">
-          <h5>ECMAScript Example</h5>
+          <h5 id="ecmascript-example-2">ECMAScript Example</h5>
           <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Check the thermal state and display a warning if it is above a certain level</span>
 
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">get</span><span class="sh_symbol">(</span><span class="sh_string">"Thermal"</span><span class="sh_symbol">,</span>success<span class="sh_symbol">);</span>
@@ -918,7 +918,7 @@
         </div>
         
         <div class="section">
-          <h5>The <a class="idlType" href="#idl-def-Thermal"><code>Thermal</code></a> property</h5>
+          <h5 id="the-thermal-property">The <a class="idlType" href="#idl-def-Thermal"><code>Thermal</code></a> property</h5>
           
           <p>This property provides information on the global temperature state of the system</p>
 
@@ -926,7 +926,7 @@
 interface <span class="idlInterfaceID">Thermal</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-Thermal-state">state</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Thermal-state"><code>state</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>
+</pre><div class="section"><h6 id="attributes-6">Attributes</h6><dl class="attributes"><dt id="widl-Thermal-state"><code>state</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>
               This attribute indicates the current thermal status, as a
               number between 0 and 1 representing the minimum and
               maximum operating values allowed by this system. On
@@ -941,12 +941,12 @@
       <!--******************** Network **********************************-->
 
       <div class="section">
-        <h4>Network</h4>
+        <h4 id="network">Network</h4>
         <p>This interface can be used by applications to determine the
         state of the network interface used by the system.</p>
 
         <div class="section">
-          <h5>ECMAScript Example</h5>
+          <h5 id="ecmascript-example-3">ECMAScript Example</h5>
           <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Find if the current connection is WiFi, and if so monitor its signal strength</span>
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">get</span><span class="sh_symbol">(</span><span class="sh_string">"Network"</span><span class="sh_symbol">,</span>success<span class="sh_symbol">,</span><span class="sh_keyword">null</span><span class="sh_symbol">);</span>
 
@@ -961,7 +961,7 @@
         </div>
 
         <div class="section">
-          <h5>The <a class="idlType" href="#idl-def-Network"><code>Network</code></a> Property</h5>
+          <h5 id="the-network-property">The <a class="idlType" href="#idl-def-Network"><code>Network</code></a> Property</h5>
 
           <p>This property provides information on the system's connection to the network</p>
 
@@ -994,7 +994,7 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>DOMString</a>?</span>     <span class="idlAttrName"><a href="#widl-Network-operatorName">operatorName</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a>?</span>       <span class="idlAttrName"><a href="#widl-Network-roaming">roaming</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Network-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>This attribute indicates the network technology in use on a network.<div><em>No exceptions.</em></div></dd><dt id="widl-Network-currentDownloadBandwidth"><code>currentDownloadBandwidth</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>
+</pre><div class="section"><h6 id="attributes-7">Attributes</h6><dl class="attributes"><dt id="widl-Network-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>This attribute indicates the network technology in use on a network.<div><em>No exceptions.</em></div></dd><dt id="widl-Network-currentDownloadBandwidth"><code>currentDownloadBandwidth</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>
               The current real-time download bandwidth, in Kbits/s.
             <div><em>No exceptions.</em></div></dd><dt id="widl-Network-currentUploadBandwidth"><code>currentUploadBandwidth</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>
               The current real-time upload bandwidth, in Kbits/s.
@@ -1007,7 +1007,7 @@
               <em title="must" class="rfc2119">must</em> support both IPv4 and IPv6.        
             <div><em>No exceptions.</em></div></dd><dt id="widl-Network-ESSID"><code>ESSID</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>The Extended Service Set Identifier (ESSID) if the
             <a>type</a> attribute is TYPE_IEE802.11, <code>null</code>
-            otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Network-apn"><code>apn</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>The Access Point Name associated to a network bearer, if applicable. <code>null</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Network-operatorName"><code>operatorName</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>The name of the cellular connection's operator if applicable, <code>null</code> otherwise<div><em>No exceptions.</em></div></dd><dt id="widl-Network-roaming"><code>roaming</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly, nullable</dt><dd>Whether the connection is set up while the device is roaming, if applicable. <code>null</code> otherwise<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-Network-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The API is unable to determine the network technology.</dd><dt id="widl-Network-TYPE_ETHERNET"><code>TYPE_ETHERNET</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Indicates that the network technology is IEEE802.3, otherwise known as ethernet.</dd><dt id="widl-Network-TYPE_IEEE_"><code>TYPE_IEEE802_11</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Indicates that the network technology is IEEE802.11.</dd><dt id="widl-Network-TYPE_GSM"><code>TYPE_GSM</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Global System for Mobile communications.</dd><dt id="widl-Network-TYPE_GPRS"><code>TYPE_GPRS</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>General Packet Radio Service.</dd><dt id="widl-Network-TYPE_EDGE"><code>TYPE_EDGE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Enhanced Data Rates for GSM Evolution.</dd><dt id="widl-Network-TYPE_CDMA"><code>TYPE_CDMA</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Code Division Multiple Access.</dd><dt id="widl-Network-TYPE_WiMAX"><code>TYPE_WiMAX</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>
+            otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Network-apn"><code>apn</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>The Access Point Name associated to a network bearer, if applicable. <code>null</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Network-operatorName"><code>operatorName</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly, nullable</dt><dd>The name of the cellular connection's operator if applicable, <code>null</code> otherwise<div><em>No exceptions.</em></div></dd><dt id="widl-Network-roaming"><code>roaming</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly, nullable</dt><dd>Whether the connection is set up while the device is roaming, if applicable. <code>null</code> otherwise<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-1">Constants</h6><dl class="constants"><dt id="widl-Network-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The API is unable to determine the network technology.</dd><dt id="widl-Network-TYPE_ETHERNET"><code>TYPE_ETHERNET</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Indicates that the network technology is IEEE802.3, otherwise known as ethernet.</dd><dt id="widl-Network-TYPE_IEEE_"><code>TYPE_IEEE802_11</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Indicates that the network technology is IEEE802.11.</dd><dt id="widl-Network-TYPE_GSM"><code>TYPE_GSM</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Global System for Mobile communications.</dd><dt id="widl-Network-TYPE_GPRS"><code>TYPE_GPRS</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>General Packet Radio Service.</dd><dt id="widl-Network-TYPE_EDGE"><code>TYPE_EDGE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Enhanced Data Rates for GSM Evolution.</dd><dt id="widl-Network-TYPE_CDMA"><code>TYPE_CDMA</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>Code Division Multiple Access.</dd><dt id="widl-Network-TYPE_WiMAX"><code>TYPE_WiMAX</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>
               Worldwide Interoperability for Microwave Access.
             </dd><dt id="widl-Network-TYPE_iDEN"><code>TYPE_iDEN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>
               Integrated Digital Enhanced Connection.
@@ -1034,10 +1034,10 @@
         
       <!-- ********* Sensors ************************************************************** -->
       <div class="section">
-        <h4>Sensors</h4>
+        <h4 id="sensors">Sensors</h4>
         <p>The properties defined below expose the values of external sensors, reflecting the device's environment such as temperature, ambient brightness or ambient sound.</p>
         <div class="section">
-          <h5>ECMAScript Example</h5>
+          <h5 id="ecmascript-example-4">ECMAScript Example</h5>
           <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Automatically adjust the screen brightness if the ambient brightness is above a certain level</span>
 
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">watch</span><span class="sh_symbol">(</span><span class="sh_string">"AmbientLight"</span><span class="sh_symbol">,</span>success<span class="sh_symbol">,</span> <span class="sh_cbracket">{</span>maxThreshold<span class="sh_symbol">:</span> <span class="sh_number">0.9</span><span class="sh_cbracket">}</span><span class="sh_symbol">);</span>
@@ -1053,9 +1053,9 @@
 
         <!-- ==== Ambient Light ==== -->
         <div class="section">
-          <h5>Ambient Light</h5>
+          <h5 id="ambient-light">Ambient Light</h5>
           <div class="section">
-            <h6>The <a class="idlType" href="#idl-def-AmbientLight"><code>AmbientLight</code></a> Property</h6>
+            <h6 id="the-ambientlight-property">The <a class="idlType" href="#idl-def-AmbientLight"><code>AmbientLight</code></a> Property</h6>
 
             <p>This property provides information about the global level of ambient light around the device.</p>
 
@@ -1063,16 +1063,16 @@
 interface <span class="idlInterfaceID">AmbientLight</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-AmbientLight-intensity">intensity</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AmbientLight-intensity"><code>intensity</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>A normalized value representing the overall ambient light around the device. The way this value is determined should be an implementation-defined combination of the values reported by each ambient light sensor available.<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-8">Attributes</h6><dl class="attributes"><dt id="widl-AmbientLight-intensity"><code>intensity</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>A normalized value representing the overall ambient light around the device. The way this value is determined should be an implementation-defined combination of the values reported by each ambient light sensor available.<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
         </div>
 
         <!-- ==== Ambient Noise ==== -->
 
         <div class="section">
-          <h5>Ambient Noise</h5>
+          <h5 id="ambient-noise">Ambient Noise</h5>
           <div class="section">
-            <h6>The <code>AmbientNoise</code> property</h6>
+            <h6 id="the-ambientnoise-property">The <code>AmbientNoise</code> property</h6>
 
             <p>This property provides information about the global level of ambient noise around the device.</p>
 
@@ -1080,16 +1080,16 @@
 interface <span class="idlInterfaceID">AmbientNoise</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-AmbientNoise-value">value</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AmbientNoise-value"><code>value</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The ambient noise around the device, in decibels (dB), computed from the data provided by each sensor.  <div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-9">Attributes</h6><dl class="attributes"><dt id="widl-AmbientNoise-value"><code>value</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The ambient noise around the device, in decibels (dB), computed from the data provided by each sensor.  <div><em>No exceptions.</em></div></dd></dl></div>
           </div>
         </div>
 
         <!-- ==== Ambient Temperature ==== -->
 
         <div class="section">
-          <h5>Ambient Temperature</h5>
+          <h5 id="ambient-temperature">Ambient Temperature</h5>
           <div class="section">
-            <h6>The <a class="idlType" href="#idl-def-AmbientTemperature"><code>AmbientTemperature</code></a> Property</h6>
+            <h6 id="the-ambienttemperature-property">The <a class="idlType" href="#idl-def-AmbientTemperature"><code>AmbientTemperature</code></a> Property</h6>
 
             <p>This property provides information about the temperature around the device.</p>
 
@@ -1097,16 +1097,16 @@
 interface <span class="idlInterfaceID">AmbientTemperature</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-AmbientTemperature-value">value</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AmbientTemperature-value"><code>value</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>This current temperature around the device, in degrees Celsius (°C)<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-10">Attributes</h6><dl class="attributes"><dt id="widl-AmbientTemperature-value"><code>value</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>This current temperature around the device, in degrees Celsius (°C)<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
         </div>
 
         <!-- ==== Atmospheric Pressure ==== -->
 
         <div class="section">
-          <h5>Ambient Atmospheric Pressure</h5>
+          <h5 id="ambient-atmospheric-pressure">Ambient Atmospheric Pressure</h5>
           <div class="section">
-            <h6>The <a class="idlType" href="#idl-def-AmbientAtmosphericPressure"><code>AmbientAtmosphericPressure</code></a> Property</h6>
+            <h6 id="the-ambientatmosphericpressure-property">The <a class="idlType" href="#idl-def-AmbientAtmosphericPressure"><code>AmbientAtmosphericPressure</code></a> Property</h6>
 
             <p>This property provides information about the atmospheric pressure around the device.</p>
 
@@ -1114,7 +1114,7 @@
 interface <span class="idlInterfaceID">AmbientAtmosphericPressure</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-AmbientAtmosphericPressure-pressure">pressure</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AmbientAtmosphericPressure-pressure"><code>pressure</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The estimated atmospheric pressure around this device, in kiloPascal (kPa)<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-11">Attributes</h6><dl class="attributes"><dt id="widl-AmbientAtmosphericPressure-pressure"><code>pressure</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The estimated atmospheric pressure around this device, in kiloPascal (kPa)<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
 
         </div>
@@ -1122,15 +1122,15 @@
         <!-- ==== Proximity ==== -->
 
         <div class="section">
-          <h5>Proximity</h5>
+          <h5 id="proximity">Proximity</h5>
           <div class="section">
-            <h6>The <a class="idlType" href="#idl-def-Proximity"><code>Proximity</code></a> Property</h6>
+            <h6 id="the-proximity-property">The <a class="idlType" href="#idl-def-Proximity"><code>Proximity</code></a> Property</h6>
             <p>This property provides information about the distance of objects around the device.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-Proximity">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">Proximity</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span> <span class="idlAttrName"><a href="#widl-Proximity-distance">distance</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Proximity-distance"><code>distance</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The distance from the device to the nearest object, as determined by this device's proximity sensors, in meters (m)<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-12">Attributes</h6><dl class="attributes"><dt id="widl-Proximity-distance"><code>distance</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The distance from the device to the nearest object, as determined by this device's proximity sensors, in meters (m)<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
         </div>
       </div>
@@ -1139,11 +1139,11 @@
 
       <!-- ********* Codecs ************************************************************** -->
       <div class="section">
-        <h4>Audio and Video Codecs</h4>
+        <h4 id="audio-and-video-codecs">Audio and Video Codecs</h4>
         <p>The properties below expose the device's audio and video codec capabilities.</p>
 
         <div class="section">
-          <h5>ECMAScript Example</h5>
+          <h5 id="ecmascript-example-5">ECMAScript Example</h5>
           <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Find if this device supports MIDI</span>
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">get</span><span class="sh_symbol">(</span><span class="sh_string">"AVCodecs"</span><span class="sh_symbol">,</span>success<span class="sh_symbol">);</span>
 
@@ -1156,7 +1156,7 @@
 <span class="sh_cbracket">}</span></pre>
         </div>
         <div class="section">
-          <h5>The <a class="idlType" href="#idl-def-AVCodecs"><code>AVCodecs</code></a> property</h5>
+          <h5 id="the-avcodecs-property">The <a class="idlType" href="#idl-def-AVCodecs"><code>AVCodecs</code></a> property</h5>
 
           <p>This property exposes information about the audio/video codecs available to this system</p>
 
@@ -1165,10 +1165,10 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-AudioCodec"><code>AudioCodec</code></a></span> <span class="idlAttrName"><a href="#widl-AVCodecs-audioCodecs">audioCodecs[]</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-VideoCodec"><code>VideoCodec</code></a></span> <span class="idlAttrName"><a href="#widl-AVCodecs-videoCodecs">videoCodecs[]</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AVCodecs-audioCodecs"><code>audioCodecs[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-AudioCodec"><code>AudioCodec</code></a></span>, readonly</dt><dd>Audio codecs on this device<div><em>No exceptions.</em></div></dd><dt id="widl-AVCodecs-videoCodecs"><code>videoCodecs[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-VideoCodec"><code>VideoCodec</code></a></span>, readonly</dt><dd>Audio codecs on this device<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-13">Attributes</h6><dl class="attributes"><dt id="widl-AVCodecs-audioCodecs"><code>audioCodecs[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-AudioCodec"><code>AudioCodec</code></a></span>, readonly</dt><dd>Audio codecs on this device<div><em>No exceptions.</em></div></dd><dt id="widl-AVCodecs-videoCodecs"><code>videoCodecs[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-VideoCodec"><code>VideoCodec</code></a></span>, readonly</dt><dd>Audio codecs on this device<div><em>No exceptions.</em></div></dd></dl></div>
         </div>
         <div class="section">
-          <h5>The <a class="idlType" href="#idl-def-AudioCodec"><code>AudioCodec</code></a> Property</h5>
+          <h5 id="the-audiocodec-property">The <a class="idlType" href="#idl-def-AudioCodec"><code>AudioCodec</code></a> Property</h5>
 
           <p>This property exposes information on a single audio codec available to this system. Is it <a class="internalDFN" href="#dfn-enumerable">enumerable</a>.</p>
 
@@ -1178,13 +1178,13 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>   <span class="idlAttrName"><a href="#widl-AudioCodec-encode">encode</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>   <span class="idlAttrName"><a href="#widl-AudioCodec-decode">decode</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AudioCodec-compFormat"><code>compFormat</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Free-form information on the compression
+</pre><div class="section"><h6 id="attributes-14">Attributes</h6><dl class="attributes"><dt id="widl-AudioCodec-compFormat"><code>compFormat</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Free-form information on the compression
             format. Examples : "G.711", "MP3", "MIDI"<div><em>No exceptions.</em></div></dd><dt id="widl-AudioCodec-encode"><code>encode</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> if this device supports audio
             encoding, <code>false</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-AudioCodec-decode"><code>decode</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> if this device supports audio
             decoding, <code>false</code> otherwise.<div><em>No exceptions.</em></div></dd></dl></div>
         </div>
           <div class="section">            
-            <h5>The <a class="idlType" href="#idl-def-VideoCodec"><code>VideoCodec</code></a> Property</h5>                
+            <h5 id="the-videocodec-property">The <a class="idlType" href="#idl-def-VideoCodec"><code>VideoCodec</code></a> Property</h5>                
             <pre class="idl"><span class="idlInterface" id="idl-def-VideoCodec">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">VideoCodec</span> : <span class="idlSuperclass"><a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a></span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>sequence DOMString</a></span>    <span class="idlAttrName"><a href="#widl-VideoCodec-compFormats">compFormats</a></span>;</span>
@@ -1194,46 +1194,46 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>sequence FrameType</a></span>    <span class="idlAttrName"><a href="#widl-VideoCodec-frametypes">frametypes</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>sequence RateControl</a></span>  <span class="idlAttrName"><a href="#widl-VideoCodec-ratetypes">ratetypes</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-VideoCodec-compFormats"><code>compFormats</code> of type <span class="idlAttrType"><a>sequence DOMString</a></span>, readonly</dt><dd>Supported compression format names. Example : "AVI", "ogg"<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-containerFormats"><code>containerFormats</code> of type <span class="idlAttrType"><a>sequence DOMString</a></span>, readonly</dt><dd>Supported container format names. Example : "AVI", "ogg"<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-hwAccel"><code>hwAccel</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> if the codec includes hardware acceleration support, <code>false</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-profiles"><code>profiles</code> of type <span class="idlAttrType"><a>sequence VideoProfile</a></span>, readonly</dt><dd>The list of profiles available for this codec.<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-frametypes"><code>frametypes</code> of type <span class="idlAttrType"><a>sequence FrameType</a></span>, readonly</dt><dd>The list of frame types supported by the codec<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-ratetypes"><code>ratetypes</code> of type <span class="idlAttrType"><a>sequence RateControl</a></span>, readonly</dt><dd>The list of rate control options supported by the codec<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-15">Attributes</h6><dl class="attributes"><dt id="widl-VideoCodec-compFormats"><code>compFormats</code> of type <span class="idlAttrType"><a>sequence DOMString</a></span>, readonly</dt><dd>Supported compression format names. Example : "AVI", "ogg"<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-containerFormats"><code>containerFormats</code> of type <span class="idlAttrType"><a>sequence DOMString</a></span>, readonly</dt><dd>Supported container format names. Example : "AVI", "ogg"<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-hwAccel"><code>hwAccel</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> if the codec includes hardware acceleration support, <code>false</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-profiles"><code>profiles</code> of type <span class="idlAttrType"><a>sequence VideoProfile</a></span>, readonly</dt><dd>The list of profiles available for this codec.<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-frametypes"><code>frametypes</code> of type <span class="idlAttrType"><a>sequence FrameType</a></span>, readonly</dt><dd>The list of frame types supported by the codec<div><em>No exceptions.</em></div></dd><dt id="widl-VideoCodec-ratetypes"><code>ratetypes</code> of type <span class="idlAttrType"><a>sequence RateControl</a></span>, readonly</dt><dd>The list of rate control options supported by the codec<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-VideoProfile"><code>VideoProfile</code></a> Property</h5>
+            <h5 id="the-videoprofile-property">The <a class="idlType" href="#idl-def-VideoProfile"><code>VideoProfile</code></a> Property</h5>
 
             <pre class="idl"><span class="idlInterface" id="idl-def-VideoProfile">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">VideoProfile</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>DOMString</a></span> <span class="idlAttrName"><a href="#widl-VideoProfile-name">name</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-VideoProfile-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Profile name. Examples : "Simple","Main", "High", "Advanced"<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-16">Attributes</h6><dl class="attributes"><dt id="widl-VideoProfile-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Profile name. Examples : "Simple","Main", "High", "Advanced"<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-FrameType"><code>FrameType</code></a> Property</h5>
+            <h5 id="the-frametype-property">The <a class="idlType" href="#idl-def-FrameType"><code>FrameType</code></a> Property</h5>
             <pre class="idl"><span class="idlInterface" id="idl-def-FrameType">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">FrameType</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>DOMString</a></span> <span class="idlAttrName"><a href="#widl-FrameType-name">name</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-FrameType-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Frame type name. Examples : "PROGRESSIVE","INTERLACED"<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-17">Attributes</h6><dl class="attributes"><dt id="widl-FrameType-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Frame type name. Examples : "PROGRESSIVE","INTERLACED"<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-RateControl"><code>RateControl</code></a> Property</h5>
+            <h5 id="the-ratecontrol-property">The <a class="idlType" href="#idl-def-RateControl"><code>RateControl</code></a> Property</h5>
             <pre class="idl"><span class="idlInterface" id="idl-def-RateControl">[<span class="extAttr">NoInterfaceObject</span>]
 interface <span class="idlInterfaceID">RateControl</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>DOMString</a></span> <span class="idlAttrName"><a href="#widl-RateControl-name">name</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-RateControl-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Rate control type name. Examples : "CBR","VBR"<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-18">Attributes</h6><dl class="attributes"><dt id="widl-RateControl-name"><code>name</code> of type <span class="idlAttrType"><a>DOMString</a></span>, readonly</dt><dd>Rate control type name. Examples : "CBR","VBR"<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
         </div>
         <!-- ********* /Codecs ************************************************************** -->
 
         <!-- ********* Storage ************************************************************** -->
         <div class="section">
-          <h4>Storage</h4>
+          <h4 id="storage">Storage</h4>
           <p>This set of properties expose a device's storage units and their properties, like type (hard Disk, memory card, etc.) and capacity</p>
 
           <div class="section">
-            <h5>ECMAScript Example</h5>
+            <h5 id="ecmascript-example-6">ECMAScript Example</h5>
             <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Check each storage and warn if almost full </span>
             
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">get</span><span class="sh_symbol">(</span><span class="sh_string">"Storage"</span><span class="sh_symbol">,</span> success<span class="sh_symbol">);</span>
@@ -1246,16 +1246,16 @@
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-Storage"><code>Storage</code></a> Property</h5>
+            <h5 id="the-storage-property">The <a class="idlType" href="#idl-def-Storage"><code>Storage</code></a> Property</h5>
             <p>This property exposes the data storage devices connected to this system.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-Storage">interface <span class="idlInterfaceID">Storage</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a></span> <span class="idlAttrName"><a href="#widl-Storage-units">units[]</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Storage-units"><code>units[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a></span>, readonly</dt><dd>The array of storage units connected to this device<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-19">Attributes</h6><dl class="attributes"><dt id="widl-Storage-units"><code>units[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a></span>, readonly</dt><dd>The array of storage units connected to this device<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a> Property</h5>
+            <h5 id="the-storageunit-property">The <a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a> Property</h5>
             <p>This property exposes a single storage device connected to this system. It is <a class="internalDFN" href="#dfn-enumerable">enumerable</a>.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-StorageUnit">interface <span class="idlInterfaceID">StorageUnit</span> : <span class="idlSuperclass"><a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a></span> {
 <span class="idlConst">    const <span class="idlConstType"><a>unsigned short</a></span> <span class="idlConstName"><a href="#widl-StorageUnit-TYPE_UNKNOWN">TYPE_UNKNOWN</a></span> = <span class="idlConstValue">0</span>;</span>
@@ -1269,20 +1269,20 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned long</a></span>  <span class="idlAttrName"><a href="#widl-StorageUnit-availableCapacity">availableCapacity</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>        <span class="idlAttrName"><a href="#widl-StorageUnit-isRemoveable">isRemoveable</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-StorageUnit-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of pointing device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-isReadWrite"><code>isReadWrite</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports software modification, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-capacity"><code>capacity</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>The amount of data that this device can hold, in bytes. A <a class="internalDFN" href="#function%20watch%28%29%20%7B%0A%20%20%20%20[native%20code]%0A%7D">watch</a> operation operating on an object of type <a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a> must invoke the success callback only when this attribute has changed<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-availableCapacity"><code>availableCapacity</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>The amount of available data that this device can hold, in bytes<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-isRemoveable"><code>isRemoveable</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> if this unit can be removed from the system (e.g. a memory card unplugged, or a disk ejected), <code>false</code> otherwise<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-StorageUnit-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when the type of this device is unknown to this API.</dd><dt id="widl-StorageUnit-TYPE_HARDDISK"><code>TYPE_HARDDISK</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device is a hard disk</dd><dt id="widl-StorageUnit-TYPE_FLOPPYDISK"><code>TYPE_FLOPPYDISK</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device is a floppy disk</dd><dt id="widl-StorageUnit-TYPE_OPTICAL"><code>TYPE_OPTICAL</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device uses optical storage technology (CD, DVD, Holographic)</dd><dt id="widl-StorageUnit-TYPE_RAM"><code>TYPE_RAM</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device uses solid-state RAM technology (chip, memory card)</dd></dl></div>
+</pre><div class="section"><h6 id="attributes-20">Attributes</h6><dl class="attributes"><dt id="widl-StorageUnit-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of pointing device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-isReadWrite"><code>isReadWrite</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports software modification, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-capacity"><code>capacity</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>The amount of data that this device can hold, in bytes. A <a class="internalDFN" href="#function%20watch%28%29%20%7B%0A%20%20%20%20[native%20code]%0A%7D">watch</a> operation operating on an object of type <a class="idlType" href="#idl-def-StorageUnit"><code>StorageUnit</code></a> must invoke the success callback only when this attribute has changed<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-availableCapacity"><code>availableCapacity</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>The amount of available data that this device can hold, in bytes<div><em>No exceptions.</em></div></dd><dt id="widl-StorageUnit-isRemoveable"><code>isRemoveable</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> if this unit can be removed from the system (e.g. a memory card unplugged, or a disk ejected), <code>false</code> otherwise<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-2">Constants</h6><dl class="constants"><dt id="widl-StorageUnit-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when the type of this device is unknown to this API.</dd><dt id="widl-StorageUnit-TYPE_HARDDISK"><code>TYPE_HARDDISK</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device is a hard disk</dd><dt id="widl-StorageUnit-TYPE_FLOPPYDISK"><code>TYPE_FLOPPYDISK</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device is a floppy disk</dd><dt id="widl-StorageUnit-TYPE_OPTICAL"><code>TYPE_OPTICAL</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device uses optical storage technology (CD, DVD, Holographic)</dd><dt id="widl-StorageUnit-TYPE_RAM"><code>TYPE_RAM</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When type has this value, then this device uses solid-state RAM technology (chip, memory card)</dd></dl></div>
           </div>
         </div>
         <!-- ********* /Storage ************************************************************** -->
 
         <!--******************** Output **********************************-->
         <div class="section">
-          <h4>Output Devices</h4>
+          <h4 id="output-devices">Output Devices</h4>
           <p>This section gathers system properties related to this device's output devices: screens, sound systems, etc.</p>
 
           <p class="issue">Do we need information about active devices, e.g. in order to be able to see which screen is currently being in use, or to control which set of speakers should be activated? If so how do we specify it? Through an "active" flag on each device (hard to watch), or through a pointer (e.g. currentDisplay in OutputDevices) which would mean only one device is active at a time, which might not always be correct in cases like several active keyboards</p>
           
           <div class="section">
-            <h5>ECMAScript Example</h5>
+            <h5 id="ecmascript-example-7">ECMAScript Example</h5>
             <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Set the brightness of all the displays to their maximum value</span>
 
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">get</span><span class="sh_symbol">(</span><span class="sh_string">"OutputDevices"</span><span class="sh_symbol">,</span> 
@@ -1294,7 +1294,7 @@
 
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-OutputDevices"><code>OutputDevices</code></a> Property</h5>
+            <h5 id="the-outputdevices-property">The <a class="idlType" href="#idl-def-OutputDevices"><code>OutputDevices</code></a> Property</h5>
               
             <p>This property provides information on the output devices (displays, audio) available on this system</p>
               
@@ -1303,12 +1303,12 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-Display"><code>Display</code></a></span> <span class="idlAttrName"><a href="#widl-OutputDevices-displays">displays[]</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>Audio</a></span>   <span class="idlAttrName"><a href="#widl-OutputDevices-audioDevices">audioDevices[]</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-OutputDevices-displays"><code>displays[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Display"><code>Display</code></a></span>, readonly</dt><dd>An array of all the display devices connected to this system<div><em>No exceptions.</em></div></dd><dt id="widl-OutputDevices-audioDevices"><code>audioDevices[]</code> of type <span class="idlAttrType"><a>Audio</a></span>, readonly</dt><dd>An array of all the output audio devices connected to this system<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-21">Attributes</h6><dl class="attributes"><dt id="widl-OutputDevices-displays"><code>displays[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Display"><code>Display</code></a></span>, readonly</dt><dd>An array of all the display devices connected to this system<div><em>No exceptions.</em></div></dd><dt id="widl-OutputDevices-audioDevices"><code>audioDevices[]</code> of type <span class="idlAttrType"><a>Audio</a></span>, readonly</dt><dd>An array of all the output audio devices connected to this system<div><em>No exceptions.</em></div></dd></dl></div>
               
           </div>
             
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-Display"><code>Display</code></a> property</h5>
+            <h5 id="the-display-property">The <a class="idlType" href="#idl-def-Display"><code>Display</code></a> property</h5>
               
             <p>This property exposes information on a single display device available to the system. Is it <a>enumerable.</a></p>
             
@@ -1330,7 +1330,7 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span>          <span class="idlAttrName"><a href="#widl-Display-physicalWidth">physicalWidth</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a></span>          <span class="idlAttrName"><a href="#widl-Display-physicalHeight">physicalHeight</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Display-orientation"><code>orientation</code> of type <span class="idlAttrType"><a>unsigned short</a></span></dt><dd>The display orientation from the constants listed in this object.<div><em>No exceptions.</em></div></dd><dt id="widl-Display-brightness"><code>brightness</code> of type <span class="idlAttrType"><a>float</a></span></dt><dd>The current brightness, from 0 to 1<div><em>No exceptions.</em></div></dd><dt id="widl-Display-contrast"><code>contrast</code> of type <span class="idlAttrType"><a>float</a></span></dt><dd>The current contrast, from 0 to 1<div><em>No exceptions.</em></div></dd><dt id="widl-Display-blanked"><code>blanked</code> of type <span class="idlAttrType"><a>boolean</a></span></dt><dd><code>true</code> if this display is currently blanked, <code>false</code> otherwise<div><em>No exceptions.</em></div></dd><dt id="widl-Display-dotsPerInchW"><code>dotsPerInchW</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Resolution of this device, along its width, in dots per inch.<div><em>No exceptions.</em></div></dd><dt id="widl-Display-dotsPerInchH"><code>dotsPerInchH</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Resolution of this device, along its height, in dots per inch.<div><em>No exceptions.</em></div></dd><dt id="widl-Display-physicalWidth"><code>physicalWidth</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The display's physical width in centimeters<div><em>No exceptions.</em></div></dd><dt id="widl-Display-physicalHeight"><code>physicalHeight</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The display's physical height in centimeters<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-Display-ORIENTATION_UNKNOWN"><code>ORIENTATION_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The device is not able to determine its orientation.</dd><dt id="widl-Display-ORIENTATION_LANDSCAPE"><code>ORIENTATION_LANDSCAPE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is landscape.</dd><dt id="widl-Display-ORIENTATION_PORTRAIT"><code>ORIENTATION_PORTRAIT</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is portrait.</dd><dt id="widl-Display-ORIENTATION_INVERTED_LANDSCAPE"><code>ORIENTATION_INVERTED_LANDSCAPE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is inverted landscape.</dd><dt id="widl-Display-ORIENTATION_INVERTED_PORTRAIT"><code>ORIENTATION_INVERTED_PORTRAIT</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is inverted portrait.</dd></dl></div>
+</pre><div class="section"><h6 id="attributes-22">Attributes</h6><dl class="attributes"><dt id="widl-Display-orientation"><code>orientation</code> of type <span class="idlAttrType"><a>unsigned short</a></span></dt><dd>The display orientation from the constants listed in this object.<div><em>No exceptions.</em></div></dd><dt id="widl-Display-brightness"><code>brightness</code> of type <span class="idlAttrType"><a>float</a></span></dt><dd>The current brightness, from 0 to 1<div><em>No exceptions.</em></div></dd><dt id="widl-Display-contrast"><code>contrast</code> of type <span class="idlAttrType"><a>float</a></span></dt><dd>The current contrast, from 0 to 1<div><em>No exceptions.</em></div></dd><dt id="widl-Display-blanked"><code>blanked</code> of type <span class="idlAttrType"><a>boolean</a></span></dt><dd><code>true</code> if this display is currently blanked, <code>false</code> otherwise<div><em>No exceptions.</em></div></dd><dt id="widl-Display-dotsPerInchW"><code>dotsPerInchW</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Resolution of this device, along its width, in dots per inch.<div><em>No exceptions.</em></div></dd><dt id="widl-Display-dotsPerInchH"><code>dotsPerInchH</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Resolution of this device, along its height, in dots per inch.<div><em>No exceptions.</em></div></dd><dt id="widl-Display-physicalWidth"><code>physicalWidth</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The display's physical width in centimeters<div><em>No exceptions.</em></div></dd><dt id="widl-Display-physicalHeight"><code>physicalHeight</code> of type <span class="idlAttrType"><a>float</a></span>, readonly</dt><dd>The display's physical height in centimeters<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-3">Constants</h6><dl class="constants"><dt id="widl-Display-ORIENTATION_UNKNOWN"><code>ORIENTATION_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The device is not able to determine its orientation.</dd><dt id="widl-Display-ORIENTATION_LANDSCAPE"><code>ORIENTATION_LANDSCAPE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is landscape.</dd><dt id="widl-Display-ORIENTATION_PORTRAIT"><code>ORIENTATION_PORTRAIT</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is portrait.</dd><dt id="widl-Display-ORIENTATION_INVERTED_LANDSCAPE"><code>ORIENTATION_INVERTED_LANDSCAPE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is inverted landscape.</dd><dt id="widl-Display-ORIENTATION_INVERTED_PORTRAIT"><code>ORIENTATION_INVERTED_PORTRAIT</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>The display orientation is inverted portrait.</dd></dl></div>
 
             <p class="issue">Are we being short-sighted in only listing
             four orientations? Would it make sense to have it be an angle, except
@@ -1344,7 +1344,7 @@
         
         <!-- ********* Sound ************************************************************** -->
         <div class="section">
-          <h5>The <a class="idlType" href="#idl-def-AudioDevice"><code>AudioDevice</code></a> Property</h5>
+          <h5 id="the-audiodevice-property">The <a class="idlType" href="#idl-def-AudioDevice"><code>AudioDevice</code></a> Property</h5>
           
           <p>This property exposes information on a single audio
           output device available to this system. It is
@@ -1359,7 +1359,7 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned long</a></span>  <span class="idlAttrName"><a href="#widl-AudioDevice-freqRangeLow">freqRangeLow</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned long</a></span>  <span class="idlAttrName"><a href="#widl-AudioDevice-freqRangeHigh">freqRangeHigh</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-AudioDevice-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of audio output device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-AudioDevice-freqRangeLow"><code>freqRangeLow</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, low value, in Hz<div><em>No exceptions.</em></div></dd><dt id="widl-AudioDevice-freqRangeHigh"><code>freqRangeHigh</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, high value, in Hz<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-AudioDevice-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when the type of this device is unknown</dd><dt id="widl-AudioDevice-TYPE_SPEAKER"><code>TYPE_SPEAKER</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a loud speaker</dd><dt id="widl-AudioDevice-TYPE_HEADPHONES"><code>TYPE_HEADPHONES</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a set of headphones</dd></dl></div>
+</pre><div class="section"><h6 id="attributes-23">Attributes</h6><dl class="attributes"><dt id="widl-AudioDevice-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of audio output device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-AudioDevice-freqRangeLow"><code>freqRangeLow</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, low value, in Hz<div><em>No exceptions.</em></div></dd><dt id="widl-AudioDevice-freqRangeHigh"><code>freqRangeHigh</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, high value, in Hz<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-4">Constants</h6><dl class="constants"><dt id="widl-AudioDevice-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when the type of this device is unknown</dd><dt id="widl-AudioDevice-TYPE_SPEAKER"><code>TYPE_SPEAKER</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a loud speaker</dd><dt id="widl-AudioDevice-TYPE_HEADPHONES"><code>TYPE_HEADPHONES</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a set of headphones</dd></dl></div>
           
         </div>
       </div>
@@ -1367,7 +1367,7 @@
 
         <!-- ********* Input ***************************************************************** -->
         <div class="section">
-          <h4>Input Devices</h4>
+          <h4 id="input-devices">Input Devices</h4>
 
           <p>The properties defines below expose the input devices connected to the system (e.g. mouse, keyboard, camera).</p>
           
@@ -1375,7 +1375,7 @@
 
 
           <div class="section">
-            <h5>ECMAScript Example</h5>
+            <h5 id="ecmascript-example-8">ECMAScript Example</h5>
             <pre class="sh_javascript example sh_sourceCode"><span class="sh_comment">// Check if the device supports multitouch</span>
 
 navigator<span class="sh_symbol">.</span>system<span class="sh_symbol">.</span><span class="sh_function">get</span><span class="sh_symbol">(</span><span class="sh_string">"InputDevices"</span><span class="sh_symbol">,</span> 
@@ -1390,7 +1390,7 @@
 
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-InputDevices"><code>InputDevices</code></a> Property</h5>
+            <h5 id="the-inputdevices-property">The <a class="idlType" href="#idl-def-InputDevices"><code>InputDevices</code></a> Property</h5>
             
             <pre class="idl"><span class="idlInterface" id="idl-def-InputDevices">interface <span class="idlInterfaceID">InputDevices</span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-PointingDevice"><code>PointingDevice</code></a></span> <span class="idlAttrName"><a href="#widl-InputDevices-pointingDevices">pointingDevices[]</a></span>;</span>
@@ -1398,11 +1398,11 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-Camera"><code>Camera</code></a></span>         <span class="idlAttrName"><a href="#widl-InputDevices-cameras">cameras[]</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a class="idlType" href="#idl-def-Microphone"><code>Microphone</code></a></span>     <span class="idlAttrName"><a href="#widl-InputDevices-microphones">microphones[]</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-InputDevices-pointingDevices"><code>pointingDevices[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-PointingDevice"><code>PointingDevice</code></a></span>, readonly</dt><dd>The list of physical pointing devices attached (e.g. mouse, tablet, touchscreens)<div><em>No exceptions.</em></div></dd><dt id="widl-InputDevices-keyboards"><code>keyboards[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Keyboard"><code>Keyboard</code></a></span>, readonly</dt><dd>The list of keyboards attached<div><em>No exceptions.</em></div></dd><dt id="widl-InputDevices-cameras"><code>cameras[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Camera"><code>Camera</code></a></span>, readonly</dt><dd>The list of cameras attached<div><em>No exceptions.</em></div></dd><dt id="widl-InputDevices-microphones"><code>microphones[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Microphone"><code>Microphone</code></a></span>, readonly</dt><dd>The list of microphones attached<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-24">Attributes</h6><dl class="attributes"><dt id="widl-InputDevices-pointingDevices"><code>pointingDevices[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-PointingDevice"><code>PointingDevice</code></a></span>, readonly</dt><dd>The list of physical pointing devices attached (e.g. mouse, tablet, touchscreens)<div><em>No exceptions.</em></div></dd><dt id="widl-InputDevices-keyboards"><code>keyboards[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Keyboard"><code>Keyboard</code></a></span>, readonly</dt><dd>The list of keyboards attached<div><em>No exceptions.</em></div></dd><dt id="widl-InputDevices-cameras"><code>cameras[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Camera"><code>Camera</code></a></span>, readonly</dt><dd>The list of cameras attached<div><em>No exceptions.</em></div></dd><dt id="widl-InputDevices-microphones"><code>microphones[]</code> of type <span class="idlAttrType"><a class="idlType" href="#idl-def-Microphone"><code>Microphone</code></a></span>, readonly</dt><dd>The list of microphones attached<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
           
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-PointingDevice"><code>PointingDevice</code></a> Property</h5>
+            <h5 id="the-pointingdevice-property">The <a class="idlType" href="#idl-def-PointingDevice"><code>PointingDevice</code></a> Property</h5>
             <p>This property exposes the pointing devices (mouse, touch screen, gesture sensor). It is <a class="internalDFN" href="#dfn-enumerable">enumerable</a>.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-PointingDevice">interface <span class="idlInterfaceID">PointingDevice</span> : <span class="idlSuperclass"><a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a></span> {
 <span class="idlConst">    const <span class="idlConstType"><a>unsigned short</a></span> <span class="idlConstName"><a href="#widl-PointingDevice-TYPE_UNKNOWN">TYPE_UNKNOWN</a></span> = <span class="idlConstValue">0</span>;</span>
@@ -1414,10 +1414,10 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned short</a></span> <span class="idlAttrName"><a href="#widl-PointingDevice-type">type</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>        <span class="idlAttrName"><a href="#widl-PointingDevice-supportsMultiTouch">supportsMultiTouch</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-PointingDevice-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of pointing device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-PointingDevice-supportsMultiTouch"><code>supportsMultiTouch</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports the multi-touch method of interaction, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-PointingDevice-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then the type of this pointing device is unknown.</dd><dt id="widl-PointingDevice-TYPE_MOUSE"><code>TYPE_MOUSE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a mouse</dd><dt id="widl-PointingDevice-TYPE_TOUCHSCREEN"><code>TYPE_TOUCHSCREEN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a touch screen</dd><dt id="widl-PointingDevice-TYPE_LIGHTPEN"><code>TYPE_LIGHTPEN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a light pen</dd><dt id="widl-PointingDevice-TYPE_GESTURE"><code>TYPE_GESTURE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a gesture device</dd><dt id="widl-PointingDevice-TYPE_TABLET"><code>TYPE_TABLET</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a graphics tablet</dd></dl></div>
+</pre><div class="section"><h6 id="attributes-25">Attributes</h6><dl class="attributes"><dt id="widl-PointingDevice-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of pointing device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-PointingDevice-supportsMultiTouch"><code>supportsMultiTouch</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports the multi-touch method of interaction, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-5">Constants</h6><dl class="constants"><dt id="widl-PointingDevice-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then the type of this pointing device is unknown.</dd><dt id="widl-PointingDevice-TYPE_MOUSE"><code>TYPE_MOUSE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a mouse</dd><dt id="widl-PointingDevice-TYPE_TOUCHSCREEN"><code>TYPE_TOUCHSCREEN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a touch screen</dd><dt id="widl-PointingDevice-TYPE_LIGHTPEN"><code>TYPE_LIGHTPEN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a light pen</dd><dt id="widl-PointingDevice-TYPE_GESTURE"><code>TYPE_GESTURE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a gesture device</dd><dt id="widl-PointingDevice-TYPE_TABLET"><code>TYPE_TABLET</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a graphics tablet</dd></dl></div>
           </div>
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-Keyboard"><code>Keyboard</code></a> Property</h5>
+            <h5 id="the-keyboard-property">The <a class="idlType" href="#idl-def-Keyboard"><code>Keyboard</code></a> Property</h5>
             <p>This property exposes the keyboards and keypads connected to this system. It is <a class="internalDFN" href="#dfn-enumerable">enumerable</a>.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-Keyboard">interface <span class="idlInterfaceID">Keyboard</span> : <span class="idlSuperclass"><a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a></span> {
 <span class="idlConst">    const <span class="idlConstType"><a>unsigned short</a></span> <span class="idlConstName"><a href="#widl-Keyboard-TYPE_UNKNOWN">TYPE_UNKNOWN</a></span> = <span class="idlConstValue">0</span>;</span>
@@ -1426,11 +1426,11 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned short</a></span> <span class="idlAttrName"><a href="#widl-Keyboard-type">type</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>        <span class="idlAttrName"><a href="#widl-Keyboard-isHardware">isHardware</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Keyboard-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of pointing device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-Keyboard-isHardware"><code>isHardware</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device is a physical keyboard, <code>else</code> if it is a software keyboard.<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-Keyboard-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is of a type unknown to this API.</dd><dt id="widl-Keyboard-TYPE_KEYBOARD"><code>TYPE_KEYBOARD</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a full keyboard</dd><dt id="widl-Keyboard-TYPE_KEYPAD"><code>TYPE_KEYPAD</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a keypad</dd></dl></div>
+</pre><div class="section"><h6 id="attributes-26">Attributes</h6><dl class="attributes"><dt id="widl-Keyboard-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of pointing device. The value is one of the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-Keyboard-isHardware"><code>isHardware</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device is a physical keyboard, <code>else</code> if it is a software keyboard.<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-6">Constants</h6><dl class="constants"><dt id="widl-Keyboard-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is of a type unknown to this API.</dd><dt id="widl-Keyboard-TYPE_KEYBOARD"><code>TYPE_KEYBOARD</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a full keyboard</dd><dt id="widl-Keyboard-TYPE_KEYPAD"><code>TYPE_KEYPAD</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd>When the <a>type</a> attribute has this value, then this device is a keypad</dd></dl></div>
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-Camera"><code>Camera</code></a> Property</h5>
+            <h5 id="the-camera-property">The <a class="idlType" href="#idl-def-Camera"><code>Camera</code></a> Property</h5>
             <p>This property exposes the cameras connected to this system. It is <a class="internalDFN" href="#dfn-enumerable">enumerable</a>.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-Camera">interface <span class="idlInterfaceID">Camera</span> : <span class="idlSuperclass"><a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a></span> {
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>boolean</a></span>       <span class="idlAttrName"><a href="#widl-Camera-supportsVideo">supportsVideo</a></span>;</span>
@@ -1438,11 +1438,11 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned long</a></span> <span class="idlAttrName"><a href="#widl-Camera-sensorPixels">sensorPixels</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>float</a>?</span>        <span class="idlAttrName"><a href="#widl-Camera-maxZoomFactor">maxZoomFactor</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Camera-supportsVideo"><code>supportsVideo</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports recording video, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Camera-hasFlash"><code>hasFlash</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports has a flash, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Camera-sensorPixels"><code>sensorPixels</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>The number of image sensor elements (pixels) of this camera<div><em>No exceptions.</em></div></dd><dt id="widl-Camera-maxZoomFactor"><code>maxZoomFactor</code> of type <span class="idlAttrType"><a>float</a></span>, readonly, nullable</dt><dd>The maximum zoom factor of this camera. This value <em title="must" class="rfc2119">must</em> be <code>null</code> if the camera does not have a zoom (whether physical or digital)<div><em>No exceptions.</em></div></dd></dl></div>
+</pre><div class="section"><h6 id="attributes-27">Attributes</h6><dl class="attributes"><dt id="widl-Camera-supportsVideo"><code>supportsVideo</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports recording video, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Camera-hasFlash"><code>hasFlash</code> of type <span class="idlAttrType"><a>boolean</a></span>, readonly</dt><dd><code>true</code> when this device supports has a flash, <code>else</code> otherwise.<div><em>No exceptions.</em></div></dd><dt id="widl-Camera-sensorPixels"><code>sensorPixels</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>The number of image sensor elements (pixels) of this camera<div><em>No exceptions.</em></div></dd><dt id="widl-Camera-maxZoomFactor"><code>maxZoomFactor</code> of type <span class="idlAttrType"><a>float</a></span>, readonly, nullable</dt><dd>The maximum zoom factor of this camera. This value <em title="must" class="rfc2119">must</em> be <code>null</code> if the camera does not have a zoom (whether physical or digital)<div><em>No exceptions.</em></div></dd></dl></div>
           </div>
 
           <div class="section">
-            <h5>The <a class="idlType" href="#idl-def-Microphone"><code>Microphone</code></a> Property</h5>
+            <h5 id="the-microphone-property">The <a class="idlType" href="#idl-def-Microphone"><code>Microphone</code></a> Property</h5>
             <p>This property exposes the microphones connected to this system. It is <a class="internalDFN" href="#dfn-enumerable">enumerable</a>.</p>
             <pre class="idl"><span class="idlInterface" id="idl-def-Microphone">interface <span class="idlInterfaceID">Microphone</span> : <span class="idlSuperclass"><a class="idlType" href="#idl-def-SystemDevice"><code>SystemDevice</code></a></span> {
 <span class="idlConst">    const <span class="idlConstType"><a>unsigned short</a></span> <span class="idlConstName"><a href="#widl-Microphone-TYPE_UNKNOWN">TYPE_UNKNOWN</a></span> = <span class="idlConstValue">0</span>;</span>
@@ -1452,8 +1452,8 @@
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned long</a></span>  <span class="idlAttrName"><a href="#widl-Microphone-freqRangeLow">freqRangeLow</a></span>;</span>
 <span class="idlAttribute">    readonly attribute <span class="idlAttrType"><a>unsigned long</a></span>  <span class="idlAttrName"><a href="#widl-Microphone-freqRangeHigh">freqRangeHigh</a></span>;</span>
 };</span>
-</pre><div class="section"><h6>Attributes</h6><dl class="attributes"><dt id="widl-Microphone-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of audio input device. The value is one of
-              the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-Microphone-freqRangeLow"><code>freqRangeLow</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, low value, in Hz<div><em>No exceptions.</em></div></dd><dt id="widl-Microphone-freqRangeHigh"><code>freqRangeHigh</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, high value, in Hz<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6>Constants</h6><dl class="constants"><dt id="widl-Microphone-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when the type of this device is unknown to this API.</dd><dt id="widl-Microphone-TYPE_MICROPHONE"><code>TYPE_MICROPHONE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a microphone</dd><dt id="widl-Microphone-TYPE_LINEIN"><code>TYPE_LINEIN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a line-in connector</dd></dl></div>
+</pre><div class="section"><h6 id="attributes-28">Attributes</h6><dl class="attributes"><dt id="widl-Microphone-type"><code>type</code> of type <span class="idlAttrType"><a>unsigned short</a></span>, readonly</dt><dd>The type of audio input device. The value is one of
+              the constants defined for this type.<div><em>No exceptions.</em></div></dd><dt id="widl-Microphone-freqRangeLow"><code>freqRangeLow</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, low value, in Hz<div><em>No exceptions.</em></div></dd><dt id="widl-Microphone-freqRangeHigh"><code>freqRangeHigh</code> of type <span class="idlAttrType"><a>unsigned long</a></span>, readonly</dt><dd>Frequency range, high value, in Hz<div><em>No exceptions.</em></div></dd></dl></div><div class="section"><h6 id="constants-7">Constants</h6><dl class="constants"><dt id="widl-Microphone-TYPE_UNKNOWN"><code>TYPE_UNKNOWN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when the type of this device is unknown to this API.</dd><dt id="widl-Microphone-TYPE_MICROPHONE"><code>TYPE_MICROPHONE</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a microphone</dd><dt id="widl-Microphone-TYPE_LINEIN"><code>TYPE_LINEIN</code> of type <span class="idlConstType"><a>unsigned short</a></span></dt><dd><code>type</code> is set to this value when this device is a line-in connector</dd></dl></div>
           </div>
         </div>
 
@@ -1462,7 +1462,7 @@
 
     <!--************************************* Extensibility *******************************************-->
     <div class="section" id="extensibility">
-      <h3><span class="secno">4.5 </span>Extensibility</h3>
+      <h3 id="x4.5-extensibility"><span class="secno">4.5 </span>Extensibility</h3>
       
       <p>This specification allows vendor-specific properties to be made
       available to the <a class="idlType" href="#idl-def-SystemInfo"><code>SystemInfo</code></a> interface. The URI of those
@@ -1478,15 +1478,15 @@
     </div>
     <!--************************************* Requirements & Use cases *******************************************-->
     <div id="requirements---use-cases" class="informative appendix section">
-      <h3><span class="secno">4.6 </span>Requirements &amp; Use cases</h3><p><em>This section is non-normative.</em></p>
+      <h3 id="x4.6-requirements---use-cases"><span class="secno">4.6 </span>Requirements &amp; Use cases</h3><p><em>This section is non-normative.</em></p>
 
       <p class="issue">make a separate document?</p>
 
       <div class="section">
-        <h4>Requirements</h4>
+        <h4 id="requirements">Requirements</h4>
 
         <div class="section">
-          <h5>Power</h5>
+          <h5 id="power-1">Power</h5>
           <ul>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide a method to retrieve one-shot power source information. </li>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide a method to retrieve one-shot power remaining information. </li>
@@ -1496,7 +1496,7 @@
           </ul>
         </div>
         <div class="section">
-          <h5>CPU</h5>
+          <h5 id="cpu-1">CPU</h5>
           <ul>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide a method to retrieve information about
             the number of concurrent threads that can run on the CPU.</li>
@@ -1513,7 +1513,7 @@
           </ul>
         </div>
         <div class="section">
-          <h5>Display</h5>
+          <h5 id="display">Display</h5>
           <ul>
             <li>A conforming implementation <em title="should" class="rfc2119">should</em> provide information about the dots-per-inch (DPI) of the display.</li>
             <li>A conforming implementation <em title="should" class="rfc2119">should</em> provide a method to retrieve one-shot screen blank information.</li>
@@ -1528,7 +1528,7 @@
           </ul>
         </div>
         <div class="section">
-          <h5>Connection</h5>
+          <h5 id="connection">Connection</h5>
           <ul>
             <li> A conforming implementation <em title="must" class="rfc2119">must</em> provide a method to detect the technology that a network bearer uses (e.g. 802.11a, CDMA, WiMAX, etc.)</li>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide a method to detect the quality of the connection to the network bearer.</li>
@@ -1554,7 +1554,7 @@
           </ul>
         </div>
         <div class="section">
-          <h5>Thermal</h5>
+          <h5 id="thermal-1">Thermal</h5>
           <ul>
             <li>A conforming implementation <em title="should" class="rfc2119">should</em> provide the ability to list temperature
             from multiple thermometers.</li><li>
@@ -1568,7 +1568,7 @@
           </ul>
         </div>
         <div class="section">
-          <h5>Audio</h5>
+          <h5 id="audio">Audio</h5>
           <ul>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide a list of audio codecs
             available on the device</li>
@@ -1581,7 +1581,7 @@
           </ul>
         </div>
         <div class="section">
-          <h5>Video</h5>
+          <h5 id="video">Video</h5>
           <ul>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide a list of codecs available
             on the device.</li>
@@ -1590,13 +1590,13 @@
           </ul>
         </div>
         <div class="section">
-          <h5>Ambient Light Sensor</h5>
+          <h5 id="ambient-light-sensor">Ambient Light Sensor</h5>
         </div>
         <div class="section">
-          <h5>Storage</h5>
+          <h5 id="storage-1">Storage</h5>
         </div>
         <div class="section">
-          <h5>Input</h5>
+          <h5 id="input">Input</h5>
           <ul>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide information about the presence of a touch screen.</li>
             <li>A conforming implementation <em title="must" class="rfc2119">must</em> provide information about the existence of mouse hover events.</li>
@@ -1619,10 +1619,10 @@
       </div>
 
       <div class="section">
-        <h4>Use Cases</h4>
+        <h4 id="use-cases">Use Cases</h4>
         <p class="issue">Add examples</p>
         <div class="section">
-          <h5>Power</h5>
+          <h5 id="power-2">Power</h5>
           <dl>
             <dt>User Watches Video Content on Device on battery power</dt>
             <dd>The user has opened a video playback application and the
@@ -1635,7 +1635,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>CPU</h5>
+          <h5 id="cpu-2">CPU</h5>
           <dl>
             <dt>User Watches Video Content on Device</dt>
             <dd>The user has opened a video playback application and the
@@ -1684,7 +1684,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>Display</h5>
+          <h5 id="display-1">Display</h5>
           <dl>
             <dt>Application detects that screen is blank</dt>
             <dd>A web application has a lot of sprites, UI elements, and frequent server queries that 
@@ -1705,7 +1705,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>Connection</h5>
+          <h5 id="connection-1">Connection</h5>
           <p>The use cases for this module are critical to forming a realistic picture of what kinds of 
           information are going to be valuable for the web application that wants delivery context
           network information. The primary use case is: application wants to know about the network
@@ -1728,7 +1728,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>Thermal</h5>
+          <h5 id="thermal-2">Thermal</h5>
           <dl>
             <dt>Application can throttle activity based on device temperature.</dt>
             <dd>A web application can take device temperature into account in order to throttle 
@@ -1745,7 +1745,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>Audio</h5>
+          <h5 id="audio-1">Audio</h5>
           <dl>
             <dt>Application sound themes</dt>
             <dd>A game may detect a devices audio capabilities in order to select
@@ -1759,7 +1759,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>Video</h5>
+          <h5 id="video-1">Video</h5>
           <dl>
             <dt>Encoding video on the device : app requirements and user experience</dt>
             <dd>An application may include features that encode video. Determining the
@@ -1775,7 +1775,7 @@
           </dl>
         </div>
         <div class="section">
-          <h5>Input</h5>
+          <h5 id="input-1">Input</h5>
           <dl>
             <dt>Application adapts to touch screen device with no external pointer</dt>
             <dd>A user who frequently visits a popular music social media site navigates to the site on 
@@ -1808,8 +1808,8 @@
 
     <!--************************************* Acks ***************************************************-->
     <div id="acknowledgements" class="appendix section">
-      <h3><span class="secno">4.7 </span>Acknowledgements</h3>
+      <h3 id="x4.7-acknowledgements"><span class="secno">4.7 </span>Acknowledgements</h3>
       <p>The SVG Working Group would like to acknowledge the people outside of the DAP Working Group who helped with the process of developing this specification. Specifically, many thanks to Clayne Robison and Andy Idsinga at <a href="www.intel.com">Intel Corporation</a> for their contributions.
       </p>
     </div>
-  </div><div class="appendix section" id="references"><h2><span class="secno">A. </span>References</h2><div class="section" id="normative-references"><h3><span class="secno">A.1 </span>Normative references</h3><dl class="bibliography"><dt id="bib-CORE-DEVICE">[CORE-DEVICE]</dt><dd>Robin Berjon. <a href="http://dev.w3.org/2009/dap/device/"><cite>Core Device Interfaces.</cite></a> 02 December 2009. W3C Editor's Draft. (Work in progress.) URL: <a href="http://dev.w3.org/2009/dap/device/">http://dev.w3.org/2009/dap/device/</a> </dd><dt id="bib-CSSOM-VIEW">[CSSOM-VIEW]</dt><dd>Anne van Kesteren. <a href="http://www.w3.org/TR/2008/WD-cssom-view-20080222"><cite>CSSOM View Module.</cite></a> 22 February 2008. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2008/WD-cssom-view-20080222">http://www.w3.org/TR/2008/WD-cssom-view-20080222</a> </dd><dt id="bib-HTML5">[HTML5]</dt><dd>Ian Hickson; David Hyatt. <a href="http://www.w3.org/TR/2009/WD-html5-20090825/"><cite>HTML 5.</cite></a> 25 August 2009. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2009/WD-html5-20090825/">http://www.w3.org/TR/2009/WD-html5-20090825/</a> </dd><dt id="bib-IEEE802-3">[IEEE802-3]</dt><dd>IEEE 802.3: Carrier sense multiple access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications. December 2008.</dd><dt id="bib-NAVIGATOR">[NAVIGATOR]</dt><dd>Ian Hickson, David Hyatt. <a href="http://dev.w3.org/html5/spec/browsers.html#navigator"><cite>Navigator interface in HTML5</cite></a>, Editors draft (Work in progress). URL: <a href="http://dev.w3.org/html5/spec/browsers.html#navigator">http://dev.w3.org/html5/spec/browsers.html#navigator</a> </dd><dt id="bib-RFC2119">[RFC2119]</dt><dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> Internet RFC 2119. URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a> </dd></dl></div><div class="section" id="informative-references"><h3><span class="secno">A.2 </span>Informative references</h3><p>No informative references.</p></div></div></body></html>
\ No newline at end of file
+  </div><div class="appendix section" id="references"><h2 id="a.-references"><span class="secno">A. </span>References</h2><div class="section" id="normative-references"><h3 id="a.1-normative-references"><span class="secno">A.1 </span>Normative references</h3><dl class="bibliography"><dt id="bib-CORE-DEVICE">[CORE-DEVICE]</dt><dd>Robin Berjon. <a href="http://dev.w3.org/2009/dap/device/"><cite>Core Device Interfaces.</cite></a> 02 December 2009. W3C Editor's Draft. (Work in progress.) URL: <a href="http://dev.w3.org/2009/dap/device/">http://dev.w3.org/2009/dap/device/</a> </dd><dt id="bib-CSSOM-VIEW">[CSSOM-VIEW]</dt><dd>Anne van Kesteren. <a href="http://www.w3.org/TR/2008/WD-cssom-view-20080222"><cite>CSSOM View Module.</cite></a> 22 February 2008. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2008/WD-cssom-view-20080222">http://www.w3.org/TR/2008/WD-cssom-view-20080222</a> </dd><dt id="bib-HTML5">[HTML5]</dt><dd>Ian Hickson; David Hyatt. <a href="http://www.w3.org/TR/2009/WD-html5-20090825/"><cite>HTML 5.</cite></a> 25 August 2009. W3C Working Draft. (Work in progress.) URL: <a href="http://www.w3.org/TR/2009/WD-html5-20090825/">http://www.w3.org/TR/2009/WD-html5-20090825/</a> </dd><dt id="bib-IEEE802-3">[IEEE802-3]</dt><dd>IEEE 802.3: Carrier sense multiple access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications. December 2008.</dd><dt id="bib-NAVIGATOR">[NAVIGATOR]</dt><dd>Ian Hickson, David Hyatt. <a href="http://dev.w3.org/html5/spec/browsers.html#navigator"><cite>Navigator interface in HTML5</cite></a>, Editors draft (Work in progress). URL: <a href="http://dev.w3.org/html5/spec/browsers.html#navigator">http://dev.w3.org/html5/spec/browsers.html#navigator</a> </dd><dt id="bib-RFC2119">[RFC2119]</dt><dd>S. Bradner. <a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words for use in RFCs to Indicate Requirement Levels.</cite></a> Internet RFC 2119. URL: <a href="http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a> </dd></dl></div><div class="section" id="informative-references"><h3 id="a.2-informative-references"><span class="secno">A.2 </span>Informative references</h3><p>No informative references.</p></div></div></body></html>
\ No newline at end of file
Received on Thursday, 28 January 2010 15:55:43 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Thursday, 28 January 2010 15:55:43 GMT