Geschichtsstationen zusammenfassen?

Das ist doch mal eine Aussage :smiley:

Keine Sorge, du machst schon alles richtig. Du hast nur zur falschen Zeit (ich war gerade online) dieses Thema angefasst :wink:

Es gibt fast immer unterschiedliche Meinungen zu einigen Sachen in OSM - und heute war ich halt in der Lage, meine Meinung mit Fakten zu untermauern. Dass die Ergebnisse so krass ausfallen würden, war mir auch nicht klar.

Weiterhin gutes Mappen

walter

So ist auch mein Verständnis zu Relationen. Da ich mich mit DB-Abfragen oder der Overpass-Api noch nicht auskenne, würde ich mich über ein Beispiel zu den Geschichtsstationen freuen.

Das sieht wie eine Datenbankabfrage aus. Kannst du bitte kurz für Datenbankunkundige erklären was das ist und ob ich und wie diese Datenbankabfrage auch an die OSM-Datenbank stellen kann.

Ich will in Zukunft lieber Datenbankabfragen stellen, als Relationen dafür zumissbrauchen.

Vielen Dank
ABausD

Hallo ABausD

Das ist die Anfrage an eine lokal aufgesetzte DB (Postgres + GIS-Erweiterung) mit einem bestimmten Schema und Vorverarbeitung. An die OSM-Datenbank kommst man/frau nur über die API heran.

Der beste Weg ohne Datenbank ist die Nutzung der Overpass-API (Wiki-Seite). Besonders komfortabel geht das mit dem Overpass Turbo. Natürlich gibt es für die Overpass-API eine eigene Syntax (genau genommen mehrere). Die Overpass-API basiert auf einer eigenen Datenbank mit optimierter Struktur für räumliche Abfragen.

Edbert (EvanE)

Soweit ich weiss, hat osm für Anfragen einen Spiegelserver, der nur readonly ist, so dass nichts zerstört werden kann.
http://wiki.openstreetmap.org/wiki/DE:Xapi

Ich habe das selbst (dort) noch nicht probiert, ich würde aber als Datenbank-Unkundiger dringendst davon abraten!
Man sollte schon etwas sql können und auch die Theorie von relationalen Datenbanken ein wenig verinnerlicht haben.
Thema Selektion, Projektion, Joins, Mengentheorie usw…
Eine kleine Anfrage kann sonst bei so einer riesigen Datenbank den ganzen Server lahmlegen oder im besten Fall einfach mal ewig vor sich hin rödeln.

Hier ein paar Links zum Einstieg:
http://wiki.openstreetmap.org/wiki/DE:Xapi
http://de.wikipedia.org/wiki/SQL
http://de.wikipedia.org/wiki/Relationale_Datenbank
http://de.wikipedia.org/wiki/Relationale_Algebra

Soll jetzt nicht abschrecken, aber das ist kein Pappenstiel oder was für mal so nebenbei zum schnell mal rumprobieren :confused:

Ich weiss ja nicht, was du genau vor hast, aber wenn es dir z.B. darum gehen sollte, nur etwas mehr Übersicht beim editieren zu bekommen, dann geht das mit josm auch wunderbar mit dem Filter:
http://josm.openstreetmap.de/wiki/Help/Dialog/Filter

Dort kann man ziemlich gut alles ausblenden, was stört oder andersherum ausschliesslich das anzeigen lassen, was einen intereressiert.
Hat jetzt aber nicht viel mit der Datenbank zu tun (höchstens abgewandelt im kleinen Rahmen, vermutlich wird sich hinter dem Filter etwas sql-ähnliches verbergen?!).

Eine kleine Frage und schon drei total verschiedene Antworten :wink:
Hier meine:
Ja, das ist eine SQL-Abfrage “meiner” lokalen OSM-DB in einem speziellen Format (für die Profis: ein etwas erweitertes Snapshot-Schema * ), die dir so nichts bringt. Diese Abfrage sollte nur das Dilemma mit den Sammelrelationen aufzeigen - sie hilft dir bei deinem Projekt nicht weiter.

Aber: man kann solche Informationen (welcher POI liegt in welchem Stadteil?) wohl auch mit der Overpass-Api aus den Live-Daten extrahieren.

Oder: die Kollegen, die eigene Karten erstellen, benutzen dazu eine mit osm2pgsql erstelle lokale DB (osmosis-Schema), die relativ einfach mit ähnlichen SQL-Befehlen abzufragen ist.

Es hängt halt von deinem Wissen, deine Ressourcen und deinen OSM-Plänen ab. Ich würde zum Start die Overpass-Api vorschlagen.

Gruss
walter

*) ich habe in der Relationen-Tabelle noch die Spalte geom drin. Diese enthält die Geometrie der Fläche, die von dem Multipolygon gebildet wird. Etwa ähnlich den Linestrings mit negativer Id in dem osm2pgsql-Schema.

Persönlich am nützlichsten finde ich die Variante als Übersichtskarte, siehe die neu eingefügten Links in
http://wiki.openstreetmap.org/wiki/Dorsten#Sehensw.C3.BCrdigkeiten_und_Denkm.C3.A4ler

