[html5] r7722 - [giow] (3) Try to define order for supported property names. This is not based o [...]

whatwg at whatwg.org whatwg at whatwg.org
Tue Feb 12 16:03:20 PST 2013


Author: ianh
Date: 2013-02-12 16:03:19 -0800 (Tue, 12 Feb 2013)
New Revision: 7722

Modified:
   complete.html
   index
   source
Log:
[giow] (3) Try to define order for supported property names. This is not based on testing. If there are compatibility constraints here that prevent implementing this as specced, please let me know.
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=20395
Affected topics: DOM APIs, HTML, Microdata, Workers

Modified: complete.html
===================================================================
--- complete.html	2013-02-12 22:50:46 UTC (rev 7721)
+++ complete.html	2013-02-13 00:03:19 UTC (rev 7722)
@@ -248,7 +248,7 @@
 
   <header class=head id=head><p><a class=logo href=http://www.whatwg.org/><img alt=WHATWG height=101 src=/images/logo width=101></a></p>
    <hgroup><h1 class=allcaps>HTML</h1>
-    <h2 class="no-num no-toc">Living Standard — Last Updated 12 February 2013</h2>
+    <h2 class="no-num no-toc">Living Standard — Last Updated 13 February 2013</h2>
    </hgroup><dl><dt><strong>Web developer edition:</strong></dt>
     <dd><strong><a href=http://developers.whatwg.org/>http://developers.whatwg.org/</a></strong></dd>
     <dt>Multiple-page version:</dt>
@@ -3571,6 +3571,7 @@
 
      <li>The <dfn id=concept-node-insert title=concept-node-insert>insert</dfn>, <dfn id=concept-node-append title=concept-node-append>append</dfn>, <dfn id=concept-node-remove title=concept-node-remove>remove</dfn>, and <dfn id=concept-node-replace title=concept-node-replace>replace</dfn> algorithms for nodes</li>
      <li>The <dfn id=nodes-are-inserted>nodes are inserted</dfn> and <dfn id=nodes-are-removed>nodes are removed</dfn> concepts</li>
+     <li>The <dfn id=attribute-list>attribute list</dfn> concept.</li>
 
      <li><dfn id=event><code>Event</code></dfn> interface</li>
      <li><dfn id=eventtarget><code>EventTarget</code></dfn> interface</li>
@@ -7581,7 +7582,9 @@
   <code><a href=#htmlcollection>HTMLCollection</a></code> objects.</p>
 
   <p>The <a href=#supported-property-names>supported property names</a> consist of the values of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes of all the
-  elements <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+  elements <a href=#represented-by-the-collection>represented by the collection</a>, in <a href=#tree-order>tree order</a>, ignoring later
+  duplicates, with the <code title=attr-id><a href=#the-id-attribute>id</a></code> of an element preceding its <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> if it has both, they differ from each other, and neither is the
+  duplicate of an earlier entry.</p>
 
   <p>The <dfn id=dom-htmlformcontrolscollection-nameditem title=dom-HTMLFormControlsCollection-namedItem><code>namedItem(<var title="">name</var>)</code></dfn> method must act according to the following algorithm:</p>
 
@@ -7710,7 +7713,9 @@
   <code><a href=#the-optgroup-element>optgroup</a></code> elements (though it can remove children from them).</p>
 
   <p>The <a href=#supported-property-names>supported property names</a> consist of the values of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-option-name><a href=#attr-option-name>name</a></code> attributes of all the
-  elements <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+  elements <a href=#represented-by-the-collection>represented by the collection</a>, in <a href=#tree-order>tree order</a>, ignoring later
+  duplicates, with the <code title=attr-id><a href=#the-id-attribute>id</a></code> of an element preceding its <code title=attr-option-name><a href=#attr-option-name>name</a></code> if it has both, they differ from each other, and neither is
+  the duplicate of an earlier entry.</p>
 
   <p>The <dfn id=dom-htmloptionscollection-nameditem title=dom-HTMLOptionsCollection-namedItem><code>namedItem(<var title="">name</var>)</code></dfn> method must return the first node in the collection that has
   either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-option-name><a href=#attr-option-name>name</a></code> attribute equal to <var title="">name</var>, if there is one;
