Hallo, danke für die Anfrage. Das Beispiel kommt dann gleich mit auf die Beispielseite.
> Wie bekomme ich mit einer Overpass-Abfrage die Punkte innerhalb eines > Gebietes hin, also zum Beispiel alle Apotheken in Deutschland? area[name="Deutschland"];node(area)[amenity=pharmacy];out; Die Abfrage sollte deutlich unter 3 Minuten brauchen (hat beim Testen 30 Sekunden gebraucht), ansonsten bitte [timeout:900];area[name="Deutschland"];node(area)[amenity=pharmacy];out; > Wenn ich mit <area-query> und eingebetteter <query> arbeite, versucht > Overpass erst einmal, alle Punkte innerhalb des Gebiets zu kriegen, > und bricht dann irgendwann ab. Gibt's keine Möglichkeit, die > Und-Verknüpfung anders zu formulieren als über Schachteln? Die Und-Verknüpfung wird üblicherweise mit mehreren Clauses in der gleichen Query realisiert. Hier sind dies (area) und [amenity=pharmacy] Bei der Ausführung des Query-Statements werden diese dann verschachtelt, ähnlich dem Query-Plan einer SQL-Datenbank, so dass nicht alle Nodes geladen werden müssen. Das Grundprinzip ist in http://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#Clauses erläutert (leider bisher nur auf Englisch verfügbar). Etwas anders sieht es im Spezialfall einer "area"-Clause für Ways oder Relations aus. Das ist leider noch nicht implementiert (es fehlt der Schnittest Ways mit Area-Grenzen), so dass hier die umständliche Abfrage unvermeidlich ist. Dafür muss ich leider auf später vertrösten, die Funktionalität steht aber auf der ToDo-Liste. Viele Grüße, Roland _______________________________________________ Talk-de mailing list [email protected] http://lists.openstreetmap.org/listinfo/talk-de

