DBpedia中的SPARQL没有返回任何结果

时间:2015-04-01 07:53:15

标签: sparql wikipedia dbpedia

我尝试在DBpedia中的SPARQL中编写一个查询,以返回某个国家/地区的高中的所有信息。我在这里运行snorql查询link,但它返回“无结果”。我在查询中找不到任何错误。有人可以帮忙吗?

SELECT ?school
WHERE { 
?school a owl:school. 
?school owl:location ?city. 
?city owl:isPartOf ?state. 
?state owl:country <http://dbpedia.org/resource/United_States>.
}

编辑:

  1. http://dbpedia.org/ontology/school
  2. http://dbpedia.org/ontology/location
  3. http://dbpedia.org/ontology/country

1 个答案:

答案 0 :(得分:4)

你似乎对你应该使用的本体有误。您正在使用映射到前缀owl的命名空间中的各种标识符,即:

  • owl:school
  • owl:location
  • owl:isPartOf
  • owl:country

但是,由于您未指定自定义前缀映射,因此使用默认映射,owl映射到http://www.w3.org/2002/07/owl#,即OWL 2。 OWL 2不包含列出的标识符的任何定义,因此DBpedia不使用这些标识符。

DBpedia 使用名称空间School中的locationisPartOfcountryhttp://dbpedia.org/ontology/标识符到前缀dbpedia-owl。因此,在您的查询中,只需使用您实际想要使用的本体的前缀。此外,请注意 dbpedia-owl:School是大写的,dbpedia-owl:school只有一个小的 s 属性。

SELECT ?school
WHERE { 
    ?school a dbpedia-owl:School. 
    ?school dbpedia-owl:location ?city. 
    ?city dbpedia-owl:isPartOf ?state. 
    ?state dbpedia-owl:country <http://dbpedia.org/resource/United_States>.
}