在SPARQL中查找超类并按距离排序 [英] Find superclasses and sort by distance in SPARQL

查看:13
本文介绍了在SPARQL中查找超类并按距离排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在查找某个类型的所有超类,以及类型的所有超类,依此类推。我使用+运算符执行此操作:

SELECT ?superclass WHERE{
    <myType> <superclassPredicate>+ ?superclass
}

我想让这些超类以合理的顺序返回(例如,从最具体到最不具体)。有办法保证这一点吗?我熟悉Order By,但我不确定要放什么内容。

换一种说法:我可以跟踪+操作符进行了多少次"跳转"吗?

编辑

它似乎确实自行完成了这项工作(至少在我的实现中是这样),但我想知道情况是否总是如此。

推荐答案

您可以将@joshua Taylor的答案here的以下部分按其间的类数排序:

prefix : <http://example.org/>
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>

select ?class where { 
  :Win7 rdfs:subClassOf* ?mid .
  ?mid rdfs:subClassOf* ?class .
}
group by ?class
order by count(?mid)

(@Joshua Taylor)

这篇关于在SPARQL中查找超类并按距离排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