Rdf 使用SPARQL查询检查属性是否可用

Rdf 使用SPARQL查询检查属性是否可用,rdf,sparql,owl,Rdf,Sparql,Owl,我想检查一个属性是否可用。我试过: ASK { pz:isBase owl:isInverseFunctional . } 但这是一个语法错误。如何检查属性是否正常工作?请尝试: ASK {pz:isBase rdf:type owl:InverseFunctionalProperty} 解释:RDF表示的模式以及SPARQL查询的模式是主谓宾语的三元组,或者换句话说是一个二进制谓词。您正在考虑一元谓词isInverseFunctional(),但RDF不做一元谓词。相反,这种类型或排序

我想检查一个属性是否可用。我试过:

ASK {
  pz:isBase owl:isInverseFunctional .
}
但这是一个语法错误。如何检查属性是否正常工作?

请尝试:

ASK {pz:isBase rdf:type owl:InverseFunctionalProperty}
解释:RDF表示的模式以及SPARQL查询的模式是
主谓宾语的三元组
,或者换句话说是一个二进制谓词。您正在考虑一元谓词
isInverseFunctional()
,但RDF不做一元谓词。相反,这种类型或排序信息被编码为带有特殊谓词的二进制谓词
rdf:type
,您可以将其视为
isKindOf
是类的成员


因此,要发现表示域模型中特定谓词的资源是否为逆函数属性,需要询问该资源是否属于,也就是说,拥有所有反向函数属性的类,或者您是否试图查看该属性是否为反向函数属性?通常,您可以检查各种owl公理如何映射到rdf(以及如何使用SPARQL查询它们)在这种特殊情况下,OWL公理
InverseFunctionalObjectProperty(OPE)
被转换为RDF三元组
T(OPE)RDF:type OWL:InverseFunctionalProperty。