-
-
Notifications
You must be signed in to change notification settings - Fork 73
Open
Labels
bugSomething isn't workingSomething isn't working
Description
I'm submitting a
- [X ] bug report.
- feature request.
Current Behaviour:
Expected Behaviour:
running pyshacl from the command results in this
(kglab) ➜ validation git:(master) ✗ pyshacl -s shapes/oih_checkDownload.ttl -f human ./datagraphs/lipd.json
Validation Report
Conforms: False
Results (1):
Constraint Violation in MinCountConstraintComponent (http://www.w3.org/ns/shacl#MinCountConstraintComponent):
Severity: shacl:Violation
Source Shape: [ shacl:minCount Literal("1", datatype=xsd:integer) ; shacl:path [ shacl:inversePath rdf:type ] ]
Focus Node: :Course
Result Path: [ shacl:inversePath rdf:type ]
Message: Less than 1 values on :Course->[ shacl:inversePath rdf:type ]
but the script simpleshacl.py in https://github.com/gleanerio/notebooks/tree/master/notebooks/validation when run generates
(kglab) ➜ validation git:(master) ✗ python simpleshacl.py
Usage of abort_on_error is deprecated. Use abort_on_first instead.
Traceback (most recent call last):
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1174, in uri_ref2
ns = self._bindings[pfx]
KeyError: 'rdf'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "simpleshacl.py", line 25, in <module>
conforms, report_graph, report_text = kg.validate(
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/kglab/kglab.py", line 1181, in validate
g.parse(
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/graph.py", line 1261, in parse
raise se
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/graph.py", line 1252, in parse
parser.parse(source, self, **args)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1921, in parse
p.loadStream(stream)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 438, in loadStream
return self.loadBuf(stream.read()) # Not ideal
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 444, in loadBuf
self.feed(buf)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 470, in feed
i = self.directiveOrStatement(s, j)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 490, in directiveOrStatement
j = self.statement(argstr, i)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 740, in statement
j = self.property_list(argstr, i, r[0])
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1088, in property_list
i = self.objectList(argstr, j, objs)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1132, in objectList
i = self.object(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1418, in object
j = self.subject(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 747, in subject
return self.item(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 839, in item
return self.path(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 846, in path
j = self.nodeOrLiteral(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1446, in nodeOrLiteral
j = self.node(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 919, in node
i = self.property_list(argstr, j, subj)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1088, in property_list
i = self.objectList(argstr, j, objs)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1132, in objectList
i = self.object(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1418, in object
j = self.subject(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 747, in subject
return self.item(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 839, in item
return self.path(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 846, in path
j = self.nodeOrLiteral(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1446, in nodeOrLiteral
j = self.node(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 919, in node
i = self.property_list(argstr, j, subj)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1088, in property_list
i = self.objectList(argstr, j, objs)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1132, in objectList
i = self.object(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1418, in object
j = self.subject(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 747, in subject
return self.item(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 839, in item
return self.path(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 846, in path
j = self.nodeOrLiteral(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1446, in nodeOrLiteral
j = self.node(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1050, in node
j = self.uri_ref2(argstr, i, res)
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1182, in uri_ref2
self.BadSyntax(argstr, i, 'Prefix "%s:" not bound' % (pfx))
File "/home/fils/.conda/envs/kglab/lib/python3.8/site-packages/rdflib/plugins/parsers/notation3.py", line 1653, in BadSyntax
raise BadSyntax(self._thisDoc, self.lines, argstr, i, msg)
rdflib.plugins.parsers.notation3.BadSyntax: at line 10 of <>:
Bad syntax (Prefix "rdf:" not bound) at ^ in:
"...b':type ]" ;\n shacl:resultPath [ shacl:inversePath '^b'rdf:type ] ;\n shacl:resultSeverity shacl:Violatio'..."You can also reference RDFLib/pySHACL#36 which may be related.
Steps to reproduce:
use the command above and the script simpleshacl.py in https://github.com/gleanerio/notebooks/tree/master/notebooks/validation environment file https://github.com/gleanerio/notebooks/blob/master/environment.yml
Environment:
- python version 3.8.10
- OS details Fedora 34
(kglab) ➜ validation git:(master) ✗ conda list | grep -i shacl
pyshacl 0.16.1 pyhd8ed1ab_0 conda-forge
Reactions are currently unavailable
Metadata
Metadata
Labels
bugSomething isn't workingSomething isn't working