- From: Joseph Scheuhammer <clown@alum.mit.edu>
- Date: Mon, 19 Jan 2015 12:11:08 -0500
- To: Richard Schwerdtfeger <schwer@us.ibm.com>, W3C WAI Protocols & Formats <public-pfwg@w3.org>
Hi Rich, Comments inline. > The Accessibility API mapping team has been wrestling with cross > platform challenges around how to expose generic containers that have > no semantic meaning but which retain structure in the mapping of > accessible content. > > Here are the issues: > > 1. <div> are not mapped with consistent mappings across all platforms. > Some platforms map a div to a group (Safari and IE) while others map > it to a panel (ATK-ATSPI) and others map it to a section (FF, Chrome). > The proper mapping for ATK/AT-SPI of <div> is ROLE_SECTION. The group role is mapped to ROLE_PANEL. Which "others" are mapping <div> to a panel with respect to ATK/AT-SPI? See also the html-aam: http://rawgit.com/w3c/aria/master/html-aam/html-aam.html#el-div > > 2. MacOSX maps <div> and to axGroup while role="group" which has real > semantic meaning that the items mapped in the group have a real > association associated with each other such as a group of associated > text boxes. A div on its own has no semantic meaning other that to act > as a generic container of stuff. > > 3. When applying role to presentation we have different role mappings > based on the original structure of the content in HTML. For example, > Firefox maps table cells to roles of "textbox" where list items get > converted to paragraphs. ATK/ATSPI maps these to a PANEL role where > MacOSX maps these to axGroup > For reference, here is the FF bugzilla, where Joanie requested that FF treat presentation list items and cells as if they were <div>s. That is, mapped to ROLE_SECTION: https://bugzilla.mozilla.org/show_bug.cgi?id=1113153 > > 4. HTML5 introduces a <section> element which maps to a region role > yet unless it actually has a label associated with it it really has > not semantic value. It really should be treated like a <div> > I don't believe the HTML5 spec for <section> requires a label; the terminology is " Each section should be identified, typically by including a heading". http://www.w3.org/html/wg/drafts/html/master/sections.html#the-section-element. So, without a heading or other label, a <section> is mapped as if it was a <div>? Okay. > 5. SVG is now using role group for containers having alternative text. > Should these be sections or real groupings? This is a a concern. Again > I believe wer are oveloading group semantics. > It depends on the contents of the group. If the children are a "... set of user interface objects ...", then it satisfies the definition of role="group". If it's a just a container, then it's either a role="region" or something even more generic. Are there any SVG examples? > > What we need is a consistent implementation that does not confuse a > generic section in the document with a semantic grouping and would fit > well with section in HTML5. > > One proposal: > > 1. Map <div> to a role of section on all platforms or a single generic > role on all platforms that says this is just an container and nothing more > What happens if the <div> has a label? For example: <div aria-label="My Cool Block of Stuff"> ... </div>? > 2. When applying role="presentation" map the semantic HTML structural > alements to the role determined in 1 > 3. In HTML5 map <section> to the generic role in 1. and map it to > region when a label is applied to it. > 4. Regarding 1. for a Mac either make the generic container a new > section role and leave axGroup for role="group" or make role="group" > map to something different than axGroup and leave axGroup generic. > > > Rich Schwerdtfeger > -- ;;;;joseph. 'Array(16).join("wat" - 1) + " Batman!"' - G. Bernhardt -
Received on Monday, 19 January 2015 17:11:36 UTC