Re: shapes-ISSUE-96 (Violation IDs): Should the validation results contain stable IDs to indicate the type of violation [SHACL Spec]

The proposal appears to be to add some other information to validation result
identifying the SHACL syntactic construct that was violated.

So if the shape is something like

sx:s1 sh:scopeClass ex:c1 ;
 sh:property
  [ sh:predicate ex:foo ;
    sh:minCount 2 ] .

and the data is something like

ex:i1 rdf:type ex:c1 ;
 ex:foo ex:v1 .

then the validation result would be something like

[ rdf:type sh:ValidationResult ;
  sh:severity  sh:Violation ;
  sh:focusNode ex:i1 ;
  sh:focusNode ex:i1 ;
  sh:predicate ex:foo ;
  sh:xxxx sh:minCount ] .

The claim is that this helps users and verification tests by identifying what
happened.

However, this information alone does not solve either case.  Consider a shape
that has two property constraints on the same property, both with sh:minCount
values.   No help here either for users or for validation.


sh:message can already be used for this purpose.  It does not identify which
part of a property constraint was violated but if anyone cares the property
constraint can be split up into several property constraints, each which a
different message.  (This does demonstrate, however, another issue with
omnibus property constraints.)

So, I don't see any advantage of adding this extra information to validation
results.


peter

Received on Friday, 2 October 2015 17:13:16 UTC