Re: function and impacts (was: @scope and @headers reform)

Hi James,

> In most regular table/grid cases, it may be a more productive effort to
> define the implicit scope for headers that do not have an explicit
> author-defined association with cells. For example, "headers inside first
> row or table header group assume col scope, and first-cell headers in the
> table body group assume row scope" with some caveats for conflicts.

Yes, this is a good idea. HTML 5's proposed smart scope algorithm
pretty much does this, except it overlooks dir="rtl".

> It is my understanding that @headers, while valuable, is almost never used.
> Like the long-term longdesc testing, has there been any attempt to determine
> where and how often @headers is used?

We have clients that provide software solutions to large financial
institutions that use headers/id on tables where a simple scope
association doesn't work (they rely on scope wherever possible). As
the data is sensitive, they're not published publicly, but we have
permission from one to show an example with nonsense data.

> In most cases where @headers is necessary, the author would do better to
> change the information architecture of the table into a more understandable
> form, instead of "accessifying" an already overly complex table grid.
> Although the section does not explicitly mention tables, this is in line
> with the WCAG 1.0 recommendation to convey information as simply as
> possible. In other words, if an HTML table is too complex for @scope, it's
> probably also too complex for non-disabled viewers to decipher it easily,
> even without assistive technology.

Again, I completely agree that the simpler the better, but it's not
always posible. The example we have is a user-generated table, where
the user selects what information they need to review in order to make
decisions. That sometimes results in composite data within a table so
the user can easily make comparisons:

Whether there is a way to mark this up accessibly or not, this is
typical of the view a user wants of the data. At the moment, we
recommend using the headers attribute, but the new restrictions on
HTML5 (the headers attribute can't reference a td, and a td can't
contain a scope attribute) means that the headers attribute is pretty
much useless in HTML5 without allowing nested headers (which isn't
currently allowed in the specification). With the current restrictions
on the headers attribute, it's difficult to imagine a scenario where
the headers attribute can actually be used. If HTML5 allows
aria-labelledby on table cells, I would be in favour of dropping the
headers attribute completely, as it can't be used practically, and use
aria-labelledby for complex associations instead.



Supplement your vitamins

Received on Tuesday, 23 September 2008 08:53:13 UTC