@@ -7841,7 +7846,8 @@
   <code><a href=#htmlcollection>HTMLCollection</a></code> objects.</p>
 
   <p>The <a href=#supported-property-names>supported property names</a> consist of the <a href=#property-names>property names</a> of all the
-  elements <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+  elements <a href=#represented-by-the-collection>represented by the collection</a>, in <a href=#tree-order>tree order</a>, ignoring later
+  duplicates.</p>
 
   <p>The <dfn id=dom-htmlpropertiescollection-names title=dom-HTMLPropertiesCollection-names><code>names</code></dfn> attribute must
   return a <a href=#live>live</a> <a href=#dfn-read-only-array title=dfn-read-only-array>read only</a> array object giving
@@ -7887,7 +7893,7 @@
 
   <p>The <a href=#supported-property-names>supported property names</a> on a <code><a href=#domstringmap>DOMStringMap</a></code> object at any instant
   are the names of each pair returned from the algorithm for getting the list of name-value pairs at
-  that instant.</p>
+  that instant, in the order returned.</p>
 
   <p>To <dfn id=dom-domstringmap-nameditem title=dom-DOMStringMap-namedItem>determine the value of a named property</dfn> <var title="">name</var> in a <code><a href=#domstringmap>DOMStringMap</a></code>, the user agent must return the value component
   of the name-value pair whose name component is <var title="">name</var> in the list returned by
@@ -7956,7 +7962,7 @@
 
   <p>The <a href=#supported-property-names>supported property names</a> on a <code><a href=#domelementmap>DOMElementMap</a></code> object at any instant
   are the names for each mapping returned from the algorithm for getting the list of name-element
-  mappings at that instant.</p>
+  mappings at that instant, in the order returned.</p>
 
   <p>To <dfn id=dom-domelementmap-nameditem title=dom-DOMElementMap-namedItem>determine the value of a named property</dfn> <var title="">name</var> in a <code><a href=#domelementmap>DOMElementMap</a></code>, the user agent must return the element
   component of the name-element mapping whose name component is <var title="">name</var> in the list
@@ -8853,7 +8859,8 @@
   attributes, and the values of the <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes of all the
     <code><a href=#the-img-element>img</a></code>
   elements in the <code><a href=#document>Document</a></code> that have both <code title=attr-name>name</code> content
-  attributes and <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes.</p>
+  attributes and <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes. The <a href=#supported-property-names>supported property
+  names</a> must be in <a href=#tree-order>tree order</a>, ignoring later duplicates.</p>
 
   <p>To <a href=#determine-the-value-of-a-named-property>determine the value of a named property</a> <var title="">name</var> when <dfn id=dom-document-nameditem title=dom-document-namedItem>the <code>Document</code> object is indexed for property
   retrieval</dfn>, the user agent must return the value obtained using the following steps:</p>
@@ -10013,8 +10020,11 @@
     <ol><li>Let <var title="">list</var> be an empty list of name-value
      pairs.</li>
 
+<!--CLEANUP-->
      <li>For each content attribute on the element whose first five characters are the string "<code title="">data-</code>" and whose remaining characters (if any) do not include any
-     <a href=#uppercase-ascii-letters>uppercase ASCII letters</a>, add a name-value pair to <var title="">list</var> whose
+     <a href=#uppercase-ascii-letters>uppercase ASCII letters</a>,
+     in the order that those attributes are listed in the element's <span>attributes list</span>,
+     add a name-value pair to <var title="">list</var> whose
      name is the attribute's name with the first five characters removed and whose value is the
      attribute's value.</li>
 
@@ -43611,7 +43621,7 @@
   boolean <a href=#dom-form-checkvalidity title=dom-form-checkValidity>checkValidity</a>();
 };</pre>
    </dd>
