RE: Looking at SC 3.2.3 Consistent Navigation with "UI Context"

From: Peter Korn [mailto:peter.korn@oracle.com]
Sent: Friday, July 13, 2012 1:18 PM
To: Gregg Vanderheiden
Cc: public-wcag2ict-tf@w3.org
Subject: Re: Looking at SC 3.2.3 Consistent Navigation with "UI Context"

Gregg,






...


<PK> Thus if I have two windows in my UIC, and both of them contain navigation buttons (e.g. "Next" & "Previous"), and they were in different orders, they would not be in violation of this SC (with UIC).

GV:  Not at that moment.  (This is what I call an extreme example that is unlikely and is constructed to test something -- but OK -- for the moment it would pass)    But when you open the window on another document tomorrow it would be a new UI Context because the information would  be different.  And at that point you would be in conflict with either instance one or instance two.

PK2: "Tomorrow"?  Using this thinking in the web world, if I have a single page web site, and if on one day the content is X and tomorrow the content is Y but in both days there is a block of content at the top - that is "repeated content" and so the SC applies.  That makes no sense in the web world.  Why should it make sense in the software world across multiple times I run a software application (e.g. once today and once tomorrow)?

GV2: Sure it does.  Think about it.   The purpose of the provision is to keep people from having to step through the same controls over and over. Whether that is stepping over them on pages that are next to each other -- or a page where the content keeps changing so they go back to the same url and have to step through the same controls is essentially the same.   So it makes perfect sense though for web pages you would usually have them on different pages -- so the SC is targeted that way.

PK3: OK.  I have a weather service page.  Only page on the site.  It has a block at the top of the page that is always there (ads ad such).  This page updates every 4 hours.  By your logic 3.2.3 applies to it, because it is a different page 4 hours from now.  Same logic for 2.4.1.  So both 3.2.3 and 2.4.1 apply.

Presumably then a WCAG assessment couldn't be complete unless it is was carried out over multiple days to look for changes to all pages (particularly those that didn't otherwise share any navigation links with any other pages, and those that didn't otherwise share any blocks to bypass with any other pages) - in order to determine whether 3.2.3 and 2.4.1 should apply to them.

Yes, this is a highly contrived example.  But I see it as fundamentally the same thing as a single non-web application that is a document editor, for which you claim 3.2.3 and 2.4.1 apply because when the user chooses to edit a different document this single window becomes one of a set of windows and therefore 3.2.3/2.4.1 kick in.

AL: The SC is not meant to apply perpetually.  Think of a news site with navigation to the usual pages-Local, US,  World, Business, Sports, Entertainment, etc.  We cannot ask site designers to never change that order until the end of time.  At some point, they may want to shift Entertainment in-front-of Sports, for example.  The SC is only meant to apply to repeated navigational mechanisms within the same timeframe-ie you would still see Local, US, World, Business, Sports, and Entertainment in the same order on top when you go to the Sports page right now, assuming those same navigation stays.


<PK> However, if instead we used language from the consensus text for 2.4.2 Page Titled<https://sites.google.com/site/wcag2ict/home/2-operable/24-provide-ways-to-help-users-navigate-find-content-and-determine-where-they-are/242-page-titled> and tied this to "top-most explicit groupings of user interface components (things like "windows", "dialog boxes", "frames", and "screens")", then our pair of windows with the inconsistent relative order of "Next" and "Previous" WOULD be a violation of the SC.

GV:  already covered as above without using this long and indeterminate language.   I understand it but I think it would lose many people.  And one can probably come up with many ambiguous examples here.   But the real point is - why use a long text string with embedded example list (not a good idea in standards) when you have a simpler concept and term that can be used?

