Hi A couple of addresses in the capital raise some questions in Nominatim - tested calling via api (A) "http://nominatim.openstreetmap.org/search?format=json&q=2400 Pennsylvania Avenue Northwest, Washington, DC 20037&countrycodes=US&addressdetails=1" Postcode is specified - however Nominatim returns 2x places - one postcode 20037 - one postcode 20006 - why was the 20006 result included? No house_number is returned in either case - why is that? (B) "http://nominatim.openstreetmap.org/search?format=json&q=1600 Pennsylvania Avenue Northwest&countrycodes=US&addressdetails=1" Instead of returning "road" address component - Nominatim returns "pedestrian" as "Pennsylvania Avenue Northwest" - why is this? Is this an alternative to "road" - are there any other names by which "road" may be returned? Thanks! Regards Julian |
(A1) Short answer: Nominatim thinks that the street goes through two postcode areas and returns both. Long answer: Postcodes are currently saved mostly as points in the Nominatim database, not as an area. As this is not very precise, Nominatim also returns results that are (spatially) close to the postcode you requested but are annotated with a different one. It does not filter results where only the postcode differs. But the result with the postcode from the query should always appear higher in the list. (A2) As for the house number, if you have a look at the details page for the house, you can see that Nominatim did not put it into the city of Washington. This looks suspiciously like a bug, the neighbouring streets seem fine. (B) The label that is returned for roads depends on the highway tag. Currently, the following may be returned: Road(for anything a 4-wheeled vehicle can use), Footway, Pedestrian, Cycleway, Bridleway. (You may get others if there is a typo in the highway tag or somebody invented a new value but that should be so rare that it can be safely ignored.) |
(A) You can use Nominatim's web search to find out. It returns two results, 53784449 and 51321945. Both are the Pennsylvania Avenue Northwest, but one belongs to the suburb Georgetown and the other one to the suburb Farragut Square. Both suburbs are just nodes in OSM so Nominatim has to guess their sizes. If you think this is incorrect, try adding both suburbs as an area. (B) According to this documentation there seems to be only road and pedestrian as the smallest elements, but that's just a guess and it's not the official documentation (if there is any at all). Better ask twain or lonvia about this issue. Note that depending on the object you are searching for neither road nor pedestrian has to be returned as Nominatim does not only search for street addresses but for everything. Thus it can also happen that you just get something like "POI, suburb, city, country" without a road/house number part. After taking a short look at the code I think every class label can be returned, so there are lots of alternatives to road and pedestrian. |