2012-03-06 75 views
2

我需要通过名字获得城市人口。我确信SPARQL可以提供这一点,但我不知道如何编写查询。我有一个查询,它提供了COuntry的资本和名称的坐标,所以我认为它应该是类似的东西。帮帮我!如何通过SPARQL名称获得城市人口

PREFIX o: <http://dbpedia.org/ontology/> 
PREFIX p: <http://dbpedia.org/property/> 
PREFIX geo: <http://www.w3.org/2003/01/geo/wgs84_pos#> 
PREFIX foaf: <http://xmlns.com/foaf/0.1/> 
SELECT ?country ?population ?capital ?lat ?long WHERE { 
    ?country a o:Country ; foaf:name "Germany"@en; o:capital [ geo:lat ?lat ; geo:long ?long ; p:name ?capital ] 
} 

回答

6

所有你需要的是:

PREFIX o: <http://dbpedia.org/ontology/> 
PREFIX p: <http://dbpedia.org/property/> 
PREFIX foaf: <http://xmlns.com/foaf/0.1/> 

SELECT ?name ?pop WHERE { 
    ?country a o:Country ; 
      foaf:name ?name ; 
      p:populationEstimate ?pop . 
} 

唯一棘手的部分是找出链接国家和人民财产的名称。

+0

谢谢伟大的东西! – 2012-03-09 10:19:17

+0

但是,如果我想要得到一个城市(即纽约)而不是一个国家的人口,我需要修改这个吗? – 2012-03-09 10:20:15

相关问题