Re: svg accessibility tests

Joanie,

I understand what you are saying but I don't interpret it the same way. My
interpretation is that if the current node can calculate the needed value
without visiting a node already visited in the calculation chain, it should
calculate and use the value.  In my opinion, the only condition that needs
worrying about is getting stuck in recursion.  In the case we have you
don't get stuck in a recursive loop.

I can put it on the agenda for the SVG a11y TF, but this is really an ARIA
question. Do we have clear guidance on this?


                                                              
     Regards,                                                 
                                                              
    Fred Esch                                                 
 Watson, IBM, W3C                                             
  Accessibility                                               
                                                              
 IBM Watson       Watson Release Management and Quality       
                                                              






From:	Joanmarie Diggs <jdiggs@igalia.com>
To:	Fred Esch/Arlington/IBM@IBMUS
Cc:	SVG-A11y TF <public-svg-a11y@w3.org>
Date:	03/04/2016 12:11 PM
Subject:	Re: svg accessibility tests



Hey Fred.

On 03/04/2016 11:13 AM, Fred Esch wrote:
> Joanie,
>
> That calculation is done based on the core AAC below, emphasis is mine.
>
> 4.3 Text Alternative Computation
> <
http://rawgit.com/w3c/aria/master/accname-aam/accname-aam.html#mapping_additional_nd_te
>
>
> Text alternatives are built up, when appropriate, from all the relevant
> content contained within an element. This is accomplished via steps 2B
> and 2F, which are recursive, *using the full set of rules*to retrieve
> text from its own children or nodes it references.

The full set of rules also include a statement that you only do the
processing if "the current node is not already a part of an
{aria-labelledby,aria-describedby} traversal. See issue-1008.

[...]

> Reasoning is inline below. If my interpretation is wrong, please let me
> know. If it is unclear what should happen please mention this and we can
> bring it up as an agenda item.

I think your interpretation may indeed be wrong. Again, see issue-1008.

[...]

