Mechanism to Summarize a Table

This document is the deliverable for Issue Tracker ACTION 66, which is bound to ISSUE 32.

Issue

HTML 5 needs a mechanism to provide a table with a summary. An explicitly associated, programmatic feature is required in order to provide an overview of tabular data or a brief explanation of how to navigate a data table for people who use assistive technology (AT). This is because an AT user needs to easily form a mental image of a table's contents in order to better understand its structure, or semantic relationships. The mechanism needs to be explicitly associated with the table or it becomes more difficult for AT to make that association. A summary mechanism may seem irrelevant or redundant to those with good eyesight because they have access to content relationships at a glance. However for users with visual impairments, additional semantics are often needed as a vital aid to comprehension. These useful semantics, such as those supplied by @summary, are often the difference between "seeing" or "not seeing" the table as a whole. @summary therefore provides a 'quick scan' feature for non-sighted users that requires no complex user interaction beyond giving the table element focus.

Summary Example

<table summary="This table presents traveling expenses. In rows, you will find destinations and traveling dates, as well as grand total. In columns, you will discover expense categories as well as a total. Note that the first column contains merged table cells.">
<!-- Remainder of table -->

Status

Open Issue:

Actions

Table of Contents:

Proposed Solutions

Rationale: Why Summary Should Be Provided

  1. Tables are an inherently visual way to display information of a fairly high density: especially with the use of borders, background colors and text/font attributes, particular relations of the data in the table can be quickly gleaned from a cursory glance at the table. For tables which possess these aspects, a summary is crucial for users who cannot visually consume the table as a 2-dimensional grid.
  2. A disability constituency currently uses and depends on this feature: anyone offering to remove it should be expected to demonstrate that the replacement works better and is in service.
  3. No set number of use cases proves a feature should be included or excluded from the spec. The W3C requires that technologies must be accessible. By definition, people with disabilities are a minority. Accessibility features address failure modes that are infrequent, but critical when they occur.
  4. The @summary technique may sometimes be used incorrectly but that is true of all markup. Failure by some to implement a standard is not in itself sufficient justification for getting rid of that standard.
  5. The @summary technique provides functionality today. If it is to be worked out of the system, it should not be an abrupt drop. Transition it out with something better in an orderly and graceful manner.
  6. Summary is to the visual construct table as "alt" is to the image element, and title and description are to SVG - necessary and required markup, so as to indicate to the non-visual user what is subconsciously absorbed by the majority of users, for whom it is merely a question of the ability to associate data with row and column headers.
  7. If use something outside the <table>, something other than table@summary, then that information isn't explicitly associated with the table (and it becomes more difficult for AT to make that association). This would be a problem for the many users of older legacy AT.

  8. Summaries are especially useful for non-visual users. A summary of the relationships among cells is especially important for tables with complex relationships and may also be helpful for simple data tables that contain many columns or rows of data.
  9. A summary makes it inexpressibly easier for someone processing a TABLE non-visually to get an over-view of a table, for what is a table, other than a visual means of displaying related data sets, and what the sighted user sees at a glance - the spatial relationships between cells, rows, and columns. In the absence of a summary, however, the aural user must investigate the table carefully and fully, merely in order to ascertain whether or not it is the correct table, what information the table contains, if the information in the table is germane, how many rows by how many columns to expect, the flow of the table, etc.
  10. The summary attribute is essential to a non-visual end user who is interpreting the visual canvas with an aural renderer. It is to the non-visual or low vision user -- who is often forced to use a small highly magnified view port -- what the gestalt view is to a sighted user capable of making the correct spatial associations: an instant familiarity with the layout and flow of the table, which is constantly reinforced by visually interacting with the table. Obviously, this type of overview is impossible for a speech or refreshable Braille display user to obtain without entering and inspecting every table, whether or not that table contains the information for which the user is seeking. Without a summary, every table will entail extensive, tedious work on the end user's part because she: 1) has no foreknowledge of the table's layout; 2) has no foreknowledge / is unaware of the relationships conveyed by the table, for table-ized data (as well as layout tables) have meaning only insofar as one can visually and cognitively correctly correlate column and/or row headers, even if not they are incorrectly marked up (for example, indicated by a font-weight change or color change only).

  11. @summary is very useful for inexperienced users of screen readers as it is announced as soon as the table has focus. The user therefore does not need to use complex keystrokes to interrogate the table in order to get an overview of whether it is useful or not.
  12. Sometimes for visual effect an author wants to keep a page simple for visual users and still provide a mechanism for other non-visual users to consume content. The @summary mechanism is a simple way of achieving this.

