-
Notifications
You must be signed in to change notification settings - Fork 287
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Missing elements in address line while importing #609
Comments
You can't compare photon.komoot.io and nominatim.openstreetmap.org. They are based on different database states (and right now also completely different versions of the software). If you think photon is missing something, we'd need a reproducable example where the Photon database is derived directly from the Nominatim database you compare to. |
For the road https://www.openstreetmap.org/way/114104570,
By using the place_id from the above query: I believe while importing, photon uses the below PSQL query to obtain the hierarchy list which results in
I could notice information like city and suburb are missing from this result set. A possible suggestion that I tried is to replace the above SQL query with
which results in
This result set has the full hierarchy. I would be happy to send a PR with these changes, if this is considered a possible fix for the missing elements in hierarchy |
There is a mapping error her that needs to be fixed in OSM. Serilingampalle mandal has admin_level=6 even though it is clearly a part of Hyderabad. Nominatim detects that the hierarchy is wrong and marks Hyderabad, the Greater Hyderabad Municipal Corporation Central Zone and Ward 95 Jubilee Hills as "is not an address". Fix the admin hierarchy of Hyderabad and the problem will simply go away. The interesting thing is that Nomiantim itself started to ignore that 'is not address' mark as an unintended side-effect of taking addr: tags into account. I need to look into that more but it is most likely a bug that needs to be fixed. Photon could be a bit more clever in ordering the address parts these days, similar to what Nominatim's query does here but we certainly wouldn't want to call |
Thanks for pointing out on the data issue. I have made changes to the relation.
Could you help in any possible way on how to identify other such data points like these? This would help to investigate on the prevalence of such issues around the world
I remember photon used to give the full information for these address on older imports, so I checked the I also ran an import for a smaller country using the |
Lets be very clear: we are not going to double the time to create a photon database to work around a data issue in India. This is just wrong.
The simple assumption for all areas of class=boundary and type=administrative is: if boundaryA is completely contained in boundaryB then admin_level of boundaryA >= boundaryB. You should be able to find all data that violates this assumption with a simple Postgis query. |
place_addressline
table in Nominatim DB does not have the entire address line for a few addresses. This causes missing address elements while importing data into photon. (Unsure if this is a bug on Nominatim's side)Could we instead use
get_addressdata
DB function used by Nominatim DB to fetch the address line?Ex. 17.42067, 78.40256
https://photon.komoot.io/reverse?lat=17.42067&lon=78.40256
vs
https://nominatim.openstreetmap.org/reverse.php?lat=17.42067&lon=78.40256&zoom=18&format=json
You can notice the missing address elements like "Hyderabad" (city), "Jubilee Hills" (suburb)
The text was updated successfully, but these errors were encountered: