aria-braille-equivalent
aria-braillelabel/aria-brailleroledescription must have a non-braille equivalent
Checks that elements using aria-braillelabel also have a regular accessible name, and elements using aria-brailleroledescription also have aria-roledescription.
Applies to. Elements with a non-empty `aria-braillelabel` and/or non-empty `aria-brailleroledescription` attribute.
Expectation. Per the ARIA specification, `aria-braillelabel` is a Braille-specific SUPPLEMENT to (not a replacement for) the element's regular accessible name, and `aria-brailleroledescription` is a supplement to `aria-roledescription`. An element must therefore also have:
- a non-empty accessible name from a non-braille mechanism, if it declares `aria-braillelabel`;
- a non-empty `aria-roledescription`, if it declares `aria-brailleroledescription`.
Using either braille-specific attribute as the ONLY naming mechanism leaves non-braille assistive technology (most screen readers, voice control, etc.) with no accessible name/role description at all. Reported at CANTTELL rather than FAIL: aria-brailleroledescription without aria-roledescription reaches no user at all, and a missing accessible name is the naming rules' decision for the roles that require one. The braille attribute being unpaired is worth surfacing, but it is not itself a criterion failing.
Examples
<button aria-braillelabel="SAVE">Save changes</button>
The braille label supplements a real accessible name ("Save changes"); non-braille assistive technology still gets a name.
<button aria-braillelabel="SAVE"></button>
`aria-braillelabel` is the only naming mechanism present; non-braille assistive technology gets no accessible name at all.