Re: on entailment

On 27/09/2016 1:50, Peter F. Patel-Schneider wrote:
> On 09/26/2016 12:12 AM, Holger Knublauch wrote:
>>
>> On 26/09/2016 16:31, Peter F. Patel-Schneider wrote:
>>> "the property sh:entailment can be used to instruct a SHACL Full processor
>>> to ensure that a given entailment is activated on the data graph."
>>>
>>> Can SHACL Core processors "activate" entailment?
>> I have removed the term "Full" from this section.
>>
>> https://github.com/w3c/data-shapes/commit/ebeb18f61eea4bf3164ee183ca166a70a2f5cfce
>>
>>
>> Indeed there could be implementations of less than SHACL Full that still
>> provide entailment support. However, the sh:entailment property lies outside
>> of SHACL, and this is clarified by the position of this paragraph in the Part
>> II of the spec.
> That works.
>
>>> "In addition to shape definitions, the shapes graph may contain additional
>>> information for the SHACL processor such as entailment directives."
>>>
>>> "If an entailment regime is provided in the data graph which is not
>>> supported by the SHACL Full processor, the validation must produce a
>>> failure."
>>>
>>> Where can the entailment directive/regime be?
>> I assume you mean what the subject of sh:entailment is? We have left this
>> undefined, i.e. it can be attached to any subject. A typical design pattern
>> would be to place it into an owl:Ontology node but since the shapes graph may
>> contain any number of them (owl:imported) we didn't want to open yet another
>> topic that may lead to controversial discussions
> The first quote above says that the entailment directive/regime is in the
> shapes graph.  The second quote says that if an unsupported entailment
> directive/regime is in the data graph then something is wrong.  This doesn't
> make sense.

Yes, this was a bug in the spec. The sh:entailment triples must be in 
the shapes graph. Clarified:

https://github.com/w3c/data-shapes/commit/f7998dbaccf10e00333f05f87cb744c20f19d4a1

Thanks
Holger

Received on Monday, 26 September 2016 23:33:29 UTC