This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 8000 - ARIA roles added to the a element should be conforming in HTML5
Summary: ARIA roles added to the a element should be conforming in HTML5
Status: RESOLVED FIXED
Alias: None
Product: HTML WG
Classification: Unclassified
Component: pre-LC1 HTML5 spec (editor: Ian Hickson) (show other bugs)
Version: unspecified
Hardware: PC Windows NT
: P2 normal
Target Milestone: ---
Assignee: steve faulkner
QA Contact: HTML WG Bugzilla archive list
URL:
Whiteboard:
Keywords: a11y, a11ytf, aria, NE, PFWG, TrackerIssue
Depends on:
Blocks: 10066
  Show dependency treegraph
 
Reported: 2009-10-21 17:07 UTC by steve faulkner
Modified: 2012-01-13 00:23 UTC (History)
14 users (show)

See Also:


Attachments

Description steve faulkner 2009-10-21 17:07:43 UTC
Currently the a element is defined in the HTML5 specification as an element that cannot have its native role overriden by ARIA roles [1]
 
This is contrary to use in the wild as it has been overriden by the addition of a number of roles in popular javascript UI libraries.
 
Examples:
button
http://jqueryui.com/demos/dialog/
http://developer.yahoo.com/yui/examples/carousel/carousel-ariaplugin_source.html
tab
http://developer.yahoo.com/yui/examples/tabview/tabview-ariaplugin_clean.html
menutiem
http://developer.yahoo.com/yui/examples/menu/menuwaiaria_source.html
 
 
It is important to understand that it is not ARIA that is making the link into a button, its the developers use of javascript, event handlers and CSS that is making it look and act like a button or tab or menutiem. The addition of ARIA is merely providing the information that other users get by default. So making the addition of an ARIA role non conforming, to an element that has been designed to act and look like something other than its native role, is not the appropriate repsonse.
The reasons for creating ARIA centered around the inability of the HTML specification to address how author would create content. In fact, with the exception of forms, it was assumed that HTML would only be used for documents. Clearly, that was a miscalculation. 
 
It is essential that authors be given the tools to produce accessible applications. The perception, by some, is that ARIA is meant to circumvent the semantics of the host language, but rather it is the author that is circumventing the host language to create UI controls that satisfy their needs. WAI-ARIA simply provides the semantics to make them interoperabile with assistive technologies.

refer to thread on public HTML mailing list starting here:
http://lists.w3.org/Archives/Public/public-html/2009Oct/0694.html
Comment 1 Ian 'Hixie' Hickson 2009-10-23 06:13:12 UTC
EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document:
   http://dev.w3.org/html5/decision-policy/decision-policy.html

Status: Rejected
Change Description: no spec change
Rationale: I concurr with Thomas in this e-mail:
   http://lists.w3.org/Archives/Public/public-html/2009Oct/0707.html

It seems to me that we _should_ be calling authors out on this kind of mistake. Just because people do something doesn't mean we should make it valid — after all, we made <font> invalid, along with many other things. Conformance is about trying to advise authors to do the right thing.

I have added text to the spec that encourages conformance checkers to be very careful about how they complain about these issues, by the way, so that authors aren't encouraged to remove ARIA support but are instead encouraged to use the right elements.
Comment 2 steve faulkner 2009-10-23 07:46:17 UTC
I have raised an issue in the HTML WG tracker 
http://www.w3.org/html/wg/tracker/issues/85

