Vererbung von Tags bei Relations in Overpass

Hallo,
für ein Architekturprojekt möchte ich über Overpass Gebäudeumrisse abfragen. Hieraus wird ein Schwarzplan (nur Gebäude, sonst nichts weiter) erstellt. Bei vorhandenem Wikidata-Tag sind die jeweiligen Bauten anklickbar mit Link zur Wikidata-Seite.
Das funktioniert soweit auch ganz gut. Ich habe jetzt nur ein Problem mit der häufig vorkommenden Situation, dass für Gebäudekomplexe (z.B. Schulen) häufig Gebäudeumriss(e) zusammen mit Grundfläche, etc zu einer Relation gebündelt sind. Dann enthält meist nur die Relation den zugeordneten Wikidata-Tag. Ist es irgendwie möglich bei der Overpass-Query die Tags einer Relation auf die beinhalteten Elemente zu “vererben”?

https://swzpln.de/ kennst Du?

1 Like

Nein, war mir nicht bekannt. Netter Service, vor allem wegen der verschiedenen Download/Exportmöglichkeiten. Aber das hilft mir jetzt bei meiner Fragestellung nicht wirklich weiter. Bei der genannten Website ist ja keine Interaktivität/Anbindung an Wikidata vorhanden. Sprich,da stellt sich das Problem mit der Vererbung gar nicht…

Nicht dass ich wüsste, aber das kann man natürlich in einem zweiten Schritt per Skript auf die Ausgabedaten erledigen.

Das habe ich befürchtet. Hat da vielleicht jemand schon was entsprechendes in Javascript programmiert?

convert kann sowas in der Richtung. Hier ist ein Beispiel, wie das ungefähr aussehen kann: openstreetmap - Overpass API convert statement - Geographic Information Systems Stack Exchange

Wahrscheinlich klappt das nicht ganz perfekt, am besten einfach mal ausprobieren.

1 Like

Also dann ist es wohl doch möglicherweise über eine reine Overpass-Query-Lösung machbar? Hab mir gerade das convert-Beispiel mal angesehen und entdeckt, dass es auch Schleifen- und Entscheidungsstrukturen in Overpass gibt. Ist ja ganz schön mächtig! Werde mich wohl etwas in die Sprache reinfuchsen müssen, um eine Lösung zu finden :wink:

nach einigem rumprobieren scheitere ich aber jetzt daran, dass durch Anwendung von convert die eigentlichen Geodaten (lat/lon) im resultset verloren gehen :frowning:

Poste am besten mal, was bisher nicht klappt.

Ich versuche jetzt zuerst die mit dem convert statement bearbeiteten ways (mit Wikidata-Tag, aber ohne geo-Daten) auszugeben und danach nochmals die gleichen ways in ursprünglicher Form (mit Geodaten). Die ways haben jeweils die gleiche ID. Ob das so ganz regelkonform ist wage ich zu bezweifeln, aber meine Auswertsoftware kommt damit klar und mergt die ways einfach zu jeweils einem way. Ich teste das noch. Wenn’s jemand interessiert, kann ich demnächst auch die Ergebnisse/Beispielquery hier posten.

convert kann zwar auch Geometrie ausgeben, allerdings ist das Format nicht mehr mit osm xml/json kompatibel: overpass turbo

mmd, gibt es noch eine bessere Dokumentation zur Overpass QL als Overpass API/Overpass QL - OpenStreetMap Wiki ? Dort ist bei convert vermerkt: “The statement discards geometry (lat/lon info).” und der Parameter ::geom=geom() wird ebenfalls nicht erwähnt. Die Doku zu Overpass QL ist irgendwie ziemlich dürftig :frowning:

Es gibt noch einen Blog und ein Benutzerhandbuch. Ich bin mir aber gerade nicht sicher, ob das convert Thema dort beschrieben wird.

Danke für die Links zu Blog und Handbuch.
Ich hab jetzt eine Query soweit lauffähig.
Beispiel: overpass turbo
Teil der Relation Kunsthalle Karlsruhe (mit Wikidata-Tag) sind 2 ways “Junge Kunsthalle” und “Orangerie”, sowie eine Multipolygon-Relation “Alte Kunsthalle”. Wenn man sich die zurückgelieferten Daten anschaut, sieht man in der Ausgabe als erstes die mit convert erstellten Tag-Elemente mit jeweils der gleichen ID wie die erst später ausgegebenen eigentlichen Elemente.
Die Query werde ich im produktiven Einsatz zur Abfrage von overpass-api.de nutzen. Falls jemand also Verbesserungsvorschläge (in Bezug auf Performance, etc) hat, bitte her damit.