place und admin_level in Österreich

Hallo Forummitglieder!

Ich bin relativ neu hier in der Communtiy und ich wollte etwas Fragen. Mir ist nämlich aufgefallen, wenn man jetzt eine Gemeinde hat, also auf admin_level 8, und zu dieser Gemeinde dann ein kleinerer Ort (hamlet) gehört, dann wird der Name bei der Suche automatisch (meiner Meinung nach) richtig zusammengebaut, also:

<hamlet/kleiner Ort>, , , ,

So z. B.:
Sankt Gandolf, Glanegg, Feldkirchen, Carinthia, 9555, Austria

So bekommt man beim Suchen nach Sankt Gandolf auch gleich die richtige Hierachie. Dies kann man auch mit OpenStreetMap Nominatim überprüfen. Soweit so gut, jedoch wenn man nun keinen kleinen Ort, also hamlet bzw. isolated_dwelling hat, sondern ein Dorf, also village oder irgendwas “größeres”, dann gibt es Probleme. Dann wird nämlich die übergestellte Gemeinde ausgelassen und bei der Suche wird der Ort nur noch so zusammengebaut:

<village oder größer>, , ,

So z. B.:
Friedlach, Feldkirchen, Carinthia, 9555, Austria

Hier sollte (zumindest meiner Meinung nach) ja auch die Gemeinde dastehen, da in diesem konkreten Fall, sowohl Friedlach, als auch Sankt Gandolf Ortschaften von Glanegg sind (Siehe Wikipedia). Unter dem OpenStreetMap Nominatim sieht man dann, dass die Gemeinde und die Ortschaft den gleichen “Address rank” haben und deshalb wird nur der Ort selber angezeigt.
Jetzt komme ich zu dem, am Anfang erwähnten, admin_level zurück. Wenn man dem Ort nun ein admin_level unter 8 geben würde, würde die Benennung wieder richtig funktionieren, aber dazu jetzt auch meine eigentliche Frage. Sollte man das admin_level für solche Sachen überhaupt verwenden und würde in diesem Beispiel das Level von 9 mit dieser Tabelle vom Wiki übereinstimmen? Oder müsste man doch eher 10 verwenden?
Dann habe noch diese Tabelle aus dem Wiki gefunden, jedoch steht hier auch nur, dass das admin_level von 7 bis 10 seien sollte, abhängig vom Land.
Ich bedanke mich schon einmal fürs Durchlesen und bin schon auf eure Antworten gespannt :slight_smile:

Hallo 2tefan, mal herzlich Willkommen in der Kommunity.
wie Du korrekt erkannt hast, gibt es bei Adressen noch einige unerledigte Baustellen.

Ich gehe davon aus dass wir die von Dir beschriebenen Probleme auf lokaler Ebene schwerlich lösen können, sondern es Aufgabe der OSM Arbeitsgruppe Nominatim wäre, ihre konzeptionellen Gedanken in OSM Wiki ausreichend zu beschreiben.

Reverse Engineering ist zwar ein typischer Aspekt wie man proprietäre Lösungen trotzdem allgemein nutzbar machen kann. Warum wir dieses Konzept aber auch innerhalb von OSM anwenden, und eine unserer Arbeitsgruppen, ihre Arbeit derart schlecht dokumentiert, ist unerklärlich.
Lg Johann

Also ich habe mir nun OSM Nominatim noch einmal etwas genauer angesehen und vor allem Mal geschaut wie so die Adresse “zusammengebaut” wird.

Hier habe ich eine Anfrage zu Friedlach 51 (also den Koordinaten davon) gemacht und in der JSON-Datei sieht man eigentlich ganz gut, wie die Adresse immer so entsteht.

Die bekomme Adresse lautet:
51, Friedlach, Krobathen, Glanegg, Feldkirchen, Kärnten, 9555, Österreich

So sollte es eigentlich sein:
Hausnummer, Straße, Ort(steil), Gemeinde, Bezirk, Bundesland, PLZ, Land

Jedoch macht dies hier keinen Sinn, da der Ort “Krobathen” wo ganz anders liegt. “Friedlich” müsste eigentlich der Ort sein. (Im obigen Beispiel ist es nur die Straße, die so heißt.) So müsste die richtige Adresse wie folgt lauten:

51, Friedlach, Friedlach, Glanegg, Feldkirchen, Kärnten, 9555, Österreich

Wenn man sich jetzt die JSON ansieht, welche die API liefert, sieht man dass hier der Ort wie folgend beschrieben wird und dann einfach die einzelnen Teile zusammengebaut werden:


[...]
          "country": "Österreich",
          "postcode": "9555",
          "state": "Kärnten",
          "county": "Feldkirchen",
          "city": "Glanegg",
          "district": "Krobathen",
          "street": "Friedlach",
          "housenumber": "51",
[...]

Wenn man sich nun das ganze auch auf der Website ansieht, merkt man, dass Friedlach als Ort eigentlich da wäre, jedoch wurde es durch Glanegg, aufgrund eines kleineren admin_levels ersetzt.

Laut der offizellen Dokumentation wird der Name halt laut dem Address_rank zusammengebaut, jedoch habe ich bis jetzt leider keine Möglichkeit gefunden, diesen zu beeinflussen, außer indem man halt kein village, sondern z. B. ein hamlet verwendet. Das würde dann halt im Umkehrschluss heißen, dass man eigentlich alle Orte immer im folgenden Schema aufbauen müsste, damit die Benennung richtig funktionieren sollte:

house_number, highway, hamlet, village, region, state, postcode, country

