W3C home > Mailing lists > Public > public-wcag2ict-tf@w3.org > October 2012

Re: Proposal for the last three items

From: Peter Korn <peter.korn@oracle.com>
Date: Wed, 24 Oct 2012 14:23:18 -0700
Message-ID: <50885C46.1090009@oracle.com>
To: Gregg Vanderheiden <gv@trace.wisc.edu>
CC: "public-wcag2ict-tf@w3.org Force" <public-wcag2ict-tf@w3.org>

On 10/24/2012 1:23 PM, Gregg Vanderheiden wrote:
> GV: Hi Peter
> Thanks for the feedback.   Just trying to find a path through that 
> addresses all the concerns.  Any help is appreciated to make it better.
> See comments and questions below marked *GV: *
> **
> On Oct 24, 2012, at 10:05 AM, Peter Korn <peter.korn@oracle.com 
> <mailto:peter.korn@oracle.com>> wrote:
>> Gregg,
>> PK1: I'm sorry, but this proposal doesn't (yet) work for me.
>> The proposal does not:
>>   * clearly define what constitutes "linking" between software to
>>     create a set
> *GV:  Can you explain more about what you mean?  The proposed text 
> seems to say very specifically what linking means. *
> *to quote the definition:*
>>>         *"...that are linked bidirectionally to each other via
>>>         hyperlinks or a menu of links that move you between the
>>>         items in the group"*
> *Can you explain your question better?**.*

PK:  What is a hyperlink in software?  Generally hyperlinks don't launch 
programs.  If my copy of Acme software "links" to another program, what 
exactly does it to? Have a URI that downloads a binary to my hard disk?  
And then if I manually run that downloaded binary, it has to also have a 
URI that downloads some binary of the original, Acme software?

The term "hyperlink" doesn't make sense to me in the software context.

> *
> *
>>   * define for 3.2.3 what a navigation mechanism is for software
> *GV:  I thought at the last meeting someone said that we didn’t need 
> to define that, that WCAG didn’t for web pages and we didn’t need it 
>  -- and no one objected.  But we can use the one developed that 
> relates to that.  It would be.*

PK: I may have said this - but ONLY with respect to non-embedded 
content.  For software, we I believe we do need to define it.  And if we 
cannot define it, then I suggest we have a good argument for this not 
applying to software (assuming WCAG WG gives us the green light to make 
such a statement, which is one of the topics WE NEED TO DISCUSS WITH THEM).

> *
> *
> *   Navigational mechanisms (as used in 3.2.3)*
>     *active mechanisms that appear on more than one item in the set
>     and whose primary purpose is to move the users focus of action
>     from the navigational mechanism to different predefined locations
>     in the set. *
> *
> *
> *  Examples: *
>   * *A table of contents that appears at the front of each document in
>     a set where each item in the TOC is a hyperlink to another
>     location in the set of documents. *
>   * *A menu that appears in every program in a set that will move the
>     user to another location in the set.
>     *

PK:  I believe I offered criticisms of this proposed text before.  What 
is "active"?  What is the "focus of action"?

I also believe Andi offered some criticisms of this.  Among other 
things, I believe she pointed out that concepts like "back" don't exist 
for some of the things we might thing of as being software navigation 

Finally, for your second bulleted example above, what exactly is the 
function of "moving the user to another location in the set [of 
programs]"?  Activating an already opened window of that other app in a 
GUI desktop environment? (e.g. "ALT-TAB")  Launching the other program 
in the set if it isn't already open/running?

And we still have the earlier issue of needing examples of programs that 
are part of the same set.

>>   * incorporate any of the necessary thinking for 2.4.5 (which we
>>     have been developing) for what "locating a [software]" means
> *GV:  I don't understand what you mean here.    2.4.5 (with software 
> program inserted)  would read***
>      "*More than one way is available to locate a {software program}
>     within a set of {software programs} except where the {Software
>     program} is the result of, or a step in, a process."*
> *The exemption here is where software product can only be used after 
> one product and/or before another in a process
> *

PK: What does it mean to "locate a software program"?  Find the binary 
in the file system?  Bring a running program to the front most window / 
screen?  I think we mean the first of these three - as that goes along 
with Page Titled - and I think we need to draw the connection to Page 
Titled in this SC.  That's what I mean for the "necessary thinking which 
we have been developing".  Making more of this stuff concrete & explicit 
in the text.  My criticism right here was that this kind of information 
was missing, and needed to be present.