-  </dl><!--TOPIC:HTML--><p>The <code><a href=#the-form-element>form</a></code> element <a href=#represents>represents</a> a
+  </dl><!--TOPIC:HTML--><!--CLEANUP--><p>The <code><a href=#the-form-element>form</a></code> element <a href=#represents>represents</a> a
   collection of <a href=#form-associated-element title="form-associated element">form-associated
   elements</a>, some of which can represent editable values that
   can be submitted to a server for processing.</p>
@@ -43765,7 +43775,10 @@
   <p>The <a href=#supported-property-names>supported property names</a> consist of the values
   of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes of all the <a href=#category-listed title=category-listed>listed elements</a> and <code><a href=#the-img-element>img</a></code>
   elements that are descendants of the <code><a href=#the-form-element>form</a></code> element, and
-  all the names currently in the <a href=#past-names-map>past names map</a>.</p>
+  all the names currently in the <a href=#past-names-map>past names map</a>, in <a href=#tree-order>tree order</a>, with <code title=attr-id><a href=#the-id-attribute>id</a></code> attributes preceding <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes
+  preceding entries from the <a href=#past-names-map>past names map</a>, with multiple entries in the <a href=#past-names-map>past
+  names map</a> for the same element being ordered chronologically by when they were added to the
+  map, and in all cases ignoring later duplicates.</p>
 
   <p>When a <code><a href=#the-form-element>form</a></code> element is <dfn id=dom-form-nameditem title=dom-form-namedItem>indexed for named property
   retrieval</dfn>, the user agent must run the following steps:</p>
@@ -65204,7 +65217,8 @@
   </dl><div class=impl>
 
   <p>The <code><a href=#window>Window</a></code> interface <a href=#support-named-properties title="support named properties">supports named
-  properties</a>. The <a href=#supported-property-names>supported property names</a> at any moment consist of:</p>
+  properties</a>. The <a href=#supported-property-names>supported property names</a> at any moment consist of the
+  following, in <a href=#tree-order>tree order</a>, ignoring later duplicates:</p>
 
   <ul><li>the <a href=#browsing-context-name>browsing context name</a> of any <a href=#child-browsing-context>child browsing context</a> of the
    <a href=#active-document>active document</a> whose name is not the empty string,</li>
@@ -79986,7 +80000,7 @@
 
   <p>The DOM APIs — specifically, all the interfaces defind in the DOM specification other
   than exceptions — must not be <a href=#expose title=expose>exposed</a> if the <a href=#javascript-global-environment>JavaScript
-  global environment</a> is a <a href=#worker-environment>worker environment</a>. <a href=#hrefDOMCORE>[DOMCORE]</a></p>
+  global environment</a> is a <a href=#worker-environment>worker environment</a>. <a href=#refsDOM>[DOM]</a></p>
 
 
   <h4 id=importing-scripts-and-libraries><span class=secno>9.3.1 </span>Importing scripts and libraries</h4>
@@ -83099,6 +83113,7 @@
 
   <h4 id=the-storage-interface><span class=secno>11.2.1 </span>The <code><a href=#storage-0>Storage</a></code> interface</h4>
 
+<!--CLEANUP-->
   <pre class=idl>interface <dfn id=storage-0>Storage</dfn> {
   readonly attribute unsigned long <a href=#dom-storage-length title=dom-Storage-length>length</a>;
   DOMString? <a href=#dom-storage-key title=dom-Storage-key>key</a>(unsigned long index);
@@ -83148,7 +83163,8 @@
 
   <p>The <a href=#supported-property-names>supported property names</a> on a
   <code><a href=#storage-0>Storage</a></code> object are the keys of each key/value pair
-  currently present in the list associated with the object.</p>
+  currently present in the list associated with the object, in the order that the keys were last
+  added to the storage area.</p>
 
   <p>The <dfn id=dom-storage-getitem title=dom-Storage-getItem><code>getItem(<var title="">key</var>)</code></dfn> method must return
   the current value associated with

Modified: index
===================================================================
--- index	2013-02-12 22:50:46 UTC (rev 7721)
+++ index	2013-02-13 00:03:19 UTC (rev 7722)
@@ -248,7 +248,7 @@
 
   <header class=head id=head><p><a class=logo href=http://www.whatwg.org/><img alt=WHATWG height=101 src=/images/logo width=101></a></p>
    <hgroup><h1 class=allcaps>HTML</h1>
-    <h2 class="no-num no-toc">Living Standard — Last Updated 12 February 2013</h2>
+    <h2 class="no-num no-toc">Living Standard — Last Updated 13 February 2013</h2>
    </hgroup><dl><dt><strong>Web developer edition:</strong></dt>
     <dd><strong><a href=http://developers.whatwg.org/>http://developers.whatwg.org/</a></strong></dd>
     <dt>Multiple-page version:</dt>
@@ -3571,6 +3571,7 @@
 
      <li>The <dfn id=concept-node-insert title=concept-node-insert>insert</dfn>, <dfn id=concept-node-append title=concept-node-append>append</dfn>, <dfn id=concept-node-remove title=concept-node-remove>remove</dfn>, and <dfn id=concept-node-replace title=concept-node-replace>replace</dfn> algorithms for nodes</li>
      <li>The <dfn id=nodes-are-inserted>nodes are inserted</dfn> and <dfn id=nodes-are-removed>nodes are removed</dfn> concepts</li>
+     <li>The <dfn id=attribute-list>attribute list</dfn> concept.</li>
 
      <li><dfn id=event><code>Event</code></dfn> interface</li>
      <li><dfn id=eventtarget><code>EventTarget</code></dfn> interface</li>
@@ -7581,7 +7582,9 @@
   <code><a href=#htmlcollection>HTMLCollection</a></code> objects.</p>
 
   <p>The <a href=#supported-property-names>supported property names</a> consist of the values of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes of all the
-  elements <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+  elements <a href=#represented-by-the-collection>represented by the collection</a>, in <a href=#tree-order>tree order</a>, ignoring later
+  duplicates, with the <code title=attr-id><a href=#the-id-attribute>id</a></code> of an element preceding its <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> if it has both, they differ from each other, and neither is the
+  duplicate of an earlier entry.</p>
 
   <p>The <dfn id=dom-htmlformcontrolscollection-nameditem title=dom-HTMLFormControlsCollection-namedItem><code>namedItem(<var title="">name</var>)</code></dfn> method must act according to the following algorithm:</p>
 
@@ -7710,7 +7713,9 @@
   <code><a href=#the-optgroup-element>optgroup</a></code> elements (though it can remove children from them).</p>
 
   <p>The <a href=#supported-property-names>supported property names</a> consist of the values of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-option-name><a href=#attr-option-name>name</a></code> attributes of all the
-  elements <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+  elements <a href=#represented-by-the-collection>represented by the collection</a>, in <a href=#tree-order>tree order</a>, ignoring later
+  duplicates, with the <code title=attr-id><a href=#the-id-attribute>id</a></code> of an element preceding its <code title=attr-option-name><a href=#attr-option-name>name</a></code> if it has both, they differ from each other, and neither is
+  the duplicate of an earlier entry.</p>
 
   <p>The <dfn id=dom-htmloptionscollection-nameditem title=dom-HTMLOptionsCollection-namedItem><code>namedItem(<var title="">name</var>)</code></dfn> method must return the first node in the collection that has
   either an <code title=attr-id><a href=#the-id-attribute>id</a></code> attribute or a <code title=attr-option-name><a href=#attr-option-name>name</a></code> attribute equal to <var title="">name</var>, if there is one;
@@ -7841,7 +7846,8 @@
   <code><a href=#htmlcollection>HTMLCollection</a></code> objects.</p>
 
   <p>The <a href=#supported-property-names>supported property names</a> consist of the <a href=#property-names>property names</a> of all the
-  elements <a href=#represented-by-the-collection>represented by the collection</a>.</p>
+  elements <a href=#represented-by-the-collection>represented by the collection</a>, in <a href=#tree-order>tree order</a>, ignoring later
+  duplicates.</p>
 
   <p>The <dfn id=dom-htmlpropertiescollection-names title=dom-HTMLPropertiesCollection-names><code>names</code></dfn> attribute must
   return a <a href=#live>live</a> <a href=#dfn-read-only-array title=dfn-read-only-array>read only</a> array object giving
@@ -7887,7 +7893,7 @@
 
   <p>The <a href=#supported-property-names>supported property names</a> on a <code><a href=#domstringmap>DOMStringMap</a></code> object at any instant
   are the names of each pair returned from the algorithm for getting the list of name-value pairs at
-  that instant.</p>
+  that instant, in the order returned.</p>
 
   <p>To <dfn id=dom-domstringmap-nameditem title=dom-DOMStringMap-namedItem>determine the value of a named property</dfn> <var title="">name</var> in a <code><a href=#domstringmap>DOMStringMap</a></code>, the user agent must return the value component
   of the name-value pair whose name component is <var title="">name</var> in the list returned by
@@ -7956,7 +7962,7 @@
 
   <p>The <a href=#supported-property-names>supported property names</a> on a <code><a href=#domelementmap>DOMElementMap</a></code> object at any instant
   are the names for each mapping returned from the algorithm for getting the list of name-element
-  mappings at that instant.</p>
+  mappings at that instant, in the order returned.</p>
 
   <p>To <dfn id=dom-domelementmap-nameditem title=dom-DOMElementMap-namedItem>determine the value of a named property</dfn> <var title="">name</var> in a <code><a href=#domelementmap>DOMElementMap</a></code>, the user agent must return the element
   component of the name-element mapping whose name component is <var title="">name</var> in the list
@@ -8853,7 +8859,8 @@
   attributes, and the values of the <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes of all the
     <code><a href=#the-img-element>img</a></code>
   elements in the <code><a href=#document>Document</a></code> that have both <code title=attr-name>name</code> content
-  attributes and <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes.</p>
+  attributes and <code title=attr-id><a href=#the-id-attribute>id</a></code> content attributes. The <a href=#supported-property-names>supported property
+  names</a> must be in <a href=#tree-order>tree order</a>, ignoring later duplicates.</p>
 
   <p>To <a href=#determine-the-value-of-a-named-property>determine the value of a named property</a> <var title="">name</var> when <dfn id=dom-document-nameditem title=dom-document-namedItem>the <code>Document</code> object is indexed for property
   retrieval</dfn>, the user agent must return the value obtained using the following steps:</p>
@@ -10013,8 +10020,11 @@
     <ol><li>Let <var title="">list</var> be an empty list of name-value
      pairs.</li>
 
+<!--CLEANUP-->
      <li>For each content attribute on the element whose first five characters are the string "<code title="">data-</code>" and whose remaining characters (if any) do not include any
-     <a href=#uppercase-ascii-letters>uppercase ASCII letters</a>, add a name-value pair to <var title="">list</var> whose
+     <a href=#uppercase-ascii-letters>uppercase ASCII letters</a>,
+     in the order that those attributes are listed in the element's <span>attributes list</span>,
+     add a name-value pair to <var title="">list</var> whose
      name is the attribute's name with the first five characters removed and whose value is the
      attribute's value.</li>
 
@@ -43611,7 +43621,7 @@
   boolean <a href=#dom-form-checkvalidity title=dom-form-checkValidity>checkValidity</a>();
 };</pre>
    </dd>