Im Wiki-Quelltext ist die verwendete Abfrage explizit aufgeführt: Finde alle Nodes, die in Dorsten liegen und das Tag historic=memorial bzw. memorial:type=stolperstein haben.

Und wo da? Kann jedenfalls nix finden - bis auf die üblichen manuellen Listen :frowning:

edit: habs gefunden - im Link zur Karte. Das ist aber verd… gut versteckt. Aber klasse, dass das funktionier :wink:

Perfekt!! Genau sowas meinte ich doch! :D:D

Hier:
http://wiki.openstreetmap.org/w/index.php?title=Dorsten&action=edit&section=12

jo, hab es eben ja mehr per Zufall gefunden. Ein kleiner Satz zur Lösung könnte anderen Mappern wohl weiterhelfen.
Dass sich Wiki-Artikel manche Daten direkt aus OSM besorgen, entspricht genau meinen Vorstellungen. prima gemacht!

Gruss
walter

Ich sehe gerade in der Übersichtskarte der Geschichtsstationen: Etwas weiter nördlich werden jetzt auch weitere Denkmähler angezeigt.
Im Quellcode wurden jetzt nur explizit die Stolpersteine ausgeklammert, die nicht angezeigt werden sollen.
Kann man die Suchanfrage noch weiter verfeinern? Es sollen nur Denkmähler angezeigt werden, die in “name” ein “Dorstener Geschichte - Station*” oder so enthalten.
Gibt es wildcards? Ich kenne die overpass api (noch) nicht, habe gestern das erste mal davon gehört.

offtopic: Ich bin echt begeistert von diesem Forum! Danke für eure Hilfe!

Versuch mal statt name=“Dorstener Geschichte - Station*” name**~**“Dorstener Geschichte - Station”.

Danke, das hat funktioniert!
[[Dorsten/Geschichtsstationen | Dorstener Geschichtsstationen]] ([overpass-turbo.eu/map.html?Q={{urlencode:area[name=“Dorsten”];node(area)[historic=memorial][“memorial:type”!=stolperstein**][“name”~“Dorstener Geschichte - Station”];**out;}} Übersichtskarte])

Der Link kommt aus dem Wiki-Quelltext-Abschnitt

[overpass-turbo.eu/map.html?Q={{urlencode:area[name="Dorsten"];node(area)["memorial:type"=stolperstein];out;}} Übersichtskarte]

Aus Sicht des Wikis ist das ein gewöhnlicher externer Link mit Linkziel

http://overpass-turbo.eu/map.html?Q={{urlencode:area[name="Dorsten"];node(area)["memorial:type"=stolperstein];out;}}

und Beschreibungstext “Übersichtskarte”.
Der Beschreibungstext ist frei wählbar, auch mit weiteren Leerzeichen. In der “”-Syntax wertet das Wiki stets die Zeichenfolge bis zum ersten Leerzeichen als Link aus.

Im Link sorgt die Hilfsfunktion “{{urlencode:}}” des Wikis dafür, dass die Sonderzeichen im Quelltext lesbar und im Link WWW-tauglich kodiert sind (percent encoding). Das Wiki plaziert also für den Browser den Link

http://overpass-turbo.eu/map.html?Q=area%5Bname%3D%22Dorsten%22%5D%3Bnode%28area%29%5B%22memorial%3Atype%22%3Dstolperstein%5D%3Bout%3B

was bis auf Sonderzeichen

http://overpass-turbo.eu/map.html?Q=area[name="Dorsten"];node(area)["memorial:type"=stolperstein];out;

entspricht.

Die Website http://overpass-turbo.eu/ kümmert sich dann darum, daraus eine interaktive Karte zu machen, die an die Overpass API die dekodierte Abfrage

area[name="Dorsten"];node(area)["memorial:type"=stolperstein];out;

sendet.

Insgesamt gilt also: Das Innenleben von “{{urlencode: }}” bekommt die Abfrage, hinter “}}” und ein Leerzeichen kommt der frei wählbare Beschreibungstext, und der URL-Anfang und die sonstige Syntax sind fix.

Danke,

ist im Nachherein leicht nachvollziehbar - aber ich hätte mir bestimmt einen mächtig dabei abgebrochen, da ich weder Overpass noch Wiki im Detail beherrsche.

Gruss
walter

man (ich) könnte ja im wiki mal eine Seite zu dem ganzen Thread hier anlegen. Sowas wird doch sicherlich öfters mal gebraucht, dass jemand eine Gruppierung von Objekten visuell auf der Karte zusammengefasst haben möchte. Zum einen vermeidet man dann (vielleicht) die erneute Diskussion mit den Relationen und dem Datenmüll, zum anderen kann man auf Overpass verweisen, was ich vorher auch noch nicht kannte.
Ich muss mal im wiki suchen, ob es sowas in der Art vielleicht nicht doch schon gibt

Danke für die vielen Antworten auf meine Fragen.
Das was Ziltoidium auf der Dorstener Steite jetzt umgesetzt hat, hatte ich gesucht.

Ja, gute Idee. Vielleicht in die Overpass Seite mit einbauen und auf das Anwendungs Beispiel in Dorsten verlinken.

… das ist auch mein Ziel

Jetzt habe ich von euch so viele Infos bekommen, die muss ich am Wochenende erst in Ruhe auspropieren.

Grüße von ABausD