Sparql属性过滤器

Bay*_*tch 3 rdf semantic-web sparql dbpedia

为了知道如何正确地制作sparql查询,如何弄清楚本体属性关系是什么?

例如,如果我想要赢得世界系列赛的棒球大联盟球队.

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX dbpedia: <http://dbpedia.org/resource/> 
PREFIX owl: <http://dbpedia.org/ontology/> 
PREFIX db: <http://dbpedia.org/>
PREFIX dbpprop: <http://dbpedia.org/property/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#broader/>
PREFIX category: <http://dbpedia.org/resource/Category:>
PREFIX purl: <http://purl.org/dc/terms/>
PREFIX ps: <http://purl.org/dc/terms/subject/>


select  distinct *  
where { 
  ?team rdf:type owl:BaseballTeam .
  { ?team rdf:type yago:MajorLeagueBaseballTeams . }
  #{ ?team dbprop:champion dbpedia:Major_League_Baseball }
}
Run Code Online (Sandbox Code Playgroud)

如果我取消注释查询中的最后一行,我得不到任何结果.查看:http://dbpedia.org/page/Boston_Red_Sox

我知道了:

is dbpprop:champion of  dbpedia:American_League
Run Code Online (Sandbox Code Playgroud)

我不确定如何构建语法来仅过滤已赢得世界系列赛(Champion)的团队,而我真的很困惑如何发现实际的查询前缀应该是什么.

mag*_*dae 6

   is dbpprop:champion of  dbpedia:American_League 
Run Code Online (Sandbox Code Playgroud)

这句话意味着American_leage有一个财产冠军,宣布赢得联赛的球队.

Is-Of只是告诉您哪些具有该资源的属性,您正在查看,作为范围.如果单击进入域的方式,则可以看到它具有指向初始资源的属性.只需查看American_league的dbpedia资源即可.

因此,您必须像这样构造查询以获得所需的结果.(你几乎拥有它,它只是反过来)

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX dbpedia: <http://dbpedia.org/resource/>  
PREFIX owl: <http://dbpedia.org/ontology/> 
PREFIX db: <http://dbpedia.org/>
PREFIX dbpprop: <http://dbpedia.org/property/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#broader/>
PREFIX category: <http://dbpedia.org/resource/Category:>
PREFIX purl: <http://purl.org/dc/terms/>
PREFIX ps: <http://purl.org/dc/terms/subject/>


select distinct *  
where { 
  ?team rdf:type owl:BaseballTeam .
  ?team rdf:type yago:MajorLeagueBaseballTeams .
  // Like the one below
  dbpedia:Major_League_Baseball dbprop:champion ?team
}
Run Code Online (Sandbox Code Playgroud)