SVG techniques

I have included all the checkpoints in the following list (also attached as
HTML).

For some of them, such as the "until user agent" ones, there is no obvious
relevance of WCAG to SVG, so long as SVG are aware of the requirements for
User Agents to do certain things.

And note that my techniques may not always reflect current SVG - there is a
new draft due shortly, and some things may have changed in it, or I may not
have included everything anyway.

In other cases, it is not clear that the checkpoint is applicable to SVG at
all.

Cheers

Charles


    Checkpoints:
    
   1.1 Provide a text equivalent for every non-text element [Priority 1]
          Refer also to [1]checkpoint 9.1 and [2]checkpoint 13.10.
          
          [3]Techniques for checkpoint 1.1
          
          SVG:
          
          + Ensure that each g element has a title and desc
            
   1.2 Provide redundant text links for each active region of a
          server-side image map. [Priority 1]
          Refer also to [4]checkpoint 1.5 and [5]checkpoint 9.1.
          [6]Techniques for checkpoint 1.2
          
          SVG:
          
          + Not Applicable
            
   1.3 [7]Until user agents can automatically read aloud the text
          equivalent of a visual track, provide an auditory description
          of the important information of the visual track of a
          multimedia presentation. [Priority 1]
          Refer to [8]checkpoint 1.1 for information about textual
          equivalents for visual information.
          [9]Techniques for checkpoint 1.3
          
          SVG
          
          + Provide a desc element for animate elements
            
   1.4 For any time-based multimedia presentation (e.g., a movie or
          animation), synchronize equivalent alternatives (e.g., captions
          or auditory descriptions of the visual track) with the
          presentation. [Priority 1]
          [10]Techniques for checkpoint 1.4
          
          SVG:
          
          + For animations, include appropriate animation of the relevant
            title or desc elements
            
   1.5 [11]Until user agents render text equivalents for client-side
          image map links, provide redundant text links for each active
          region of a client-side image map. [Priority 3]
          Refer also to [12]checkpoint 1.2 and [13]checkpoint 9.1.
          [14]Techniques for checkpoint 1.5
          
          SVG
          
          + Not Applicable to SVG User Agents
            
   2.1 Ensure that all information conveyed with color is also available
          without color, for example from context or markup. [Priority 1]
          [15]Techniques for checkpoint 2.1
          
          SVG
          
          + Test renderings on a monochrome monitor to ensure all
            information is conveyed.
          + Use appropriate structures and classes to ensure that an
            alternative stylesheet (for example an audio stylesheet) can
            select approriately.
            
   2.2 Ensure that foreground and background color combinations provide
          sufficient contrast when viewed by someone having color
          deficits or when viewed on a black and white screen.
          [Priority 2 for images, Priority 3 for text].
          [16]Techniques for checkpoint 2.2
          
          SVG:
          
          + See the ATRC work on developing an algorithm
          + Test with a monochrome rendering
          + Provide a monochrome, or high-contrast alternative stylesheet
            
   3.1 When an appropriate markup language exists, use markup rather than
          images to convey information. [Priority 2]
          Refer also to [17]guideline 6 and [18]guideline 11.
          [19]Techniques for checkpoint 3.1
          
          SVG
          
          + For rendering Mathematics, use MathML to declare the semantic
            function of the content, and SVG for the layout control
          + For rendering textual information, use an XML markup language
            to declare the semantic role of the text, and SVG to control
            layout.
            
   3.2 Create documents that validate to published formal grammars.
          [Priority 2]
          [20]Techniques for checkpoint 3.2
          
          SVG:
          
          + Ensure that images are valid SVG
            
   3.3 Use style sheets to control layout and presentation. [Priority 2]
          [21]Techniques for checkpoint 3.3
          
          SVG:
          
          + Use external style sheets rather than inline styles.
            
   3.4 Use relative rather than absolute units in markup language
          attribute values and style sheet property values. [Priority 2]
          [22]Techniques for checkpoint 3.4
          
          SVG:
          
          + Note that the suggested rendering size of an SVG must be in
            absolute units, since internal units (User Units) are
            relative.
            
   3.5 Use header elements to convey document structure and use them
          according to specification. [Priority 2]
          [23]Techniques for checkpoint 3.5
          
          SVG
          
          + Use an XML namespace to declare the semantic role of headers
          + Use titles of elements as the heading text, through use of
            the tref element
            
   3.6 Mark up lists and list items properly. [Priority 2]
          [24]Techniques for checkpoint 3.6
          
          SVG
          
          + Use an XML namespace or metadata to mark up text as being the
            contents of a list.
