[英]SPARQL query to get all the individuals with a specific property
我有一个具有两种关系的本体, amigo_de
和amigo_de_amigo_de
。
这些关系的域和范围是相同的: pessoa
。
包含这个本体的文件是一个.nt 文件。
我需要的是一个查询,以获取 object 具有amigo_de_amigo_de
谓词的所有行。
我是 SPARQL 的新手,我在学习它时遇到了麻烦。
有用的信息:
amigo_de_amigo_de
URI: file://ontologiaTeste.ntriples#amigo_de_amigo_de
pessoa
URI: file://ontologiaTeste.ntriples#pessoa
ontologiaTeste.ntriples
(我知道文件扩展名是错误的,稍后我会更正。)
我没有尝试很多事情,但我正在研究 SPARQL 来尝试解决这个问题。
你需要的是这样的:
SELECT ?obj
WHERE {
_:a <file://ontologiaTeste.ntriples#amigo_de_amigo_de> ?obj
}
在这里,我们陈述了一个图模式,三元组必须满足该图模式才能作为查询结果的一部分返回。
所以所有对象?obj
都有一个谓词amigo_de_amigo_de
,并且对于主题一个空白节点_:a
,因为你对该信息不感兴趣。
如果您还需要一个主题,那么您可以通过以下查询拨打 go:
SELECT ?sub ?obj
WHERE {
?sub <file://ontologiaTeste.ntriples#amigo_de_amigo_de> ?obj
}
正如 Stefan 所指出的,这些是一些基本的查询。 您可以在定义它们的 W3C 文档中找到每个语义 web 概念的有用示例。 请随时在这里提问,但 go 首先通过示例来提高您的学习曲线::))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.