HTML Standard Tracker

Filter

File a bug

SVNBugCommentTime (UTC)
59997539[Conformance Checkers] apply wg decision2011-04-13 00:06
@@ -41175,39 +41175,37 @@ function AddCloud(data, x, y) { ... }</pre>
    <dd>In this order: optionally a <code>caption</code> element,
    followed by zero or more <code>colgroup</code> elements, followed
    optionally by a <code>thead</code> element, followed optionally by
    a <code>tfoot</code> element, followed by either zero or more
    <code>tbody</code> elements or one or more <code>tr</code>
    elements, followed optionally by a <code>tfoot</code> element (but
    there can only be one <code>tfoot</code> element child in
    total).</dd>
    <dt>Content attributes:</dt>
    <dd><span>Global attributes</span></dd>
-   <dd><code title="attr-table-summary">summary</code> (but see prose)</dd>
    <dt>DOM interface:</dt>
    <dd>
 <pre class="idl">interface <dfn>HTMLTableElement</dfn> : <span>HTMLElement</span> {
            attribute <span>HTMLTableCaptionElement</span> <span title="dom-table-caption">caption</span>;
   <span>HTMLElement</span> <span title="dom-table-createCaption">createCaption</span>();
   void <span title="dom-table-deleteCaption">deleteCaption</span>();
            attribute <span>HTMLTableSectionElement</span> <span title="dom-table-tHead">tHead</span>;
   <span>HTMLElement</span> <span title="dom-table-createTHead">createTHead</span>();
   void <span title="dom-table-deleteTHead">deleteTHead</span>();
            attribute <span>HTMLTableSectionElement</span> <span title="dom-table-tFoot">tFoot</span>;
   <span>HTMLElement</span> <span title="dom-table-createTFoot">createTFoot</span>();
   void <span title="dom-table-deleteTFoot">deleteTFoot</span>();
   readonly attribute <span>HTMLCollection</span> <span title="dom-table-tBodies">tBodies</span>;
   <span>HTMLElement</span> <span title="dom-table-createTBody">createTBody</span>();
   readonly attribute <span>HTMLCollection</span> <span title="dom-table-rows">rows</span>;
   <span>HTMLElement</span> <span title="dom-table-insertRow">insertRow</span>(in optional long index);
   void <span title="dom-table-deleteRow">deleteRow</span>(in long index);
-           attribute DOMString <span title="dom-table-summary">summary</span>;
 };</pre>
    </dd>
   </dl>
 
   <p>The <code>table</code> element <span>represents</span> data with
   more than one dimension, in the form of a <span
   title="concept-table">table</span>.</p>
 
   <div class="impl">
 
@@ -41237,104 +41235,24 @@ function AddCloud(data, x, y) { ... }</pre>
 
   </div>
 
   <p>Tables have rows, columns, and cells given by their descendants.
   The rows and columns form a grid; a table's cells must completely
   cover that grid without overlap. <span class="impl note">Precise
   rules for determining whether this conformance requirement is met
   are described in the description of the <span>table
   model</span>.</span></p>
 
