Re: ACTION-1561

Rich Schwerdtfeger

Joseph Scheuhammer <clown@alum.mit.edu> wrote on 01/19/2015 11:11:08 AM:

> From: Joseph Scheuhammer <clown@alum.mit.edu>
> To: Richard Schwerdtfeger/Austin/IBM@IBMUS, W3C WAI Protocols &
> Formats <public-pfwg@w3.org>
> Date: 01/19/2015 11:12 AM
> Subject: Re: ACTION-1561
>
> 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
>

that is dreadful! A panel does not apply a group. It is just a space to
draw in. The panel could have just text in it.


> >
> > 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

> .
>
I am not mandating that section require a label. What I am saying that if
an label is applied it should be come a region.

Just because you have a heading in the section does not mean it should be a
label. I don't support that at all.



> 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?
>

I am sharing with you how it is implemented today in Safari and Blink. They
go to group because
Safari used axGroup again.

We need a better solution but we need to resolve the issue with Safari and
the overuse of groups.

I was using Safari with role="listitem" and it says group all over the
place. It is awful. It is right up there (my opinion) with using a generic
landmark
for everything in VoiceOver on iOS.


> >
> > 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>?
>
good question. we make people apply a role to it at IBM as it tells you
nothing if it is a section.



> > 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 22:32:29 UTC