OpenStreetMap

OSM History Analyser

Posted by Candid Dauth on 29 May 2009 in English.

I am currently developing a web tool to analyse the history of OSM elements visually. There will be two modes available:
1. Visualise changeset: This will highlight any changes made in a changeset on the map.
2. “Blame”: This will visualise who is responsible for removing or adding which part of a relation.

The reason why I need this tool is that recently, lots of errors are being added to cycle route relations I maintain. Sometimes, this happens by mistake (because someone extended a way that was part of the relation for example), sometimes on purpose (someone is not aware that the route runs another way now). In both cases, it is useful to write to the person that did the change to inform him about what he did wrong. But it is not always easy to find out who made a certain change, one main reason seems to be people splitting ways and thus adding certain ways to the relation. The person who has added a way to a relation that should not belong to it may not always be the person who did this mistake, it might be someone who split a way that errorneously was part of the relation.
Thus my History Analyser will work on per-node basis: if the nodes of a way added to a relation were previously part of another way belonging to the relation, this will not be considered to be a change. Accordingly, a way whose tags but not whose nodes were changed will not be visualised as having changed. Only the part of a way whose nodes have changed will be considered to have changed. Sub-relation support will also be implemented for better route analysis.

The visualisation of a way or a relation could take quite a while, as many requests are needed to find out what has changed. To get the changes of each node, you need to get the previous version of that node. As you can only get one item per request, it could take several minutes up to several hours to find out the exact changes (or maybe the API is faster than I think when getting the history of objects?). I’m not sure yet how I will deal with that.

The tool is going to be available in a few weeks.

Discussion

Comment from davidearl on 29 May 2009 at 15:58

Could you do it instead by reference to the planet diff files?

I think it would be very useful to be able to see what changed visually as the result of a changeset. ITO's OSMMapper is excellent, but doesn't zoom in so you can't really see the changes to geometry, only to tags.

Ironically, the more rapid update to mapnik makes it harder than it used to be. Previously you'd see a changed way or node overlaid on the old rendering for a few days so the changes were pretty obvious, but now they're usually in step unless you're really quick.

Comment from HannesHH on 29 May 2009 at 16:06

Make sure to include a "Blame Potlatch" button!

Sorry, but I could not resist. :-P

This sounds great, more and better change/history tools are always good.

Comment from Gary68 on 30 May 2009 at 15:44

hi,

maybe you can have a look at Osmdiff and Relation Diff in the wiki.

cheers

gary68

Comment from Gary68 on 30 May 2009 at 15:44

ups,

Relation check, I forgot!

Comment from Wynndale on 1 June 2009 at 17:21

Another way to propagate relations wrongly is the ‘repeat tags’ button in Potlatch.

Log in to leave a comment