[Talk-de] Overpass Abfrage

Roland Olbricht roland.olbricht at gmx.de
Mo Jan 28 09:39:25 UTC 2019


Hi,

> Was ich mich schon lange frage bzw. wünsche ist, dass auch bei anderen
> Output-Formaten als CSV (also den out settings xml,json,custom,popup)
> die Rückgabe-Attribute eingeschränkt werden könnten.

Grundsätzlich geht das mit "convert", hat aber gewollte Einschränkungen.
Beispiel:

(
	node[amenity=nursing_home]({{bbox}});
	way[amenity=nursing_home]({{bbox}});
	relation[type=multipolygon][amenity=nursing_home]({{bbox}});
);
convert poi ::geom=geom(),name=t["name"];
out center;

Als Seiteneffekt kommen dann statt Objekten vom Typ z.B. "way" solche 
mit dem Tagnamen "poi" heraus. Außerdem sieht die Geometrie etwas anders 
aus. Im JSON-Modus ist die Geometrie GeoJSON-konform, im XML-Modus eine 
Übersetzung davon.

Der Grund ist, dass ich vermeiden möchte, dass jemand Tags abschneidet 
oder umschreibt und die Daten wieder hochlädt. Die Datenstrukturen 
sollten also hinreichend anders aussehen, um Wiederhochladen nach dem 
automatischen Umschreiben zu verhindern. Bei den produzierten Formaten 
ist noch Gestaltungsspielraum, so dass ich für Rückmeldung insbesondere 
zu Anwendungsfällen dankbar bin.

Mit dem Ausrufezeichen kann man noch Keys ausschalten, falls man nicht 
nur eine Positivliste möchte:

convert poi ::geom=geom(),::=::,!name;

Referenz:
https://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#The_statement_convert

Es gibt zwei Blogbeiträge zu dem Thema:

https://dev.overpass-api.de/blog/final_0_7_54.html
befasst sich mit convert

https://dev.overpass-api.de/blog/flat_world.html
befasst sich mit der Geometrie in diesem Zusammenhang.
Und ich ergebe nicht den Anspruch, Großkreise toll berechnen zu können, 
sondern es geht darum, wie ich abzufangen versuche, dass GeoJSON im 
Gegensatz zu OSM die Erde als flaches Rechteck betrachtet.

Viele Grüße,
Roland



Mehr Informationen über die Mailingliste Talk-de