[OSM-dev] likenesses

SteveC STEVE at ASKLATER.COM
Thu Oct 1 03:25:41 BST 2009


I want to revive a very old idea - tag equivalences. It might be  
solving a problem that doesn't exist or someone might have done it and  
I've missed it.

I'm not a socialist moral relativist when it comes to cultural  
comparisons, but forcing the entire world to tag their largest class  
of vehicular infrastructure as highway=motorway isn't super efficient  
either maybe.

It would be nice to allow people to tag things as motorway, freeway,  
autobahn or whatever makes sense. Then, if your renderer or routing  
software knows about them, great. If not, then there should be  
something that tells them what they're roughly like.

So I think step one is to have an XML file which points out these  
equivalences. It will be rough. It won't know that an autobahn has no  
speed limit or a freeway is usually 55mph or a motorway is usually  
70mph. The first step is just a hand wavy... I don't know what a  
autobahn is, but it's roughly like a motorway, ah ok.

Then it will free us up to start to do much more specific country  
rendering and routing.

Later, we can evolve it to be an API or know all sorts of things, but  
I want to put together version 0.1 and have people like Jon Burgess  
and Steve Chilton care about it because of rendering and Frederik and  
Richard care because of editing. I would want it to be required by all  
editors and routers and renderers in future, if it was to be useful.

Therefore, here's my straw man to start it off

<!-- this is a straw man and might not even parse as XML. C'est la vie  
-->
<likenesses version="0.1">

   <likeness object="way" key="highway">
     <likeness value="motorway" />
     <likeness value="freeway" />
     <likeness value="autobahn" />
   </likeness>

   <likeness object="node" key="amenity">
     <likeness value="atm" />
     <likeness value="bankautomat" />
     <likeness value="geldautomat" />
   </likeness>

</likenesses>

If you want to hack on this, it's at

	http://svn.openstreetmap.org/misc/likenesses/likeness.xml

The point here is that if you're a routing engine and you know about  
motorways you treat autobahns and freeways as roughly the same, or  
identical if you like. If you want to then go on and figure out more  
details, please do! If you're a renderer and you know what an icon for  
amenity=atm is, then you know you can use this for amenity=bakautomat.

The next step is that osm2pgsql uses this to convert things it doesn't  
know about, or the big mapnik xml files do, or whatever. There are  
glaring problems like maybe we don't want people to use highway but  
whatever makes sense for them - that is we want the keys *and* values  
to be mutable. But, let's take step one first.

Thoughts?

Yours &c.

Steve




More information about the dev mailing list