- From: Harvey Bingham <hbingham@acm.org>
- Date: Fri, 21 Jun 2002 02:24:23 -0400
- To: w3c-wai-ua@w3.org
Background: Digital talking books (DTBs) may include tables. Those DTBs that contain xml markup use the table model for DTB of the HTML 401 Strict DTD. [There may be some DTBs without text markup, just narrations.] Some of the table navigation concerns come from the information available for that book. The more complete books include xml markup. When table markup is included, that table markup comes directly from HTML 4.01 strict DTD. The attributes there provide effective means for navigation of table th and td cells, and identifying the set of th cells that provide abbr (if present, else full th cell contents) for each td cell. The following is excerpted from the Specifications for the Digital Talking Book, ANSI/NISO Z38.86-2002, Appendix 1 - DTBook DTD (normative) http://www.niso.org/standards/resources/Z39-86-2002.html The uses of attributes other than %attrs; %cellhalign; and %cellvalign; are shown below. See [HTML401STRICT] for details and examples. "abbr" provides an abbreviated name for a <th> cell that can be used when referring to that <th> cell. Its default value is the cell content. [Has UA picked up on this abbr concept?] "axis" is used to place cells into conceptual categories in order to provide improved access to information. "headers" provides the id value(s), used with <td> cells, to reference one or more cells with <th id="xxx"> that contain headings [or their abbr] that collectively describe or qualify the content of the cell, for example <td headers="id1 id2">. "scope" identifies one of (row | rowgroup | column | colgroup) to which the header information applies. "rowspan" indicates the total number of rows that the cell extends, by default 1. All spanned cells share these attributes. "colspan" indicates the total number of columns the cell extends, by default 1, in the writing direction of the table. All spanned cells share these attributes. ======== Another aspect of navigation is conveyed in the SMIL requirements for DTBs, where there exist some escapable (skippable or ignorable by user preference) structures, including tables: 7.4 SMIL Requirements for DTBs 7.4.1 "Escapable" Structures (This section is normative.) [HB: Hard to reconcile normative with "should" below] DTB players should provide the functionality to allow readers to escape from the DTB rendition of specific structures (at a minimum tables, lists, producer's notes, annotations, and notes) with a single action. To support this functionality, any such structure consisting of multiple time containers (i.e., <code>seq</code>s and <code>par</code>s) must be wrapped in a <code>seq</code>. In addition, a class attribute must be applied to the <code>seq</code> or <code>par</code> containing a table, list, producer's note, annotation, or note using element names drawn from the DTBook DTD (i.e., "table", "list", "prodnote", "annotation", and "note"). 7.4.2 Automatic Invocation of Special Navigation Modes (This section is normative.) [HB: Hard to reconcile normative with "may" below] DTB player developers may choose to automatically invoke special player navigation modes when the reader enters a table or list. (See "document Navigation Features List [Navigation Features]f.") To support this functionality, a class attribute must be included on the <code>seq</code> or <code>par</code> containing a table or list using element names drawn from the DTBook DTD (i.e., "table" and "list"). DTBs and players may also support this functionality for other structures using the same mechanism. 7.4.3 <"Skippable" Structures (This section is normative.) [HB: Hard to reconcile normative with "should" below] Players should offer the user the option to "turn off" certain structures in a DTB, that is, select structures such as notes or line numbers that the player will then automatically skip over during sequential playback. To support this capability, compliant DTBs must include <code>customTest</code> attributes on <code>seq</code>s or <code>par</code>s containing those structures. In addition, <code>customAttributes</code>, as well as a <code>customTest</code> element for each "skippable" structure, must be present in the <code>head</code> of each SMIL file and contain content. At a minimum, <code>customTest</code> attributes must be applied to time containers for <code>linenum</code>, <code>note</code>, <code>noteref</code>, <code>annotation</code>, <code>pagenum</code>, optional <code>prodnote</code>, and <code>sidebar</code>. <code>Note</code>s, <code>annotation</code>s, optional <code>prodnote</code>s, and <code>sidebar</code>s containing multiple paragraphs must be represented as a series of <code>pars</code> wrapped in a <code>seq</code>, so that a <code>customTest</code> can be applied to the <code>seq</code>, permitting the user to skip the entire sequence. Attribute values (for customTest attributes on <code>seq</code>s or <code>par</code>s and for the id attribute on <code>customTest</code> elements) shall be the names of the "skippable" elements, drawn from the DTBook DTD (e.g., "linenum", "note", etc.) except as noted in the following paragraph. Different <code>customTest</code> attributes may be applied to a single DTBook element, depending on the element's attributes. For example, <code><prodnote render="optional"></code> might be assigned the <code>customTest "prodnote_opt"</code>, while <code><prodnote render="required"> </code>would not need to be assigned a <code>customTest</code> as the user should not have the option of turning it off. In DTB applications, the element <code>customTest</code> will only be used when the producer wishes to allow the reader to turn a class of structures on or off, so the <code>override</code> attribute on the <code>customTest</code> element must always be set to "visible". See description of <code><customTest></code> above. The SMIL specification chose to make "hidden" the default value so it is critical that the <code>override="visible"</code> attribute always be present when the <code>customTest</code> element is used. When a user navigates to a skippable element that has been turned off, the player must render the content of that element.
Received on Friday, 21 June 2002 02:38:07 UTC