-  <p id="table-descriptions">For tables that consist of more than just
-  a grid of cells with headers in the first row and headers in the
-  first column, and for any table in general where the reader might
-  have difficulty understanding the content, authors should include
-  explanatory information introducing the table. This information is
-  useful for all users, but is especially useful for users who cannot
-  see the table, e.g. users of screen readers.</p>
-
-  <p>Such explanatory information should introduce the purpose of the
-  table, outline its basic cell structure, highlight any trends or
-  patterns, and generally teach the user how to use the table.</p>
-
-  <div class="example">
-
-   <p>For instance, the following table:</p>
-
-   <table>
-    <caption>Characteristics with positive and negative sides</caption>
-    <thead>
-     <tr>
-      <th id="n"> Negative
-      <th> Characteristic
-      <th> Positive
-    <tbody>
-     <tr>
-      <td headers="n r1"> Sad
-      <th id=r1> Mood
-      <td> Happy
-     <tr>
-      <td headers="n r2"> Failing
-      <th id=r2> Grade
-      <td> Passing
-   </table>
-
-   <p>...might benefit from a description explaining the way the table
-   is laid out, something like "Characteristics are given in the
-   second column, with the negative side in the left column and the
-   positive side in the right column".</p>
-
-  </div>
-
-  <p><a href="#table-descriptions-techniques">Guidance on how to
-  provide such information</a> is provided below.</p>
-
-  <p>The <dfn title="attr-table-summary"><code>summary</code></dfn>
-  attribute on <code>table</code> elements was suggested in earlier
-  versions of the language as a technique for providing explanatory
-  text for complex tables for users of screen readers. One of the <a
-  href="#table-descriptions-techniques">techniques</a> described
-  <!--in the <code>table</code> section--> below should be used
-  instead. <!--Authors should not specify the <code
-  title="attr-table-summary">summary</code> attribute on
-  <code>table</code> elements. --> <!-- 2.65% pages --></p>
-
-  <p class="note">In particular, authors are encouraged to consider
-  whether their explanatory text for tables is likely to be useful to
-  the visually impaired: if their text would not be useful, then it is
-  best to not include a <code
-  title="attr-table-summary">summary</code> attribute. Similarly, if
-  their explanatory text could help someone who is not visually
-  impaired, e.g. someone who is seeing the table for the first time,
-  then the text would be more useful before the table or in the
-  <code>caption</code>. For example, describing the conclusions of the
-  data in a table is useful to everyone; explaining how to read the
-  table, if not obvious from the headers alone, is useful to everyone;
-  describing the structure of the table, if it is easy to grasp
-  visually, might not be useful to everyone, but it might also not be
-  useful to users who can quickly navigate the table with an
-  accessibility tool.</p>
-
-  <!--
-  <p class="note">Use of the <code
-  title="attr-table-summary">summary</code> attribute is discouraged
-  because in practice it is poorly understood. Because the attribute
-  is not exposed in visual user agents, authors who have included it
-  have typically not been able to test it, and have therefore set the
-  attribute to values that are of no use to users of accessibility
-  tools. This has lead to accessibility tools introducing heuristics
-  to try to avoid exposing such usage of the attribute to users. Even
-  the few authors who have made the best use of the attribute have
-  often misused it, for example by including text that would in fact
-  be useful for all users, or that is redundant with other information
-  on the page separate from the table.</p>
-  -->
+  <p>Authors are encouraged to provide information describing how to
+  interpret complex tables. Guidance on how <a
+  href="#table-descriptions-techniques">provide such information</a>
+  is given below.</p>
 
   <div class="impl">
 
   <p>If a <code>table</code> element has a <code
   title="attr-table-summary">summary</code> attribute, the user agent
   may report the contents of that attribute to the user.</p>
 
   </div>
 
   <dl class="domintro">
@@ -41605,24 +41523,20 @@ function AddCloud(data, x, y) { ... }</pre>
    title="dom-table-rows">rows</code> collection, the method must
    instead raise an <code>INDEX_SIZE_ERR</code> exception, and these
    steps must be aborted.</p></li>
 
    <li><p>Otherwise, the method must remove the <var
    title="">index</var>th element in the <code
    title="dom-table-rows">rows</code> collection from its parent.</p>
 
   </ol>
 
-  <p>The <dfn title="dom-table-summary"><code>summary</code></dfn> IDL
-  attribute must <span>reflect</span> the content attribute of the
-  same name.</p>
-
   </div>
 
   <div class="example">
 
    <p>Here is an example of a table being used to mark up a Sudoku
    puzzle. Observe the lack of headers, which are not necessary in
    such a table.</p>
 
    <pre>&lt;section>
  &lt;style scoped>