-  </dl><!--TOPIC:HTML--><p>The <code><a href=#the-form-element>form</a></code> element <a href=#represents>represents</a> a
+  </dl><!--TOPIC:HTML--><!--CLEANUP--><p>The <code><a href=#the-form-element>form</a></code> element <a href=#represents>represents</a> a
   collection of <a href=#form-associated-element title="form-associated element">form-associated
   elements</a>, some of which can represent editable values that
   can be submitted to a server for processing.</p>
@@ -43765,7 +43775,10 @@
   <p>The <a href=#supported-property-names>supported property names</a> consist of the values
   of all the <code title=attr-id><a href=#the-id-attribute>id</a></code> and <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes of all the <a href=#category-listed title=category-listed>listed elements</a> and <code><a href=#the-img-element>img</a></code>
   elements that are descendants of the <code><a href=#the-form-element>form</a></code> element, and
-  all the names currently in the <a href=#past-names-map>past names map</a>.</p>
+  all the names currently in the <a href=#past-names-map>past names map</a>, in <a href=#tree-order>tree order</a>, with <code title=attr-id><a href=#the-id-attribute>id</a></code> attributes preceding <code title=attr-fe-name><a href=#attr-fe-name>name</a></code> attributes
+  preceding entries from the <a href=#past-names-map>past names map</a>, with multiple entries in the <a href=#past-names-map>past
+  names map</a> for the same element being ordered chronologically by when they were added to the
+  map, and in all cases ignoring later duplicates.</p>
 
   <p>When a <code><a href=#the-form-element>form</a></code> element is <dfn id=dom-form-nameditem title=dom-form-namedItem>indexed for named property
   retrieval</dfn>, the user agent must run the following steps:</p>
