Re: Important concerns with naming calculation 'name from content' not being included in parent role accessible name.

That's fine Bryan, I agree we have to do a better job of explaining. I can
only imagine how hard that is, given the fact that although we do try to
spec things, there seem to be a lot of hidden smarts in the browsers
anyway, not to mention edge cases. So keep poking us. The rules attempt to
do what you'd intuitively want as a developer, and that may lead to some
interesting nuance or edge cases. It may not always be perfect.

The way Chrome and Firefox handles your above examples is that for nameless
generic document structure roles (not widgets), they are not strongly
nameless. They are allowed to contribute to ancestor name-from-contents,
even though they don't have their own name. As my colleague Alice Boxhall
noticed, this seems to not be in the spec but should be.

So for example, list item contents would still contribute to a heading
name, but if it was a listbox widget, it would not.

I'm happy to provide a list of roles that we do this for, as long as it
doesn't make anyone's head explode.

Aaron

On Tue, May 23, 2017 at 3:19 PM Bryan Garaventa <
bryan.garaventa@ssbbartgroup.com> wrote:

> Hi,
> I'm not trying to belabor this, but I have to explain this to developers,
> and I'm still seeing potential issues with this.
>
> So to be clear, if the recursive 'name from content' algorithm for a valid
> role does not include the name of any child elements that are set as 'name
> from content' = false, then this rule applies to all of the following roles
> according to the spec. (Including all implicit roles with these mappings as
> well)
>
> cell
> columnheader
> gridcell
> header
> link
> menuitem
> row
> rowgroup
> rowheader
> tooltip
> treeitem
>
> I've seen examples of headings that include lists of links within them, as
> well as tooltips that include a list of checklist criteria within them, and
> according to this algorithm this would cause such elements to omit this
> content from the accessible names of each.
>
> So, though there are many roles below that don't make sense to be embedded
> as children of the above listed roles, there are many that do however, and
> are automatically mapped by the browsers when certain HTML elements are
> used by themselves.
>
> So can you say that the above roles will never or should never include
> child elements with the below roles, and if they do then it is acceptable
> to ignore their content when calculating the names of the above roles?
>
> alert
> alertdialog
> application
> article
> banner
> combobox
> complementary
> contentinfo
> definition
> dialog
> directory
> document
> feed
> figure
> form
> grid
> group
> img
> list
> listitem
> listbox
> log
> main
> marquee
> math
> menu
> menubar
> navigation
> note
> progressbar
> radiogroup
> region
> scrollbar
> search
> searchbox
> separator
> slider
> spinbutton
> status
> table
> tablist
> tabpanel
> term
> textbox
> timer
> toolbar
> tree
> treegrid
>
> Bryan Garaventa
> Accessibility Fellow
> SSB BART Group, Inc.
> bryan.garaventa@ssbbartgroup.com
> 415.624.2709 <(415)%20624-2709> (o)
> www.SSBBartGroup.com
>
> -----Original Message-----
> From: Bryan Garaventa [mailto:bryan.garaventa@ssbbartgroup.com]
> Sent: Monday, May 22, 2017 3:23 PM
> To: Matt King <a11ythinker@gmail.com>; 'James Nurthen' <
> james.nurthen@oracle.com>; 'ARIA Working Group' <public-aria@w3.org>;
> aleventhal@google.com; 'Dominic Mazzoni' <dmazzoni@google.com>; 'Marco
> Zehe' <marco.zehe@gmail.com>; 'Rich Schwerdtfeger' <richschwer@gmail.com>;
> 'david bolter' <david.bolter@gmail.com>; 'Alexander Surkov' <
> asurkov@mozilla.com>; 'James Craig' <jcraig@apple.com>
> Subject: RE: Important concerns with naming calculation 'name from
> content' not being included in parent role accessible name.
>
> In going through the spec to identify which roles are which for this
> purpose, there is a discrepancy in the section "5.2.7.5 Roles Supporting
> Name from Content", where role=tree is listed as supporting this, even
> though it is not supported when viewing the section for role=tree.
>
> 'tree' should be removed from the list in section 5.2.7.5.
>
> I've documented all of the relevant roles that apply with this exception
> below.
>
> Roles with 'children presentational' = true button checkbox img math
> menuitemcheckbox menuitemradio option progressbar radio scrollbar separator
> slider switch tab
>
> So browsers should not restrict the 'name from content' if any of the
> following explicit or implicit roles are embedded within any of the
> previous explicit or implicit roles. (I'm not saying they are valid
> children, just referring to the naming calculation if this exception is
> applied equally as we spoke of.)
>
> Roles with 'name from content' = false
> alert
> alertdialog
> application
> article
> banner
> combobox
> complementary
> contentinfo
> definition
> dialog
> directory
> document
> feed
> figure
> form
> grid
> group
> img
> list
> listitem
> listbox
> log
> main
> marquee
> math
> menu
> menubar
> navigation
> note
> progressbar
> radiogroup
> region
> scrollbar
> search
> searchbox
> separator
> slider
> spinbutton
> status
> table
> tablist
> tabpanel
> term
> textbox
> timer
> toolbar
> tree
> treegrid
>
>
> Bryan Garaventa
> Accessibility Fellow
> SSB BART Group, Inc.
> bryan.garaventa@ssbbartgroup.com
> 415.624.2709 <(415)%20624-2709> (o)
> www.SSBBartGroup.com
>
> -----Original Message-----
> From: Matt King [mailto:a11ythinker@gmail.com]
> Sent: Thursday, May 18, 2017 3:52 PM
> To: Bryan Garaventa <bryan.garaventa@ssbbartgroup.com>; 'James Nurthen' <
> james.nurthen@oracle.com>; 'ARIA Working Group' <public-aria@w3.org>;
> aleventhal@google.com; 'Dominic Mazzoni' <dmazzoni@google.com>; 'Marco
> Zehe' <marco.zehe@gmail.com>; 'Rich Schwerdtfeger' <richschwer@gmail.com>;
> 'david bolter' <david.bolter@gmail.com>; 'Alexander Surkov' <
> asurkov@mozilla.com>; 'James Craig' <jcraig@apple.com>
> Subject: RE: Important concerns with naming calculation 'name from
> content' not being included in parent role accessible name.
>
> While the name calculation algorithm is conceptually simple, it would be a
> stretch to say that every conditional branch is clear. We've definitely
> been mining some gems over the course of the last year or so.
>
> WRT naming, It would be illogical to say that children presentational is
> nonconsequential.
>
> "2. f. Otherwise, if the current node's role allows name from content, or
> if the current node is referenced by aria-labelledby, aria-describedby, or
> is a native host language text alternative element:"
>
> When a table or list is nested in a button, it acquires role presentation.
> So, when that table or list becomes the current node in the name
> calculation, it allows name from content.
>
> That seems reasonably clear to me.
>
> Matt
>
> -----Original Message-----
> From: Bryan Garaventa [mailto:bryan.garaventa@ssbbartgroup.com]
> Sent: Thursday, May 18, 2017 1:43 PM
> To: Matt King <a11ythinker@gmail.com>; 'James Nurthen'
> <james.nurthen@oracle.com>; 'ARIA Working Group' <public-aria@w3.org>;
> aleventhal@google.com; 'Dominic Mazzoni' <dmazzoni@google.com>; 'Marco
> Zehe'
> <marco.zehe@gmail.com>; 'Rich Schwerdtfeger' <richschwer@gmail.com>;
> 'david bolter' <david.bolter@gmail.com>; 'Alexander Surkov' <
> asurkov@mozilla.com>; 'James Craig' <jcraig@apple.com>
> Subject: RE: Important concerns with naming calculation 'name from content'
> not being included in parent role accessible name.
>
> Thanks,
> That makes sense to me as well.
>
> At present however the accessible name of the tab is null (""), and there
> is nothing conveyed in the accessibility tree as the name for the tab in
> Firefox regardless.
>
> So are we all in agreement then, that if children presentational is true
> on a specific role, then it doesn't matter if name from content is missing
> from a child construct role?
>
> Is this actually clearly conveyed in the naming calculation?
>
> Thanks,
> Bryan
>
>
> Bryan Garaventa
> Accessibility Fellow
> SSB BART Group, Inc.
> bryan.garaventa@ssbbartgroup.com
> 415.624.2709 <(415)%20624-2709> (o)
> www.SSBBartGroup.com
>
> -----Original Message-----
> From: Matt King [mailto:a11ythinker@gmail.com]
> Sent: Thursday, May 18, 2017 12:20 PM
> To: Bryan Garaventa <bryan.garaventa@ssbbartgroup.com>; 'James Nurthen'
> <james.nurthen@oracle.com>; 'ARIA Working Group' <public-aria@w3.org>;
> aleventhal@google.com; 'Dominic Mazzoni' <dmazzoni@google.com>; 'Marco
> Zehe'
> <marco.zehe@gmail.com>; 'Rich Schwerdtfeger' <richschwer@gmail.com>;
> 'david bolter' <david.bolter@gmail.com>; 'Alexander Surkov' <
> asurkov@mozilla.com>; 'James Craig' <jcraig@apple.com>
> Subject: RE: Important concerns with naming calculation 'name from content'
> not being included in parent role accessible name.
>
> Bryan,
>
> Spec says tab has presentational true. Table is not a required owned
> element or required context role for tab. So, the table should disappear
> and the code you provided should use the text node of the table to
> calculate the name ... that is what the spec says.
>
> Matt
>
> -----Original Message-----
> From: Bryan Garaventa [mailto:bryan.garaventa@ssbbartgroup.com]
> Sent: Thursday, May 18, 2017 11:16 AM
> To: James Nurthen <james.nurthen@oracle.com>; 'ARIA Working Group'
> <public-aria@w3.org>; 'Matt King' <a11ythinker@gmail.com>;
> aleventhal@google.com; 'Dominic Mazzoni' <dmazzoni@google.com>; 'Marco
> Zehe'
> <marco.zehe@gmail.com>; 'Rich Schwerdtfeger' <richschwer@gmail.com>;
> 'david bolter' <david.bolter@gmail.com>; 'Alexander Surkov' <
> asurkov@mozilla.com>; 'James Craig' <jcraig@apple.com>
> Subject: RE: Important concerns with naming calculation 'name from content'
> not being included in parent role accessible name.
>
> In theory yes, but where does it say in the spec this is required?
>
> This is a boiled down version of something that was used in one of our
> client websites that has been accessible for 3 years, but now is broken in
> Firefox because of this change.
>
> We should not be breaking accessibility as we go forward.
>
>
> Bryan Garaventa
> Accessibility Fellow
> SSB BART Group, Inc.
> bryan.garaventa@ssbbartgroup.com
> 415.624.2709 <(415)%20624-2709> (o)
> www.SSBBartGroup.com
>
> -----Original Message-----
> From: James Nurthen [mailto:james.nurthen@oracle.com]
> Sent: Thursday, May 18, 2017 11:12 AM
> To: Bryan Garaventa <bryan.garaventa@ssbbartgroup.com>; 'ARIA Working
> Group'
> <public-aria@w3.org>; 'Matt King' <a11ythinker@gmail.com>;
> aleventhal@google.com; 'Dominic Mazzoni' <dmazzoni@google.com>; 'Marco
> Zehe'
> <marco.zehe@gmail.com>; 'Rich Schwerdtfeger' <richschwer@gmail.com>;
> 'david bolter' <david.bolter@gmail.com>; 'Alexander Surkov' <
> asurkov@mozilla.com>; 'James Craig' <jcraig@apple.com>
> Subject: RE: Important concerns with naming calculation 'name from content'
> not being included in parent role accessible name.
>
> As this is a table for layout
> - it should have
> role=presentation on it. This
> would then work wouldn't it?
> Regards,
> james
>
> -----Original Message-----
> From: Bryan Garaventa
> [mailto:bryan.garaventa@ssbbar
> tgroup.com]
> Sent: Thursday, May 18, 2017
> 11:08 AM
> To: ARIA Working Group
> <public-aria@w3.org>; Matt
> King <a11ythinker@gmail.com>;
> aleventhal@google.com; Dominic
> Mazzoni <dmazzoni@google.com>;
> Marco Zehe
> <marco.zehe@gmail.com>; Rich
> Schwerdtfeger
> <richschwer@gmail.com>; david
> bolter
> <david.bolter@gmail.com>;
> Alexander Surkov
> <asurkov@mozilla.com>; James
> Craig <jcraig@apple.com>
> Subject: Important concerns
> with naming calculation 'name
> from content' not being
> included in parent role
> accessible name.
>
> Hi,
> As most of us spoke of this
> last Monday in the APG call, I
> wanted to raise important
> concerns about the
> interpretation of the naming
> calculation, that specific
> roles that do not include
> 'name from content' are not
> being included in the parent
> role accessible name
> calculation.
>
> It was pointed out that this
> change is already included in
> Firefox, and I have built a
> sample that demonstrates why
> this global interpretation is
> dangerous. The following
> markup structure is now
> totally inaccessible in
> Firefox as a result of this
> change.
>
> <div tabindex="0" role="tab">
>         <table>
>                 <tr>
>                         <td>
> Inbox </td>
>                         <td>
> (23) </td>
>                 </tr>
>         </table>
> </div>
>
> Such a global interpretation
> would not just apply to all
> explicitly applied roles but
> to all implicitly mapped ones
> as well, and it is impossible
> to predict how and in what
> order all developers will need
> to apply ARIA roles in order
> to ensure accessibility in the
> future and that doesn't take
> into account what people are
> already doing right now.
>
> Aaron, can you please include
> the markup example here that
> you spoke of to demonstrate
> why this is a needed globally
> applied interpretation?
>
> Thanks,
> Bryan
>
>
>
> Bryan Garaventa
> Accessibility Fellow
> SSB BART Group, Inc.
> bryan.garaventa@ssbbartgroup.c
> om
> 415.624.2709 <(415)%20624-2709> (o)
> www.SSBBartGroup.com
>
>
>
>
>
>
>

Received on Tuesday, 23 May 2017 19:38:06 UTC