Hello,<br><br>Thanks for this feedback. As you can imagine, testing accessibility is difficult. We&#39;re hoping that we can get it right once, and then provide an accessible CAPTCHA for everybody. I really appreciate you sharing your technical expertise in this matter.
<br><br><div><span class="gmail_quote">On 5/25/07, <b class="gmail_sendername">Gregory J. Rosmaita</b> &lt;<a href="mailto:oedipus@hicom.net">oedipus@hicom.net</a>&gt; wrote:</span>&nbsp;<br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
the image that enables one to play the audio alternative<br>lacks alt text, which is a REQUIRED attribute for an image<br>declaration in HTML4x/XHTML1;<br><br>[<a href="http://www.w3.org/TR/html401/struct/objects.html#h-13.2">
http://www.w3.org/TR/html401/struct/objects.html#h-13.2</a>]<br>[<a href="http://www.w3.org/TR/html401/struct/objects.html#alternate-text">http://www.w3.org/TR/html401/struct/objects.html#alternate-text</a>]<br>[<a href="http://www.w3.org/TR/html401/appendix/notes.html#accessibility">
http://www.w3.org/TR/html401/appendix/notes.html#accessibility</a>]<br>[<a href="http://www.w3.org/WAI/References/HTML4-access">http://www.w3.org/WAI/References/HTML4-access</a>]<br><br>the list of graphical elements reveals that there are actually
<br>3 button-type objects that are part of the form, and essential<br>to anyone who actually needs the audio alternative:<br><br>red/reset<br>red/audio<br>red/help<br><br>MUST be ALT-texted as follows:<br><br>&lt;img src=&quot;red/reset&quot; alt=&quot;Reset&quot;
<br>&lt;img src=&quot;red/audio&quot; alt=&quot;Audio Alternative&quot;<br>&lt;img src=&quot;red/help&quot; alt=&quot;Help</blockquote><div><br>It turns out that the &lt;a&gt; elements around these have a title attribute. But it looks like that is not sufficient for audio browsers. I&#39;m going to fix this over the weekend.
<br>&nbsp;</div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">the image that serves as the hyperlink to the audio alternative is<br>not a form control; it should be a BUTTON, so it is in the form&#39;s
<br>TABINDEX order, not outside of the form as a javascripted link;</blockquote><div><br>My understanding is that the &lt;a&gt; element is normally in the tab index. However I actually took it out for the ease of visual browsers. Imagine you have a form with the following elements:
<br><br><ol><li>Name</li><li>Blog Comment</li><li>reCAPTCHA</li><li>Submit (a button)</li></ol>Visual users should be able to interact with the form via the keyboard only.<br><br>I think that those using technology such as screen readers would benefit from a different layout &amp; tabindex from visual users, so we may need a dual path.
<br><br></div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">[<a href="http://www.w3.org/TR/html401/interact/forms.html#edef-BUTTON">http://www.w3.org/TR/html401/interact/forms.html#edef-BUTTON
</a>]<br><br>using the type=&quot;button&quot; push-button mechanism to which to attach<br>the script that calls the audio alternative.<br><br>&lt;button type=&quot;button&quot; name=&quot;audio-alt&quot; accesskey=&quot;r&quot;
<br>title=&quot;Alternative Audio CAPTCHA Key&quot;&gt;&lt;/button&gt;<br><br>i would STRONGLY suggest that an ACCESSKEY be associated with<br>the audio alternative - perhaps &#39;r&#39; for read (it won&#39;t steal most<br>
browsers&#39; menu hotkeys)<br><br>[<a href="http://www.w3.org/TR/html401/interact/forms.html#h-17.11.2">http://www.w3.org/TR/html401/interact/forms.html#h-17.11.2</a>]<br>[<a href="http://www.w3.org/TR/WCAG10-HTML-TECHS/#link-accesskey">
http://www.w3.org/TR/WCAG10-HTML-TECHS/#link-accesskey</a>]<br>[<a href="http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms-keyboard-access">http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms-keyboard-access</a>]</blockquote><div><br>
I think for audio users it may make sense to provide a different set of buttons that are highlighted (in an auditory sense). I&#39;d like the experience to be something like this:<br><br>This is a security mechanism in which you will hear eight numbers. To hear the numbers click here. If you weren&#39;t able to hear the numbers click here to get a new challenge. Now enter the numbers here.
<br><br>What is the best way to achieve this experience for screen readers?<br>&nbsp;</div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">=======
<br>ISSUE 3<br>=======<br><br>the audio alternative doesn&#39;t play if you don&#39;t have QuickTime<br>installed, and most people who will benefit from an audio alternative<br>will NOT have QuickTime installed, as it is infamous for not playing
<br>well with assisstive technologies;</blockquote><div><br>We had trouble making the audio work for people (which is why we have the can&#39;t hear this sound link). What&#39;s the best way to embed sound that works with assisstive technologies.
<br>&nbsp;</div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">=======<br>ISSUE 4<br>=======<br><br>if one is patient (and lucky) enough to find and activate the
<br>quote Can&#39;t hear this sound? unquote link, the audio clip doesn&#39;t<br>play using the user agent&#39;s default backplane audio rendering engine<br>(the thing that plays embedded sounds), but, instead, opens whatever
<br>media player one has associated with the filetype being served<br>client-side; this means that one must manually switch between<br>applications in order to type as text the contents of the audio<br>alternative -- a feat complicated by the choice of backwards looping
<br>voices and other background sounds -- into the pertinent field; of<br>course, every INPUT defined for the FORM should use the LABEL element;</blockquote><div><br>Agreed, I&#39;d like to see the audio embeded. If, for some reason, this fails and we need to have the &quot;can&#39;t hear this sound&quot; link, what&#39;s the best way to provide the CAPTCHA. One thing that may be hapening is that the headers of the mp3 file have a content disposition asking the user agent to download the file. On linux, without this header, I had problems hearing the audio if my browser wasn&#39;t set up properly. I figure that the content-disposition would allow raw access to the file, hopefully the least common denominator for everybody.
<br></div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">[<a href="http://www.w3.org/TR/html401/interact/forms.html#h-17.9">http://www.w3.org/TR/html401/interact/forms.html#h-17.9
</a>]<br><br>i very strongly recommend that the FORM (to whose document source<br>i cannot get, so i can&#39;t make corrections and inline comments) be<br>placed in a FIELDSET with a LEGEND - consult:</blockquote><div><br>
<br>I&#39;ve attached the html of a captcha area to this email. The html isn&#39;t fully complete, because we dynamically insert english strings (we plan to internationalize reCAPTCHA). I&#39;ve also attached the full, generated html. It may be a bit harder to navigate because it has CSS as well as many extra form elements.
<br></div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">[<a href="http://www.w3.org/TR/html401/interact/forms.html#h-17.10">http://www.w3.org/TR/html401/interact/forms.html#h-17.10
</a>]<br>[<a href="http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms-grouping">http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms-grouping</a>]<br><br>nor can i overstress the importance of the LABEL element in<br>contextualizing FORM controls:
<br><br>[<a href="http://www.w3.org/TR/html401/interact/forms.html#h-17.9">http://www.w3.org/TR/html401/interact/forms.html#h-17.9</a>]<br>[<a href="http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms-labels">http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms-labels
</a>]<br><br>TABINDEX (determines order through which controls are TAB navigated,<br>which is VERY helpful when visually one wants the submit control<br>immediately after the text-entry field, but for which there are<br>modifiers, assistance mechanisms, or alternatives), which should
<br>be TABINDEX-ed in a logical sequence ENDING with the Submit button:</blockquote><div><br>reCAPTCHA does not control the way the developer makes the page. We only control the area around recaptcha (not even the submit button in general). A representative example is below in my next comment.
<br><br>We do provide webmasters a way to set the specific tabindex of the reCAPTCHA control. One issue I haven&#39;t thought about is the fact we might need multiple tabindex numbers (one for a button, one for a form field). My understanding is that with equal tabindex numbers, the browser will fall back on document order. I think we may ask the developer for one tabindex to allocate to reCAPTCHA and then rely on carefully ordering controls.
<br>&nbsp;</div><br><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">[<a href="http://www.w3.org/TR/html401/interact/forms.html#h-17.11.1">http://www.w3.org/TR/html401/interact/forms.html#h-17.11.1
</a>]<br>[<a href="http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms">http://www.w3.org/TR/WCAG10-HTML-TECHS/#forms</a>]<br><br>i wish i could have been of more specific assistance to you, but<br>i could not obtain the actual document source for the reCAPTCHA
<br>form; from what i could obtain of the document source, i would<br>be wary of including this information in an IFRAME, unless that<br>is part of the security protocol you are using.</blockquote><div><br>We used the iframe as an easy way to embed the reCAPTCHA control on this specific page. Most pages won&#39;t have the iframe. An example URL you can try is:
<br><br><a href="http://abock.org/2007/05/23/surfing-the-tubes/">http://abock.org/2007/05/23/surfing-the-tubes/</a><br><br>One case in which we do use iframes is if the useragent does not have JavaScript. This path is much more difficult to implement, and I&#39;m sure has additional accessibility problems. Once we make the JS version accessible, I&#39;d appreciate your feedback on the non-js path.
<br>&nbsp;</div><blockquote class="gmail_quote" DEFANGED_STYLE="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">here are the main accessibility resources cited above, and which<br>should be implemented in as important a gate-keeper as a CAPTCHA
<br>at Level Triple A compliance to the Web Content Accessibility<br>Guidelines:<br>[<a href="http://www.w3.org/TR/WCAG10/#Conformance">http://www.w3.org/TR/WCAG10/#Conformance</a>]</blockquote><div><br>&nbsp;I look forward to meeting these challenges. I believe that reCAPTCHA can be a great asset to those who use assisstive technologies, we are turning image-only books into plain text that can be rendered universally.
<br><br>My goal is to:<br><ul><li>Over the weekend</li><ul><li>Fix stupid mistakes (such as the alt text)</li><li>Fully read up on the accessibility documents you sent me</li></ul><li>Over the next week</li><ul><li>Try to implement a tab ordering that makes sense for non-visual browsers
<br></li></ul><li>Within two weeks</li><ul><li>Sit down with a user using assisstive technology and observe them use reCAPTCHA</li></ul></ul>- Ben<br></div></div>