@@ -65204,7 +65217,8 @@
   </dl><div class=impl>
 
   <p>The <code><a href=#window>Window</a></code> interface <a href=#support-named-properties title="support named properties">supports named
-  properties</a>. The <a href=#supported-property-names>supported property names</a> at any moment consist of:</p>
+  properties</a>. The <a href=#supported-property-names>supported property names</a> at any moment consist of the
+  following, in <a href=#tree-order>tree order</a>, ignoring later duplicates:</p>
 
   <ul><li>the <a href=#browsing-context-name>browsing context name</a> of any <a href=#child-browsing-context>child browsing context</a> of the
    <a href=#active-document>active document</a> whose name is not the empty string,</li>
@@ -79986,7 +80000,7 @@
 
   <p>The DOM APIs — specifically, all the interfaces defind in the DOM specification other
   than exceptions — must not be <a href=#expose title=expose>exposed</a> if the <a href=#javascript-global-environment>JavaScript
-  global environment</a> is a <a href=#worker-environment>worker environment</a>. <a href=#hrefDOMCORE>[DOMCORE]</a></p>
+  global environment</a> is a <a href=#worker-environment>worker environment</a>. <a href=#refsDOM>[DOM]</a></p>
 
 
   <h4 id=importing-scripts-and-libraries><span class=secno>9.3.1 </span>Importing scripts and libraries</h4>
@@ -83099,6 +83113,7 @@
 
   <h4 id=the-storage-interface><span class=secno>11.2.1 </span>The <code><a href=#storage-0>Storage</a></code> interface</h4>
 
