OpenstreetMap Overpass API - 验证标记(如果存在)

时间:2018-05-04 20:55:27

标签: openstreetmap overpass-api

我有这个查询

[out:json];

(
 way['addr:street'='Kurzenmoor']['addr:housenumber'='12']['addr:postcode'='25370']['addr:country'='DE'];
 node(around:700)['highway'='bus_stop'][!'ref'];
);

out;

由于未在API中指定国家/地区,因此不会返回结果。

这有效:

[out:json];

(
 way['addr:street'='Kurzenmoor']['addr:housenumber'='12']['addr:postcode'='25370'];
 node(around:700)['highway'='bus_stop'][!'ref'];
);


out;

有没有办法将这些结合起来?如果没有国家,我想要结果,如果有一个国家存在它应该匹配所需的一个(在这个例子中“DE”,如果匹配,我想要结果,否则我不想要它。

1 个答案:

答案 0 :(得分:0)

Overpass API不是地理编码器。

更好的方法是首先通过地理编码确定位置,例如使用OSM-based geocoders,Photon或其中一个{{3}}。在第二步中,使用Overpass API查找此位置附近的公交车站。