> **
>>   * incorporate any of the necessary thinking for 2.4.1 (which we
>>     have been developing) for what "bypassing a block" of content
>>     means in software -> e.g. focus vs...
> *GV: Again if you could be more specific.  This is intended to get 
> around the issues that our previous approaches ran into. **   What are 
> you referring to that you think applies here?*

PK: I believe the kind of intra-page movement in the web environment we 
are talking about are anchor URLs.  That is how you "bypass a block".  
Also allowed (as per some of the techniques) is the appropriate use of 
headers, as per HTML Technique #H69 
<http://www.w3.org/TR/2012/NOTE-WCAG20-TECHS-20120103/H69>.  But what 
should this be in software?  Is focus movement the only thing allowed?  
That isn't clear, and needs to be.

>> Furthermore, in the meeting I believe several of us asked for a 
>> positive example of a set in software.  As far as I'm concerned, this 
>> can be a constructed example - it doesn't have to be one in real 
>> life.  But I am not comfortable saying that these are "...never 
>> ordinarily be included in a set of software requirements..." without 
>> making clear the situation in which it/they would be included.  If 
>> the are never included - period - then we should state that.  If 
>> there is some rare situation in which one/all should be included, we 
>> should clearly describe that situation.
> *GV:  Agree.   Here are some examples based on what was said in the 
> meetings.*
> *
> *
> *Examples:*
>     *- A stand-alone training software is designed to be maximally
>     familiar but highly responsive even where there is poor
>     connectivity (rural etc).  So it runs offline but behaves much
>     like a website or kiosk in that the software consists of a set of
>     training software modules that the person navigates among
>     depending on their needs.*
>     *- An office suite consists of tightly integrated Writing,
>     Spreadsheet, presentation and web publishing programs.  From any
>     of the programs there is a simple menu that lets you jump to any
>     other program in the suite so that you can easily switch between
>     them as you need. *
>     *- A compiler suite has a number of tools that a user might engage
>     while creating their program.  No matter which tool you are in,
>     there is a string of icons at the upper right that allows you to
>     easily jump to any of the other tools.
>     *

PK: Thanks for these examples.  But... I don't see why these examples 
are necessarily a "set of programs" as distinct from "a single program 
that may comprise multiple executables".  The reason for this is that 
what happens when you select a menu item is opaque, whereas what happens 
when you select a hyperlink is transparent.  The user agent knows 
whether it is an inter- or intra-page link, and therefore knows when it 
is going to another page or not.  The user may not notice the difference 
(particularly with a large page and an intra-page link that goes far 
into the page), but simple inspection of the URL will suffice to tell this.

But when I select a menu item that changes the UI in some way, how can I 
tell whether the changed UI is part of the original executable I'm 
using, or a new one?  OpenOffice is shipped as a collection of distinct 
binaries (sbase.exe, scalc.exe, sdraw.exe, simpress.exe, smath.exe, 
soffice.exe, sweb.exe, swriter.exe - among others).  When I launch 
"OpenOffice.org" (on Windows, from 
Start->Programs->OpenOffice->OpenOffice.org), and then from the 
prompt/splash screen I chose "Spreadsheet"), how do I know that I'm now 
running code contained in 'scalc.exe'?  The Windows Task Manager is of 
little help here - looking at the Applications Tab, it would suggest 
that each top level window is it's own "application" (e.g. my three open 
e-mail windows where I'm composing replies are each their own 
"application" entry; likewise my 2 OpenOffice Writer documents, my 1 
OpenOffice Impress document, and my 1 OpenOffice calc document).  
Looking at the Processes tab, I only see 'soffice.exe' with a 
description of "OpenOffice.org 3.4.1".  I see nothing to indicate that 
I'm running several different programs in a set.

And to take this a step further, OpenOffice supports live embedding Calc 
spreadsheets and Drawing images into Writer documents, where these 
embedded frames of content inside the Writer document can be live-edited 
(with the toolbar switching out from the Writer toolbar to the Calc 
toolbar, and binary code from 'scalc.exe' executing behind the scenes).  
Again - how can one tell this is "a set"?

I find the same problem with the "compiler suite" example.  When is 
activation of the various different "icons at the upper right" doing the 
equivalent of 'intra-page linking' where code / UI from the currently 
loaded binary file gets executed, vs. doing the equivalent of 
'inter-page linking' where code / UI from a different and perhaps 
not-yet-loaded binary file gets executed?  How can one ever tell?

In a web-based stand-alone training software app that is broken down 
into clear modules that gets clearly loaded over the web - with some 
delay and perhaps some clear end-user indication that this is happening 
- we may have something closer to a recognizable "set".  But 
bi-directionality isn't clear to me in this constructed example.  There 
may not be a "home" option in these "additional modules"; just a "close" 
(or the HTML / browser equivalent of "back").  Without that, would they 
not be a set?