<?xml version="1.0" standalone="yes"?>
<svg width="4in" height="3in"
    xmlns = 'http://www.w3.org/Graphics/SVG/SVG-19990812.dtd'>
    <desc>Show floor layout, XML World</desc>
    <metadata>
      <rdf:RDF
               xmlns:rdf = "http://www.w3.org/...-rdf-syntax-ns"
               xmlns:rdfs = "http://www.w3.org/TR/...-schema"
               xmlns:lists = "http://www.w3.org/...">
        <rdf:Description about="#item1">
          <lists:listOf>
            <rdf:Bag>
              <li>#listItem1</li>
              <li>#listitem2</li>
              <li>#listitem3</li>
            </rdf:Bag>
          </lists:listOf>
        </rdf:Description>
      </rdf:RDF>
    </metadata>
    <g id="item1">
      <text id="listItem1" x="1" y="1">Thing one</text>
      <text id="listItem1" x="10" y="10">Thing two</text>
      <text id="listItem1" x="20" y="12">Thing three</text>
  </g>
</svg>
            
   3.7 Mark up quotations. Do not use quotation markup for formatting
          effects such as indentation. [Priority 2]
          [25]Techniques for checkpoint 3.7
          
          SVG:
          
          + Use an XML namespace or metadata to identify text as being a
            quote
<?xml version="1.0" standalone="yes"?>
<svg width="4in" height="3in"
    xmlns = 'http://www.w3.org/Graphics/SVG/SVG-19990812.dtd'
    html:xmlns="http://www.w3.org/2000/01/xhtml">
    <title>Inscription</title>
    <g id="item1">
      <text x="1" y="1"><html:q html:cite="http://www.w3.org">The power of the
web is in its universality. Access by everyone regardless of disability is an e
ssential aspect.</html:q></text>
 </g>