>> In the meantime, please refresh my memory regarding what happened with
>> the recursive labelledby/describedby. Shouldn't this test:
>>
>> // two valid idrefs, one with an aria-label, one with aria-labelledby
>> if given
>>  <circle id="test" aria-labelledby="t1 t2" cx='50' cy='100' r='15'/>
>>  <text id="t1" x="40" y="90"aria-label="big">the</text>
>>  <text id="t2" x="140" y="90" aria-labelledby='t3'>end</text>
>>  <text id="t3"x="180" y="90">finish</text>
>> then accessible name = "big finish"
>>
>> have accessible name of "big end"?
>
> *the element with id t1 would contribute **/big/** *

Agreed.

> *the element with id t2 would contribute **/finish/** because of the
> aria-labeledby.*

Disagreed.

Looking at
https://rawgit.com/w3c/aria/master/accname-aam/accname-aam.html#mapping_additional_nd_description

2B:

This part is true:

    if computing a name, and the current node has a non-empty
    aria-labelledby attribute

However, this part is false:

    and the current node is not already part of an aria-labelledby
    traversal

The current node (t2) IS already part of an aria-labelledby traversal,
namely the node with id="test" with aria-labelledby="t1 t2".

Because of the above condition failing, we cannot do this bit:

    process its IDREFs in the order they occur

Instead, we wind up having to use the text, namely "end".

--joanie




--1__
BBF5FFDFF5041E8f9e8a93df938690918c0ABBF5FFDFF5041E
Content-Transfer-Encoding: quoted-printable
Content-type: text/html; charset=US-ASCII
Content-Disposition: inline

<html><body><p>Joanie,<br><br>I understand what you are saying but I don't interpret it the same way. My interpretation is that if the current node can calculate the needed value without visiting a node already visited in the calculation chain, it should calculate and use the value.  In my opinion, the only condition that needs worrying about is getting stuck in recursion.  In the case we have you don't get stuck in a recursive loop. <br><br>I can put it on the agenda for the SVG a11y TF, but this is really an ARIA question. Do we have clear guidance on this? <br><br><br><br>
<table border="0" cellspacing="0" cellpadding="0"><tr valign="top"><td width="473" colspan="2" valign="middle"><div align="center"><font size="4" face="Verdana">Regards, <br><br>Fred Esch <br>Watson, IBM, W3C Accessibility</font></div></td></tr>
<tr valign="top"><td width="130" valign="middle"><img src="cid:1__=0ABBF5FFDFF5041E8f9e8a93df938690918c0AB@" width="163" height="23" alt="IBM Watson" align="bottom"></td><td width="342" valign="middle"><font size="4" face="Verdana">Watson Release Management and Quality </font></td></tr></table><br><br><img width="16" height="16" src="cid:2__=0ABBF5FFDFF5041E8f9e8a93df938690918c0AB@" border="0" alt="Inactive hide details for Joanmarie Diggs ---03/04/2016 12:11:52 PM---Hey Fred. On 03/04/2016 11:13 AM, Fred Esch wrote:"><font color="#424282">Joanmarie Diggs ---03/04/2016 12:11:52 PM---Hey Fred. On 03/04/2016 11:13 AM, Fred Esch wrote:</font><br><br><font size="2" color="#5F5F5F">From:        </font><font size="2">Joanmarie Diggs &lt;jdiggs@igalia.com&gt;</font><br><font size="2" color="#5F5F5F">To:        </font><font size="2">Fred Esch/Arlington/IBM@IBMUS</font><br><font size="2" color="#5F5F5F">Cc:        </font><font size="2">SVG-A11y TF &lt;public-svg-a11y@w3.org&gt;</font><br><font size="2" color="#5F5F5F">Date:        </font><font size="2">03/04/2016 12:11 PM</font><br><font size="2" color="#5F5F5F">Subject:        </font><font size="2">Re: svg accessibility tests</font><br><hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br><br><br><tt>Hey Fred.<br><br>On 03/04/2016 11:13 AM, Fred Esch wrote:<br>&gt; Joanie,<br>&gt; <br>&gt; That calculation is done based on the core AAC below, emphasis is mine.<br>&gt; <br>&gt; 4.3 Text Alternative Computation<br>&gt; &lt;</tt><tt><a href="http://rawgit.com/w3c/aria/master/accname-aam/accname-aam.html#mapping_additional_nd_te">http://rawgit.com/w3c/aria/master/accname-aam/accname-aam.html#mapping_additional_nd_te</a></tt><tt>&gt;<br>&gt; <br>&gt; Text alternatives are built up, when appropriate, from all the relevant<br>&gt; content contained within an element. This is accomplished via steps 2B<br>&gt; and 2F, which are recursive, *using the full set of rules*to retrieve<br>&gt; text from its own children or nodes it references.<br><br>The full set of rules also include a statement that you only do the<br>processing if &quot;the current node is not already a part of an<br>{aria-labelledby,aria-describedby} traversal. See issue-1008.<br><br>[...]<br><br>&gt; Reasoning is inline below. If my interpretation is wrong, please let me<br>&gt; know. If it is unclear what should happen please mention this and we can<br>&gt; bring it up as an agenda item.<br><br>I think your interpretation may indeed be wrong. Again, see issue-1008.<br><br>[...]<br><br>&gt;&gt; In the meantime, please refresh my memory regarding what happened with<br>&gt;&gt; the recursive labelledby/describedby. Shouldn't this test:<br>&gt;&gt; <br>&gt;&gt; // two valid idrefs, one with an aria-label, one with aria-labelledby<br>&gt;&gt; if given<br>&gt;&gt; &nbsp;&lt;circle id=&quot;test&quot; aria-labelledby=&quot;t1 t2&quot; cx='50' cy='100' r='15'/&gt;<br>&gt;&gt; &nbsp;&lt;text id=&quot;t1&quot; x=&quot;40&quot; y=&quot;90&quot;aria-label=&quot;big&quot;&gt;the&lt;/text&gt;<br>&gt;&gt; &nbsp;&lt;text id=&quot;t2&quot; x=&quot;140&quot; y=&quot;90&quot; aria-labelledby='t3'&gt;end&lt;/text&gt;<br>&gt;&gt; &nbsp;&lt;text id=&quot;t3&quot;x=&quot;180&quot; y=&quot;90&quot;&gt;finish&lt;/text&gt;<br>&gt;&gt; then accessible name = &quot;big finish&quot;<br>&gt;&gt; <br>&gt;&gt; have accessible name of &quot;big end&quot;?<br>&gt; <br>&gt; *the element with id t1 would contribute **/big/** *<br><br>Agreed.<br><br>&gt; *the element with id t2 would contribute **/finish/** because of the<br>&gt; aria-labeledby.*<br><br>Disagreed.<br><br>Looking at<br></tt><tt><a href="https://rawgit.com/w3c/aria/master/accname-aam/accname-aam.html#mapping_additional_nd_description">https://rawgit.com/w3c/aria/master/accname-aam/accname-aam.html#mapping_additional_nd_description</a></tt><tt><br>2B:<br><br>This part is true:<br><br> &nbsp; &nbsp;if computing a name, and the current node has a non-empty<br> &nbsp; &nbsp;aria-labelledby attribute<br><br>However, this part is false:<br><br> &nbsp; &nbsp;and the current node is not already part of an aria-labelledby<br> &nbsp; &nbsp;traversal<br><br>The current node (t2) IS already part of an aria-labelledby traversal,<br>namely the node with id=&quot;test&quot; with aria-labelledby=&quot;t1 t2&quot;.<br><br>Because of the above condition failing, we cannot do this bit:<br><br> &nbsp; &nbsp;process its IDREFs in the order they occur<br><br>Instead, we wind up having to use the text, namely &quot;end&quot;.<br><br>--joanie<br><br></tt><br><br><BR>
</body></html>

--1__
BBF5FFDFF5041E8f9e8a93df938690918c0ABBF5FFDFF5041E--


--0__
BBF5FFDFF5041E8f9e8a93df938690918c0ABBF5FFDFF5041E
Content-type: image/gif; 
	name="0A844503.gif"
Content-Disposition: inline; filename="0A844503.gif"
Content-ID: <1__
BBF5FFDFF5041E8f9e8a93df938690918c0AB@>
Content-Transfer-Encoding: base64

iVBORw0KGgoAAAANSUhEUgAAAKMAAAAXCAMAAABQ6Q/RAAADAFBMVEXIx8cxLS5MSUrW1dXx8fE/
Ozzj4+N2c3SRj49oZWaEgYKsq6uenZ26ubmbm5v29vZ7e3tTU1M7OzsfHx/FxcX39/eamppmZmaR
j5AgICCqqqrR0dFaV1gAAAAjHyD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAADe7fL7AAADE0lEQVR4nM2WiW7kIAyGTbhz9O6eCL//U6bYGJJOst2dlaqppUm4
+fhtnAH8+gb7sroZxodWGZfA5UxP52+Ic2qVEbLDxujTLXnOTHydSDxNdC7DR+NvYQK02PLQYBDn
z5dRw04GAPibKIBec2GKuZjyrtbosVZr72J397Xyc+suPshsiOUBvRb4xavlzYoA2tI+XEQTFDfT
rkCFiFLIec8Y82jQ0dIhjOU5lmWGa254owKe/J5xPDBqdYHLphZBm08Zi5/nOnEsEUmHwiG6cx3X
Z6k8ID5c6kgHHC4YlblkJHcNlotO7Xp0RVP6lLFIPtTmsuDQDn+FGT4YTy3OXcTFEy85VUYonQMQ
WHWopSIdR83aTYRs5bBD9cz+VjBjyI3RbVEkSu7ed/XF8r18ExXF25ZJiWnk/RhD1S1JlFT5mLGc
B0KYNJG5rtEkLhjPGUVz32Lh2iw+k68WnhqJjeZTldqBr27dFkCz2mlyooxcac0zJUyWM8YKFnn8
KLofdFy7brvwXLctZs+6KScOTrSr6uft2y4SmJqa+tUcxPeKY/iEcc4+W8qNfYUrdSTtYvnRrfE1
rgk1QOqBs207ideoc2gLJGFMtEQ6YQy53OvwA1DifmM86PhQKxSZ66+uI/o6zdVcMmwtRHrBiGbm
XWysp2FTjbERHHUEPXAgtDRxrY5Vfsvph6PebGnFvmcswSnp2PcDcECPdYzkz2M8ziBH9rtl8c/3
Gh/X9TtuOhphWyToedNUzEp0boyZ8zQNnHLrXIhLy5jplBHVINnHmKj+415Lamt+QAdWDkphmcC5
mh8lodvqNsOqDyHw5GjamHjKGLKEj66LuK7i5XfmsVbwdX1+leL9vTiLIiTy8qFFjHwygjQA7j46
sUc/oxpoY4w9YzRW+RbsZeJ135mnJ9ErCuv8T4yqCGH6zYoGOyOXDowSqJ5yRtq6jzq2/z2IL7+l
H58eaWxMiULLlRjUOCU2+kfKNkkDuam8KJP6eqPB0+eIU7PexswpjQdG5AAJEOL1X+vPt/7/cuLg
UP7L/QtHfANvSEKvsxvttAAAAABJRU5ErkJggg=


--0__
BBF5FFDFF5041E8f9e8a93df938690918c0ABBF5FFDFF5041E
Content-type: image/gif; 
	name="graycol.gif"
Content-Disposition: inline; filename="graycol.gif"
Content-ID: <2__
BBF5FFDFF5041E8f9e8a93df938690918c0AB@>
Content-Transfer-Encoding: base64

R0lGODlhEAAQAKECAMzMzAAAAP///wAAACH5BAEAAAIALAAAAAAQABAAAAIXlI+py+0PopwxUbpu
ZRfKZ2zgSJbmSRYAIf4fT3B0aW1pemVkIGJ5IFVsZWFkIFNtYXJ0U2F2ZXIhAAA7


--0__
BBF5FFDFF5041E8f9e8a93df938690918c0ABBF5FFDFF5041E--

Received on Friday, 4 March 2016 19:03:52 UTC