- From: Dimitris Kontokostas <kontokostas@informatik.uni-leipzig.de>
- Date: Thu, 24 Jul 2014 14:32:36 +0300
- To: Holger Knublauch <holger@topquadrant.com>
- Cc: "public-rdf-sha." <public-rdf-shapes@w3.org>
- Message-ID: <CA+u4+a3HxiYRE_gmuTA=Be8QN=k0FOdRYg+ZWoN2eQiq96_Vag@mail.gmail.com>
On Thu, Jul 24, 2014 at 1:05 PM, Holger Knublauch <holger@topquadrant.com>
wrote:
>
> On 7/24/14, 7:36 PM, Dimitris Kontokostas wrote:
>
> Another related use case is that if a constraint violation happens, the
> system could *suggest* a fix. In SPIN we do this by creating INSERT/DELETE
> template calls as part of a constructed spin:ConstraintViolation. This can
> be exposed by user interfaces via a button "Fix me".
>
> I think this should be out of the scope of the validation language but
> the language should support such hooks with generic annotations [1] that
> other tools can interpret
> [1]
> http://lists.w3.org/Archives/Public/public-rdf-shapes/2014Jul/0208.html
>
>
> Yeah, suggesting fixes is really a nice-to-have, and this feature has not
> been used much so far in our experience. Fortunately we are in RDF where
> anybody can add extra triples to an existing object, e.g. add "annotations"
> to a constructed spin:ConstraintViolation object. That's one reason why we
> went with constraint definitions based on CONSTRUCT.
>
I see CONSTRUCT as an implementation detail here
I hacked around with RDFUnit a bit and I now report spin:violationPath
though annotations and select statements (it was in my todos for some time
now)
here's an excerpt
<246bde4d-2a9c-11b2-80ce-56847afe9799>
a rlog:Entry , rut:RLOGTestCaseResult ,
rut:ExtendedTestCaseResult , spin:ConstraintViolation , rut:TestCaseResult ;
rlog:level rlog:WARN ;
rlog:message "http://xmlns.com/foaf/0.1/depiction does not
have defined rdfs:range: http://xmlns.com/foaf/0.1/Image" ;
rlog:resource <
http://upload.wikimedia.org/wikipedia/commons/0/00/DontStopTheCarnival.jpg>
;
dcterms:date "2014-07-24T11:18:18.77Z"^^xsd:dateTime ;
rut:testCase
rutt:foaf-RDFSRANGE-MISS-aa9e3f6a646bf9eb6ece65a99ed30af6 ;
spin:violationPath <http://xmlns.com/foaf/0.1/depiction> ;
spin:violationRoot <
http://upload.wikimedia.org/wikipedia/commons/0/00/DontStopTheCarnival.jpg>
;
prov:wasGeneratedBy <243faae0-2a9c-11b2-80ce-56847afe9799> .
<243faae0-2a9c-11b2-80ce-56847afe9799>
a prov:Activity , rut:TestExecution ;
rut:source <http://live.dbpedia.org> ;
rut:testsError "0"^^xsd:nonNegativeInteger ;
rut:testsFailed "12"^^xsd:nonNegativeInteger ;
rut:testsRun "108"^^xsd:nonNegativeInteger ;
rut:testsSuceedded "96"^^xsd:nonNegativeInteger ;
rut:testsTimeout "0"^^xsd:nonNegativeInteger ;
rut:totalIndividualErrors "5605"^^xsd:nonNegativeInteger ;
prov:endedAtTime "2014-07-24T11:19:28.535Z"^^xsd:dateTime
;
prov:startedAtTime "2014-07-24T11:13:04.176Z"^^xsd:dateTime
;
prov:used <2475cc5c-2a9c-11b2-80ce-56847afe9799> .
>
>
> Holger
>
>
--
Dimitris Kontokostas
Department of Computer Science, University of Leipzig
Research Group: http://aksw.org
Homepage:http://aksw.org/DimitrisKontokostas
Received on Thursday, 24 July 2014 11:33:31 UTC