+<!--CLEANUP-->
   <pre class=idl>interface <dfn id=storage-0>Storage</dfn> {
   readonly attribute unsigned long <a href=#dom-storage-length title=dom-Storage-length>length</a>;
   DOMString? <a href=#dom-storage-key title=dom-Storage-key>key</a>(unsigned long index);
@@ -83148,7 +83163,8 @@
 
   <p>The <a href=#supported-property-names>supported property names</a> on a
   <code><a href=#storage-0>Storage</a></code> object are the keys of each key/value pair
-  currently present in the list associated with the object.</p>
+  currently present in the list associated with the object, in the order that the keys were last
+  added to the storage area.</p>
 
   <p>The <dfn id=dom-storage-getitem title=dom-Storage-getItem><code>getItem(<var title="">key</var>)</code></dfn> method must return
   the current value associated with

Modified: source
===================================================================
--- source	2013-02-12 22:50:46 UTC (rev 7721)
+++ source	2013-02-13 00:03:19 UTC (rev 7722)
@@ -2393,6 +2393,7 @@
 
      <li>The <dfn title="concept-node-insert">insert</dfn>, <dfn title="concept-node-append">append</dfn>, <dfn title="concept-node-remove">remove</dfn>, and <dfn title="concept-node-replace">replace</dfn> algorithms for nodes</li>
      <li>The <dfn>nodes are inserted</dfn> and <dfn>nodes are removed</dfn> concepts</li>
+     <li>The <dfn>attribute list</dfn> concept.</li>
 
      <li><dfn><code>Event</code></dfn> interface</li>
      <li><dfn><code>EventTarget</code></dfn> interface</li>
@@ -7162,7 +7163,10 @@
 
   <p>The <span>supported property names</span> consist of the values of all the <code
   title="attr-id">id</code> and <code title="attr-fe-name">name</code> attributes of all the
-  elements <span>represented by the collection</span>.</p>
+  elements <span>represented by the collection</span>, in <span>tree order</span>, ignoring later
+  duplicates, with the <code title="attr-id">id</code> of an element preceding its <code
+  title="attr-fe-name">name</code> if it has both, they differ from each other, and neither is the
+  duplicate of an earlier entry.</p>
 
   <p>The <dfn title="dom-HTMLFormControlsCollection-namedItem"><code>namedItem(<var
   title="">name</var>)</code></dfn> method must act according to the following algorithm:</p>
@@ -7328,7 +7332,10 @@
 
   <p>The <span>supported property names</span> consist of the values of all the <code
   title="attr-id">id</code> and <code title="attr-option-name">name</code> attributes of all the
-  elements <span>represented by the collection</span>.</p>
+  elements <span>represented by the collection</span>, in <span>tree order</span>, ignoring later
+  duplicates, with the <code title="attr-id">id</code> of an element preceding its <code
+  title="attr-option-name">name</code> if it has both, they differ from each other, and neither is
+  the duplicate of an earlier entry.</p>
 
   <p>The <dfn title="dom-HTMLOptionsCollection-namedItem"><code>namedItem(<var
   title="">name</var>)</code></dfn> method must return the first node in the collection that has
@@ -7488,7 +7495,8 @@
   <code>HTMLCollection</code> objects.</p>
 
   <p>The <span>supported property names</span> consist of the <span>property names</span> of all the
-  elements <span>represented by the collection</span>.</p>
+  elements <span>represented by the collection</span>, in <span>tree order</span>, ignoring later
+  duplicates.</p>
 
   <p>The <dfn title="dom-HTMLPropertiesCollection-names"><code>names</code></dfn> attribute must
   return a <span>live</span> <span title="dfn-read-only-array">read only</span> array object giving
@@ -7537,7 +7545,7 @@
 
   <p>The <span>supported property names</span> on a <code>DOMStringMap</code> object at any instant
   are the names of each pair returned from the algorithm for getting the list of name-value pairs at
-  that instant.</p>
+  that instant, in the order returned.</p>
 
   <p>To <dfn title="dom-DOMStringMap-namedItem">determine the value of a named property</dfn> <var
   title="">name</var> in a <code>DOMStringMap</code>, the user agent must return the value component
@@ -7612,7 +7620,7 @@
 
   <p>The <span>supported property names</span> on a <code>DOMElementMap</code> object at any instant
   are the names for each mapping returned from the algorithm for getting the list of name-element
-  mappings at that instant.</p>
+  mappings at that instant, in the order returned.</p>
 
   <p>To <dfn title="dom-DOMElementMap-namedItem">determine the value of a named property</dfn> <var
   title="">name</var> in a <code>DOMElementMap</code>, the user agent must return the element
@@ -8679,7 +8687,8 @@
   attributes, and the values of the <code title="attr-id">id</code> content attributes of all the
     <code>img</code>
   elements in the <code>Document</code> that have both <code title="attr-name">name</code> content
-  attributes and <code title="attr-id">id</code> content attributes.</p>
+  attributes and <code title="attr-id">id</code> content attributes. The <span>supported property
+  names</span> must be in <span>tree order</span>, ignoring later duplicates.</p>
 
   <p>To <span>determine the value of a named property</span> <var title="">name</var> when <dfn
   title="dom-document-namedItem">the <code>Document</code> object is indexed for property
@@ -9994,9 +10003,12 @@
      <li>Let <var title="">list</var> be an empty list of name-value
      pairs.</li>
 
+<!--CLEANUP-->
      <li>For each content attribute on the element whose first five characters are the string "<code
      title="">data-</code>" and whose remaining characters (if any) do not include any
-     <span>uppercase ASCII letters</span>, add a name-value pair to <var title="">list</var> whose
+     <span>uppercase ASCII letters</span>,
+     in the order that those attributes are listed in the element's <span>attributes list</span>,
+     add a name-value pair to <var title="">list</var> whose
      name is the attribute's name with the first five characters removed and whose value is the
      attribute's value.</li>
 
@@ -50964,6 +50976,7 @@
    </dd>
   </dl><!--TOPIC:HTML-->
 
+<!--CLEANUP-->
   <p>The <code>form</code> element <span>represents</span> a
   collection of <span title="form-associated element">form-associated
   elements</span>, some of which can represent editable values that
@@ -51153,7 +51166,11 @@
   title="attr-fe-name">name</code> attributes of all the <span
   title="category-listed">listed elements</span> and <code>img</code>
   elements that are descendants of the <code>form</code> element, and
-  all the names currently in the <span>past names map</span>.</p>
+  all the names currently in the <span>past names map</span>, in <span>tree order</span>, with <code
+  title="attr-id">id</code> attributes preceding <code title="attr-fe-name">name</code> attributes
+  preceding entries from the <span>past names map</span>, with multiple entries in the <span>past
+  names map</span> for the same element being ordered chronologically by when they were added to the
+  map, and in all cases ignoring later duplicates.</p>
 
   <p>When a <code>form</code> element is <dfn
   title="dom-form-namedItem">indexed for named property
@@ -76236,7 +76253,8 @@
   <div class="impl">
 
   <p>The <code>Window</code> interface <span title="support named properties">supports named
-  properties</span>. The <span>supported property names</span> at any moment consist of:</p>
+  properties</span>. The <span>supported property names</span> at any moment consist of the
+  following, in <span>tree order</span>, ignoring later duplicates:</p>
 
   <ul>
 
@@ -92644,7 +92662,7 @@
   <p>The DOM APIs — specifically, all the interfaces defind in the DOM specification other
   than exceptions — must not be <span title="expose">exposed</span> if the <span>JavaScript
   global environment</span> is a <span>worker environment</span>. <a
-  href="#hrefDOMCORE">[DOMCORE]</a></p>
+  href="#refsDOM">[DOM]</a></p>
 
 
   <h4>Importing scripts and libraries</h4>
@@ -96292,6 +96310,7 @@
 
   <h5>The <code>Storage</code> interface</h5>
 
+<!--CLEANUP-->
   <pre class="idl">interface <dfn>Storage</dfn> {
   readonly attribute unsigned long <span title="dom-Storage-length">length</span>;
   DOMString? <span title="dom-Storage-key">key</span>(unsigned long index);
@@ -96345,7 +96364,8 @@
 
   <p>The <span>supported property names</span> on a
   <code>Storage</code> object are the keys of each key/value pair
-  currently present in the list associated with the object.</p>
+  currently present in the list associated with the object, in the order that the keys were last
+  added to the storage area.</p>
 
   <p>The <dfn title="dom-Storage-getItem"><code>getItem(<var
   title="">key</var>)</code></dfn> method must return




More information about the Commit-Watchers mailing list