What is the best way to get street name by part of street name and to get list of all building numbers on street. Which software and services need I to install on my own server? I want use it without connection to OSM servers. Is it possible to make it by Overpass Api or by Nominatim? How will queries look for Nominatim, Overpass API and PostgreSQL? Thank you. asked 13 Jan '15, 10:38 yaahor |
Normally, you don't need a special software with spacial queries. If the street numbers are correctly tagged, the link between the number and its street is already in OSM. To simplify, currently they are two methods to link the street number of a building to its street (also documented in the wiki) (which method is used is a contributor decision): Statistically, the second method with a relation is much less popular than the first (less intuitive and newcomers are relunctant to edit/create relations) and is present only on some areas (like in France), this depends on how the method is popularized locally. So basically, if you find a housenumber without one of the two methods listed above, we generally consider this as incomplete in OSM. But sSome people still consider that the street can be linked by the distance between the OSM element and the nearest street (way tagged "highway") but there is a large consensus to consider this as too vague/imprecise and leading to errors especially near intersections- Geofabrik is providing a slippy map, OSM Inspector, showing if the address can be linked to a street and by which method here : http://tools.geofabrik.de/osmi/ What you should do first is download the OSM data (or some sample) into JOSM and look up how addresses are tagged in your area of interest. answered 14 Jan '15, 09:50 Pieren |
Can you explain what is the level and scale of your needs ? is it just locally or for an application (web, mobile) ? is it just for one town, for a country, the world ?
It will be used on website. It is for one town (maybe in future for country).
Then a local instance of nominatim can help you to find the full street name then you can retrieve the data yourself on your local copy of osm dataset. overpass is only usefull when you work online and don't want a local database.
I thought http://wiki.openstreetmap.org/wiki/Overpass_API/install allow install Overpass API locally. Did I err? I have understood how make my task using Overpass API. Nominatim can help me really? Can you write Nominatim query?