- From: Holger Knublauch <holger@topquadrant.com>
- Date: Fri, 30 Sep 2016 10:14:35 +1000
- To: public-data-shapes-wg@w3.org
On 30/09/2016 10:06, Karen Coyle wrote: > > > On 9/29/16 3:54 PM, Holger Knublauch wrote: >> Hi Jose >> >> others may correct me, but my understanding is that all conformant SHACL >> validation engines need to produce all the "mandatory" fields of the >> results format. > > which are sh:focusNode and sh:severity - which is a bit awkward since > the focus node (isn't that "target node" now?) doesn't tell you what > constraints were evaluated. Yes, we need to clarify the mandatory fields (see your recent ticket). There is a subtle difference between focus node and target node: - the focus node is the currently evaluated node - the target node is a node specified as target by a shape - target nodes becomes focus nodes for the duration of the validation - but there are other ways for nodes to become focus nodes, e.g. via sh:shape > > > They may decide to return less, but that should only be >> an option. >> >> Our test cases should also include the full info, because engines that >> only produce true or false can still use these test cases, while the >> inverse is not the case. > > Since severity is mandatory, how will T/F work? Assuming that true means "no validations were found", then a test case would pass if no results are produced, or at least no results with severity violation. Holger > > kc > >> >> Holger >> >> >> On 29/09/2016 19:59, RDF Data Shapes Working Group Issue Tracker wrote: >>> shapes-ISSUE-181: SHACL conformance for partial validation reports >>> [SHACL Spec] >>> >>> http://www.w3.org/2014/data-shapes/track/issues/181 >>> >>> Raised by: Jose Emilio Labra Gayo >>> On product: SHACL Spec >>> >>> When preparing the test-suite, it is not clear to me if we have to >>> declare/check all the validation reports that must be returned by a >>> SHACL processor or just a true/false. >>> >>> The spec contains the following phrase: >>> >>> "The validation process returns a validation report containing all >>> validation results. For simpler validation scenarios, SHACL processors >>> SHOULD provide an additional validation interface that returns only >>> true for valid or false for invalid." >>> >>> A SHACL processor that wants to handle use case 3.31 >>> (https://www.w3.org/TR/shacl-ucr/#uc34-large-scale-dataset-validation) >>> about validating very large datasets may decide to return just the >>> first violation it finds, instead of continue processing/generating >>> all the possible violations. >>> >>> Is that SHACL processor conformant with the spec? In that case, when >>> defining the test-suite, is it enough if we just declare true/false as >>> the possible result of SHACL validation? Or if a SHACL processor >>> returns just the first violation report that it finds? >>> >>> In any case, I think the spec should be more clear about when a SHACL >>> processor is conformant or not if it doesn't return all the violation >>> reports and just returns the first one or signals that there was an >>> error. >>> >>> >>> >>> >> >> >> >
Received on Friday, 30 September 2016 00:15:35 UTC