W3C home > Mailing lists > Public > public-html@w3.org > November 2010

hgroup and ARIA outline in ISSUE-129 [Was: SSUE-129: replace or modify the ARIA section of the HTML5 spec - chnage proposal and replacement spec text]

From: Benjamin Hawkes-Lewis <bhawkeslewis@googlemail.com>
Date: Mon, 22 Nov 2010 07:59:15 +0000
Message-ID: <AANLkTinF-FNRB-HQosg_8KXodNbiHNFCiLCB=Zr0qSYn@mail.gmail.com>
To: Steve Faulkner <faulkner.steve@gmail.com>
Cc: HTMLWG WG <public-html@w3.org>, Maciej Stachowiak <mjs@apple.com>, Paul Cotton <Paul.Cotton@microsoft.com>, Sam Ruby <rubys@intertwingly.net>, Richard Schwerdtfeger <schwer@us.ibm.com>, Cynthia Shelly <cyns@microsoft.com>, "Michael(tm) Smith" <mike@w3.org>, Janina Sajka <janina@rednote.net>
On Sun, Nov 21, 2010 at 11:28 PM, Steve Faulkner
<faulkner.steve@gmail.com> wrote:
> change proposal: ARIA in HTML5: replace current text of section 3.2.6
> - http://www.w3.org/html/wg/wiki/ChangeProposals/ARIAinHTML5
> associated specification text:
> http://www.paciellogroup.com/blog/misc/HTML5/aria-html5-proposal.html

Under "basis for defining h1 to h6 element that does have an hgroup
ancestor", the Change Proposal states:

"It is not logical or practical that the semantic information about
both the heading elements contained within the hgroup and the hgroup
itself is conveyed to assistive technology."


The Change Proposal continues:

"In order to provide a heading structure to AT that is more sensible,
it is proposed that headings inside a hgroup have a default role of
presentation. This will result in only the one hgroup heading (instead
of 3) being reported to AT."

This introduces a significant difference between the outline algorithm
specified by HTML5 and any outline generated using ARIA.

I'm not a colossal fan of how HTML5 repurposes the old hX elements,
but I think it should at least be consistent between HTML semantics
and the accessibility tree.

In HTML5 only the first highest ranked heading contributes to the
"hgroup" text; in this proposal all headings do.

So given:


in HTML5 the heading is "Bar" but in the proposal in the accessibility
tree the heading is "Foo Bar Baz Quux" which subverts author intent.

Applying "role='presentation'" would also block UAs from exposing the
actual semantics of "subtitle" that lesser-ranked headings possess,
were any accessibility API to include that semantic, since "For any
element with a role of presentation and which is not focusable, the
user agent MUST NOT expose the implicit native semantics of the
element (the role and its states and properties) to accessibility


I think this would be a more accurate reflection of intended semantics:

<hgroup role="heading" aria-level="whatever" aria-labelledby="heading-text">
  <h1 id="heading-text">Bar</h1>

Spec text could be along the following lines:

"hgroup element: heading role, with the aria-level set to the
element's outline depth and the aria-label, and with the first
highest-ranked heading element providing its accessible name."

"hX element that does have a hgroup ancestor: No role."

This would also "result in only the one hgroup heading … being
reported to AT" when listing headings, and would allow UAs to
represent subtitles to supporting accessibility APIs.

Benjamin Hawkes-Lewis
Received on Monday, 22 November 2010 07:59:54 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 16:25:52 UTC