Re: Please clarify ARIA definition of "grid" role

The ARIA spec is clear as with the change you suggested it more clearly
states that a grid encompasses interactive, tabular data.

We do not have a table role in aria. So, if we want to have HTML use grid
as the default host language semantics used by ARIA the only appropriate
role would be to use grid. Yet, grid is not used for static tables.
So, if we simply state somewhere in the HTML 5 spec that a table is a form
of static grid.

And table refers to a grid in its definition:

The table element represents data with more than one dimension, in the form
of a table.

The HTML 5 definition of table:

http://dev.w3.org/html5/spec/tabular-data.html#concept-table

A table consists of cells aligned on a two-dimensional grid of slots with
coordinates (x, y). The grid is finite, and is either empty or has one or
more slots. If the grid has one or more slots, then the x coordinates are
always in the range 0š˜šxš<šxwidth, and the y coordinates are always in the
range 0š˜šyš<šyheight. If one or both of xwidth and yheight are zero, then
the table is empty (has no slots). Tables correspond to table elements.

So, if we change the table description in HTML 5:

The table element represents data with more than one dimension, in the form
of a table.

to

The table element represents data with more than one dimension, in the form
of a non-interactive table.

And then put grid as the native host language semantics for table I think
the HTML spec would be in synch.



Rich Schwerdtfeger
CTO Accessibility Software Group



From:	Maciej Stachowiak <mjs@apple.com>
To:	Richard Schwerdtfeger/Austin/IBM@IBMUS
Cc:	James Craig <jcraig@apple.com>, public-pfwg-comments@w3.org,
            public-pfwg-comments-request@w3.org, Steve Faulkner
            <sfaulkner@paciellogroup.com>
Date:	08/30/2010 01:35 PM
Subject:	Re: Please clarify ARIA definition of "grid" role




On Aug 30, 2010, at 11:26 AM, Richard Schwerdtfeger wrote:



      James,

      The reason we created grid was to turn a table into one that is
      interactive, however, some component libraries like Dojo do not use
      table to create the actual grid. They use divs and spans to lay out
      the structure.
      I think if we were to do what you suggest HTML should modify its
      definition of table to be a non-interactive grid.

      As for a grid having to be in inside an element with
      role="application" that is inaccurate. Windows assistive technologies
      now recognize elements with an aria role of grid and pass keyboard
      navigation off to the widget as they know they are interactive. No
      role="application" on the body tag is required.

      Maciej,

      Would HTML be willing state that a table is an non-interactive grid
      in its definition or simply state that <table> is non-interactive?


I'm not sure what that would entail. Would a table have role=grid in that
case? Would additional notes in the ARIA mapping table or elsewhere be
required?

I personally have no strong feelings on whether the grid role needs to be
interactive. I would be happy either way. However:

a) The ARIA spec should be exceeding clear one way or the other on this
issue,
b) It would be good to have a clear decision soon, since this will impact
HTML5 and it would be better not to thrash.

I can ask the editor to hold off on fielding the bug that asks for the grid
role to be removed from table, but in general we're trying to get these
HTML5 bugs resolved as quickly as possible.