</svg>
            
   4.1 Clearly identify changes in the natural language of a document's
          text and any [26]text equivalents (e.g., captions).
          [Priority 1]
          [27]Techniques for checkpoint 4.1
          
          SVG:
          
          + Use the xml:lang attribute for text.
            
   4.2 Specify the expansion of each abbreviation or acronym in a
          document where it first occurs. [Priority 3]
          [28]Techniques for checkpoint 4.2
          
          SVG:
          
          + Use metadata
          + Use the desc element of a text element or tspan.
            
   4.3 Identify the primary natural language of a document. [Priority 3]
          [29]Techniques for checkpoint 4.3
          
          SVG:
          
          + Where a document has a language, identify that with the
            xml:lang attribute on the parent svg element.
            
   5.1 For data tables, identify row and column headers. [Priority 1]
          [30]Techniques for checkpoint 5.1
          
          SVG
          
          + Use metadata or an XML namespace to identify the semantics of
            the the relationships between table cells laid out in SVG
            
   5.2 For data tables that have two or more logical levels of row or
          column headers, use markup to associate data cells and header
          cells. [Priority 1]
          [31]Techniques for checkpoint 5.2
          
          SVG
          
          + Use metadata or an XML namespace to identify the semantics of
            the the relationships between table cells laid out in SVG
            
   5.3 Do not use tables for layout unless the table makes sense when
          linearized. Otherwise, if the table does not make sense,
          provide an alternative equivalent (which may be a
          [32]linearized version). [Priority 2]
          [33]Techniques for checkpoint 5.3
          
          Not Applicable to SVG
          
   5.4 If a table is used for layout, do not use any structural markup
          for the purpose of visual formatting. [Priority 2]
          [34]Techniques for checkpoint 5.4
          
          Not Applicable to SVG
          
   5.5 Provide summaries for tables. [Priority 3]
          [35]Techniques for checkpoint 5.5
          
          SVG
          
          + Use a desc element, metadata or an XML namespace to identify
            the summary of a table laid out in SVG
            
   5.6 Provide abbreviations for header labels. [Priority 3]
          [36]Techniques for checkpoint 5.6
          
          Not Applicable to SVG
          
   6.1 Organize documents so they may be read without style sheets. For
          example, when an HTML document is rendered without associated
          style sheets, it must still be possible to read the document.
          [Priority 1]
          [37]Techniques for checkpoint 6.1
          
          SVG
          
          + Currently this is an open question in SVG.
            
   6.2 Ensure that equivalents for dynamic content are updated when the
          dynamic content changes. [Priority 1]
          [38]Techniques for checkpoint 6.2
          
          SVG
          
          + For an animation, ensure that the relevant desc and title
            elements are animated appropriately.
            
   6.3 Ensure that pages are usable when scripts, applets, or other
          programmatic objects are turned off or not supported. If this
          is not possible, provide equivalent information on an
          alternative accessible page. [Priority 1]
          [39]Refer also to guideline 1.
          [40]Techniques for checkpoint 6.3
          
   6.4 For scripts and applets, ensure that event handlers are input
          device-independent. [Priority 2]
          Refer to the definition of [41]device independence.
          [42]Techniques for checkpoint 6.4
          
          SVG
          
          + Use the parametrised activate and the focusin / focusout
            events rather than mouse- or keyboard-based events.
            
   6.5 Ensure that dynamic content is accessible or provide an
          alternative presentation or page. [Priority 2]
          [43]Techniques for checkpoint 6.5
          
          SVG
          
          + Ensure that animations include appropriate animation of title
            and desc elements.
          + Ensure that scripts can be triggered from a
            device-independent event
            
   7.1 [44]Until user agents allow users to control flickering, avoid
          causing the screen to flicker. [Priority 1]
          [45]Techniques for checkpoint 7.1
          
   7.2 [46]Until user agents allow users to control blinking, avoid
          causing content to blink (i.e., change presentation at a
          regular rate, such as turning on and off). [Priority 2]
          [47]Techniques for checkpoint 7.2
          
   7.3 [48]Until user agents allow users to freeze moving content, avoid
          movement in pages. [Priority 2]
          [49]Techniques for checkpoint 7.3
          
   7.4 [50]Until user agents provide the ability to stop the refresh, do
          not create periodically auto-refreshing pages. [Priority 2]
          [51]Techniques for checkpoint 7.4
          
   7.5 [52]Until user agents provide the ability to stop auto-redirect,
          do not use markup to redirect pages automatically. Instead,
          configure the server to perform redirects. [Priority 2]
          [53]Techniques for checkpoint 7.5
          
          Not Applicable to SVG
          
   8.1 Make programmatic elements such as scripts and applets directly
          accessible or compatible with assistive technologies
          [Priority 1 if functionality is [54]important and not presented
          elsewhere, otherwise Priority 2.]
          [55]Refer also to guideline 6.
          [56]Techniques for checkpoint 8.1
          
   9.1 Provide client-side image maps instead of server-side image maps
          except where the regions cannot be defined with an available
          geometric shape. [Priority 1]
          Refer also to [57]checkpoint 1.1, [58]checkpoint 1.2, and
          [59]checkpoint 1.5.
          [60]Techniques for checkpoint 9.1
          
   9.2 Ensure that any element that has its own interface can be operated
          in a device-independent manner. [Priority 2]
          Refer to the definition of [61]device independence.
          [62]Refer also to guideline 8.
          [63]Techniques for checkpoint 9.2
          
   9.3 For scripts, specify logical event handlers rather than
          device-dependent event handlers. [Priority 2]
          [64]Techniques for checkpoint 9.3
          
   9.4 Create a logical tab order through links, form controls, and
          objects. [Priority 3]
          [65]Techniques for checkpoint 9.4
          
          SVG
          
          + Specify link, animation and script controls so that they
            appear in the source in a logical order of progression
            through them.
            
   9.5 Provide keyboard shortcuts to important links (including those in
          [66]client-side image maps), form controls, and groups of form
          controls. [Priority 3]
          [67]Techniques for checkpoint 9.5
          
          SVG
          
          + No technique currently available
            
   10.1 [68]Until user agents allow users to turn off spawned windows, do
          not cause pop-ups or other windows to appear and do not change
          the current window without informing the user. [Priority 2]
          [69]Techniques for checkpoint 10.1
          
   10.2 [70]Until user agents support explicit associations between
          labels and form controls, for all form controls with implicitly
          associated labels, ensure that the label is properly
          positioned. [Priority 2]
          [71]Techniques for checkpoint 10.2
          
          CMN: Why only until User Agents do it? For cognitive
          understanding I would have thought it remains important, and
          User Agents aren't likely to do it.
          
   10.3 [72]Until user agents (including assistive technologies) render
          side-by-side text correctly, provide a linear text alternative
          (on the current page or some other) for all tables that lay out
          text in parallel, word-wrapped columns. [Priority 3]
          [73]Techniques for checkpoint 10.3
          
          Not Applicable to SVG
          
   10.4 [74]Until user agents handle empty controls correctly, include
          default, place-holding characters in edit boxes and text areas.
          [Priority 3]
          [75]Techniques for checkpoint 10.4
          
          Not Applicable to SVG
          
   10.5 [76]Until user agents (including assistive technologies) render
          adjacent links distinctly, include non-link, printable
          characters (surrounded by spaces) between adjacent links.
          [Priority 3]
          [77]Techniques for checkpoint 10.5
          
   11.1 Use W3C technologies when they are available and appropriate for
          a task and use the latest versions when supported. [Priority 2]
          [78]Techniques for checkpoint 11.1
          
          SVG
          
          + For example, to add metadata use RDF, and to mark up the
            semantic information of mathematical content use MathML
            
   11.2 Avoid deprecated features of W3C technologies. [Priority 2]
          [79]Techniques for checkpoint 11.2
          
   11.3 Provide information so that users may receive documents according
          to their preferences (e.g., language, content type, etc.)
          [Priority 3]
          [80]Techniques for checkpoint 11.3
          
   11.4 If, [81]after best efforts, you cannot create an [82]accessible
          page, provide a link to an alternative page that uses W3C
          technologies, is accessible, has [83]equivalent information (or
          functionality), and is updated as often as the inaccessible
          (original) page. [Priority 1]
          [84]Techniques for checkpoint 11.4
          
   12.1 Title each frame to facilitate frame identification and
          navigation. [Priority 1]
          [85]Techniques for checkpoint 12.1
          
          Not Applicable to SVG
          
   12.2 Describe the purpose of frames and how frames relate to each
          other if it is not obvious by frame titles alone. [Priority 2]
          [86]Techniques for checkpoint 12.2
          
          Not Applicable to SVG
          
   12.3 Divide large blocks of information into more manageable groups
          where natural and appropriate. [Priority 2]
          [87]Refer also to guideline 3.
          [88]Techniques for checkpoint 12.3
          
          SVG
          
          + Use g elements to group semantically or graphically
            meaningful components of an image.
            
   12.4 Associate labels explicitly with their controls. [Priority 2]
          [89]Techniques for checkpoint 12.4
          
          SVG
          
          + Group a control and labelling information (such as a text
            label, or a title and / or desc element) in one g element.
            
   13.1 Clearly identify the target of each link. [Priority 2]
          [90]Techniques for checkpoint 13.1
          
          SVG
          
          + Provide sufficient information to determine where a link
            leads, either as graphics and text, using metadata, or using
            the title and desc elements for the linked element.
            
   13.2 Provide metadata to add semantic information to pages and sites.
          [Priority 2]
          [91]Refer also to checkpoint 13.5.
          [92]Techniques for checkpoint 13.2
          
          SVG
          
          + A substantial example is provided in "[93]Accessibility
            features of SVG"
            
   13.3 Provide information about the general layout of a site (e.g., a
          site map or table of contents). [Priority 2]
          [94]Techniques for checkpoint 13.3
          
   13.4 Use navigation mechanisms in a consistent manner. [Priority 2]
          [95]Techniques for checkpoint 13.4
          
   13.5 Provide navigation bars to highlight and give access to the
          navigation mechanism. [Priority 3]
          [96]Techniques for checkpoint 13.5
          
   13.6 Group related links, identify the group (for user agents), and,
          [97]until user agents do so, provide a way to bypass the group.
          [Priority 3]
          [98]Techniques for checkpoint 13.6
          
          SVG
          
          + Place collections of related elements in the same g element.
            
   13.7 If search functions are provided, enable different types of
          searches for different skill levels and preferences.
          [Priority 3]
          [99]Techniques for checkpoint 13.7
          
   13.8 Place distinguishing information at the beginning of headings,
          paragraphs, lists, etc. [Priority 3]
          [100]Techniques for checkpoint 13.8
          
   13.9 Provide information about document collections (i.e., documents
          comprising multiple pages.). [Priority 3]
          [101]Techniques for checkpoint 13.9
          
   13.10 Provide a means to skip over multi-line ASCII art. [Priority 3]
          Refer to [102]checkpoint 1.1 and [103]the example of ascii art
          in the glossary.
          [104]Techniques for checkpoint 13.10
          
          Not Applicable to SVG
          
   14.1 Use the clearest and simplest language appropriate for a site's
          content. [Priority 1]
          [105]Techniques for checkpoint 14.1
          
   14.2 Supplement text with graphic or auditory presentations where they
          will facilitate comprehension of the page. [Priority 3]
          [106]Refer also to guideline 1.
          [107]Techniques for checkpoint 14.2
          
   14.3 Create a style of presentation that is consistent across pages.
          [Priority 3]
          [108]Techniques for checkpoint 14.3

References snipped - see the atttachment/archived version

Received on Sunday, 27 February 2000 12:12:54 UTC