指向外部文件的属性的shacl验证错误

问题描述 投票:0回答:1

数据文件位于此URL:https://schema.repronim.org/rl/activities/PHQ-9/items/phq9_8

我已经为上述数据文件编写了shacl形状。但是,当我尝试验证时出现错误。在上述数据文件中,键responseOptions指向外部jsonld文件-发生错误的时间。如果我将外部文件嵌入数据文件本身,则没有错误。我已经将此形状用于responseOptions

 sh:property [
        sh:path reproterms:valueconstraints ;
        sh:or ( [ sh:nodeKind sh:IRI ] [ sh:node reproterms:ResponseOptionsShape ] ) ;
   ] .

抛出的错误是:

Traceback (most recent call last):
  File "validation/test.py", line 146, in <module>
    serialize_report_graph=True)
  File "/Users/sanuann/envs/trial/lib/python3.7/site-packages/pyshacl/validate.py", line 259, in validate
    do_owl_imports=False)  # no imports on data_graph
  File "~/envs/trial/lib/python3.7/site-packages/pyshacl/rdfutil/load.py", line 110, in load_from_source
    first_char = source[0]
IndexError: string index out of range

以上形状正确吗?我在做什么错?

python validation rdf json-ld shacl
1个回答
0
投票

您的数据类型约束sh:datatype sh:IRI已关闭。 sh:datatype三元组的对象必须是rdf数据类型,例如xsd:string。我认为您想检查sh:nodeKind sh:IRI

© www.soinside.com 2019 - 2024. All rights reserved.