Nominatim: Neustadt in Sachsen

Guten Abend an alle,

als ich mich neulich mit Nominatim beschäftigte, fiel mir auf: Neustadt in Sachsen wird nur zurückgegeben, wenn ich den vollständigen Namen des Ortes angebe oder zumindest abgekürzt als „Neustadt i.S.“. Im Gegensatz dazu wird Neustadt an der Weinstraße auch ohne Namenszusatz gefunden.

Kann mir jemand, unabhängig davon, dass Sachsen vielleicht gerade nicht bei allen beliebt ist :D, erklären, was ich dagegen tun kann oder ob ich das überhaupt sollte?

Meine spontane Idee war: Es liegt am short_name-Tag. Das hatte tatsächlich auch geholfen, aber dann hieß die Stadt eben in der Trefferliste nur noch „Neustadt“, was mir wiederum nicht exakt genug war. Also fix die Änderung zurückgenommen. Ich will ja die Daten nicht anpassen, damit Nominatim vernünftige Ergebnisse liefert …

In meiner Vorstellung könnte Nominatim idealerweise auch den short_name bei der Suche berücksichtigen, würde aber im Ergebnis grundsätzlich den name anzeigen.

Übersehe ich etwas? Andere Ideen?

Herzlichst
Skagen

Der Fehler liegt in der Erwartungshaltung. Wenn Du ca. 39 mal (sic!) auf “Mehr Treffer” klickst, dann kommt auch das von Dir gesuchte Neustadt :wink:

Das habe ich nicht probiert.

Selbst wenn ich nach „Neustadt, Sachsen“ suche, erscheint ein Dorf an erster Stelle, danach etliche Stadtteile.

Ich erwarte in der Tat, dass eine Stadt im Ranking weiter oben steht.

Zu viel? :confused:

+1
Alles mit name=Neustadt in Deutschland:

http://overpass-turbo.eu/s/CcK

um es etwas einzugrenzen: alles mit place=town und der Zeichenkette “Neustadt” im Namen: http://overpass-turbo.eu/s/CcL

Sven

Dass ich auch per Overpass-API in OSM suchen kann, ist mir nicht neu. Mir ging es aber explizit um Nominatim.

Ich frage mal mit dem Gegenbeispiel: Warum ermittelt Nominatim Neustadt an der Weinstraße, obwohl ich nur nach „neustadt, deutschland“ suche, und dann auch noch als ersten Treffer?

Im Gegenzug muss es doch eine Datenkonstellation geben, die dafür sorgt, dass Neustadt in Sachsen ebenfalls relativ weit oben landet. Ich erwarte es gar nicht an erster Stelle, aber auch nicht an 37., zumindest jedoch vor jedem place=(suburb|village|hamlet).

Inzwischen bin ich überzeugt, dass es doch an short_name liegt. Woher allerdings Nominatim dann z. B. bei Frankfurt am Main den korrekten (vollständigen) Namen bezieht, kann ich ohne Quellcode-Verständnis nur vermuten. Ich hatte gehofft, jemand aus der geneigten Leserschaft weiß es. :wink:

Leider ist es mir noch nicht über den Weg gelaufen, aber hat von den anderen schon jemand mal eine Art Schematische Darstellung des Nominatim Quellcodes gesehen?

Weil unabhängig von der jeweils sehr subjektiven Erwartungshaltung wäre ich aber auch der Meinung, dass Städe schon vor Dörfern gefunden werden sollten…

@Skagen: Ansonsten kannst du auch gerne mal die Detailseiten von Neustadt an der Weinstraße mit Neustadt i.S. vergleichen.

Nachtrag: und es ist schon komisch, wenn Neustadt a.d.W als Rank=village/hamlett geführt wird, mit place=town und einem admin_level=15 vor Neustadt i.S. mit Rank=City und admin_level=8 geführt wird?!

Nachtrag: Der importance Wert ist bei Neustadt a.d.W auf jeden Fall höher (warum auch immer), als bei Neustadt i.S.

Ich denke auch, dass ein fehlendes “short_name=Neustadt” die Ursache ist, da laut den FAQ eine exakte Übereinstimmung alle anderen Kriterien schlägt:

Bist Du sicher? Bei “Frankfurt am Main” und “Neustadt an der Weinstraße” funktioniert es ja auch?

Aber eben auch nicht korrektes Tagging unterlassen, nur weil die Trefferanzeige dann nicht passt? Und ein “short_name=Neustadt” wäre doch schon angebracht, oder nicht?

Hab nur diese Seite gefunden (hat Skagen ja auch schon verlinkt):
https://wiki.openstreetmap.org/wiki/Nominatim/Development_overview

Ansonsten gibt es noch eine FOSSGIS Präsentation Der OpenStreetMap-Geocoder Nominatim von 2013 (Video), die glaub aber auch nicht so sehr ins Detail geht.

Importance wird aus Wikipedia berechnet wenn Tag vorhanden, siehe FAQ:

Im Wiki steht, die Importance wird aus der Anzahl der Links auf einen Wikipedia Artikel abgeleitet, aber ich habe im Code einen Abruf der Aufrufstatistik gefunden:
https://github.com/openstreetmap/Nominatim/blob/master/wikidata/pull_wikipedia_logs.php#L12

Daher vermute ich, dass inzwischen die Anzahl der Seitenaufrufe genommen wird.

Am Fuß einer Wikipedia Seite gibt es einen Link “Abrufstatistik”, über den man aktuelle Zahlen anschauen kann, hier z.B. ein Vergleich:
https://tools.wmflabs.org/pageviews/?project=de.wikipedia.org&platform=all-access&agent=user&range=latest-20&pages=Neustadt_an_der_Weinstra%C3%9Fe|Neustadt_in_Sachsen

Ach übrigens, ich hatte zwischenzeitlich mal Sarah angeschrieben, und sie meinte das Neustadt i.S. definitiv auch gerne ein short_name=Neustadt haben darf/soll. Also Skagen, mach es so, wie du es zwischenzeitlich ja sogar schon einmal getestet hast, ist ok.

Hatte heute ein ähnliches Problem: Wollte “Bad Neustadt” finden, was aber nicht klappte, da es als “Bad Neustadt an der Saale” oder so eingepflegt ist.

Und wer gar das Dorf “Salz” sucht, müsste “Salz bei Bad Neustadt an der Saale” als Suchwort eingeben, wenn es nicht zufällig auch als residential-Fläche mit dem Namen “Salz” eingepflegt wäre. :stuck_out_tongue:

https://www.openstreetmap.org/#map=16/50.3075/10.2114

EDIT: Habe es nun auch durch Eintragen des short_name gelöst.