Regards,
Maciej






      Rich Schwerdtfeger
      CTO Accessibility Software Group

      <graycol.gif>James Craig ---08/29/2010 02:17:35 PM---Added the
      following note to ISSUE-421. I'd support allowing the HTML role
      mapping of table to grid b

      From: James Craig <jcraig@apple.com>
      To: Richard Schwerdtfeger/Austin/IBM@IBMUS
      Cc: Maciej Stachowiak <mjs@apple.com>, public-pfwg-comments@w3.org,
      public-pfwg-comments-request@w3.org, Steve Faulkner <
      sfaulkner@paciellogroup.com>
      Date: 08/29/2010 02:17 PM
      Subject: Re: Please clarify ARIA definition of "grid" role
      Sent by: public-pfwg-comments-request@w3.org





      Added the following note to ISSUE-421.

      I'd support allowing the HTML role mapping of table to grid because
      the distinction you're making applies to behavior, not role. A table
      is just a readonly grid that is not focus-managed by the author. If
      we limit grids to interactive controls and explicitly disallow the
      role on tables, we won't have role symmetry with HTML, and we'd need
      to define a few more roles. We specifically added rowgroup to account
      for thead, tbody, and tfoot, so we've already implied that this is a
      suitable role for HTML tables.

      I believe the reason you're making the distinction is due to the
      Windows screen readers behavior of key events inside elements with
      role application. What if we added the prose to indicate that grids
      inside [role="application"] where interactive, author-managed-focus
      controls, and grids inside [role="document"] were readonly,
      UA-managed-focus tables?


      On Aug 28, 2010, at 9:13 PM, Richard Schwerdtfeger wrote:
                  Maciej,

                  That's fair. I have opened issue 421 to address this
                  change with your suggested text.
                  http://www.w3.org/WAI/PF/Group/track/issues/421


                  Thank you,
                  Rich


                  Rich Schwerdtfeger
                  CTO Accessibility Software Group

                  <graycol.gif>Maciej Stachowiak ---08/28/2010 08:45:00
                  PM---On Aug 26, 2010, at 7:51 PM, Richard Schwerdtfeger
                  wrote: > Tables do NOT allow users to move focus

                  From: Maciej Stachowiak <mjs@apple.com>
                  To: Richard Schwerdtfeger/Austin/IBM@IBMUS
                  Cc: public-pfwg-comments@w3.org,
                  public-pfwg-comments-request@w3.org, Steve Faulkner <
                  sfaulkner@paciellogroup.com>
                  Date: 08/28/2010 08:45 PM
                  Subject: Re: Please clarify ARIA definition of "grid"
                  role





                  On Aug 26, 2010, at 7:51 PM, Richard Schwerdtfeger wrote:

                  > Tables do NOT allow users to move focus between cells
                  using two dimensional navigation.
                  >
                  My reading of that sentence was that it was a statement
                  of fact about what would happen if you apply the grid
                  role (that the assistive technology would provide
                  two-dimentional navigation), not a limitation on when it
                  may be applied. Since multiple people misunderstood this
                  definition on first reading, I think a clarification
                  would still be helpful, even if you think it is not
                  strictly necessary. For example:

                  "A grid is an interactive control which contains cells of
                  tabular data arranged in rows and columns, like a table."

                  I think that simple change to ARIA would have prevented
                  all confusion.

                  Regards,
                  Maciej

                  >
                  >
                  > Rich Schwerdtfeger
                  > CTO Accessibility Software Group
                  >
                  > <graycol.gif>Maciej Stachowiak ---08/26/2010 05:03:10
                  AM---ARIA has the following definition of the "grid"
                  role: ------------
                  >
                  > From: Maciej Stachowiak <mjs@apple.com>
                  > To: public-pfwg-comments@w3.org
                  > Cc: Steve Faulkner <sfaulkner@paciellogroup.com>
                  > Date: 08/26/2010 05:03 AM
                  > Subject: Please clarify ARIA definition of "grid" role
                  > Sent by: public-pfwg-comments-request@w3.org
                  >
                  >
                  >
                  >
                  > ARIA has the following definition of the "grid" role:
                  >
                  > ------------
                  > <http://www.w3.org/TR/wai-aria/roles#grid>
                  > A grid contains cells of tabular data arranged in rows
                  and columns, like a table.
                  >
                  > Grids do not necessarily imply presentation. The grid
                  construct describes relationships between data such that
                  it may be used for different presentations. Grids allow
                  the user to move focus between cells using two
                  dimensional navigation. For example, grid might be used
                  as the invisible data model (hidden with CSS but still
                  operable by assistive technologies) for a presentational
                  chart.
                  > ------------
                  >
                  > This seems like an exact match for the HTML <table>
                  element, which contains cells of tabular data arranged in
                  rows and columns, like a table. According to Steve
                  Faulkner, however, this role is only supposed to be used
                  for *interactive* presentations of tabular data arranged
                  in rows and columns. Please update the ARIA draft to make
                  this clear. Or, if the grid role is in fact supposed to
                  be applicable even to non-interactive presentations of
                  tabular data, please reply with this information ASAP,
                  since it is relevant to the ARIA role mapping in the
                  HTML5 spec.
                  >
                  > Regards,
                  > Maciej
                  >
                  >
                  >

Received on Monday, 30 August 2010 19:33:28 UTC