for the telecon: on ISSUE-26 (error reporting mechanism)

This issue is actually related the @profile one that actually spawned it... See also the discussion thread on the mailing list[1]

The proposal is to introduce a standard error reporting mechanism to RDFa. The issue around @profile provides a perfect case when an error occurs that modifies the RDFa processor's behaviour; another is when the URI for the RDFa processor itself cannot be interpreted (either because it is not accessible or it cannot be properly parsed). 

On the mailing list discussion two approaches were considered: add some extra triples (my proposal) or some event based mechanism (Mark's). Personally, even after the discussion with Mark, I believe adding some extra triples is a better idea; the current RDFa Core does not have the notion of events, I do not know what it would mean for an RDFa processor like a distiller, ie, spec-ing that might be long and not sure what we would gain. Adding a set of new triples fits very well with the current design.

The more detailed approach in my proposal would be something like:

- besides the default graph, the processor also creates an error graph where error triples are added
- error triples are of the form:

[] a ERRORCLASS ;
   rdfa:onURI <URI> ;
   rdfs:comment "some text" ;
   rdfa:timestamp TIMEANDDATE^^xsd:dateTime


with:

- ERRORCLASS are rdfs classes forming a hierarchy. At the moment, that would mean

rdfa:Error a rdfs:Class ;
rdfa:FailedProfile rdfs:subClassOf rdfa:Error ;
rdfa:FailedDocument rdfs:subClassOf rdfa:Error ;

- rdfa:onUri refers to the URI that led to the failure

- rdfs:comment is optional, and the processor can add any extra explanation text it wishes;

- rdfa:timestamp is probably a very useful information


(A slightly more 'conservative' approach is to use error codes instead of a class hierarchy; it is less elegant RDF wise, may be easier to handle for programmer. I am not sure...)

If we have the mechanism in space, we can think about a similar Warning mechanism (eg, if a URI scheme is very unusual that may indicate an error in, say, a @profile file), but we can also leave that to implementations.

Ivan


[1] http://lists.w3.org/Archives/Public/public-rdfa-wg/2010Apr/0192.html

----
Ivan Herman, W3C Semantic Web Activity Lead
Home: http://www.w3.org/People/Ivan/
mobile: +31-641044153
PGP Key: http://www.ivan-herman.net/pgpkey.html
FOAF: http://www.ivan-herman.net/foaf.rdf

Received on Thursday, 27 May 2010 07:51:29 UTC