DBpedia:获取中国大学及其地址列表以填充谷歌地图?

时间:2013-03-25 22:16:40

标签: google-maps-api-3 sparql dbpedia street-address

我正在努力获取中国大学和他们的地址清单。最小的是城市/城镇名称。我将使用这些地址填充googlemap fiddle here

我看到了有趣的代码,例如:

SELECT ?resource ?value
WHERE { 
   ?resource a <http://dbpedia.org/class/yago/CitiesAndTownsInDenmark> .
   ?resource <http://dbpedia.org/property/populationTotal> ?value .
   FILTER (?value > 100000)
}
ORDER BY ?resource ?value

由于CitiesAndTownsInChina不起作用,

1。在哪里可以找到我定位的类的确切名称?

2。在哪里可以找到dbpedia的操作员手册?


注意:我是Wikipedia上非常活跃的用户,我很清楚那里提供的所有数据,但很难获得dbpedia本体/语法/关键字。

个人注释:http://dbpedia.org/snorql/http://dbpedia.org/sparql/http://querybuilder.dbpedia.org/

上的查询

2 个答案:

答案 0 :(得分:3)

(扩展回复How to find cities with more than X population in a certain country

CitiesAndTownsInDenmark存在,因为人们在维基百科中使用类别http://en.wikipedia.org/wiki/Category:Cities_and_towns_in_Denmark。维基百科类别非常宽松,因此风格有很多变化,所以即使存在有用的类别,名称也可能无法猜测。

此外,类别是手动维护的,可能无法始终如一地应用。

一个好的起点是查看数据。访问http://dbpedia.org/page/Beijing我看到yago:MetropolitanAreasOfChina看起来很有希望,但是如果你按照这个链接,你会发现它没有很好地填充。

因此,避免依赖这些类别的存在并直接查询一个国家的人口稠密的地方。这些信息来自维基百科信息框,它们比类别更加一致。以北京为榜样,我发现:

select ?s { 
    ?s a <http://dbpedia.org/ontology/PopulatedPlace> ; 
       <http://dbpedia.org/ontology/country> <http://dbpedia.org/resource/China>
}

(我的查询的相关属性和值是通过复制北京页面中的链接位置找到的)

结果:

"http://dbpedia.org/resource/Hulunbuir"
"http://dbpedia.org/resource/Guangzhou"
"http://dbpedia.org/resource/Chongqing"
"http://dbpedia.org/resource/Kuqa_County"
"http://dbpedia.org/resource/Changzhou"
... nearly 3000 results ...

你会注意到这个位置是多次编码的(geo:lat和long,georss:point,各种dbpprop:latd longd),似乎有两个值令人兴奋。您可以简单地以您喜欢的任何格式处理多个值,也可以尝试使用GROUP BYSAMPLE选择一个。

至于手册,我所知道的几乎所有内容都是学术论文,并不是很有用。然而,数据是合理的自我记录。

答案 1 :(得分:2)

第一个问题:
您可以通过查询预期实体集中的一个成员来查看可能的类(例如:上海)。

PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
SELECT ?type  WHERE {
    <http://dbpedia.org/resource/Shanghai> rdf:type ?type.
    FILTER regex(str(?type), ".*China", "i").
} LIMIT 100

给出了这个结果:

dbpedia:class/yago/MetropolitanAreasOfChina [http]
dbpedia:class/yago/PortCitiesAndTownsInChina [http]
dbpedia:class/yago/MunicipalitiesOfThePeople'sRepuBlicOfChina [http]
dbpedia:class/yago/PopulatedCoastalPlacesInChina [http]

它们是 CamelCase 版本的类别,您可以在维基百科页面的底部找到它们。我被RepuBlic的错误大写愚弄了一段时间,最后看到它只包含4个城市,所以它对你的用处有限。

因此我建议使用@ user205512答案并通过链接2个属性来获取城市。

第二个问题:
我建议你在http://answers.semanticweb.com

上搜索/询问
相关问题