I was inspecting OSM wiki and some of dumps and I have a question now - suppose I want to add a node representing some shop to a particular street. Do I have to specify addr:street
in that node? I see that that's what other users usually do. But that seems such of waste of effort, also prone to more human generated errors. Wouldn't it be more logical to simply reference an id of a particular way
, representing that street in the given node
?
2 Answers
Since this is mainly a mapping question you are better off at http://help.openstreetmap.org/.
OSM has different address schemes.
The most popular scheme is the Karlsruhe Schema where you add at least addr:housenumber
and addr:street
to an object. If this object (e.g. a POI) is located inside another object (e.g. a house) you can omit these addresses and hope for the geocoder to determine these information automatically. However people tend to add the full information (postcode, city, sometimes even country) to each address.
Another used scheme is the associatedStreet relation. Here you only add the addr:housenumber
key to the building/POI. Additionally the building/POI is added to a relation of type=associatedStreet
which has the corresponding streets as members. This is a somewhat more complicated approach, not supported by all tools and not as much in use as the previously described scheme.
You can use a relation to do so.
You can use the relation type associatedStreet
, to create the relation between the shop and the street.
Example: http://www.openstreetmap.org/way/191912056
That house does not have the addr:street tag, but a relation defined instead.