from rdflib import Graph, URIRef
from pyshacl import validate
shapes = Graph()
shapes.parse('testshapes.ttl', format='ttl')
data_graph = Graph()
data_graph.parse('testdata.ttl', format='ttl')
data_graph_orig = Graph()
for t in data_graph:
data_graph_orig.add(t)
r = validate(data_graph,
shacl_graph=shapes,
#ont_graph=og,
inference='rdfs',
abort_on_error=False,
meta_shacl=True,
advanced=True,
js=False,
debug=True)
conforms, results_graph, results_text = r
added_triples = data_graph - data_graph_orig
print('Added triples: ', len(added_triples))
print(added_triples.all_nodes())