PK2: Point taken - the Page Titled "top level frame" language at this point occurs in only one SC, and is longish at 76 words (I'm looking at the one sentence in consensus 2.4.2 starting with "However, since there is always..."; if you count the entire software paragraph of 2.4.2 you get 128 words).  The UI Context definition with notes (using the shorter "or perhaps more simply" text) is 397 words.

GV2: That is like saying that WCAG is 20,000 words long because its support documents are long. user interface context is only 3 words.   The definition supports the term and the notes do as well.       Once you learn what it means -- it is just 3 words each time it is used.

PK3: No.  My point is that if we find "top level frame" (TLF) is useful in a bunch of places, we would consider pulling it out into a definition and then simply using that defined term/phrase in those places.  So saying that "the text is too long to use in multiple places" is only different here because unlike UIC we didn't start out by making it a defined term.  AND I note that TLF's definition is 1/4th to 1/7th the length of UIC.  Being so much shorter suggests it is a simpler concept to understand, though it isn't dispositive on that score.




At this point we are considering using UI Context in 4 SCs (5 if you count the use in the note in 3.1.2).  If it turns out "top level frame" works in several SCs (not just 2.4.2 and 3.2.3), then we would more likely pull that out as a term, define it once, and use in in the SCs that it applies in (e.g. "Definition: top level frame is <blah blah>", and then we say that for 3.2.3 the analog to web page is top level frame, etc.).

GV2: that would be equivalent but I think 'top level frame' is very technical and hard to understand  (much harder than user interface context).   I also think it is much harder to apply in different contexts.   But that is just me.

TLF is decidedly technical.  So is URI and many other terms we use in W3C standards.  The real question is whether it is significantly easier/harder for the consumers of this document to understand and to apply consistently.  Those consumers being: (a) developers, (b) procurement officers, and (c) folks assessing accessibility of software.

It might be interesting to use UIC and TLF once each in an SC that we sent out for public comment, and see whether and how many comments we get on those concepts.






First question to Gregg: do you agree with my reading of the definition of UIC, and my application of it to this SC & this situation?

GV:  No.   You did find a way to temporarily conform with a not nice example.  But I don't think you fully understood UI Context.  We have added a note to make it clearer.   But your example fails with both UI context and your longer text.

PK2: One of my core concerns with UI Context is that a single UI Context encompasses multiple top-level frames.
GV2: depends on what you call a top level frame.   If you have each window be a TLF, the each palette is a TLF.   And tearing a palette off gives you the same interface but a very different TLF profile.    And if you have the main window and its palettes be one TLF -- where do you label it?

PK3: My initial proposal for 2.4.2 was to state that if EVERY intentional grouping of UI components had a descriptive name, then certainly all the ones that were "web page" analogs would have them.  In discussions with you this got trimmed to TLF UI groupings which we then consensed on.  Under my initial proposal, the descriptive name could stay the same, and would apply when the palette was attached or in its own window.  Under consensus 2.4.2 the name need only be descriptive when it is in a TLF.

With respect to 3.2.3 and consistent navigation, it would only matter if the palette contained the same controls (e.g. "move to next photograph", "move to previous photograph") in the same order as some other palette/window/whatever, and if it could be torn off. An edge case that is covered by TLF-ing 3.2.3.




This concern arises for me in several SCs that we are considering using UI Context for.  I'm not trying to construct abstruse examples for the sole purpose of attacking something I don't like.  I fundamentally think that "multiple top level windows" is a bad analog to "web page" for multiple SCs.  In a couple of places I think "web page" maps to the entire application, in others to a single top-level window (or screen).  What I see UI Context doing is trying to straddle these two different things with one concept, and in so straddling, we get any number of edge cases which fall through the cracks.

GV2: not sure which you are referring to but you do know that I am not suggesting we use UIC where we can use a simpler term.

PK3: I believe TLF is simpler than UIC.  You have objected to using TLF here on the grounds that we would repeat the text and that repetition is less simple.  If we make TLF a "term", then... it terms of size & number of concepts to think about per SC that uses it, they are the same; and the questions then become: is the TLF concept easier/harder to understand than UIC and is TLF eaiser/harder for consumers of this document to fit into the various SCs.





Second question: which outcome do you think we want?  Should the "Next" | "Prev" in showing non-modal window A while "Prev" | "Next" showing in non-modal window B be allowed or not?

GV:  clearly not -- and it isn't with either.

This one is trickier than usual  (the whole UI Context - or any of our terms/concepts --  and software) because windows are used both for palettes - and navigation is the same for both.   But with repeated use - everything falls out and works.

PK2: But I find your repeated use construction very uncomfortable.  As I noted above, we don't use it in WCAG for web pages.  Why should that somehow make a block repeated for software when the exact same behavior doesn't make it so for web pages?  AND when we can address the criterion by using "top level frame" instead of UI Context?

GV2: not sure I see how TLC would work in key uses.   How would it work with a main window,  floating palettes and perhaps a non-modal dialog box?

PK3: So let's construct an example.  A photo viewing/editing application that also retrieves images directly from my camera or from an inserted memory card (I actually use an application just like this regularly with my Canon camera).  When I'm in the window that gives me a direct view of what's on the memory card in my camera over a USB connection, there is a "next photo" button and a "previous photo" button.  I have a slightly different window when this same application is looking at the memory card when it is inserted directly into my computer, but it also has a "next photo" and a "previous photo" pair of buttons.  Likewise when I'm looking at the photos in a directory on my hard drive: "next photo" and "previous photo" buttons.  Perhaps in the hard-drive-viewing case the "next photo" and "previous photo" buttons are in a palette that can optionally be torn off into its own top level frame.

AL: Before going into UI context and such, I have a more basic question.  What is navigational mechanisms in the context of documents and software UI?  The term is fairly basic in web content-the like of Local, US, World, Business, Sports, and Entertainment, etc in news page.

But what does that mean in a document.  I know it is theoretically possible to create a bunch of different documents and all with the same links to jump to each other.  But, A-people don't do that.  B-are we really expecting somebody to who put these links to his documents to change the relative order of all the other documents if he changes the order in one of those documents?  That sounds absurd.  Fact is, A-repeated navigational mechanism rarely occurs in the context of documents; B-A "set of documents" does not make much sense either.  How can independent testers look at two different documents and conclude that they belong the same "set"?  People just don't organize documents like a websites.

I don't know what make a mechanism "navigational" vs. "non-navigational".  Of course, it does not help that there is no definition in WCAG 2.0 because the concept is easier to understand within that context.  The first impression for me is that navigational mechanism cannot being executing anything.  What we see in Office's ribbon, for example, are there to do something like change color of the font, add a bullet list, or indent a paragraph, etc.  I don't see how anybody can call indenting a paragraph a navigational action.  Maybe the tab on top of the ribbon can be considered navigational in nature or much of the UI in Windows Explorer.  Not so sure about others.

Since we have 3 (or 4) top level frames in which the same navigation commands are repeated, they must appear in the same relative order (e.g. "previous photo" first to the left and "next photo" immediately after that to the right).  If they don't, this application fails 3.2.3.

Now: if instead of TLF we used UIC, and all windows are open at the same time (which they can be!) we have a single UIC so we have to go to some lengths to create a "repetition situation" in order to trigger 3.2.3 -> e.g. observe that this set of windows tomorrow might be looking at a different set of photos on a different memory card / hard drive folder than it is looking at today, and so therefore we really have multiple UICs after all and so therefore 3.2.3 applies.

Do you see why this feels contrived to me (the introduction of temporality in order to trigger provisions) as compared to using top level frame?  [or in some cases better still, petitioning WCAG and the W3C to allow us to derive our software guidance more directly from INTENT]


Regards,

Peter
--
[Oracle]<http://www.oracle.com>
Peter Korn | Accessibility Principal
Phone: +1 650 506 9522<tel:+1%20650%20506%209522>
Oracle Corporate Architecture Group
500 Oracle Parkway | Redwood City, CA 94065
________________________________
Note: @sun.com e-mail addresses will shortly no longer function; be sure to use: peter.korn@oracle.com<mailto:peter.korn@oracle.com> to reach me
________________________________
[Green            Oracle]<http://www.oracle.com/commitment>Oracle is committed to developing practices and products that help protect the environment

Received on Saturday, 14 July 2012 02:06:51 UTC