[Draft: 2006.09.13]

E. WebCGM accessibility

This section and its subsections are informative (non-normative).

E.1 Introduction

Topics such as internationalization and accessibility have been addressed by W3C in other Recommendations available on the Technical Reports page.  The relationship between the specifications of technology modules, such as this one, and those cross-cutting recommendations is discussed in the Specification Guidelines.  As suggested in the Specification Guidelines, this section identifies some relationships between the capabilities afforded by WebCGM features and accessibility requirements established by other Recommendations.

Although a WebCGM metafile is a binary file format, it has systematic grouping and annotation features that foster accessibility of WebCGM metafile content. For example, graphical text is ideally stored as Unicode text strings within the metafile, but to handle cases where graphical text images are actually the result of other vector (e.g. stroking) or raster (e.g., bitmaps) graphics in the metafile, WebCGM has the attribute 'content' on the para and subpara objects, that gives the text-string equivalent of the rendered graphical text.

Features that are in the binary metafile itself will, unlike clear-text formats such as HTML, XML, and SVG, require the cooperation and intervention of the WebCGM authoring tools and viewers. Therefore, the discussions in the following sections are recommendations to builders of authoring tools and viewers.

E.2 Navigation

By Guideline 9 "Provide navigation mechanisms" of [UAAG10] a WebCGM viewer is expected to let users move the focus to 'enabled' and significant objects in the scene.  'Enabled' objects are those which accept user input, such as on screen buttons.  By the structure of WebCGM, each APS should be treated as a significant object and be included in the reach of focus navigation.  By Guideline 1 "Support input and output device independence" the reach of keyboard-actuated navigation should cover this whole set of navigation destinations.

By default, every APS (object or layer) in WebCGM is focusable. In this version of WebCGM, there is no facility to change the default focusability. Such a feature could be considered for a future version of WebCGM, if indicated by new requirements gathering.

Some notion of forward and backward motion among peer nodes in the WebCGM scene should be provided.  This should by default move among paragraphs and sub-paragraphs in the order in which they appear in the metafile.  The creators of WebCGM instances should ensure that this results in a sensible reading order.  However, efficient motion as called for in [UAAG10] Checkpoint 9.9, is not likely to result from one global list or loop of all the plausible navigation destinations.  Exploiting the structure of the metafile, structured navigation could take hierarchical or categorical forms.  In hierarchical navigation, forward and back motion moves among peer nodes at the same level in the layers-and-objects nesting tree.  In categorical navigation, the sequential navigation could exhibit navigation modes which visit only 'grobject' nodes, or only the 'gropbject' nodes with a common 'name.'  An example of hierarchical navigation is provided by the player behavior for the [DAISY] standard digital talking book.  An example of categorical structured navigation is provided by the diverse navigation modes of the Opera browser.  The creators of WebCGM instances should ensure that the layers-and-objects nesting forms a plausible table of contents as annotated with the textual properties (see E.3 below) of the affected nodes, and that collecting nodes of like 'name' forms meaningful slices of what is in the scene.

In this version of WebCGM, there are no intra-metafile controls to alter the navigation graph. In a scenario where such capability is desired, the private-namespace extension feature of the XCF can be used to introduce further intelligence associated with the contents of the metafile proper.

E.3 Required text content

Web Content Accessibility Guidelines such as [WCAG10] require that essential information be available in text form.  Some key examples are:

WebCGM contains attributes that associate text with things in the depicted scene, and can be used to meet these requirements.

This essential content, if not always presented to the user, must be considered 'conditional content' in the sense of UAAG10 Checkpoint 2.3.  That checkpoint gives some latitude to the viewer as to whether to present these attributes globally through view-mode controls or locally in response to focus and inspect actions of the user.

WebCGM viewers should also make this textual information available to assistive technology through the accessibility API appropriate to the programming platform, following UAAG10 Guideline 6.

Note. It might be thought that the 'name' APS attribute could or should be used in a manner like 'alt' on 'img' in HTML. It does not. The 'name' attribute has well-defined category, not instance, semantics and associated categorical navigation behavior.

E.4 Visibility and object reading

By default, objects which are not visible do not display tooltips (the 'screentip' APS attribute), may not be highlighted without making them visible, and may not be navigated to via the DOM or picture behaviors. It is recommended that WebCGM viewers offer a view-control mode or interactive operation whereby, at user option, the 'visibility' attribute is overridden, for accessibility and debugging.