RE: Question on techniques for Identify Common Purpose

Josh, here are my personal thoughts


  1.  For the moment, are we asking devs to reference what is currently on either spec (in terms of autocomplete values) or  experimental from John et al at [5] and W3C/WHAT WG? [6] [7]
WCAG 2.1 seems to say the purposes covered by HTML 5.2 autocomplete attributes.  So if you are using a technology that doesn't have one of those I assumed you'd have to use a schema.org method or something else that covers it and that is accessibility supported.

2) If so how are they to in practice add these values to their widgets?
[jda] Any technique that is accessibility supported and programmatically available.  This is where we need the most help for methods that are outside of HTML autocomplete attribute.

3) Will the autocomplete attribute need to be added to <div> elements? Which at the moment really looks kind of weird and feels wrong IMO.

If the div is an input that uses contentEditable or some other type of input control like a birthday chooser, etc. that falls as input and has a mapped purpose in autocomplete values of 5.2 then it would need to define the purpose - but the autocomplete attribute would not be appropriate.  I'd imagine you would need to define the purpose programmatically via techniques related to schema.org - otherwise if it is not be input then it would not fall under this SC at level aA.

Jonathan

Jonathan Avila
Chief Accessibility Officer
Level Access
jon.avila@levelaccess.com
703.637.8957 office

Visit us online:
Website<http://www.levelaccess.com/> | Twitter<https://twitter.com/LevelAccessA11y> | Facebook<https://www.facebook.com/LevelAccessA11y/> | LinkedIn<https://www.linkedin.com/company/level-access> | Blog<http://www.levelaccess.com/blog/>

See you at CSUN in March!<http://info.levelaccess.com/CSUN-2018-Sessions.html>

From: Joshue O Connor - InterAccess [mailto:josh@interaccess.ie]
Sent: Tuesday, February 13, 2018 7:45 AM
To: WCAG <w3c-wai-gl@w3.org>
Cc: John Foliot <john.foliot@deque.com>; lisa.seeman <lisa.seeman@zoho.com>
Subject: Question on techniques for Identify Common Purpose

Hi all,

Apologies for long question..

Btw, I think I answered (part of) my own question while writing this out, but it may help others. FYI the chairs are helping out with requests for info on this SC, techniques etc. We know that the mechanics of how to satisfy this success criterion are still being worked out and I have a question about the general advice we should be giving.

Firstly, there are examples referenced such as here, [2] and with demo/code. [3] Are they still useful (as cutting edge ARIA approaches) to satisfying Identify common purpose?

Secondly, initially I did also mention in my feedback, schema.org (and was thinking about the work that John F has been doing) but after doing so I then went and had a look at schema.org and did a search for 'autocomplete notation', 'autocomplete' etc and found nothing [1] then I was really confused!

I thought there was an autocomplete schema or something there that we could reference and tell people that they can add them as name/value pairs or similar. John et al any light you can shine on how this is to be used or referenced would be great! Especially some examples of how people would practically add these attributes (but I guess these may be on the way - your efforts are appreciated).

So then I looked at the W3C HTML5 and WHATWG HTML5 specs. They both have a list of attributes as defined here. [6] [7]

So I've a couple of questions..

1) For the moment, are we asking devs to reference what is currently on either spec (in terms of autocomplete values) or  experimental from John et al at [5] and W3C/WHAT WG? [6] [7]

2) If so how are they to in practice add these values to their widgets?

3) Will the autocomplete attribute need to be added to <div> elements? Which at the moment really looks kind of weird and feels wrong IMO.

<code>
<div id="SomeUsefulWidget" autocomplete="photo">
</div>
</code>

Or

<code>
<div id="SomeUsefulWidget">
<input type="button" autocomplete="photo">
</div>
</code>

Much of autocomplete attributes are related to <input> elements but some have a semantic potential beyond that and while the example above is contrived - a user agent can gain meaning/purpose from a containing element for
something rather than merely the element itself.

Or is this better:

<code>
<div id="SomeUsefulWidget" role="region" aria-label="The purpose of photo">
<input type="button" autocomplete="photo">
// Meaning the purpose of the widget is outlined and the user agent could inform the user this is an 'upload photo button' or similar.
</code>

Also what is confusing me, in the HTML5 spec HTML5 autocomplete attribute seems to be a simple enum that will take several values:

<code>
legend>Ship the blue gift to...</legend>
  <div> <label> Address:     <input name=ba autocomplete="section-blue shipping street-address"> </label> </div>
</code>

To satisfy Identify Common Purpose - will we use currently enumerated attributes in a similar way - or are we defining new ones - a la some soon to be schema.org mapping? Should we suggest enumerated values or single values for our purposes?

Also - are we asking devs to mark up contents 'purpose' using the *name* attribute or by adding the necessary attribute directly to autocomplete only or some other way (a la ARIA). Is this correct, sufficient to satisfy Identify Common Purpose - looking at the autocomplete values used here? [6]

<code>
<label for="frmNameCC">Name on card</label>
<input name="ccname" id="frmNameCC" required placeholder="Full Name" *autocomplete="cc-name"*>

<label for="frmCCNum">Card Number</label>
<input name="cardnumber" id="frmCCNum" required *autocomplete="cc-number"*>

[...]

</code>

NOTE: I found these above examples in this post which I though looked interesting from Chrome dev and was wondering if this kind of info may be useful to provide a technique/guidance? It does just mirror the <input> name and <label> so tbh I'm not sure what extra value it brings (beyond triggering the autocomplete in the browser).[4]

Finally, I'm presuming these name attribute values already do something in the browser, are we happy to piggy back and use these existing values to provide what is needed to satisfy Identify Common Purpose?

[1] http://schema.org/docs/search_results.html#q=autocomplete
[2] https://github.com/ayelet-seeman/coga.personalisation/tree/ExampleWebPage/
[3] https://github.com/ayelet-seeman/coga.personalisation/blob/ExampleWebPage/demo1.0.html
[4] https://developers.google.com/web/updates/2015/06/checkout-faster-with-autofill
[5] https://www.w3.org/WAI/WCAG21/Understanding/identify-common-purpose
[6] https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill
[7] https://www.w3.org/TR/html53/sec-forms.html#autofilling-form-controls-the-autocomplete-attribute

Thanks
--
Joshue O Connor
Director | InterAccess.ie

Received on Tuesday, 13 February 2018 14:23:28 UTC