有没有一种方法可以使用SPARQL从DBPedia中获取实体的“Is skos:Brothered of”?

有没有一种方法可以使用SPARQL从DBPedia中获取实体的“Is skos:Brothered of”?,sparql,jena,dbpedia,Sparql,Jena,Dbpedia,基本上,我试图得到这个实体的“子类”。例如: 我试着用- select ?p1 where { <http://dbpedia.org/resource/Category:Norwegian_silent_film_actors> skos:narrower ?p1 . } -及- select ?p1 where { <http://dbpedia.org/resource/Category:Norwegian_silent_film_actors> rd

基本上,我试图得到这个实体的“子类”。例如:

我试着用-

select ?p1 where {
   <http://dbpedia.org/resource/Category:Norwegian_silent_film_actors> skos:narrower ?p1 .
}
-及-

select ?p1 where {
   <http://dbpedia.org/resource/Category:Norwegian_silent_film_actors> rdfs:subclass ?p1 .
}
-但因为这不是它的谓词,所以它不起作用。如果在谓词之后添加*,则两者实际上都只返回实体本身


有没有办法得到那些东西

重要的是要记住,是skos:更广泛的关系是相反的skos:更广泛的关系-这意味着但不一定表明skos的存在:更狭窄的陈述。DBpedia并没有每个可以从中推断出的显式语句,默认情况下推理规则也不是活动的

您可以使用这样的查询中确实存在的显式语句,它将属性path+用于一个或多个sko:brothered关系-

select ?p1 
where 
  {
    ?p1  
       skos:broader+
         <http://dbpedia.org/resource/Category:Norwegian_silent_film_actors> 
  }

这是一个很有可能让人忍受的地方。不幸的是,没有预定义的与skos:broader和skos:slower相关的推理规则,并且该公共端点不接受添加的特殊规则。你可以在个人端点上创建一些,不管是不是。

重要的是要记住,是skos:更广泛的关系是相反的skos:更广泛的关系-这意味着但不一定表示skos的存在:更狭窄的陈述。DBpedia并没有每个可以从中推断出的显式语句,默认情况下推理规则也不是活动的

您可以使用这样的查询中确实存在的显式语句,它将属性path+用于一个或多个sko:brothered关系-

select ?p1 
where 
  {
    ?p1  
       skos:broader+
         <http://dbpedia.org/resource/Category:Norwegian_silent_film_actors> 
  }

这是一个很有可能让人忍受的地方。不幸的是,没有预定义的与skos:broader和skos:slower相关的推理规则,并且该公共端点不接受添加的特殊规则。您可以在个人端点上创建一些,无论是否如此。

我建议您更改图片以显示挪威电影演员,或者更改测试以使用埃及电影演员。混搭很可能会引起混乱。我建议你将图片改为挪威电影演员,或者改为使用埃及电影演员。混合你所拥有的东西可能会引起混乱。