Re: ISSUE-22: Proposal based on sh:hasShape

Hash: SHA256

Recursions through negations (including XOR, QCRs, etc.) are much tougher.

There has been quite a bit of discussion on this in the working group
mailing list already.


On 06/11/2015 04:29 PM, Arnaud Le Hors wrote:
> Holger Knublauch <> wrote on 06/10/2015 06:11:24
> PM:
>> From: Holger Knublauch <> To: RDF Data Shapes
>> Working Group <> Date: 06/10/2015 06:13 PM 
>> Subject: ISSUE-22: Proposal based on sh:hasShape
>> I would like to write down the solution to the recursion issue that I 
>> have currently implemented in my prototype, and welcome comments
>> whether this would resolve the issue.
>> Recursive evaluation of shapes can only be triggered via the
>> sh:hasShape function. sh:hasShape takes three arguments:
>> sh:hasShape(?focusNode, ?shape, ?shapesGraph)
>> Proposal: sh:hasShape must fail with a constraint violation, if it 
>> encounters a recursive call involving the same combination of
>> arguments.
> I'd like to know what makes you choose to declare this a failure.
> Couldn't we just as well decide that in this case the recursion stops
> there assuming the constraint is satisfied (for the next iteration)? This
> would mean that Peter's example in ISSUE-66 would be valid:
> ex:i rdf:type ex:C . ex:i ex:p ex:i .
> with the shape
> exs:S rdf:type sh:Shape; sh:classScope ex:C ; sh:property [ sh:predicate
> ex:p ; sh:minCount 1 ; sh:maxCount 1 ; sh:valueShape exs:S ] .
> As a user this seems quite natural to me but maybe there are other
> examples for which this wouldn't be the case. I don't know. -- Arnaud  Le
> Hors - Senior Technical Staff Member, Open Web Technologies - IBM 
> Software Group
>> The constraint violation could have a system generated message such as 
>> "Failed to evaluate constraint due to unsupported recursive use of 
>> sh:hasShape" and point at the focus node that was visited twice.
>> This would still allow most interesting cases that involve recursion 
>> between shapes, but excludes cases where the same instances are
>> visited more than once.
>> What am I missing?
>> Thanks, Holger
Version: GnuPG v2


Received on Friday, 12 June 2015 00:16:23 UTC