- From: Holger Knublauch <holger@topquadrant.com>
- Date: Tue, 18 Oct 2016 11:15:22 +1000
- To: public-data-shapes-wg@w3.org
- Message-ID: <636d9973-87cd-21be-545d-53c199f5e33a@topquadrant.com>
Hi Jan, thanks for your input. I have added a sentence similar to your first sentence, defining that validation is a process etc. I also switched back to "node" instead of "focus node". I do not agree though with the other edits that you suggested: - I think the current ordering of going from nodes to graphs makes more sense because definitions then stack on top of each other. - Your proposal uses the term "failure" with a different meaning than what we are using it for: A Failure is an unexpected situation such as an infinite loop. The term "validation result" is used throughout the document to express regular "violations". Irene, removing the term "focus node" has hopefully addressed your last paragraph from your email? If not, could you suggest specific changes so that I know what to do? Karen, what else is missing to close ISSUE-188? https://github.com/w3c/data-shapes/commit/7b12b1b9a67f16028499f987c52cc4e653723551 Thanks, Holger On 18/10/2016 6:53, Irene Polikoff wrote: > Forwarding as per Jan’s request below > > Irene Polikoff > > From: Jan Voskuil <jan.voskuil@taxonic.com > <mailto:jan.voskuil@taxonic.com>> > Date: Monday, October 17, 2016 at 11:29 AM > To: Irene Polikoff <irene@topquadrant.com > <mailto:irene@topquadrant.com>>, Holger Knublauch > <holger@topquadrant.com <mailto:holger@topquadrant.com>> > Subject: Re: shapes-ISSUE-188 (define validation): "Validation" needs > to be defined > > Can you please forward this to the list. I just went through the > process of being allowed to post. However, the actual forwarding may > take another two days. Thanks, -Jan > > > > ------------------------------------------------------------------------ > *Van:* Jan Voskuil > *Verzonden:* maandag 17 oktober 2016 17:23 > *Aan:* Irene Polikoff; Holger Knublauch; public-data-shapes-wg@w3.org > <mailto:public-data-shapes-wg@w3.org> > *Onderwerp:* Re: shapes-ISSUE-188 (define validation): "Validation" > needs to be defined > > I agree. > > Maybe something along the following lines would be easier to understand. > > > VALIDATION DEFINITION (B) > > >/Validation/ is the process of determining whether a data graph > /validates/ against a shapes graph. > > >A data graph /validates/ against a shapes graph if and only if the > data graph /validates/ against each shape in the shapes graph. > > >A data graph /validates/ against a shape if and only if each node in > the data graph /validates/ against the shape. > > > A node/validates/ against a shape if, and only if, the shape does not > /produce a failure/ for that node. > > > A shape/produces a failure/ for a node if, and only if, the shape defines a > filter that selects the node, and the shape contains [or: defines] a > constraint such that the node does not meet that constraint. > > > The concept of focus node is not used here, which I think is the > cleaner option. > > > -Jan > > > ------------------------------------------------------------------------ > *Van:* Irene Polikoff <irene@topquadrant.com > <mailto:irene@topquadrant.com>> > *Verzonden:* maandag 17 oktober 2016 21:06 > *Aan:* Holger Knublauch; public-data-shapes-wg@w3.org > <mailto:public-data-shapes-wg@w3.org> > *Onderwerp:* Re: shapes-ISSUE-188 (define validation): "Validation" > needs to be defined > I think the current definition doesn’t define “validation”. It defines > what it means for a data graph to be valid or to validate. > > The definition of the validation would need to start with something > like what Karen proposes e.g., validation is a process that determines > if a data graph validates against a shape graph. > > As for the the definition of what it means to be valid, it seems that > there are some possible holes: > > Are these conditions cumulative – meaning all need to be true or does > any single one is enough? > What does it mean for a node to validate against a shape? The first > bullets says what it means for a*focus node* to validate. The second > one says that each node must validate without mentioning the word > focus. May be it is a bit picky, but I felt there was some discontinuity. > > > Irene > > From: Holger Knublauch <holger@topquadrant.com > <mailto:holger@topquadrant.com>> > Date: Monday, October 17, 2016 at 1:44 AM > To: <public-data-shapes-wg@w3.org <mailto:public-data-shapes-wg@w3.org>> > Subject: Re: shapes-ISSUE-188 (define validation): "Validation" needs > to be defined > Resent-From: <public-data-shapes-wg@w3.org > <mailto:public-data-shapes-wg@w3.org>> > Resent-Date: Mon, 17 Oct 2016 05:45:02 +0000 > > Hi Karen, > > the current snapshot defines the term "validation" in the beginning of > section 3: > > The definition forvalidatingadata graph <#dfn-data-graph>against > ashapes graph <#dfn-shapes-graph>as well as anode <#dfn-node>from the > data graph against ashape <#dfn-shape>from the shapes graph is > provided below: > > VALIDATION DEFINITION > > * Afocus node <#dfn-focus-node>validates against ashape > <#dfn-shape>if and only if either it does not validate against > somefilter <#dfn-filter>of the shape or none of theconstraints > <#dfn-constraint>in the shape produce avalidation result > <#dfn-validation-results>or afailure <#dfn-failure>for the focus > node. > * Adata graph <#dfn-data-graph>validates against ashape > <#dfn-shape>if and only if each node that is in any of thetargets > <#dfn-target>of the shape validates against the shape. > * Adata graph <#dfn-data-graph>validates against ashapes graph > <#dfn-shapes-graph>if and only if the data graph validates against > eachshape <#dfn-shape>in the shapes graph. > > I believe this covers the terminology, esp with the different nuances > of validation, e.g. of a focus node. It also correctly identifies > failures as another possible outcome. > > Your proposal merely bases validation on another undefined term "obeys > the constraints", which IMHO just shifts the problem. The ultimate > definition may require an elaborated link to the evaluation mechanisms > including SPARQL queries, but Dimitris' prose above clarifies that > eventually it's about not producing any validation results and failures. > > What is missing for this ISSUE? > > Holger > > > On 9/10/2016 12:51, RDF Data Shapes Working Group Issue Tracker wrote: >> shapes-ISSUE-188 (define validation): "Validation" needs to be defined >> >> http://www.w3.org/2014/data-shapes/track/issues/188 >> >> Raised by: Karen Coyle >> On product: >> >> The term validation as used in SHACL needs to be defined. (The English language term is ambiguous.) The XML schema has a clear defiinition [1]. Based on that, I suggest the following as a definition of validation in SHACL: >> >> [Definition:] Validation is the process of determining whether a node in the data graph obeys the constraints expressed in a shapes graph. The validation result is true when the node in the data graph obeys the constraints, and false when it does not. >> >> Note that XML allows for 3 validation results: true, false, and undetermined. I do not know if SHACL also follows this pattern, so my true/false declaration above may need adjustment if that is the case. Here is what XML schema says: >> >> Note: As just defined, validation produces not a binary result, but a ternary one: if the information item is ·strictly assessed·, it will be either valid or invalid, but if no applicable declaration is found, its validity will be unknown (and its [validity] property will have the value notKnown). Whether in a particular application notKnown should be treated in the same way as invalid or differently is outside the scope of this specification; sometimes one choice is appropriate, sometimes the other. >> >> >> [1] See:https://www.w3.org/TR/2012/REC-xmlschema11-1-20120405/#key-vn >
Received on Tuesday, 18 October 2016 01:15:57 UTC