(Web Content Accessibility Guidelines 2.0)
These are guidelines written by the WAI (Web Accessibility Initiative)
Despite the fact that WCAG 2.0 requires a little more work than WCAG 1.0. I think it might be best if we actually implement the former due to the fact that WCAG 1.0 also makes assumptions about web technologies that have been outdated for a while. There are a number of requirements that fall under WCAG 1.0 that are now obsolete and have been corrected in WCAG 2.0. In addition, WCAG 2.0 takes into account newer technologies like scripts and provides a little more leniency when it comes to the proper way to deal with them.
When we're trying to pass accessibility. There are three levels you can pass: you can either be a A (which means you pass priority one guidelines), you can be AA (you pass priority one and two guidelines), or you can be AAA (you pass all three priority guidelines). The guidelines vary due to what is mandatory, advised, or recommended.
At the moment I have done WCAG 1.0 for 4 parts of our site because there are 4 different templates. (they are in chart format under WCAG 1.0 - Priority 1, WCAG 1.0 - Priority 2, WCAG 1.0 - Priority 3) However, I will only do WCAG 2.0 for the DekiWiki application, because that is the product we would like to market to federal prospective users. While part of the Mindtouch experience is to peruse our updating blog, opengarden, my.opengarden, and the forum, they are not components that are required in the usage of our product.
(Note: Before we even go into making the web application WCAG 2.0 compliant, it must first pass W3C validation: both for XHTML and CSS. After that, we need to consider how to make this application work if we had no Javascript and/or Flash available to us. Once this is all done, we should already pass about 80% of the guidelines and we would only need to tweak a little more to get it to completely pass.)
In addition, this is the version with the plainest DekiWiki that is provided to the user at setup. It does not account for the current version on OpenGarden, because the one on opengarden has it's own set of issues which you can find in the WCAG 1.0 - Priority * pages I have provided. It also does not include the various templates that have been provided over time.
If you would like to see a comparison of WCAG 1.0 and WCAG 2.0, please refer to : http://www.w3.org/WAI/WCAG20/from10/comparison/
| WCAG 2.0 Guidelines | Accessibility Assessment for DekiWiki (non-opengarden) |
| Priority 1 requirements |
|
| 1.1.1 Non-text Content: All non-text content that is presented to the user has a text alternative that serves the equivalent purpose, except for the situations listed below. (Level A) How to Meet 1.1.1 Understanding 1.1.1
1.2.1 Audio-only and Video-only (Prerecorded): For prerecorded audio-only and prerecorded video-only media, the following are true, except when the audio or video is a media alternative for text and is clearly labeled as such: (Level A) How to Meet 1.2.1 Understanding 1.2.1
1.2.9 Live Audio-only: A text alternative that presents equivalent information for live audio-only content is provided. (Level AAA) How to Meet 1.2.9 Understanding 1.2.9 Additional Notes:
| We are missing some text alternative attributes for images.
Input consists of using javascript, this may be problematic for voice browsers to read/control. You should invest in looking for a editor that does not depend on javascript.
If we cannot find a way to replace the editor, we can at least provide a text alternative explaining that there exists the ability to edit the page, but they cannot access this. (From a usability standpoint, this is the worst case scenario, and though we follow this part of the criteria, we still might not pass the priority one guidelines because our product revolves around the fact that you can edit any page).
If we have serious problems working in any of the above into our page, we may want to access the user agent in the request header and provide a completely different page to those who are disabled. The benefit of this is that there is a clean separation of these two types of information presentation. The downside is maintaining a second set of templates.
|
| With regard to keyboard access: 2.1.1 Keyboard: All functionality of the content is operable through a keyboard interface without requiring specific timings for individual keystrokes, except where the underlying function requires input that depends on the path of the user's movement and not just the endpoints. (Level A) How to Meet 2.1.1 Understanding 2.1.1 Note 1: This exception relates to the underlying function, not the input technique. For example, if using handwriting to enter text, the input technique (handwriting) requires path dependent input but the underlying function (text input) does not. Note 2: This does not forbid and should not discourage providing mouse input or other input methods in addition to keyboard operation. 2.4.4 Link Purpose (In Context): The purpose of each link can be determined from the link text alone, or from the link text together with its programmatically determined link context, except where the purpose of the link would be ambiguous to users in general. (Level A) How to Meet 2.4.4 Understanding 2.4.4
|
There is some difficulty accessing submenus when you can't use the mouse. In addition, using the keyboard is seriously problematic when it comes to handling the editor.
(for the newest editor that opengarden is using: When the cursor goes into the text editing area, it becomes stuck in there and it can't access the tool bar to save the changes just made.)
However! WCAG also states this: Accesskeys are no longer required for conformance to WCAG 2.0. It is an advisory item: Providing access keys (advisory technique for Success Criterion 2.4.1 (Level A). |
| 1.2.3 Audio Description or Full Text Alternative: A full text alternative for synchronized media including any interaction or audio description of the prerecorded video content is provided for synchronized media, except when the media is a media alternative for text and is clearly labeled as such. (Level A) How to Meet 1.2.3 Understanding 1.2.3 1.2.5 Audio Description: Audio description is provided for all prerecorded video content in synchronized media. (Level AA) How to Meet 1.2.5 Understanding 1.2.5 1.2.7 Audio Description (Extended): Extended audio description is provided for all prerecorded video content in synchronized media. (Level AAA) How to Meet 1.2.7 Understanding 1.2.7
| (See row 1.) |
| 1.2.2 Captions (Prerecorded): Captions are provided for all prerecorded audio content in synchronized media, except when the media is a media alternative for text and is clearly labeled as such. (Level A) How to Meet 1.2.2 Understanding 1.2.2
| This applies to opengarden, not Deki Wiki: The videos on the 'Articles and Videos' page for open garden may need to have captions. However, the DekiWiki itself doesn't directly handle media (it may call media in from elsewhere, but that is not part of the application's responsibility). |
| 1.4.1 Use of Color: Color is not used as the only visual means of conveying information, indicating an action, prompting a response, or distinguishing a visual element. (Level A) How to Meet 1.4.1 Understanding 1.4.1 Note: This success criterion addresses color perception specifically. Other forms of perception are covered in Guideline 1.3 including programmatic access to color and other visual presentation coding.
Development and Remediation Guidelines—Eliminate Specific Colors and Color Combinations A user who is color blind will find it difficult (if not impossible) to discern between certain color combinations. For this reason, make sure to select colors that differ significantly in hue and intensity. Avoid muted colors with low luminance values (intensity). Combinations that are difficult to differentiate for a user who is color blind include:
| Need to take into account those who have severely blurred vision and are color-blind. I have pictures run through color blind filters in the document:
For those who are near-sighted or have blurred vision, they will try to increase the size of the text on the page. This action breaks parts of the page by covering up the table of contents link and causing the my.opengarden link to also become invisible. |
| 3.1.2 Language of Parts: The human language of each passage or phrase in the content can be programmatically determined except for proper names, technical terms, words of indeterminate language, and words or phrases that have become part of the vernacular of the immediately surrounding text. (Level AA) How to Meet 3.1.2 Understanding 3.1.2
| We should probably find a way to identify a change in language outside of the main language (i.e. for languages like German: <blockquote xml:lang="de"></blockquote> ) either as an extension, or as a built in part of the editor.
|
| 1.3.1 Info and Relationships: Information, structure, and relationships conveyed through presentation can be programmatically determined or are available in text. (Level A) How to Meet 1.3.1 Understanding 1.3.1 Specifically:
| So far, I don't see anything that violates this rule, but they're quite picky about this. We might want Damien to review his templates just to make sure he's not violating this. (An example is using a id/class and calling it “heading1” instead of using the <h1></h1> tag. Another example is using whitespace to space out content in a way that resembles a table instead of allowing the table tag to take care of this presentation.) |
| Conformance Requirement 1: Conformance Level: One of the following levels of conformance is met in full. Understanding Conformance Requirement 1
Note 1: Although conformance can only be achieved at the stated levels, authors are encouraged to satisfy and report progress toward meeting success criteria from all levels beyond the achieved level of conformance. Note 2: It is not recommended that Level AAA conformance be required as a general policy for entire sites because it is not possible to satisfy all Level AAA Success Criteria for some content.
| Our conformance level should be relational to how many federal contracts we want and how much effort/time/manpower we want to put behind making the site accessible. |
| Conformance Requirement 4: Accessibility-Supported Technologies Only: Only accessibility supported technologies are relied upon to satisfy the success criteria. Any information or functionality that is implemented in technologies that are not accessibility supported are also be available via technologies that are accessibility supported. (See Understanding accessibility support.) Understanding Conformance Requirement 4 Conformance Requirement 5: Non-Interference: If technologies that are not accessibility supported are used on a page, or accessibility-supported technologies are used in a non-conforming way, then they do not block the ability of users to access the rest of the page. In addition, the Web page as a whole continues to meet the conformance requirements under all of the following conditions: Understanding Conformance Requirement 5
Note: The following success criteria all apply to full pages including technologies that are not accessibility supported or relied upon to meet the other success criteria because they deal with things that could interfere with overall use of the page: 1.4.2 - Audio Control, 2.1.2 - No Keyboard Trap, 2.3.1 - Three Flashes or Below Threshold, and 2.2.2 - Pause, Stop, Hide.
| Definition of accessibility-supported: http://www.w3.org/TR/2008/CR-WCAG20-20080430/#accessibility-supporteddef
^ This involves actual testing, but without w3c validating pages, things like text browsers tend to break and give an inaccurate reading of a page.
Once the pages are fixed, you can download Opera, which as a voice browser plug-in that you can use. → I have it downloaded on this computer. It only needs someone to map their voice to the plug-in. |
| Additional Notes:
| While this is not a test criteria at the moment, we need to keep this in mind at all times when updating the site. |
| 2.3.1 Three Flashes or Below Threshold: Web pages do not contain anything that flashes more than three times in any one second period, or the flash is below the general flash and red flash thresholds. (Level A) How to Meet 2.3.1 Understanding 2.3.1 Note: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole page, all content on the Web page (whether it is used to meet other success criteria or not) must meet this success criterion. See Conformance Requirement 5: Non-Interference. 2.3.2 Three Flashes: Web pages do not contain anything that flashes more than three times in any one second period. (Level AAA) How to Meet 2.3.2 Understanding 2.3.2
| There is no flashing, as far as I can see. |
| 2.4.1 Bypass Blocks: A mechanism is available to bypass blocks of content that are repeated on multiple Web pages. (Level A) How to Meet 2.4.1 Understanding 2.4.1 4.1.2 Name, Role, Value: For all user user interface components (including but not limited to: form elements, links and components generated by scripts), the name and role can be programmatically determined; states, properties, and values that can be set by the user can be programmatically set; and notification of changes to these items is available to user agents, including assistive technologies. (Level A) How to Meet 4.1.2 Understanding 4.1.2 Note: This success criterion is primarily for Web authors who develop or script their own user interface components. For example, standard HTML controls already meet this success criterion when used according to specification. Additional Notes:
| Our forms need labels and the editor needs to be in HTML if javascript does not work. |
| Priority 2 requirements |
|
|
1.4.3 Contrast (Minimum): The visual presentation of text and images of text has a contrast ratio of at least 5:1, except for the following: (Level AA) How to Meet 1.4.3 Understanding 1.4.3
1.4.6 Contrast (Enhanced): The visual presentation of text and images of text has a contrast ratio of at least 7:1, except for the following: (Level AAA) How to Meet 1.4.6 Understanding 1.4.6
| While most of the page is of appropriate size, we may want to look into increasing the font of the text or bolding the text along the left side-bar menu. In addition, the 'page last modified' information lacks contrast and is in significantly smaller font than the rest of the page. Those with low vision will have significant difficulty reading some of the link names.
The side bar problematic. It is grey, faded, and does not provide much constrast. Moreover, the new editor that opengarden uses (FCKeditor) is difficult to see and even people normal vision have difficulty locating this tool bar. We need to either change editors or find a way to change the user interface visual layout of that tool bar so that it stands out.
(The difference between the minimum and enhanced version of this is that the contrast ratios in the guideline. Level A = 3:1, Level AA = 5:1, Level AAA = 7:1) |
| 1.4.5 Images of Text: If the technologies being used can achieve the visual presentation, text is used to convey information rather than images of text except for the following: (Level AA) How to Meet 1.4.5 Understanding 1.4.5
Note: Logotypes (text that is part of a logo or brand name) are considered essential. 1.4.9 Images of Text (No Exception): Images of text are only used for pure decoration or where a particular presentation of text is essential to the information being conveyed. (Level AAA) How to Meet 1.4.9 Understanding 1.4.9 Note: Logotypes (text that is part of a logo or brand name) are considered essential. | We should provide an alt for everything, especially important images for edit, new, print, files, images, comments. |
| 4.1.1 Parsing: In content implemented using markup languages, elements have complete start and end tags, elements are nested according to their specifications, elements do not contain duplicate attributes, and any IDs are unique, except where the specifications allow these features. (Level A) How to Meet 4.1.1 Understanding 4.1.1 Note: Start and end tags that are missing a critical character in their formation, such as a closing angle bracket or a mismatched attribute value quotation mark are not complete. Additional Notes:
| The site needs to w3c validate. Some commenting issues with the javascript make it so that the validator thinks the tags aren't closed, even though they are. |
| 1.4.4 Resize text: Text (but not images of text) can be resized without assistive technology up to 200 percent without loss of content or functionality. (Level AA) How to Meet 1.4.4 Understanding 1.4.4 Additional Notes:
| We need to handle how the link bar behaves when you expand the text, some of it disappears off the screen or becomes invisible. |
| 2.4.10 Section Headings: Section headings are used to organize the content. (Level AAA) How to Meet 2.4.10 Understanding 2.4.10 Note 1: "Heading" is used in its general sense and includes titles and other ways to add a heading to different types of content. Note 2: This success criterion covers sections within writing, not user interface components. User Interface components are covered under Success Criterion 4.1.2.
| Good. The wiki editor handles this well. |
| 2.2.2 Pause, Stop, Hide: For moving, blinking, scrolling, or auto-updating information, all of the following are true: (Level A) How to Meet 2.2.2 Understanding 2.2.2
Note 1: For requirements related to flickering or flashing content, refer to Guideline 2.3. Note 2: Since any content that does not meet this success criterion can interfere with a user's ability to use the whole page, all content on the Web page (whether it is used to meet other success criteria or not) must meet this success criterion. See Conformance Requirement 5: Non-Interference. Note 3: Content that is updated from a process, real-time or remote stream is not required to preserve or present information that is generated or received between the initiation of the pause and resuming presentation, as this may not be technically possible, and in many situations could be misleading to do so. Note 4: An animation that occurs as part of a preload phase or similar situation can be considered essential if interaction cannot occur during that phase for all users, and if not indicating progress could confuse users or cause them to think that content was frozen or broken.
| Not Applicable, did not find any content that flickers or flashes on the application. |
| 2.2.1 Timing Adjustable: For each time limit that is set by the content, at least one of the following is true: (Level A) How to Meet 2.2.1 Understanding 2.2.1
Note: This success criterion acts to ensure that changes in content or context as a result of a time limit will not occur unexpectedly, which could prevent users from completing tasks. While exceptions to Success Criterion 2.2.1 where timing is essential exist, guideline 2.2 in general limits changes in content to those places where there is no other option. This success criterion should be considered in conjunction with Success Criterion 3.2.1 which puts limits on changes of content or context as a result of user action. 2.2.4 Interruptions: Interruptions can be postponed or suppressed by the user, except interruptions involving an emergency. (Level AAA) How to Meet 2.2.4 Understanding 2.2.4 3.2.5 Change on Request: Changes of context are initiated only by user request or a mechanism is available to turn off such changes. (Level AAA) How to Meet 3.2.5 Understanding 3.2.5 Specifically:
| Timer Not Applicable
|
| 2.4.4 Link Purpose (In Context): The purpose of each link can be determined from the link text alone, or from the link text together with its programmatically determined link context, except where the purpose of the link would be ambiguous to users in general. (Level A) How to Meet 2.4.4 Understanding 2.4.4
| Good |
| 2.4.5 Multiple Ways: 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. (Level AA) How to Meet 2.4.5 Understanding 2.4.5 Additional Notes:
| This is generally covered with both the path traversal at the top of a page and the side bar link list and the menu for the overall site. |
| 3.2.3 Consistent Navigation: 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. (Level AA) How to Meet 3.2.3 Understanding 3.2.3 3.2.4 Consistent Identification: Components that have the same functionality within a set of Web pages are identified consistently. (Level AA) How to Meet 3.2.4 Understanding 3.2.4
| Good |
| Priority 3 Requirements |
|
| 3.1.4 Abbreviations: A mechanism for identifying the expanded form or meaning of abbreviations is available. (Level AAA) How to Meet 3.1.4 Understanding 3.1.4
| (for opengarden: Not sure if generally known buzzwords in the programming community needs to be expanded or if it even matters if they don't know what it is, because the expanded version won't make much more sense to them either. ) |
| 3.1.1 Language of Page: The default human language of each Web page can be programmatically determined. (Level A) How to Meet 3.1.1 Understanding 3.1.1
| (See row with guideline 3.1.2) |
| 2.4.3 Focus Order: If a Web page can be navigated sequentially and the navigation sequences affect meaning or operation, focusable components receive focus in an order that preserves meaning and operability. (Level A) How to Meet 2.4.3 Understanding 2.4.3
| Good |
| 3.2.1 On Focus: When any component receives focus, it does not initiate a change of context. (Level A) How to Meet 3.2.1 Understanding 3.2.1 3.2.2 On Input: Changing the setting of any user interface component does not automatically cause a change of context unless the user has been advised of the behavior before using the component. (Level A) How to Meet 3.2.2 Understanding 3.2.2 3.2.5 Change on Request: Changes of context are initiated only by user request or a mechanism is available to turn off such changes. (Level AAA) How to Meet 3.2.5 Understanding 3.2.5 Specifically:
| Good. |
So yeah, it turns out that due to all the old guidelines they canned for the WCAG 2.0, it's probably less work to do WCAG 2.0 compared to WCAG 1.0. When I initially looked at it, the guide only mentioned the addition of new things to the specifications, but not all the ones they had removed because they don't apply anymore.
However, as mentioned above, the DekiWiki needs to be maintained at all times, which means, someone needs to be assigned to this job and check over everything that you will eventually deliver to federal contractors.
After DekiWiki validates and can run without Javascript, you also need to run the site on the Lynx browser and Opera browser that has the voice plug-in installed.
http://www.w3.org/TR/2008/WD-UNDERSTANDING-WCAG20-20080430/conformance.html#uc-accessibility-support-head← various ways to handle interchanging between accessible/inaccessible information
Here is a link to Section 508 checklist and the actual Section 508 government site, if you want to do a comparison, although I think Section 508 and WAI pretty much are the same thing. Moreover, I don't know if Section 508 cares if the site is a level A, AA, or AAA.
And finally as an additional note, if getting rid of the Javascript is far too much of a pain, there is a clause you might consider:
They do mention that you can be exempt from making parts of the application accessible if you can prove that making it available to disabled people is an undue burden to the company. (When procuring a product, if an agency determines that compliance with any provision of this part imposes an undue burden, the documentation by the agency supporting the procurement shall explain why, and to what extent, compliance with each such provision creates an undue burden. -- 1194.2 Section 508 Guidelines (part 2) )
| Images 0 | ||
|---|---|---|
| No images to display in the gallery. |
Copyright © 2011 MindTouch, Inc. Powered by