(In reply to comment #1)
> EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are
> satisfied with this response, please change the state of this bug to CLOSED. If
> you have additional information and would like the editor to reconsider, please
> reopen this bug. If you would like to escalate the issue to the full HTML
> Working Group, please add the TrackerRequest keyword to this bug, and suggest
> title and text for the tracker issue; or you may create a tracker issue
> yourself, if you are able to do so. For more details, see this document:
>    http://dev.w3.org/html5/decision-policy/decision-policy.html
> Status: Rejected
> Change Description: no spec change
> Rationale: I concurr with Thomas in this e-mail:
>    http://lists.w3.org/Archives/Public/public-html/2009Oct/0707.html
> It seems to me that we _should_ be calling authors out on this kind of mistake.
> Just because people do something doesn't mean we should make it valid — after
> all, we made <font> invalid, along with many other things. Conformance is about
> trying to advise authors to do the right thing.
> I have added text to the spec that encourages conformance checkers to be very
> careful about how they complain about these issues, by the way, so that authors
> aren't encouraged to remove ARIA support but are instead encouraged to use the
> right elements.

Comment 3 Henri Sivonen 2009-10-26 11:35:38 UTC
Data point: The ARIA support of Validator.nu, which hasn't been updated to spec yet, allows and has always allowed <a role=button>.

It's unfortunate that the accessibility part is the only part where it's realistic to programmatically detect semantic abuse. However, I think it's more likely that authors would break accessibility than that authors would stop the semantic abuse in this case if whined at by a validator. (That is, I disagree with the editor's resolution of this bug.)
Comment 4 Simon Pieters 2009-10-26 12:43:29 UTC
(In reply to comment #3)
> (That is, I disagree
> with the editor's resolution of this bug.)
> 

So do I, for the same reason.

Case study: HTML4 disallowed empty paragraphs, in the hope that people would not use empty paragraphs, but instead people used paragraphs with a single non-breaking space in them. HTML5 thus disallowed paragraphs with a non-breaking space in them, but what would be the next step that authors would do to silence the validator but still actually use empty paragraphs? HTML5 was then changed to just allow empty paragraphs to stop the race.
Comment 5 Maciej Stachowiak 2010-01-28 03:59:34 UTC
Removing TrackerRequest since this has already been escalated.
Comment 6 Michael Cooper 2010-02-04 16:42:43 UTC
Removing myself from cc list, default on bug edits is to add, but I'm only acting on behalf of HTML A11Y TF which is already cc'd.
Comment 7 Michael Cooper 2010-08-31 14:05:59 UTC
http://lists.w3.org/Archives/Public/public-html-a11y/2010Aug/0124.html

The bug triage sub-team believes the HTML A11Y TF should take up this bug. Additional notes may follow in a separate comment.
Comment 8 Michael Cooper 2010-08-31 16:30:02 UTC
Bug triage sub-team is assigning to Cynthia to address this bug in the ARIA mapping sub-team.
Comment 9 steve faulkner 2010-09-17 10:54:39 UTC
(In reply to comment #8)
> Bug triage sub-team is assigning to Cynthia to address this bug in the ARIA
> mapping sub-team.

This bug has a related chnage proposal:
http://www.w3.org/html/wg/wiki/ChangeProposals/ARIAonanchor
Comment 10 Sam Ruby 2010-10-12 11:16:20 UTC
(In reply to comment #9)
> (In reply to comment #8)
> > Bug triage sub-team is assigning to Cynthia to address this bug in the ARIA
> > mapping sub-team.
> 
> This bug has a related chnage proposal:
> http://www.w3.org/html/wg/wiki/ChangeProposals/ARIAonanchor

The last status I have on that change proposal is "I do not plan to pursue this change proposal as it is superseded by the new proposal."

http://lists.w3.org/Archives/Public/public-html/2010Jul/0022.html
Comment 11 steve faulkner 2010-10-12 12:08:05 UTC
added to HTML WG Issue http://www.w3.org/html/wg/tracker/issues/129
Comment 12 Rich Schwerdtfeger 2010-10-13 20:58:37 UTC
Note: the Eclipse help system now applies the ARIA role of treeitem to links in the navigation list. This is used in numerous IBM products including Lotus Notes and Symphony.
Comment 13 Leif Halvard Silli 2011-01-15 00:28:20 UTC
The editor has provided HTML5 itself with 2 examples of anchor elements - inside a <menu type="toolbar"> element - being used as buttons:

First example:: [1] http://dev.w3.org/html5/spec/the-button-element.html#the-meter-element
Second exampe: [2] http://dev.w3.org/html5/spec/interactive-elements.html#menus-intro

[1] First example:
      ]]
  <menu type="toolbar">
 <a href="?cmd=hsg" onclick="hideSuggestedGroups()">Hide suggested groups</a>
  </menu>
     [[

[2] Second example:
      ]]
For example, the following represents a toolbar with three menu buttons on it, each of which has a dropdown menu with a series of options:

<menu type="toolbar">
 <li>
  <menu label="File">
   <button type="button" onclick="fnew()">New...</button>
   <button type="button" onclick="fopen()">Open...</button>
   <button type="button" onclick="fsave()">Save</button>
   <button type="button" onclick="fsaveas()">Save as...</button>
  </menu>
 </li>
 <li>
  <menu label="Edit">
   <button type="button" onclick="ecopy()">Copy</button>
   <button type="button" onclick="ecut()">Cut</button>
   <button type="button" onclick="epaste()">Paste</button>
  </menu>
 </li>
 <li>
  <menu label="Help">
   <li><a href="help.html">Help</a></li>
   <li><a href="about.html">About</a></li>
  </menu>
 </li>
</menu>
In a supporting user agent, this might look like this:

[img-fallback: A toolbar with three buttons, labeled 'File', 'Edit', and 'Help'; where if you select the 'Edit' button you get a drop-down menu with three more options, 'Copy', 'Cut', and 'Paste'.]

In a legacy user agent, the above would look like a bulleted list with three items, the first of which has four buttons, the second of which has three, and the third of which has two nested bullet points with two items consisting of links.
     [[
Comment 14 Cynthia Shelly 2012-01-13 00:23:14 UTC
Steve, I think this is fixed.  If you agree, please chagne status to verified.