[WAI-ARIA] Initial review from an SVG perspective

Hello PFWG,

These are comments on Accessible Rich Internet Applications (WAI-ARIA)  
1.0, W3C Working Draft 24 February 2009,  
http://www.w3.org/TR/2009/WD-wai-aria-20090224/.


== 2.3. Managing Focus

Doesn't mention svg navigation, see  
http://www.w3.org/TR/SVGTiny12/interact.html#navigation, the nav-*  
attributes especially. SVG doesn't have the 'taborder' attribute. Please  
clarify how it relates to the svg nav-* attributes.


== 4.2.7. Accessible Name Calculation

For 'author': Should mention the 'xlink:title' attribute, which can be  
used on anchor tags in SVG.


== 4.3.3. User Interface Elements

It's not uncommon to have scrollbars in an application, why isn't that  
particular UI element listed here? Is the idea that one has to use  
multiple buttons instead for this use-case or is there another role  
defined somewhere for this purpose? slider?


== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#navigation

Isn't <nav> from HTML5 a related concept here?


== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#textbox

The statement about SVG not having a text input element isn't fully  
accurate. SVG Tiny 1.2 does have text input support. Any text content  
block element (see  
http://www.w3.org/TR/SVGMobile12/intro.html#TermTextContentBlockElement)  
can accept text input when editable="simple" is specified. Please correct  
the erroneous statement.


==  
http://www.w3.org/TR/2009/WD-wai-aria-20090224/#textequivalentcomputation

Rule 2C will not work for the following (simplified) example:

<svg>
   <text id="t" display="none">mylabel</text>
   <text><tref xlink:href="#t"></text>
</svg>

The behaviour is that tref points to some text, and the textcontent itself  
isn't a descendant of tref.parentNode and concatenating won't return  
anything at all even though "mylabel" is what a user would see on screen.  
For reference see http://www.w3.org/TR/SVG11/text.html#TRefElement.

I think it might make more sense for these cases to talk about rendered  
text (or refer to what's in the rendered tree, see  
http://www.w3.org/TR/SVGTiny12/intro.html#TermRenderingTree). There are  
other cases too, like a textPath that has text that would go off either  
end of the defined path (such characters are not rendered), and when  
elements with display="none" are descendants of a visible element. Note  
however that visibility="hidden" still means elements are in the  
rendertree, even though they're not actually visible on screen. So another  
term may need to be defined for what I think is the purpose of this, which  
is to get the text that a user would see on screen.


== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#application
== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#document

Should mention <svg:title> as equivalent to <html:title> for the purposes  
of labelling the application/document. Possibly with fallback to  
<svg:desc> for a longer description.


== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#landmark

'landmark' is a common cartography term, and so would make sense to use in  
an SVG mapping context. Would it be possible to use another name for this  
abstract role, or to allow it for maps?


== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#def_owned_element

What about SVG shadowtrees? For reference see  
http://www.w3.org/TR/SVG11/struct.html#UseElement and  
http://www.w3.org/TR/SVG11/struct.html#InterfaceSVGElementInstance. The  
SVGElementInstances don't have the DOM Node interface, so depending on  
what is meant with DOM descendants they're either covered or not. This  
should be clarified.


== http://www.w3.org/TR/2009/WD-wai-aria-20090224/#application

> An author should set the role of application on the element that  
> encompasses the entire application.

If the application consists of multiple independent applications, what's  
the recommendation? Set role=application on each of them?

For SVG images, sometimes scripting is disabled (depending on how you  
reference the image) and so it can sometimes be an application and  
sometimes a resource (say for example a static image). What's the  
recommendation in such cases? It may not be possible to alter the DOM, or  
to have an aria- attribute that describes each (re)use.


Cheers
/Erik

-- 
Erik Dahlstrom, Core Technology Developer, Opera Software
Co-Chair, W3C SVG Working Group
Personal blog: http://my.opera.com/macdev_ed

Received on Thursday, 16 April 2009 20:30:34 UTC