我正在进入RDF建模,并且难以将属性应用于子类。我想在RDF中为一组人员及其功能建模,然后要查询人员。例如,给出以下RDF内容:
java.lang.RuntimeException: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of `com.foo.bar.ErrorDetail` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
at [Source: (String)"{"heading":"Validation failed","detail":"field must not be null"}"; line: 1, column: 2]
...我想找到能够一般奔跑的人。为此,可以使用以下方法:
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
prefix d: <http://mytest.de/data#>
prefix s: <http://mytest.de/types#>
d:runningFast rdfs:subClassOf d:running .
d:myPerson s:does d:runningFast .
s:does rdfs:domain s:Person.
s:does rdfs:range s:Capability.
但是随着示例变得越来越复杂,我想通过select ?person {
?person s:does ?o.
?o rdfs:subClassOf* d:running.
}
进行间接操作。我想这样:
?o
我想念什么?我怀疑这是s:does必需的一些附加信息,因为我可以使示例使用select ?person {
?person s:does d:running.
}
而不是rdf:type
。
我期望s:does
也能正常工作,因为d:runningFast是d:running的子类。