W3C home > Mailing lists > Public > public-rdfa-wg@w3.org > July 2010

Re: ISSUE-26: We don't need any RDFS vocabulary for error triples!

From: Benjamin Adrian <benjamin.adrian@dfki.de>
Date: Mon, 19 Jul 2010 13:38:18 +0200
Message-ID: <4C44392A.1090005@dfki.de>
To: RDFa WG <public-rdfa-wg@w3.org>
Hi,

I say we don't need any RDFS vocabulary for error triples!

Read why:

The spec sais:

/"SAX-based processors or processors that utilize function or method 
callbacks
to report the generation of triples are classified as event-based RDFa 
Processors."/

That means, the callback function is called  for every generated RDF 
triple.
Parsing error triples with these callbacks can be extremely difficult, when
the ordering of the generated triples inside the processor graph are 
unsorted
(as it may occur -- it's RDF not XML!).

So searching the stream for triples with patterns like:

rdf:type rdfa:ProfileReferenceError


is nice when the generated triples' ordering is like this:

      _:1 a rdfa:ProfileReferenceError ;
      _:1 dc:description "The @profile value could not be deferenced" ;
      _:1 dc:date "2010-06-30T13:40"^^xsd:dateTime ;

But what if they are generated like this?

      _:1 dc:date "2010-06-30T13:40"^^xsd:dateTime ;
      _:1 dc:description "The @profile value could not be deferenced" ;
      _:1 a rdfa:ProfileReferenceError ;


Then you have to puffer and search the whole stream, which means you 
should better use the
model based approaches of error reporting.

--> NEITHER EARL NOR ANOTHER RDFS  it should be really simple.

I don't think that the intention of EARL matches the use case of our 
error vocabulary.
The used RDF vocabulary must be as simple as possible.
That means it should use as few properties as possible.
Nobody will ever reason on an error graph. So why not
summarizing all information about a single error in a single triple 
describing a stack trace.

[] c:description "ProfileReferenceError: The @profile value 
<http://www.example.org/profile> could not be deferenced. \n
                             Line <http://www.example.org> 
<http://www.example.org/profile>: 564 \n
                             HTTP GET: ....\ n
                             HTTP RESPONSE ".

If you say, well, a string is not not enough, try an XMLLiteral:

[] c:description "<ProfileReferenceError>: The @profile value 
<http://www.example.org/profile> could not be deferenced. \n
<POSITION>
<URL>http://www.example.org <http://www.example.org/profile></URL>
<LINE>564</LINE>
</POSITION>
<REQUEST> GET: ....</REQUEST>
<RESPONSE>HTTP RESPONSE ... </RESPONSE>
</ProfileReferenceError>".


That's it :) I'm fine with XML or plain Literals as objects for error 
triples.

Best regards,

Benjamin



-- 
__________________________________________
Benjamin Adrian
Email : benjamin.adrian@dfki.de
WWW : http://www.dfki.uni-kl.de/~adrian/
Tel.: +49631 20575 145
__________________________________________
Deutsches Forschungszentrum für Künstliche Intelligenz GmbH
Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
Geschäftsführung:
Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender) Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats:
Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
__________________________________________
Received on Monday, 19 July 2010 11:38:54 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Friday, 27 April 2012 04:55:07 GMT