2012-03-06 17 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

ありがとう、素晴らしいもの! –

+0

国の代わりに都市(ニューヨークなど)の人口を取得したい場合は、これを変更する必要がありますか? –

関連する問題