Re: Devising a schema for accessibility testing

Well, I like it, but a couple of comments:

I would try to define the test as being about a particular URI that is
expected to be used as an earl result. But where this is only one of several
tests that you apply to meet another requirement, I would give it its own
URI, and then I think we need to sort the piece that says "results X and
Y and Z imply result Q" for earl and re-use here. (I know that they don't
seem to be strictly inside EARL, but they seem really important to many use
cases.  On the other hand, I think there is some low-level RDF that does this
- or is it OWL stuff?)

How do you envisage adding tests that apply to free text? xml:PCDATA might be
an option I guess. likewise for mime types...

How do you identify tests that are done by a person, and integrated via an
interview process? I think that I can see this in your schema, but examples
would make it clear that it is possible.

There were some other proerties in earl that we thought were more related to
test description, such as earl:excludes and earl:operatorInstructions. Do you
envisage moving those into a tesst description language?

Defining the code to be used directly is sub-optimal - this is how IE makes
object unworkable in the long term, by specifying a particular bit of code as
part of the requirements for running the test. Being able to identify the
test, and then identify a bit of code in one app seperately means that we can
make pluggable testing architecture without having to pretend that some tool
is something else.

Anyway, this seems like a good start. Should we pick a few namespaces and try
to take it further?

On Sun, 30 Jun 2002, Nick Kew wrote:

  I've been hacking on this today.  I have some valid RDF that
  seems to do the job.  I haven't made any effort to reuse
  anyone's terms, so any suggestions in that area (and others)
  much appreciated.

  Does this lot make sense?

  Is anyone interested in thinking about generalising it
  beyond Valet?

  <!-- A test suite defines the set of tests to be applied -->

  <valet:testsuite rdf:ID="WCAG1">

  <!-- Properties of the testsuite -->

    <valet:url rdf:resource="http://www.w3.org/TR/WCAG10/"/>
    <valet:description>
  	Web Content Accessibility Guidelines, level A
    </valet:description>
    <rdf:domain rdf:resource="earl:webcontent"/>

  <!-- the testsuite applies one or more test -->
    <valet:applies>

  <!-- We define an imaginary - but not too far off real - test -->
      <valet:test rdf:ID="test001" >

  <!-- The test has some basic properties, as discussed for EARL at the f2f
  -->
        <valet:message>Provide a text alternative</valet:message>
        <valet:confidence>Certain</valet:confidence>
        <valet:severity>Error</valet:severity>


  <!-- The subject of a test definition is one or more Guideline -->
        <rdf:subject rdf:parseType="Resource">
          <valet:url
  rdf:resource="http://www.w3.org/TR/WCAG10/#tech-text-equivalent" />
         </rdf:subject>

  <!-- The test applies some action to the guideline.  In Valet's
       implementation, this is a C++ class derived from an abstract base
       class "Test".  Classes define a method "fails", that returns true or
       false, and that will be applied to each DOM node where the test is
       defined as applicable.   Tests may have other parameters -
       prototyping to-be-defined elsewhere.
  -->
         <rdf:predicate>
           <valet:code
  rdf:about="http://valet.webthing.com/testdefs#hasTextContent">
             <cpp:class>hasTextContent</cpp:class>
             <cpp:params rdf:parseType="Resource">
               <cpp:param>alt</cpp:param>
               <cpp:param>false</cpp:param>
             </cpp:params>
          </valet:code>
        </rdf:predicate>


  <!--    The test is applied to one or more HTML element or attribute
          An instance of the element in question will be the EARL subject
          when we apply the test.
  -->
        <rdf:object rdf:parseType="Resource">
          <html:element>img</html:element>
          <html:element>object</html:element>
          <html:element>applet</html:element>
        </rdf:object>
      </valet:test>
    </valet:applies>
  </valet:testsuite>

  </rdf:RDF>





-- 
Charles McCathieNevile    http://www.w3.org/People/Charles  phone: +61 409 134 136
W3C Web Accessibility Initiative     http://www.w3.org/WAI  fax: +33 4 92 38 78 22
Location: 21 Mitchell street FOOTSCRAY Vic 3011, Australia
(or W3C INRIA, Route des Lucioles, BP 93, 06902 Sophia Antipolis Cedex, France)

Received on Sunday, 30 June 2002 17:32:11 UTC