我是 SPARQL 的初学者,想知道是否有一个查询可以帮助我返回传递关系。例如下面的 n3 文件,我想要一个返回“a 与 c 相同”或类似内容的查询。谢谢
@prefix : <http://websitename.com/links/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
:a owl:sameas :b.
:b owl:sameas :c.
如果您使用适当启用的 SPARQL 1.1 引擎,则可以使用属性路径,并且您已标记您的问题 Jena,因此我假设您正在使用支持此功能的 ARQ 引擎。
因此,您可以编写如下查询:
PREFIX owl: <http://www.w3.org/2002/07/owl#>
SELECT *
WHERE
{
?x owl:sameAs+ ?y
}
请注意+
在谓词之后,用于指示它应该查找由一个/多个步骤组成的关系。
可以找到属性路径的语法here并且非常像正则表达式。使用此查询的唯一缺点是您无法获得有关路径有多长或中间节点是什么的任何信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)