Replies: 1 comment
-
Postcode searches are always tricky. In Nominatim, there are actually two ways such a 'postcode name' search could match. First, smaller places are assigned a postcode so that you can find them under 'the village with that postcode'. Conversely, Nominatim also has a list of postcodes which get an address assigned. Those can be found as 'the postcode in village XX'. This list is not imported in photon, see #310. So there are already some potential hits missing. That explains example 2. Generally, Nominatim is very conservative in assigning postcodes to villages/towns because it usually has only point information about the postcodes which do not work well to tell about the extend of the postcode area and if it covers the whole village or only a part. It should work better in Germany, where we have actual postcode area relations. The problem there is that it still uses its conservative algorithm. There is room for improvement there. That's the problem with the 3rd example. Example 1 is a simple issue with tagging. Weimar is not recognized as a 'Kreisstadt' but as a 'Kreis' and consequently you get 'county=Weimar' and not 'city=Weimar'. This is fixed by ensuring there is a link between the admin-level 6 and the place=city/town node. The easiest way to do that is to ensure that both objects point to the same wikidata object. I've done this now. |
Beta Was this translation helpful? Give feedback.
-
I'm currently trying to geocode postal code/locality pairs from the Marktstammdatenregister and get some unexpected results from photon. They might be caused by osm mapping/tagging issues or other causes. Could you provide suggestions how to proceed?
Example 1: 99436 Legefeld
According to wikipedia, Legefeld is a city district of Weimar. In OSM, it is a place=village, and is contained in admin-level 6 boundary of Weimar. Photon returns it as type=city while I expected it to have a city=Weimar.
Example 2: 04460 Kitzen
Nominatim finds 04460 Kitzen while the place Kitzen seems not to have a postal code (at least Computed Postcode is displayed as null). Photon does not return a postal code for Kitzen.
Example 3: 06333 Endorf
Postal code 06333 is a multipolygon, covering Endorf. However, Endorf has no postal code neither in nominatim nor photon.
Beta Was this translation helpful? Give feedback.
All reactions