- From: Holger Knublauch <holger@topquadrant.com>
- Date: Mon, 20 Feb 2017 12:36:46 +1000
- To: "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
- Message-ID: <329914a8-f7cc-f661-f42e-eecff3dbdb6f@topquadrant.com>
Here is a possible response to the first part of Peter's issue on validation reports, see https://lists.w3.org/Archives/Public/public-rdf-shapes/2017Feb/0001.html Hi Peter, > The processor must produce these validation results no matter whether > they are going to show up in the final validation report or not. > The processor must produce these validation results even if it not going > to return a validation report at all. In 3.6 we state that a SHACL-compliant processor must be *capable* of returning all these results. However, when executed with certain parameters, specific implementations may prune the results, for example to exclude results that have severity sh:Warning or sh:Info. Likewise, an engine is not required to produce nested results - these can go into a temporary graph (which is how I am implementing it too). However, the formal description is assuming that all results are reported. > This mixing of conformance requirements into the > definition of validation introduces an unnecessary and problematic > procedural aspect into the underlying definitions of SHACL. I don't see a problem and believe this is largely a matter of "taste". A procedural description is very easy to understand for implementers, and these are the main target audience of this topic. > Although it is mandated that a SHACL processor much produce these validation > results it is completely unclear how many must be produced. A SHACL > processor may end up checking whether a particular node satisfies a > particular constraint numerous times. > Must it produce a validation result for each of these times? > Must it only produce one validation result for all of these times? > Or is the number of times it produce a validation result undetermined? > This multiplicity problem can show up at top-level due to converging sh:property chains. I have just added a sentence to the introduction of section 4: --- Furthermore, the validators always produce/new/result nodes, i.e. when the textual definition states that "...a validation result/must/be produced..." then this refers to a distinct new node in a results graph. --- which I believe clarifies the three options above - it's the first. Please let me know where this response could be improved. Thanks, Holger
Received on Monday, 20 February 2017 02:37:24 UTC