Re: the current situation with respect to ISSUE-134

On 04/21/2016 02:42 AM, Holger Knublauch wrote:
> On 12/04/2016 0:37, Peter F. Patel-Schneider wrote:
>> On 04/07/2016 05:53 PM, Holger Knublauch wrote:
>>> This is a valid example. The current spec states that
>>> - the classes only count as disjoint if they have rdf:type triples (i.e.
>>> subtype inference is not applied)
>> The spec does not so state.
> 
> The new version of the spec includes a different policy (from Dimitris):
> 
> However, all constraint types are pairwise disjoint and no more than one
> property of |sh:property|, |sh:inverseProperty| and |sh:constraint| can link
> to the same RDF node within the same shapes graph.
> 
> Holger

This would seem to make sh:PredicateBasedConstraint disjoint from
sh:PropertyConstraint.  It also rules out some situations that were perfectly
well behaved before, such as:

ex:s1 a sh:Shape ;
  sh:property ex:c1 .
ex:s2 a sh:Shape ;
  sh:constraint ex:c1 .
ex:c1 a sh:PropertyConstraint ;
  sh:predicate ex:p1 ;
  sh:nodeKind sh: IRI .

As well, it is not the case that rdf:type triples can always be omitted.  The
constraint type triple is needed in

ex:s3 a sh:Shape ;
 ex:constraint [ a sh:PropertyConstraint ;
                 sh:predicate ex:p3 ;
                 sh:nodeKind sh:IRI ] .

The handling of default value type remains problematic.  Does the default
value type rule actually add a triple to the shapes graph, as suggested in
Appendix D?  This matters, as then it would be possible to see the triple from
SPARQL bodies of template conditions.

peter

Received on Thursday, 21 April 2016 10:49:25 UTC