Rationale: Why Summary Should Not Be Provided

  1. If a table is complex enough to require a description to understand it, then that description should be available to everyone (not only screen reader users).
    • This is possibly a user agent issue and not a reason to not include @summary in HTML 5. If the @summary meta data is present then any user agent could potentially render it - if needed.
  2. Summary is explicitly invisible metadata and therefore is more likely to be missing or inaccurate than data that is visible to all UAs.
    • Poor authoring practices should NOT sway or inform our decisions -- if markup is being misused, we need to be more precise in the definitions of elements and properties. This is not a solid reason to remove @summary. The summary data could be inaccurate but this is not a good enough reason to remove the mechanism entirely. Any labeled or described content could be viewed as inaccurate or needing improvement - this is not a reason to remove from HTML 5.
    • This also begs the question, "invisible to whom?" It is perceptible by those for whom a summary is of essential utility, while for those who can visually process the contents of the summary attribute have the table itself to provide them with the orientation mechanisms which summary provides those who cannot see. Visual users don't need a summary, due to the constant reinforcement of the table's structure, function and contents which is a side effect of vision and the ability to associate data via spatial relationships... sure, a summary could be yanked from the table and displayed to those who want slash need it, but for those who cannot see, or have a very limited view port available at any given time, summary is necessary.
  3. In many cases pages already include text that summarizes the contents of a table to the extent needed to identify whether the table is of interest; in order to allow non-visual browsers to easily scan a page, I would provide a mechanism to associate this text with the table. Authors wishing to provide extra information hidden from visual UAs (e.g. because it describes the table in a level of detail not required by sighted users) could use CSS to explicitly hide that information.
    • The use of @summary is vital where these summaries are missing. Also older user agents may not support new associations a la ARIA, so why remove an existing mechanism that is proven to work?

Use Cases

Blind/Non-visual users

A textual summary makes it easier for to get an overview of a table without seeing the relationships between the rows and columns implied by its spatial structure. In the absence of a summary, the non-visual user must investigate the table carefully and fully, merely in order to ascertain whether or not it is the correct table, what information the table contains, if the information in the table is germane, how many rows by how many columns to expect, the flow of the table, etc.

Advice Request to PFWG

Advice From PFWG

Here is a summary of how PFWG sees the situation as regards @summary on <table> in HTML:

  1. @summary should stay
  2. It provides a needed service
  3. element content providing this info, *if linked by markup to the table* offers growth to even better practice
  4. Don't have the linking markup yet; is a developmental item
  5. evolution not revolution says: keep @summary at least until alternatives are deployed and stable

Source: RE: Request for PFWG WAI review of @summary for tabular data - Al Gilman, August 6, 2008.

Policies and Guidelines

References

Research and User Testing

Raw Data

Sites "In the Wild" Which Use Summary

User Agent support including Browsers and Assistive Technology

GwMicro: Window Eyes

Freedom Scientific: JAWS

The Freedom Scientific website states:

“The most common type of table contains data, and is called a data table. JAWS announces when you enter and leave a table. A well-designed HTML table has several features. One of these is a caption, […] Another design feature is the table summary. The table summary is not visible on the screen to sighted users. Web page designers can add summaries to the HTML code specifically for screen reader users. A good table summary provides a meaningful overview of the table, giving you some idea of what the table contains before you get there. Pay particular attention to the table summaries as you read through this page.”

The following link is to test cases and summaries what browsers do today including many examples of how the @summary can be used to aid comprehension of data tables for non-sighted users..

Related E-mail Threads:

May 2007

June 2007

August 2007

September 2007

February 2008

March 2008

April 2008

June 2008

August 2008

Search on Markmail for Related E-mail

HTML/SummaryForTABLE (last edited 2008-08-12 17:42:22 by LauraCarlson)