Let's say I have the following shapes graph
camo:exampleShape
a sh:NodeShape;
sh:targetClass cm:Moving;
sh:property [
a sh:PropertyShape;
sh:path cm:dofNumber ;
sh:minInclusive 1;
] .
This shapes file is stored with appropriate prefixes (not shown) and I read it using the Jena API the following way.
import org.apache.jena.riot.RDFDataMgr;
import org.apache.jena.shacl.Shapes;
Graph shapesGraph = RDFDataMgr.loadGraph("path/to/shape.ttl");
Shapes shapes = Shape.parse(shapesGraph);
What I would like to know is how to programmatically read the following using the Jena API:
Thanks in advance!
You have two choices: either navigate the parse tree or work with the RDF graph (e.g. with SPARQL). The Shapes
has "getGraph" to access the shapes graph.