SPARQL:获取我们在某些DBpedia实体中看到的所有属性

时间:2019-04-06 16:41:59

标签: sparql dbpedia

我基本上尝试使用sparql恢复公司实体“ Apple_Inc”的所有属性。 看http://dbpedia.org/page/Apple_Inc。例如,我看到的属性是“ is dbo:developer”和“ is dbo:cpu”。

但是使用此代码

select distinct ?property where {
  ?instance a <http://dbpedia.org/ontology/Company> . 
  ?instance rdfs:label ?name.
  filter(regex(?name, "Apple Inc")).
  ?instance ?property ?obj .
}

我只恢复部分属性,而没有两个示例。

1 个答案:

答案 0 :(得分:1)

嘿,简单解决您的问题。当显示在DBpedia前端is <something> of中时,表明您正在寻找的页面上描述的实体是该属性的对象,而不是主题。

例如,三元组(dbr:IOS_8,dbo:developer,dbr:Apple_Inc.)将在前端显示为is developer of,因为苹果是三元组的对象而不是对象。

以下查询应完成该工作:

  select distinct ?prop where {
  {?apple a <http://dbpedia.org/ontology/Company> . 
  ?apple rdfs:label ?name.
  filter(regex(?name, "Apple Inc"))}.

  {{?x ?prop ?apple} union {?apple ?prop ?y}}}
相关问题