From bc0f2624333c150f37bc22d419cc8bca70bda4dd Mon Sep 17 00:00:00 2001
From: Holger Knublauch
+ Note that the Terminology
rdf:type
in the
graph as well as the SHACL superclasses of these values in the graph.
+ Note that some SHACL implementations can be parameterized so that the rdfs:subClassOf
triples
+ that determine the SHACL subclasses may be queried from the shapes graph instead of the data graph.
+ See .
Class-based Targets (sh:targetClass)
rdfs:subClassOf
triples may be queried from the shapes graph,
+ see , in which case the rdfs:subClassOf
triple
+ from the example above would not be required in the data graph.
+ Data Graph
several related ontologies, pass all of them to the SHACL processor (together or one by one), do not rely on owl:imports
links.
+ Some features of SHACL (such as
+ ,
+ and
+ ) rely on the notion
+ of SHACL type to determine whether a node is a SHACL instance of a given class.
+ By default, this is determined by looking up rdfs:subClassOf
and rdf:type
triples
+ in the data graph.
+ However, in some cases this is impractical as rdfs:subClassOf
triples are often stored as part
+ of the class/shape definitions and not the instance data.
+
+ SHACL processors SHOULD offer a parameter subClassOfInShapesGraph
that, if set to true
+ should alter the definition of SHACL Type so that the rdfs:subClassOf
triples are queried
+ from the shapes graph instead of the data graph.
+ The rdf:type
triples are always expected in the data graph.
+
sh:nodeByExpression
, see Issue 408sh:ByTypes
for sh:closed
; see Issue 172sh:class
and sh:datatype
can now also be lists, indicating a union of choices; see Issue 160
- Note that the rdfs:subClassOf
triples may be queried from the shapes graph,
- see , in which case the rdfs:subClassOf
triple
- from the example above would not be required in the data graph.
+ Note that the rdfs:subClassOf
triples may be queried from the shapes graph
+ (see ) in which case the rdfs:subClassOf
triple
+ from the example above would not be required to be in the data graph.
Some features of SHACL (such as
,
- and
+ , and
) rely on the notion
of SHACL type to determine whether a node is a SHACL instance of a given class.
By default, this is determined by looking up rdfs:subClassOf
and rdf:type
triples
in the data graph.
- However, in some cases this is impractical as rdfs:subClassOf
triples are often stored as part
- of the class/shape definitions and not the instance data.
+ However, this is impractical in some cases, as rdfs:subClassOf
triples are often stored as part
+ of the class and/or shape definitions and not the instance data.
- SHACL processors SHOULD offer a parameter subClassOfInShapesGraph
that, if set to true
+ SHACL processors SHOULD offer a parameter subClassOfInShapesGraph
that, if set to true
,
should alter the definition of SHACL Type so that the rdfs:subClassOf
triples are queried
from the shapes graph instead of the data graph.
- The rdf:type
triples are always expected in the data graph.
+ The rdf:type
triples are always expected to be in the data graph.
SHACL processors SHOULD offer a parameter subClassOfInShapesGraph
that, if set to true
,
should alter the definition of SHACL Type so that the rdfs:subClassOf
triples are queried
- from the shapes graph instead of the data graph.
+ from the shapes graph in addition to the data graph.
The rdf:type
triples are always expected to be in the data graph.
sh:ByTypes
for sh:closed
; see Issue 172sh:class
and sh:datatype
can now also be lists, indicating a union of choices; see Issue 160sh:ReifierShape
; see Issue 300rdfs:subClassOf
and rdf:type
triples
in the data graph.
- However, this is impractical in some cases, as rdfs:subClassOf
triples are often stored as part
+ However, this is insufficient in some cases, as rdfs:subClassOf
triples are often stored as part
of the class and/or shape definitions and not the instance data.
From 47ab3a74e9cfcee937ed9a22a3450098d907ca73 Mon Sep 17 00:00:00 2001
From: Holger Knublauch Terminology
The SHACL types of an RDF term in an RDF graph is the set of its values for rdf:type
in the
graph as well as the SHACL superclasses of these values in the graph.
Note that some SHACL implementations can be parameterized so that the rdfs:subClassOf
triples
- that determine the SHACL subclasses may be queried from the shapes graph instead of the data graph.
+ that determine the SHACL subclasses may be queried from the shapes graph in addition to the data graph.
See .