Re: on divergence between textual and SPARQL definitions

Peter, you stated there are several places but only enumerated one 
(sh:class). Are the others also only about the EXISTS issue?

Holger


On 9/12/2016 12:46, Peter F. Patel-Schneider wrote:
> There are several places where the textual definition of validation differs
> from the SPARQL definition.
>
>
> Consider, for example the shapes graph
>
> se:s1 rdf:type sh:Shape ;
>   sh:targetNode ex:n ;
>   sh:property [ sh:predicate ex:p ;
>                 sh:class ex:c ] .
>
> and the data graph
>
> ex:n ex:p ex:m .
> ex:m rdf:type ex:c ;
>    ex:p ex:l .
>
>
> According to the textual definition of sh:ClassConstraintComponent this data
> graph conforms to this shapes graph as no validation result is produced for
> ex:n because its sole value for ex:p is a SHACL instance of ex:c in the data
> graph.
>
>
> The SPARQL definition here uses the following SPARQL query
>
> SELECT DISTINCT $this ?value
> WHERE {
>    $this ex:p ?value .
>    FILTER NOT EXISTS
>      { $value rdf:type/rdfs:subClassOf* $class . }
>    }
>
> with this pre-bound to ex:n and class pre-bound to ex:c.
>
> According to the SHACL document
> evaluating this SPARQL query will produce a non-empty solution sequence,
> namely
>    { { (this, ex:m), (value,ex:l) } }
> because
>    $this ex:p ?value .
> will produce the set of solutions
>    { { (this, ex:n), (value,ex:m) } ,
>      { (this, ex:m), (value,ex:l) } }
>
> Therefore according to the SPARQL definition of sh:ClassConstraintComponent
> this data graph does not conform to this shapes graph.
>
>
>>>>>>>>>>>>>>>>>>> ISSUE<<<<<<<<<<<<<<<<<<<<<<<<
> The textual and SPARQL definitions conflict in several places.  One or the
> other needs to be fixed or dropped.
>>>>>>>>>>>>>>>>>>> ISSUE<<<<<<<<<<<<<<<<<<<<<<<<
>
>
> Peter F. Patel-Schneider
> Nuance Communications
>

Received on Saturday, 10 December 2016 01:03:58 UTC