Way Storage


i have a question about the storage of ways. Some streets are split up into multiple parts (and each part stored as way).
So this produces e.g. 10 Way Entries for one real Street (e.g. Josefstädter Straße - Vienna - Austria or Dammgasse - Baden - Austria)

What’s the reason behind it (for me and my use case it only has negative effects)?

I can think of a couple of reasons…

Perhaps the various sections have different attributes (e.g. speed limits), which would necessitate splitting the street into several ways.
Or sometimes a street forks (whilst still being the same street).

Or it could be an accident – since it’s quite common to need to split a street, I guess people may not go to much effort to avoid splitting even when it’s not necessary.

Comparing way 126907684 and 97349393 (part of Josefstädter Straße), there is a different tag “lit” on both ways and different relations regarding turn restrictions (relation 1404089 and 1719417).
So I assume the road has been splited because of individual turning restrictions at each intersection.

Ok that does make sense.
Sadly I have to combine it anyway… Need the whole street as one part

Thank you for your help :slight_smile:

With respect, it would not make sense to combine those 10 ways, thus breaking the several relations, routes and restrictions. For the 10 sections the properties are very similar but the memberships are very different. Each section is therefore unique. All 10 sections are however already combined in that they all share the same name.

Regards Bernard

the point is, I don’t need the additional information (like max speed, …).
I’ve imported the austrian map to my own database, and just need to look up streets.

So if I got about 10 times more streets (cause they are all split in parts - which of course has a sense in the way it’s commonly used) a lookup is much slower and I have to combine it anyway to get the whole street. So I’ll have a bad performance on every query.
If I accept a bad performance on the import to my database (in cause of recalculating all streets), i’ll have a better one on each query afterwards.

Did you have had a look at http://wiki.openstreetmap.org/wiki/Nominatim about your aims?

well thanks for your help, i have to rethink the whole topic…

but I got an other question:
In some relations (e.g. Austrian administrative border - ID 16239 or city Graz administrative border - ID 109163) a single way is missing to complete the polygon.
So the RelationBuilder (which is an aggregate function to build up a geography instance of that polygon) fails.

How can this happen, or is there a reason for the failing ways?

Best Regards

Can you point out the missing way. What I looked, at least Graz seems to be a complete relation. It is type “multipolygon” (should it be “boundary”?) and there are the borders in role “outer” making a complete loop and admin_center in role “label”. I cannot locate a gap.

But to answer your question, easily, someone redraws and replaces a way and does not add this new way to all needed relations. Someone accidentally removes a relation memebership from a way. People make mistakes.


I didn’t want to criticize any persons work - I really appreciate this project and it’s volunteers.
I just thought that there could be a reaons for it…

you are right, it seems that the included relationbuilder of osm2mssql (which combines all ways to one geography instance) had a problem creating it… i tried again manually and it seems to work for graz and austria



try the latest version on: http://osm2mssql.codeplex.com/