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 11956 - restrict use of role=presentation
Summary: restrict use of role=presentation
Status: CLOSED DUPLICATE of bug 10919
Alias: None
Product: HTML WG
Classification: Unclassified
Component: LC1 HTML5 spec (show other bugs)
Version: unspecified
Hardware: PC Windows NT
: P2 normal
Target Milestone: ---
Assignee: Hans Hillen
QA Contact: HTML WG Bugzilla archive list
URL:
Whiteboard:
Keywords: a11y, a11ytf
Depends on:
Blocks:
 
Reported: 2011-02-02 11:16 UTC by steve faulkner
Modified: 2011-12-08 16:57 UTC (History)
12 users (show)

See Also:


Attachments

Description steve faulkner 2011-02-02 11:16:37 UTC
s per the ARIA spec [1] and implementaion guide [2]

"If an element with a role of presentation is focusable, user agents
MUST ignore the normal effect of the role and expose the element with
implicit native semantics, in order to ensure that the element is both
understandable and operable."

[1]http://www.w3.org/WAI/PF/aria/roles#presentation
[2] http://www.w3.org/TR/wai-aria-implementation/#mapping_role

I agree with the above, but currently the HTML5 spec allows
role="presentation" on any element (including focusable elements) and
this is how it is implemented in Firefox, chrome and IE, they  apply
the presentation role to focusable elements.

example:
<p><input type="submit" role="presentation"></p>