Das würde für Österreich bedeuten, dass jede Gemeinde ein village sein müsste und die einzelnen Ortschaften einer Gemeinde (unabhängig der Größe) ein hamlet. Aber ich finde, dass das wirklich nicht umsetzbar wäre und dadurch ja die Bedeutung von hamlet, village, city, … komplett verloren gehen würde.

Falls jemand einen Tag kennt, welcher den Address rank beeinflusst, wäre das eine sehr große Hilfe, da man so Nominatim so beeinflussen könnte, das die richtigen Namen dabei herauskommen, jedoch müsste man dann wahrscheinlich für ganz Österreich irgendwo definieren, welcher Rang jetzt Gemeinde, Ortschaft, Bezirk, etc. bedeutet.

Außerdem sind wir auch nicht das einzige Land mit diesen Problemen, in Deutschland, Schweden, Norwegen, … gibt es genau das gleiche Problem…
Siehe:
Norwegen
Deutschland, Norwegen, Schweden

Ich habe mir dann die Änderungen am Code angesehen, aber so wie ich es verstanden habe, werden hier nur die Standardwerte, also für den address_rank geändert, was vielleicht die Reihenfolge beeinflusst, aber dies löst das prinzipielle Problem nicht, dass OSM ja nicht wissen kann, welches village jetzt mehr “Wert” ist, ohne dass es der Mapper definiert.

Weil wenn man sich das Beispiel von vorher noch einmal ansieht, dann merkt man, dass Glanegg und Friedlach den gleichen address_rank haben und Nominatim nur anhand des admin_levels entscheidet, was jetzt angezeigt wird und was nicht. Nun würde ich einfach gerne den address_rank von Friedlach auf 20 setzen und das admin_level gegenfalls anpassen, damit Friedlach dann (den falschen Ort) Krobathen ersetzt. Dadurch würde man das ganze Problem lösen, jedoch müsste man dann diesen address_rank überall anpassen.
Wenn man den address_rank nicht anpassen kann, dann müsste man, wie ich bereits im 1. Post erwähnt hatte, wahrscheinlich alle admin_levels bearbeiten, oder, da man das an in (wahrscheinlich) jedem Ort in Österreich machen müsste, damit es wirklich funktioniert, man lässt es einfach so wie es ist und wir hoffen, dass Nominatim das Problem selbstständig löst.

Danke fürs Durchlesen und ich hoffe ich konnte mich halbwegs verständlich ausdrücken.

LG
Stefan

Für eventuelle Fragen kann man mich jederzeit per OSM Nachrichtenfunktion erreichen.

Grüße Johann

beautifulplaces, keine Ahnung, was du hier gerade wieder redest, wirklich. Du redest von proprietär wo es überhaupt nicht stimmt. Im übrigen hast du hier was verlinkt, wodurch ich auf einen Fehler von dir aufmerksam geworden bin - ich hab den Änderungssatz bereits kommentiert. Gehört aber nicht in diesen Thread :wink:

2tefan Servus,

ich hab leider diesbezüglich relativ wenig Ahnung, aber ich nehme an https://github.com/osm-search/Nominatim das hast du schon gefunden. Du kannst ja mal schauen, ob hier bereits in Issue diesbezüglich existiert, wenn das, wie du sagst, mehrere Länder betrifft, ist das ja wichtig. Das Problem sind immer die fehlenden Leute.

Was aber definitiv ist, ist, dass du nicht sachen wie admin_level oder ähnliches ändern sollst, damit Nominatim besser funktioniert oder damit die Anzeige auf der Homepage korrekt ist. Das fällt im Grunde unter “Mapping für den Renderer” und wird relativ schnell wieder revertiert werden. Wenn du der Meinung bist, dass die Admin_level falsch beschrieben sind, solltest du besser im Wiki auf der Seite eine Diskussion öffnen und mal kurz auf der Mailingliste schreiben - da bekommst du diesbezüglich wahrscheinlich mehr Reaktion.

Für allgemeine Nominatim fragen würde ich fast das Deutsche Forum empfehlen, da ist einfach viel mehr los. Ich hoffe, das hat zumindest ein bisschen geholen :slight_smile:

Lg

Moderatorhut auf
Hallo beautifulplaces,

bitte lösche deinen Off-Topic-Kommentar (gestern 18:56 Uhr), indem du seine Inhalte entfernst, und unterlasse derartige Kommentare in Zukunft. Ich möchte derartige persönliche Angriffe hier nicht mehr sehen.

Falls du dieser Aufforderung nicht bis 20:00 MESZ nachkommst oder ich derartiges Verhalten hier erneut beobachten kann, sehe ich mich genötigt, dein Benutzerkonto für 4 Monate zu sperren (immer doppelt so lange wie die vorhergehende Sperre).

Viele Grüße

Michael
Moderatorhut ab

Danke Negreheb für den Hinweis zur Wildschönau. Du erreichst mich üblicherweise am besten per OSM Nachrichtenfunktion.
Wie Frederik Ramm in der State of the Map 2020 erneut beschrieben hat, sollen wir nur tatsächlich am Boden ersichtliches Mappen. So stellt sich mich auch die Frage wie wir mit den bereits gemappten Adressen in Wien verfahren sollen, auch sämtliche per Addresshelper gemappte Adressen sind demnach zu hinterfragen.

Zur Wildschönau. Tatsächlich sind diese Hausnummern dort Mappen für Nominatim, also zu entfernen. OpenStreeetMap Nomiatim wertet Suburb leider nicht aus.
Nominatim hat also keine Lösung für das von 2tefan thematisierte Problem, und daher auch keine für die Gemeinde Wildschönau.

Für Lösungsvorschläge am Beispiel der Gemeinde Wildschönau aufgeschlossen.

Lg Johann

Edit: Lösung gesucht?