@@ -41648,20 +41562,64 @@ function AddCloud(data, x, y) { ... }</pre>
    &lt;tr> &lt;td>   &lt;td>   &lt;td>   &lt;td>   &lt;td> 7 &lt;td>   &lt;td>   &lt;td>   &lt;td>
    &lt;tr> &lt;td> 9 &lt;td>   &lt;td>   &lt;td> 8 &lt;td>   &lt;td> 2 &lt;td>   &lt;td>   &lt;td> 5
  &lt;/table>
 &lt;/section></pre>
 
   </div>
 
 
   <h5 id="table-descriptions-techniques">Techniques for describing tables</h5>
 
+  <p id="table-descriptions">For tables that consist of more than just
+  a grid of cells with headers in the first row and headers in the
+  first column, and for any table in general where the reader might
+  have difficulty understanding the content, authors should include
+  explanatory information introducing the table. This information is
+  useful for all users, but is especially useful for users who cannot
+  see the table, e.g. users of screen readers.</p>
+
+  <p>Such explanatory information should introduce the purpose of the
+  table, outline its basic cell structure, highlight any trends or
+  patterns, and generally teach the user how to use the table.</p>
+
+  <!--Describing the conclusions of the data in a table is useful to
+  everyone; explaining how to read the table, if not obvious from the
+  headers alone, is useful to everyone; describing the structure of
+  the table, if it is easy to grasp visually, might not be useful to
+  everyone, but it might also not be useful to users who can quickly
+  navigate the table with an accessibility tool.-->
+
+  <p>For instance, the following table:</p>
+
+  <table>
+   <caption>Characteristics with positive and negative sides</caption>
+   <thead>
+    <tr>
+     <th id="n"> Negative
+     <th> Characteristic
+     <th> Positive
+   <tbody>
+    <tr>
+     <td headers="n r1"> Sad
+     <th id=r1> Mood
+     <td> Happy
+    <tr>
+     <td headers="n r2"> Failing
+     <th id=r2> Grade
+     <td> Passing
+  </table>
+
+  <p>...might benefit from a description explaining the way the table
+  is laid out, something like "Characteristics are given in the
+  second column, with the negative side in the left column and the
+  positive side in the right column".</p>
+
   <p>There are a variety of ways to include this information, such as:</p>
 
   <dl>
 
    <dt>In prose, surrounding the table</dt>
 
    <dd>
     <div class="example"><pre>&lt;p>In the following table, characteristics are given in the second
 column, with the negative side in the left column and the positive
 side in the right column.&lt;/p>
