The intent of this ticket is to work towards WCAG 2.0 compliance. Commonly used islandora modules and solution packs provide different visual components, forms, templates and other DOM elements that should conform to accessibility standards to make islandora content more accessible to people with disabilities.
I have been using the aXe accessibility engine (https://www.deque.com/axe/) to examine the client facing DOM for violations in WCAG 2.0 compliance. While some of these violations can be fixed with module pull requests, others must be handled in the theme layer. The most compliant theme i have been able to find, AdaptiveTheme (https://www.drupal.org/project/adaptivetheme) was used for testing. However even that theme requires slight modifications to the page.tpl.php and html.tpl.php, to comply with the landmark region rule, Ensures that all content on a page is contained within a landmark region (more details here: https://dequeuniversity.com/rules/axe/3.0/region)
NOTE: These pull requests will focus on non authenticated user content.
The easiest way to test these changes locally:
- install the aXe browser plugin in your browser of choice (found here: https://www.deque.com/axe/).
- Recommended: Enable the ‘AT Subtheme’ found in the Adaptive Core (https://www.drupal.org/project/adaptivetheme).
- Run the aXe tool on applicable pages, such as on an islandora internet archive book reader object page.
Relatively low impact, however these modifications have the potential to affect the display of an affected modules client side display. This should be kept to a minimum, as most changes should be invisible to the naked eye, involve moving around elements in the DOM and appending properties and attributes to existing DOM elements.
Fully implementing WCAG 2.0 compliance in islandora will also require some attention to be paid to libraries in use. For example:
- islandora_pdfjs: Multiple violations exist in the library html/template code, which requires modifications to the library code itself, or a re-write of the module to rip the viewer out of the iframe, and embed it directly in a template file.
- islandora_videojs: Requires the <video> element to have captions and description tracks (https://dequeuniversity.com/rules/axe/3.0/video-caption and https://dequeuniversity.com/rules/axe/3.0/video-description). The videojs library does support captions and tracks: https://docs.videojs.com/docs/guides/tracks.html, so this may not be an issue, but a mechanism for adding or editing a description track or caption does not currently exist.
discoverygarden inc. | Managing Digital Content