我刚刚学习Sparql,我有以下表格:
国家,欧洲国家,城市和首都
我想知道如何进行以下查询,因为我不理解它们......
1)哪个国家有城市"巴黎"作为资本。 2)打印所有欧洲国家 3)打印所有国家和地区的首都。
非常感谢你。
答案 0 :(得分:1)
这就是说,有DBpedia提供类似于描述的信息,并且是一个很好的游乐场。要查询它,http://yasgui.org(这是一个更好的sparql编辑器)或http://factforge.net/sparql(这是我们自己的集成,几个月,但有一些额外的好处)。
哪个国家/地区以“巴黎”为首都
select * {
?x a dbo:Country; dbo:capital dbr:Paris
}
yasgui结果会让您感到惊讶:
dbr:Bourbon_Restoration
dbr:France
dbr:Francia
dbr:French_Fifth_Republic
dbr:Kingdom_of_France
dbr:Office_International_d'Hygiène_Publique
dbr:Second_French_Empire
dbr:West_Francia
我了解所有历史悠久的王国,但dbr:Office_International_d'Hygiène_Publique有点令人震惊。原因是它是一个国际组织(uses Infobox Former International Organization
,而redirects to https://en.wikipedia.org/wiki/Template:Infobox_former_country,“目前正与Template:Infobox国家合并”。请参阅http://mappings.dbpedia.org/index.php/Cleaning_up_Countries
factforge会从链接的数据集中返回更多结果(所有这些都意味着法国):
geodata:3017382/
http://ontologi.es/place/FR
http://psi.oasis-open.org/iso/3166/#250
leaks:country-FRA
wfr:fr
所有欧洲国家
那更好,因为恰好有维基百科类别:
select * {
?x a dbo:Country; dct:subject dbc:Countries_in_Europe
}
所有国家/地区及其首都
select * {
?x a dbo:Country; dbo:capital ?capital
}
这将返回一堆历史悠久的国家和首都,以及一些国际组织,例如
League_of_Nations
International_Authority_for_the_Ruhr
Japanese_occupation_of_British_Borneo
那么,你可能会有更好的运气与维基数据(https://query.wikidata.org/)。在https://twitter.com/search?q=wikidatafacts%20country,您可以找到一系列与国家/地区相关的有趣查询。
维基数据上的国家和首都
select ?country ?countryLabel ?city ?cityLabel {
?country wdt:P36 ?city
filter exists {?country wdt:P31/wdt:P279* wd:Q6256}
SERVICE wikibase:label {
bd:serviceParam wikibase:language "en,pl,ru,es" .
}
} order by ?countryLabel
它使用了一堆Qnn
和Pnn
但您可以在鼠标悬停时解码它们。
wdt:P36
意味着“资本”? Search for property:capital filter exists
?因为某个国家/地区可能有几个wd:Q6256
“国家/地区”的子类型,如果我在主查询中使用该子类型,则会为每个国家/地区返回多个结果。这样它只返回一个。<强>地图
您也可以轻松display it on a map:
#defaultView:Map
select ?country ?countryLabel ?city ?cityLabel ?coords {
?country wdt:P36 ?city
filter exists {?country wdt:P31/wdt:P279* wd:Q6256}
?city wdt:P625 ?coords
SERVICE wikibase:label {bd:serviceParam wikibase:language "en,pl,ru,es"}
}
查看几张照片https://twitter.com/valexiev1/status/844870994942603264