And for your constructed web-based, stand-alone training software 
example - what is the clear & reproducible test for determining "set 
ness"?  How does someone who doesn't have the source code to the program 
figure this out?  Because that is what regulators will be asked to do...

> *
> *
>> Finally, I am not prepared to say "ALso we did not find that WCAG 
>> applied this within a web page or single unit web app (at a single 
>> URI) so we didn’t feel we could apply it within software".  I am not 
>> convinced it is fundamentally wrong to look at some of these where 
>> the "set" is "software", and that is a discussion I maintain we 
>> should have with WCAG.
> *GV:  I talked with the co-chair of WCAG about this and ** she might 
> be agreeing with some of what you said - depending on what you mean.*
>     *-  she said that (for 2.4.1 and 3.2.3) the SC talks about items
>     that have to be on multiple pages (not only on one page)  (that
>     seems to be different than what you say if software is equated
>     with web page as proposed) *
>     * -  but she also said (at least for 3.2.3) if there were
>     'internal links' to the page that appeared on multiple pages
>      (e.g.  jump to top or bottom or toc) then there is nothing is the
>     SC that says they would not be included   (is this part of what
>     you meant?)*

PK: This is useful - and I think more conversation along these lines 
with WCAG WG (perhaps using the document I've started at "remaint3-scs") 
I think would be very helpful.  This conversation you are reporting on 
(with Loretta I presume) suggests that 3.2.3 doesn't only apply to 
navigation between sets.  The text Andi and I proposed for applying 
3.2.3 to software would seem to track that concept (substituting simply 
"software" for "set of web pages").  Remaining in question is what 
"navigation mechanisms" are for software however.

To me, this speaks to the importance of having the clarifying conversation.

>     **
>> Last Friday I put together a page with a first draft trying to gather 
>> together the issues we saw with these three remaining SCs and three 
>> approaches we were mulling over - but hasn't yet reached consensus on 
>> any - as the basis for such a discussion (see 
>> https://sites.google.com/site/wcag2ict/cross-cutting-issues-and-notes/remaining-3-scs).  
>> I had expected to work on this with you, but instead you are focusing 
>> on a specific proposal (essentially one of the three approaches), and 
>> I'm not seeing any specific critiques otherwise of that text.
> *GV: I did work on your version (we spoke about this before)  but 
> you'll remember that  in doing so I found that it wasn’t tracking -- 
> and that some of the assumptions it was based on didn’t work out - or 
> didn’t seem valid in genereral -- only for some content.  It was only 
> after being unable to do that -- and seeing a path out -- that I 
> proposed (on the same page) what I was finding. *
> *
> *
> *let me know if you need more.*

PK: I need more.

I provided pretty detailed criticisms of your proposal.  All I have from 
you is "some of the assumptions... didn't work out or didn't seem 
valid".  This doesn't say WHICH assumptions, or WHERE you found they 
were and were not valid, etc. etc.  You haven't given me enough to go on 
to try to address your concerns.  You didn't see a path out, OK.  But 
you also didn't provide enough criticism for me to respond and from 
there perhaps to move the work forward.


> *
> *
> *back to my conference. *
> *
> *
> *G*
> *
> *
>> Regards,
>> Peter
>> On 10/24/2012 1:10 AM, Gregg Vanderheiden wrote:
>>> *
>>> *
>>> *
>>> *
>>> Here area the ones left
>>> ============================================================
>>>     * 2.4.1: Bypass Blocks (Level A)*
>>>         A mechanism is available to bypass blocks of content that
>>>         are repeated on multiple Web pages.
>>>             [agreement for non-embedded content]
>>>     *2.4.5: Multiple Ways (Level AA)*
>>>         More than one way is available to locate a Web page within
>>>         a set of Web pages except where the Web Page is the result
>>>         of, or a step in, a process.
>>>     *3.2.3: Consistent Navigation (Level AA)*
>>>         Navigational mechanisms that are repeated on multiple Web
>>>         pages within a set of Web pages occur in the same relative
>>>         order each time they are repeated, unless a change
>>>         is initiated by the user.
>>> *
>>> *
>>> *
>>> *
>>> *
>>> *
>>> In *_all three cases_* we
>>> 1) Say "*applies as written etc. * replacing *web page(s)*  with 
>>> *NWNE Content and Software  "*
>>> *
>>> *
>>> *2)  add the following two notes to each*
>>> *NOTE 1: *Because content this is not on a web is not as easily 
>>> defined as a set by its location, the WCAG2ICT TF found that a 
>>> clearer definition of what constituted a set was needed for Non-web 
>>> content and software.  The following definition of SET was adopted 
>>> because it provided a clear indication (by virtual of the 
>>> bi-directional linkages) that they items were indeed meant to work 
>>> together as a set and not just be a collection.
>>> NOTE 2: For software the WCAG2ICT TF found that this provision can 
>>> be applied to software but such sets of software are rare, and most 
>>> would meet this success criterion automatically by their natural 
>>> design.   So this provision would never ordinarily be included in a 
>>> set of software requirements because of it rarity and the fact that 
>>> it is not much of a problem for software so the provision would not 
>>> be of much value.
>>> ALso we did not find that WCAG applied this within a web page or 
>>> single unit web app (at a single URI) so we didn’t feel we could 
>>> apply it within software.  But we do recognize the utility of 
>>> applying this general concept in different ways to parts of 
>>> software.   WCAG would not require it, but it would be good practice 
>>> consider the general concept when designing software.
>>> *3) *refer to our definition a definition of Set as follows
>>> *SET  (of NWNE Content or Software)*
>>>         *group of items that are linked bidirectionally to each
>>>         other via hyperlinks or a menu of links that move you
>>>         between the items in the group.*
>>> *Comments welcome*
>>> (some tweaking may be needed between SC)
>>> *========================*
>>> *
>>> *
>>> *
>>> *
>>> *Background - for reference*
>>>   * *23* success criteria *"This [success criterion] applies
>>>     directly as written, and as described in INTENT
>>>     from Understanding WCAG 2.0' *
>>>   * *8* success criteria * "*This [* success criterion] applies
>>>     directly as written, and as described in INTENT
>>>     from Understanding WCAG 2.0 *
>>>     replacing "*Web page(s)*", "*Each Web page*", "*Content*" or
>>>     "*Web content*"  with "*Non-embeded Content and Software"
>>>     *
>>>   * *4* success criterion * "*This [*success criterion] applies
>>>     directly as written, and as described in INTENT
>>>     from Understanding WCAG 2.0 *
>>>     had individual substitutions
>>>       o (1.3.2 Meaningful Sequence)
>>>           + replacing "*Content*", with "*Non-**Web content*"
>>>       o (1.4.2 Audio Control)
>>>           + replacing “*a Web page”* with “ *in non-embedded
>>>             content or software*” and *“any content*” with “*any
>>>             part of non-embedded content or software*
>>>       o (3.2.4 Consistent Identification)
>>>           + replacing “*a set of Web pages*” with "*non-embedded
>>>             content or software”*
>>>       o (4.1.1 Parsing)
>>>           + replacing* “In content implemented using markup
>>>             languages” *with*  “For software and non-embedded
>>>             content that use markup languages, in such a way that
>>>             the markup is separately exposed and available to
>>>             assistive technology (AT) or to a user-selectable user
>>>             agent".*
>>> *
>>> *
>>> *
>>> *
>>> *
>>> *
>>> /Gregg/
>>> --------------------------------------------------------
>>> Gregg Vanderheiden Ph.D.
>>> Director Trace R&D Center
>>> Professor Industrial & Systems Engineering
>>> and Biomedical Engineering University of Wisconsin-Madison
>>> Technical Director - Cloud4all Project - http://Cloud4all.info 
>>> <http://cloud4all.info/>
>>> Co-Director, Raising the Floor - International - 
>>> http://Raisingthefloor.org <http://raisingthefloor.org/>
>>> and the Global Public Inclusive Infrastructure Project - 
>>> http://GPII.net <http://gpii.net/>
>> -- 
>> <oracle_sig_logo.gif> <http://www.oracle.com/>
>> Peter Korn | Accessibility Principal
>> Phone: +1 650 5069522 <tel:+1%20650%205069522>
>> 500 Oracle Parkway | Redwood City, CA 94065
>> <green-for-email-sig_0.gif> <http://www.oracle.com/commitment> Oracle 
>> is committed to developing practices and products that help protect 
>> the environment

Oracle <http://www.oracle.com>
Peter Korn | Accessibility Principal
Phone: +1 650 5069522 <tel:+1%20650%205069522>
500 Oracle Parkway | Redwood City, CA 94064
Green Oracle <http://www.oracle.com/commitment> Oracle is committed to 
developing practices and products that help protect the environment
Received on Wednesday, 24 October 2012 21:23:58 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:17:47 UTC