IE removes the input from the accessibility tree (Cannot get object
from Focus event: [Error: AccessibleObjectFromEvent: hr=0x80004005 -
Unspecified error]) but they are still focusable.
In firefox the input is still focusable and exposes a role of
presentation "Role: "presentation" [ BUG? State/Role should not be a
string ]" (not the same behaviour as for non focusable elements)
In chrome the focus is moved to the parent element the parent element
role is exposed.
Comment 1 Martin Kliehm 2011-02-08 16:30:10 UTC
The bug-triage sub-team doesn't think this should be task force priority. Consistent implementation across browsers is imperative, so the vendors should agree on a way for implementation. Perhaps the spec needs to be more speficic. The bug is certainly in good hands with Steve.
Comment 2 Ian 'Hixie' Hickson 2011-03-04 01:37:22 UTC
I don't understand the problem here. ARIA overrides HTML here so that there's no problem, no?
Comment 3 steve faulkner 2011-03-04 09:17:45 UTC
(In reply to comment #2)
> I don't understand the problem here. ARIA overrides HTML here so that there's
> no problem, no?

ok, let's put it another way:

What is the use case for allowing presentation on all elements?
Comment 4 Leif Halvard Silli 2011-03-04 17:54:12 UTC
(In reply to comment #3)
> (In reply to comment #2)

> What is the use case for allowing presentation on all elements?

Some answers to that question can be found inside the request to 'Allow role="presentation" to override the default role of any element', which was filed as bug 10919 by Martin Kliehm, and which resulted in the current permission to use 'presentation' on any element that you now are questioning. 

If you disagree with that general permission to use 'presntation' on any element, then it seems that you EITHER need to re-open 10919 needs to be reopened. OR ELSE, file bugs about each element for which it should not be permitted.
Comment 5 steve faulkner 2011-03-04 18:24:05 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > (In reply to comment #2)
> 
> > What is the use case for allowing presentation on all elements?
> 
> Some answers to that question can be found inside the request to 'Allow
> role="presentation" to override the default role of any element', which was
> filed as bug 10919 by Martin Kliehm, and which resulted in the current
> permission to use 'presentation' on any element that you now are questioning. 
> 
> If you disagree with that general permission to use 'presntation' on any
> element, then it seems that you EITHER need to re-open 10919 needs to be
> reopened. OR ELSE, file bugs about each element for which it should not be
> permitted.

hi leif, i am aware of bug 10919 it does not provide use cases for using presentation on form controls or links. so it doesn't provide any use cases to cover these, the rationale of the editor was;

"It seems that the ARIA spec is very confused on this
issue, but in the interests of expediency, and under the assumption that the
ARIA spec will be corrected to match implementations, I've changed the spec to
allow role=presentation everywhere."

I don't believe 'expediency' to be an acceptable rationale.

as to your statement:

"then it seems that you EITHER need to re-open 10919 needs to be
reopened. OR ELSE, file bugs about each element for which it should not be permitted."

whose rules are these?
Comment 6 Leif Halvard Silli 2011-03-04 19:10:32 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > (In reply to comment #3)
> > > (In reply to comment #2)
> > 
> > > What is the use case for allowing presentation on all elements?
> > 
> > Some answers to that question can be found inside the request to 'Allow
> > role="presentation" to override the default role of any element', which was
> > filed as bug 10919 by Martin Kliehm,

> hi leif, i am aware of bug 10919 it does not provide use cases for using
> presentation on form controls or links.

There you mention two very specific elements. May be  it can be justified that those elements are excempted from the general permission to use role=presention. In contrast, this bug report covers "all" elements. 

Btw, role=presentation is not the only thing that could make form controls and links inaccessible to AT.  Placing form controls or links inside elements with role="img" would do the same. (Example: <div role=img ><a href="*">link</a></div>) 

> so it doesn't provide any use cases to
> cover these, the rationale of the editor was;
> 
> "It seems that the ARIA spec is very confused on this
> issue, but in the interests of expediency, and under the assumption that the
> ARIA spec will be corrected to match implementations, I've changed the spec to
> allow role=presentation everywhere."
> 
> I don't believe 'expediency' to be an acceptable rationale.

He also provided a link to a longer resonnement as part of the rationale. And I don't know if it is fruitful to think that his decision did not have anything to do with Martin's bugs and comments.

(THough, it seems relevant to point out that the examples they discussed were not links or form controls with the presentation role.)
 
> as to your statement:
> 
> "then it seems that you EITHER need to re-open 10919 needs to be
> reopened. OR ELSE, file bugs about each element for which it should not be
> permitted."
> 
> whose rules are these?

The important thing is to do what solves the problem - not "whose rules" it is.
Comment 7 Leif Halvard Silli 2011-03-04 19:22:48 UTC
(In reply to comment #6)
> (In reply to comment #5)

> > hi leif, i am aware of bug 10919 it does not provide use cases for using
> > presentation on form controls or links.
> 
> There you mention two very specific elements. May be  it can be justified that
> those elements are excempted from the general permission to use
> role=presention. In contrast, this bug report covers "all" elements. 
> 
> Btw, role=presentation is not the only thing that could make form controls and
> links inaccessible to AT.  Placing form controls or links inside elements with
> role="img" would do the same. (Example: <div role=img ><a
> href="*">link</a></div>) 

And, related, what about aria-labelledby or aria-describedby, if they are used to point to an anchor element or a form control element?  Would that be any useful? Such an anchor element would appear completely dead - it would only be a presented to the AT user as pure text - click-ability would be gone. When is that useful?

It seems that the real problem here is those specific, interarictive elements that you mention - in relation to *any* ARIA feature that in some way or another removes their interactivity.
Comment 8 steve faulkner 2011-03-04 21:38:10 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > (In reply to comment #4)
> > > (In reply to comment #3)
> > > > (In reply to comment #2)
> > > 
> > > > What is the use case for allowing presentation on all elements?
> > > 
> > > Some answers to that question can be found inside the request to 'Allow
> > > role="presentation" to override the default role of any element', which was
> > > filed as bug 10919 by Martin Kliehm,
> 
> > hi leif, i am aware of bug 10919 it does not provide use cases for using
> > presentation on form controls or links.
> 
> There you mention two very specific elements. May be  it can be justified that
> those elements are excempted from the general permission to use
> role=presention. In contrast, this bug report covers "all" elements. 
> 
> Btw, role=presentation is not the only thing that could make form controls and
> links inaccessible to AT.  Placing form controls or links inside elements with
> role="img" would do the same. (Example: <div role=img ><a
> href="*">link</a></div>) 
> 
> > so it doesn't provide any use cases to
> > cover these, the rationale of the editor was;
> > 
> > "It seems that the ARIA spec is very confused on this
> > issue, but in the interests of expediency, and under the assumption that the
> > ARIA spec will be corrected to match implementations, I've changed the spec to
> > allow role=presentation everywhere."
> > 
> > I don't believe 'expediency' to be an acceptable rationale.
> 
> He also provided a link to a longer resonnement as part of the rationale. And I
> don't know if it is fruitful to think that his decision did not have anything
> to do with Martin's bugs and comments.
> 
> (THough, it seems relevant to point out that the examples they discussed were
> not links or form controls with the presentation role.)
> 
> > as to your statement:
> > 
> > "then it seems that you EITHER need to re-open 10919 needs to be
> > reopened. OR ELSE, file bugs about each element for which it should not be
> > permitted."
> > 
> > whose rules are these?
> 
> The important thing is to do what solves the problem - not "whose rules" it is.

i don't think the course of action you outline solves the problem for me, but if it does for you  then go right ahead.

I will wait to hear back from ian on his use case for allowing presentation on all elements.
Comment 9 steve faulkner 2011-03-04 21:40:12 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > (In reply to comment #5)
> 
> > > hi leif, i am aware of bug 10919 it does not provide use cases for using
> > > presentation on form controls or links.
> > 
> > There you mention two very specific elements. May be  it can be justified that
> > those elements are excempted from the general permission to use
> > role=presention. In contrast, this bug report covers "all" elements. 
> > 
> > Btw, role=presentation is not the only thing that could make form controls and
> > links inaccessible to AT.  Placing form controls or links inside elements with
> > role="img" would do the same. (Example: <div role=img ><a
> > href="*">link</a></div>) 
> 
> And, related, what about aria-labelledby or aria-describedby, if they are used
> to point to an anchor element or a form control element?  Would that be any
> useful? Such an anchor element would appear completely dead - it would only be
> a presented to the AT user as pure text - click-ability would be gone. When is
> that useful?
> 
> It seems that the real problem here is those specific, interarictive elements
> that you mention - in relation to *any* ARIA feature that in some way or
> another removes their interactivity.

good point, i suggest you put in a bug report.
Comment 10 Leif Halvard Silli 2011-03-05 03:34:19 UTC
(In reply to comment #0)
> s per the ARIA spec [1] and implementaion guide [2]
> 
> "If an element with a role of presentation is focusable, user agents
> MUST ignore the normal effect of the role and expose the element with
> implicit native semantics, in order to ensure that the element is both
> understandable and operable."
> 
> [1]http://www.w3.org/WAI/PF/aria/roles#presentation
> [2] http://www.w3.org/TR/wai-aria-implementation/#mapping_role
> 
> I agree with the above, but currently the HTML5 spec allows
> role="presentation" on any element (including focusable elements) 

You seem to to think that *ARIA 1.0* says that role=presentation should not be added to focusable elements.  The way I read ARIA 1.0, it only says that role=presentation on focusable element simply leads to a different result on focusable elements.

I think the ARIA spec text that you quoted above, is mostly related to inheritance. E.g. if we do this:
  <div role=presentation><a href=link>text</a></div>
Then the <a> would also get a presentation role - inherited from the parent, but without loosing its "implicit native semantics".

If HTML5 were to say anything about my example above, then what should it say? That authors in this case must apply a non-presentational role to the anchor element - for instance role=link ?
Comment 11 Laura Carlson 2011-04-29 12:08:40 UTC
Per Martin Kliehm "although the bug-triage sub-team didn't decide on these bugs yet, John mentioned in yesterdays teleconference [1] that there are several important multimedia related bugs where he'd like to add the a11ytf keyword. There was approval". 

[1] http://www.w3.org/2011/04/28-html-a11y-minutes.html
Comment 12 Ian 'Hixie' Hickson 2011-05-09 23:02:52 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: Did Not Understand Request
Change Description: no spec change
Rationale: I still don't understand the problem here. If the problem is just that bug 10919 was resolved in a way that you disagree with, please reopen or escalate that bug as per comment 4. If the problem is that ARIA doesn't define what happens when the user focuses a focusable element with role=presentation, then that's a bug in ARIA, regardless of whether that combination is allowed or not. If the bug is that browsers don't do what ARIA says, then file the bugs with the browsers. Note that allowing a role on an element has no relationship with whether browsers will support that role on an element, so the "that is how it is implemented" part of comment 0 makes no sense.
Comment 13 Michael[tm] Smith 2011-08-04 05:13:23 UTC
mass-move component to LC1
Comment 14 steve faulkner 2011-12-08 16:57:01 UTC

*** This bug has been marked as a duplicate of bug 10919 ***