- From: Nadia Heninger <nadia@barbwired.com>
- Date: Wed, 13 Mar 2002 21:38:03 +0100
- To: <w3c-wai-er-ig@w3.org>
Two real suggestions for changes in EARL. 1. Replace the WebContent, Tool, and UserAgent subclasses of TestSubject with a single TestSubject class that can have some kind of type (earl:isa? something else?) property that is one of those three. * earl as it is now: <WebContent rdf:about="http://example.org/#someID02495012470"> <testSubject rdf:resource="http://www.w3.org/"/> <date>2001-05-17T23:07:35Z</date> </WebContent> * i think it should be changed to: <TestSubject rdf:about="http://example.org/#someID02495012470"> <isa rdf:resource="http://blah/earl#WebContent"> <testSubject rdf:resource="http://www.w3.org/"/> <date>2001-05-17T23:07:35Z</date> </TestSubject> Benefits: Makes more sense to the newbie, easier to form other types of things that are being evaluated (chaals's examples being Specification and Document). 2. Transform the essential element of an EARL document from an Assertor to an Assertion, and make the Assertion a four-part item that includes the Assertor. Basic idea in probably incorrect n3: earl:Assertion earl:assertor :Bob; rdf:subject :TestedThing1; rdf:predicate earl:passes; rdf:object :MyTestCase . I have some examples in XML-ified RDF below. Benefits: Makes EARL more regular to produce - right now the Assertor is kind of like a special case. It's more linear - properties of the Assertor are at the same depth as properties of the TestCase and TestSubject, which to me might make querying easier. You can re-use an assertor by its URI. Putting multiple assertors' assertions in the same document is prettier. Potential arguments against: Disturbs the holy trinity of rdf:subject, predicate, object. You won't be able to say :Bob earl:asserts [:TestedThing1 earl:passes :MyTestCase]... but I don't think you can say that in the first place. Wendy said there was some argument against this format, I'd be interested in hearing it. XML-ified RDF example for you to paste into the RDF validator and have fun with: <rdf:RDF xmlns="http://example.com/earl#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <Assertion> <assertor rdf:resource="http://example.org/#assertorID2346576" /> <rdf:subject rdf:resource="http://example.org/#someID02495012470" /> <rdf:predicate rdf:resource="http://www.w3.org/2001/03/earl/0.95#passes" /> <rdf:object rdf:resource="http://example.org/#MyTestCase" /> </Assertion> <Assertor rdf:about="http://example.org/#assertorID2346576"> <name>Bob B. Bobbington</name> <email rdf:resource="mailto:bob@example.org" /> </Assertor> <TestSubject rdf:about="http://example.org/#someID02495012470"> <isa rdf:resource="http://blah/earl#WebContent" /> <testSubject rdf:resource="http://www.w3.org/" /> <date>2001-05-17T23:07:35Z</date> </TestSubject> <TestCase rdf:about="http://example.org/#MyTestCase"> <id rdf:resource="http://exmaple.org/MyTestCaseThingy" /> </TestCase> </rdf:RDF> And for those of you who don't want to generate unique URIs, I cooked up a little example that saves you the trouble by making anonymous nodes in place. This should theoretically be queryable in the same form as the one above. <rdf:RDF xmlns="http://example.com/earl#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <Assertion> <assertor> <Assertor> <name>Bob B. Bobbington</name> <email rdf:resource="mailto:bob@example.org" /> </Assertor> </assertor> <rdf:subject> <TestSubject> <isa rdf:resource="http://blah/earl#WebContent" /> <testSubject rdf:resource="http://www.w3.org/" /> <date>2001-05-17T23:07:35Z</date> </TestSubject> </rdf:subject> <rdf:predicate rdf:resource="http://www.w3.org/2001/03/earl/0.95#passes" /> <rdf:object> <TestCase> <id rdf:resource="http://exmaple.org/MyTestCaseThingy" /> </TestCase> </rdf:object> </Assertion> </rdf:RDF> I make these suggestions in the hope that EARL will be simpler and easier to produce and therefore encourage more people to join the wave. :) very tired, Nadia
Received on Wednesday, 13 March 2002 15:38:01 UTC