[OSM-talk] house numbers revisited

Frederik Ramm frederik at remote.org
Thu Apr 17 13:00:20 BST 2008


Hi,

> As you can see, I employ four tags to indicate house number ranges:
> 
> * houseno:left-min
> * houseno:left-max
> * houseno:left-scheme
> * houseno:right-min
> * houseno:right-max
> * houseno:right-scheme
> 
> Left and right are relative to the direction if the way.
> Min is the first house number on either side, again looking in the  
> direction of the way.
> Max is the last house number on either side, looking in the direction  
> of the way.
> Scheme can be one of 'even', 'odd' or 'mixed'.

Pitfalls include:

* what if way direction is reversed?
* what if way is extended, merged, split?
* what if way provides access to houses with the address of another way 
(corner buildings typically - house is on A street but entry is from B 
street)
* what do you do with letters? At least in Germany they sometimes have 
2, 4, 6a, 6b, 6c, 6d, 6e, 8...
* what if there are gaps in numbering? split the way?

Some of this may not seem to important but I would really like to have 
house numbers on the map, and if at all possible I'd like to avoid 
printing a number that doesn't even exist.

I think we somehow need a two-tiered scheme that on one hand

* allows fine-grained tagging of every single house (ideally, if the 
house is drawn as a building, have the information on the building 
object itself; however this would possibly require some way of 
specifying the entrance and/or link to the way it belongs to).

and on the other

* gives us a "number range" option like yours above.

I suspect strong editor support will be required for any of them; 
whether you use relations (which I prefer) or left-right tagging, you'l 
probably want the editor to make sure the user doesn't break too many 
things.

A completely different (and quite OSM-like!) option is dropping all this 
complex logic, left-right-blah tagging, number schemes, relations and 
all, and just put simple nodes: "This is B street number 25". This 
brings redundancy, typos, and all - but we're used to that. It would be 
*extremely* easy to edit, and renderers or routers would have to do a 
little bit of processing to work with the data. Not too hard probably.

I'm not saying either of these is best. We'll have a little "house 
number hacking workshop" here in Karlsruhe where some of us will try and 
decide on a working scheme and implement this in a renderer/editor if 
possible, and enter a few house numbers for the local area, just to see 
if it works.

Bye
Frederik




More information about the talk mailing list