Hi Andy,

Have you had a chance to look at the difference between the overloaded 
"validate" methods of "ShaclValidator", in terms of qualified value shapes.

Apologies if I bothered you with this.

Yasir



-----Original Message-----
From: Andy Seaborne <a...@apache.org> 
Sent: 27 January 2022 08:40
To: users@jena.apache.org
Subject: Re: FW: Validation issue

On 26/01/2022 22:49, Alani, Yasir wrote:
> *The node to be validated is "yas:Car_1"
> 
> Thanks again
> 
> -----Original Message-----
> From: Alani, Yasir <y.al...@tees.ac.uk>
> Sent: 26 January 2022 22:38
> To: users@jena.apache.org
> Subject: RE: FW: Validation issue
> 
> Hi Andy,
> 
> Thank you for responding.
> 
> What I meant by "work" is producing the correct/expected result, which is the 
> 2 violations you received. The issue only seems to happen when I try to 
> validate a node using the method "validate(Shapes shapes, Graph data, Node 
> node)". The node in this case is "aso:Car_1". This method doesn't seem to 
> 'like' qualified value shapes, as it returns 0 violations.

I get one violation when calling:

shacl v -data data.ttl -shapes shapes.ttl \
     -target 
'https://eur03.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.semanticweb.org%2Fyas%23Wheel_1&amp;data=04%7C01%7CY.Alani%40tees.ac.uk%7Ce6691c8465804ae8f02708d9e170a7e8%7C43d2115ba55e46b69df7b03388ecfc60%7C0%7C0%7C637788696243499932%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&amp;sdata=TY3YRMvJpeBcPAMkQKbtRMIUCAK%2BOE24Cr%2BPezQ9Ziw%3D&amp;reserved=0'

There are two target nodes. yas:Wheel_1 and yas:Car_1

"Per node"  is "find which shapes have the node as a target node and call that 
shape".

If the specified node isn't in the targets of the data+shapes, you get zero 
violations.

     Andy

> 
> However, when I validate the entire data graph using method "validate(Shapes 
> shapes, Graph data)" I do get 2 violations. Are these methods designed to 
> work this way?
> 
> I was using Jena 4.1.0 and even when I updated to Jena 4.3.2, I still get the 
> same results.
> 
> I used the old (TQ) shacl playground, which returned 2 violations as well.
> 
> Many thanks
> 
> Yasir
> 
> -----Original Message-----
> From: Andy Seaborne <a...@apache.org>
> Sent: 26 January 2022 20:41
> To: users@jena.apache.org
> Subject: Re: FW: Validation issue
> 
> Yasir,
> 
> What is "work" here?
> 
> I get 2 violations with Jena 4.3.2 - the same as (current latest) TQ 
> shacl. (1 violation on a quite old, pre 4.x.x version of Jena - which 
> version are you running?)
> 
> Which SHACL playground did you use (there are two).
> 
> The old (TopQuadrant) SHACL playground returns 2 violations.
> The Zazuko one returns 2 violations.

> 
> [ rdf:type     sh:ValidationReport ;
>     sh:conforms  false ;
>     sh:result    [
>         rdf:type                      sh:ValidationResult ;
>         sh:focusNode                  yas:Wheel_1 ;
>         sh:resultMessage
>    "Data value \"600\"^^xsd:float is not less than or equal to 200" ;
>         sh:resultPath                 ( yas:hasDiameter yas:hasValue ) ;
>         sh:resultSeverity             sh:Violation ;
>         sh:sourceConstraintComponent  sh:MaxInclusiveConstraintComponent ;
>         sh:sourceShape                []  ;
>         sh:value                      "600"^^xsd:float
>     ] ;
>     sh:result    [
>         rdf:type                      sh:ValidationResult ;
>         sh:focusNode                  yas:Car_1 ;
>         sh:resultMessage
> "QualifiedValueShape[1,_,false]: Min = 1 but got 0 validations" ;
>         sh:resultPath                 yas:hasComponent ;
>         sh:resultSeverity             sh:Violation ;
>         sh:sourceConstraintComponent
>            sh:QualifiedMinCountConstraintComponent ;
>         sh:sourceShape                []
>     ]
> ] .
> 
>       Andy
> 

Reply via email to