使用SPARQL和Dbpedia根据long和lat查询给定半径内的城市
我一直在尝试使用DBpedia和SPARQL来获取基于地理位置的城市 例如,使用SPARQL和Dbpedia根据long和lat查询给定半径内的城市,sparql,dbpedia,Sparql,Dbpedia,我一直在尝试使用DBpedia和SPARQL来获取基于地理位置的城市 例如,http://dbpedia.org/page/Berlin具有以下属性 geo:lat: 52.516666 (xsd:float) geo:long: 13.383333 (xsd:float) 我想根据位置和给定半径查询城市。 例如,我想找到距离lat:51.5033640 10公里以内且长度为:-0.1276250的城市 我知道这给了我很多城市-- --但我不知道如何使用过滤器,以过滤出基于半径。有人知道吗?使
http://dbpedia.org/page/Berlin
具有以下属性
geo:lat: 52.516666 (xsd:float)
geo:long: 13.383333 (xsd:float)
我想根据位置和给定半径查询城市。
例如,我想找到距离lat:51.5033640 10公里以内且长度为:-0.1276250的城市
我知道这给了我很多城市--
--但我不知道如何使用过滤器,以过滤出基于半径。有人知道吗?使用精湛的地理空间功能
bif:st_相交
和bif:st_点
:
使用几何体对象(伦敦坐标没有城市,请更改为dbo:Place
,以查看伦敦周围是否有其他对象):
SELECT*{
?城市a dbo:城市;
几何?几何
过滤器(bif:st_相交(?geo,bif:st_点(-0.1276250,51.5033640),10))
}
或使用lat/long:
SELECT*{
?城市a dbo:城市;
地理:拉特?拉特;
吉奥:长?长。
过滤器(bif:st_相交(bif:st_点(?长,纬度),bif:st_点(-0.1276250,51.5033640),10))
}
使用精湛的地理空间功能bif:st_相交
和bif:st_点
:
使用几何体对象(伦敦坐标没有城市,请更改为dbo:Place
,以查看伦敦周围是否有其他对象):
SELECT*{
?城市a dbo:城市;
几何?几何
过滤器(bif:st_相交(?geo,bif:st_点(-0.1276250,51.5033640),10))
}
或使用lat/long:
SELECT*{
?城市a dbo:城市;
地理:拉特?拉特;
吉奥:长?长。
过滤器(bif:st_相交(bif:st_点(?长,纬度),bif:st_点(-0.1276250,51.5033640),10))
}
谢谢!我永远也想不到祝你有美好的一天!非常感谢。我永远也想不到祝你有美好的一天!
SELECT ?city WHERE { ?city rdf:type dbo:City }