Devising a schema for accessibility testing

As you know, Page Valet incorporates a set of tests to evaluate documents
against a set of guidelines such as WCAG or US Section 508.

Further development using mod_xml now puts me in a position to generalise
this.  Instead of having hardwired tests, Valet should be able to read a
spec from a schema, and so apply a user's own testsuite.  The key change
that makes this feasible is that mod_xml can precompile and cache a
schema, rather than having to parse from scratch every time an
evaluation is run (or hardwire it, as in the present Page Valet).

Now I'd like to seek your views on how to go about this.  Is an RDF schema
a good option here, and what should it look like?  Or would I be just as
well-off with a semantic-free XML schema?

The basic unit we have to define is a Test.  In broad terms, a test
applies a guideline to an element or attribute in markup, and generates
a message in the event of failure.  To take the best-known WCAG test:

  On encountering an IMG element, check that it has an ALT attribute.
  If it fails, generate a warning linked to
  http://www.w3.org/TR/WCAG10/#tech-text-equivalent

The actual specification for a Test comprises:
  (1) What is it testing?  One or more Element or Attribute
	{ (Name)+ , (ELEMENT|ATTRIBUTE) }
  (2) What is it testing against?  One or more guideline of a test suite.
	{ SuiteID , href, failuremessage }
  (3) What test is being applied?  A test that returns a pass/fail
	{ TestClass, ConfidenceLevel, (Parameters)* }

The second part of this is to permit users to program their own TestClass.
This is an arbitrary function, acting on a DOM representation of the
document being tested, so writing one is a programming task. I don't see how
this could usefully be incorporated into the test schema, (and I expect
to make this a C++ API for users instead), but I'm open to suggestions.


-- 
Nick Kew

Available for contract work - Programming, Unix, Networking, Markup, etc.

Received on Monday, 17 June 2002 13:40:32 UTC