Tom,
I read Section 2[0] as:
For a resource to be understood as a shape by the SHACL engine, it must be a
subject of a triple with rdf:type predicate and the object either sh:Shape
or one of its subclasses.
So, exactly the same definition of an instance as every place else in the
spec. I would have thought that this information most likely to be in the
shapes graph as it is part of the shape definition. As in, for example:
ex:PersonShape
a sh:Shape ;
sh:scopeClass foaf:Person ;
sh:property [
sh:predicate foaf:name ;
sh:minCount 1
] .
Irene
From: Tom Johnson <johnson.tom@gmail.com>
Date: Sunday, March 13, 2016 at 11:10 PM
To: Irene Polikoff <irene@topquadrant.com>
Cc: "Peter F. Patel-Schneider" <pfpschneider@gmail.com>, Karen Coyle
<kcoyle@kcoyle.net>, RDF Data Shapes Working Group
<public-data-shapes-wg@w3.org>
Subject: Re: type and instance and subclass in SHACL documents
To drive the point home: some cases are a significantly muddy. See, for
example, Section 2[0]:
shapes are instances of the class sh:Shape (or subclasses of sh:Shape).
Here, I think we mean to say an RDF(S) instance(?). Using the only alternate
definition I can find in SHACL, there would need to be a triple of the
pattern `?s rdf:type sh:shape` in the data graph for a resource to be a
shape. In either case, it's unclear whether subclass transitivity applies
here.