如何解决SPARQL查询未返回深度
我有以下SPARQL查询:
SELECT ?depthClass (count(?mid)-1 as ?depth)
WHERE {
{
SELECT ?root WHERE {
?root a owl:Class
FILTER NOT EXISTS {
?root rdfs:subClassOf ?superroot
filter ( ?root != ?superroot )
}
}
}
?depthClass rdfs:subClassOf* ?mid .
?mid rdfs:subClassOf* ?root .
}
group by ?depthClass
order by ?depth
应该返回类和给定类depthClass
的深度。但是,它不返回任何内容。我在查询中没有看到任何错误。
解决方法
调试之后,我注意到,由于我使用的是owlready2 rdflib实现,因此它可能不支持?root a owl:Class
语法,将其更改为?root rdf:type owl:Class
后,它便开始工作!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。