@@ -103889,24 +103847,20 @@ if (s = prompt('What is your name?')) {
   be equal to the element's <span title="concept-id">ID</span>. In
   earlier versions of the language, this attribute was intended as a
   way to specify possible targets for fragment identifiers in <span
   title="URL">URLs</span>. The <code title="attr-id">id</code>
   attribute should be used instead.</p>
 
   <p class="note">In <span>the HTML syntax</span>, specifying a <span
   title="syntax-DOCTYPE">DOCTYPE</span> that is an <span>obsolete
   permitted DOCTYPE</span> will also trigger a warning.</p>
 
-  <p class="note">The <code title="attr-table-summary">summary</code>
-  attribute, defined in the <code>table</code> section, will also
-  trigger a warning.</p>
-
 
   <div class="impl">
 
   <h4>Warnings for obsolete but conforming features</h4>
 
   <p>To ease the transition from HTML4 Transitional documents to the
   language defined in <em>this</em> specification, and to discourage
   certain features that are only allowed in very few circumstances,
   conformance checkers are required to warn the user when the
   following features are used in a document. These are generally old
@@ -103934,24 +103888,20 @@ if (s = prompt('What is your name?')) {
    case-insensitive</span> match for the string "<code
    title="">JavaScript</code>" and if there is no <code
    title="attr-script-type">type</code> attribute or there is and its
    value is an <span>ASCII case-insensitive</span> match for the
    string "<code title="">text/javascript</code>".</p></li>
 
    <li><p>The presence of a <code title="attr-a-name">name</code>
    attribute on an <code>a</code> element, if its value is not the
    empty string.</p></li>
 
-   <li><p>The presence of a <code
-   title="attr-table-summary">summary</code> attribute on a
-   <code>table</code> element.</p></li> <!-- 2.65% pages -->
-
   </ul>
 
   <p>Conformance checkers must distinguish between pages that have no
   conformance errors and have none of these obsolete features, and
   pages that have no conformance errors but do have some of these
   obsolete features.</p>
 
   <p class="example">For example, a validator could report some pages
   as "Valid HTML" and others as "Valid HTML with warnings".</p>
 
@@ -104138,20 +104088,26 @@ if (s = prompt('What is your name?')) {
    <dd><p>Use the <code title="attr-script-type">type</code> attribute
    instead.</p></dd>
 
    <dt><dfn title="attr-script-event"><code>event</code></dfn> on <code>script</code> elements</dt>
    <dt><dfn title="attr-script-for"><code>for</code></dfn> on <code>script</code> elements</dt>
    <dd><p>Use DOM Events mechanisms to register event listeners. <a href="#refsDOMEVENTS">[DOMEVENTS]</a></p></dd>
 
    <dt><dfn title="attr-table-datapagesize"><code>datapagesize</code></dfn> on <code>table</code> elements</dt>
    <dd><p>Unnecessary. Omit it altogether.</p></dd>
 
+   <dt><dfn title="attr-table-summary"><code>summary</code></dfn> on <code>table</code> elements</dt><!-- 2.65% pages -->
+   <dd><p>Use one of the <a
+   href="#table-descriptions-techniques">techniques for describing
+   tables</a> given in the <code>table</code> section
+   instead.</p></dd>
+
    <dt><dfn title="attr-tdth-abbr"><code>abbr</code></dfn> on <code>td</code> and <code>th</code> elements</dt>
    <dd><p>Use text that begins in an unambiguous and terse manner, and include any more elaborate text after that. The <code title="attr-title">title</code> attribute can also be useful in including more detailed text, so that the cell's contents can be made terse.</p>
 
    <dt><dfn title="attr-tdth-axis"><code>axis</code></dfn> on <code>td</code> and <code>th</code> elements</dt>
    <dd><p>Use the <code title="attr-th-scope">scope</code> attribute on the relevant <code>th</code>.</p>
 
    <dt><dfn title="attr-datasrc"><code>datasrc</code></dfn> on <code>a</code>, <code>applet</code>, <code>button</code>, <code>div</code>, <code>frame</code>, <code>iframe</code>, <code>img</code>, <code>input</code>, <code>label</code>, <code>legend</code>, <code>marquee</code>, <code>object</code>, <code>option</code>, <code>select</code>, <code>span</code>, <code>table</code>, and <code>textarea</code> elements</dt>
    <dt><dfn title="attr-datafld"><code>datafld</code></dfn> on <code>a</code>, <code>applet</code>, <code>button</code>, <code>div</code>, <code>fieldset</code>, <code>frame</code>, <code>iframe</code>, <code>img</code>, <code>input</code>, <code>label</code>, <code>legend</code>, <code>marquee</code>, <code>object</code>, <code>param</code>, <code>select</code>, <code>span</code>, and <code>textarea</code> elements</dt>
    <dt><dfn title="attr-dataformatas"><code>dataformatas</code></dfn> on <code>button</code>, <code>div</code>, <code>input</code>, <code>label</code>, <code>legend</code>, <code>marquee</code>, <code>object</code>, <code>option</code>, <code>select</code>, <code>span</code>, and <code>table</code> elements</dt>
    <dd><p>Use script and a mechanism such as <code>XMLHttpRequest</code> to populate the page dynamically. <a href="#refsXHR">[XHR]</a></p></dd>
@@ -105390,26 +105346,28 @@ interface <span>HTMLScriptElement</span> {
 
   <pre class="idl">[Supplemental]
 interface <span>HTMLTableElement</span> {
            attribute DOMString <span title="dom-table-align">align</span>;
            attribute DOMString <span title="dom-table-bgColor">bgColor</span>;
            attribute DOMString <span title="dom-table-border">border</span>;
            attribute DOMString <span title="dom-table-cellPadding">cellPadding</span>;
            attribute DOMString <span title="dom-table-cellSpacing">cellSpacing</span>;
            attribute DOMString <span title="dom-table-frame">frame</span>;
            attribute DOMString <span title="dom-table-rules">rules</span>;
+           attribute DOMString <span title="dom-table-summary">summary</span>;
            attribute DOMString <span title="dom-table-width">width</span>;
 };</pre>
 
   <p>The <dfn title="dom-table-align"><code>align</code></dfn>, <dfn
   title="dom-table-border"><code>border</code></dfn>, <dfn
   title="dom-table-frame"><code>frame</code></dfn>, <dfn
+  title="dom-table-summary"><code>summary</code></dfn>, <dfn
   title="dom-table-rules"><code>rules</code></dfn>, and <dfn
   title="dom-table-width"><code>width</code></dfn>, IDL attributes of
   the <code>table</code> element must <span>reflect</span> the
   respective content attributes of the same name.</p>
 
   <p>The <dfn title="dom-table-bgColor"><code>bgColor</code></dfn> IDL
   attribute of the <code>table</code> element must <span>reflect</span>
   the element's <code title="attr-table-bgcolor">bgcolor</code> content
   attribute.</p>
 
@@ -107691,22 +107649,21 @@ interface <span>HTMLDocument</span> {
      <th><code>table</code></th>
      <td>Table</td>
      <td><span title="Flow content">flow</span></td>
      <td><span title="Flow content">flow</span></td>
      <td><code>caption</code>*;
          <code>colgroup</code>*;
          <code>thead</code>*;
          <code>tbody</code>*;
          <code>tfoot</code>*;
          <code>tr</code>*</td>
-     <td><span title="global attributes">globals</span>;
-         <code title="attr-table-summary">summary</code></td>
+     <td><span title="global attributes">globals</span></td>
      <td><code>HTMLTableElement</code></td>
     </tr>
 
     <tr>
      <th><code>tbody</code></th>
      <td>Group of rows in a table</td>
      <td>none</td>
      <td><code>table</code></td>
      <td><code>tr</code></td>
      <td><span title="global attributes">globals</span></td>
@@ -108941,25 +108898,20 @@ interface <span>HTMLDocument</span> {
      <th> <code title="">step</code>
      <td> <code title="attr-input-step">input</code>
      <td> Granularity to be matched by the form control's value
      <td> <span>Valid floating point number</span> greater than zero, or "<code title="">any</code>"
     <tr>
      <th> <code title="">style</code>
      <td> <span title="attr-style">HTML elements</span>
      <td> Presentational and formatting instructions
      <td> CSS declarations*
     <tr>
-     <th> <code title="">summary</code>
-     <td> <code title="attr-table-summary">table</code>
-     <td> Explanatory text for complex tables for users of screen readers
-     <td> <a href="#attribute-text">Text</a>*
-    <tr>
      <th> <code title="">tabindex</code>
      <td> <span title="attr-tabindex">HTML elements</span>
      <td> Whether the element is focusable, and the relative order of the element for the purposes of sequential focus navigation
      <td> <span>Valid integer</span>
     <tr>
      <th> <code title="">target</code>
      <td> <code title="attr-hyperlink-target">a</code>;
           <code title="attr-hyperlink-target">area</code>
      <td> <span>Browsing context</span> for <span>hyperlink</span> <span title="navigate">navigation</span>
      <td> <span>Valid browsing context name or keyword</span>

|