测量RDF/OWL图中类之间的距离

Jua*_*tán 6 rdf semantic-web ontology graph sparql

也许有人可以给我一个暗示.是否有可能测量属于​​同一本体的2个概念/类之间的距离?

例如,假设我有天文学课程和望远镜课程的本体论.两者之间存在联系,但它不是直接链接.天文学有一个名为Science的父类,而Telescope有一个名为Optical Instrument的父类,它属于名为Instrumentation的父类,它与一个名为Empirical Science的类有关,该类最终属于一个名为Science的类.

所以Telescope和Astronomy之间存在间接联系,我想找出从另一个类开始到达一个类所需的步骤数.

是否有一个简单的SPARQL查询可以解决这个问题?或者有更好的方法来完成这项工作?或者不可能使用语义Web范例找到它?

任何提示都将非常感激.

Rob*_*obV 5

SPARQL提供了在图中搜索任意长度路径的功能,但没有机制告诉您该路径的长度.

所以你可以这样做:

SELECT * WHERE { ?s ex:property+ ?o }
Run Code Online (Sandbox Code Playgroud)

语法非常像正则表达式,所以你可以做替代,限制基数等


And*_*nov 4

据我了解,SPARQL 不包含任何能够测量任意长度的间接链接的递归结构。您能做的最好的事情就是准备一组查询distance_1(a, b)distance_2(a, b)...以检查两个概念之间的特定距离。

另一种选择是使用非 SPARQL 技术发现此信息,例如使用 RDFlib 在 Python 中编写图遍历算法。