keep-right logodata consistency checks for OSM

These pages show checks that are run on a local excerpt database filled with OSM data.

Data Checks for Europe (Starting point Vienna, Austria)
Australian KeepRight partner site
Data Checks for Africa (Starting point Cairo, Egypt)
Data Checks for Canada (Starting point Québec)
Data Checks for USA (Starting point Philadelphia, PA)
Data Checks for Central America (Starting point Santo Domingo, Republica Dominicana)
Data Checks for South America (Starting point São Paulo, Brazil)
Data Checks for Asia (Starting point Tokio, Japan)

Europe Data Checks as ugly list

Developers have a look at the SourceForge site providing svn access to the sources.

logfile

2010-06-20

There are a few more languages in the select box now. You can help translating KeepRight on the launchpad site. Thanks to all who helped!

2010-06-08

To avoid routing errors like this one I changed the check 'highways connected directly'. It will now complain about any connections of a motorway with a highway=service or highway=unclassified if it lacks an access=no or access=private tag or if it is not a service=parking_aisle.
I hope you agree that this inconvenience is necessary. Thank you, Nathan, for telling me about this!

2010-05-24

KeepRight becomes multilingual! - KeepRight wird mehrsprachig! - O KeepRight se tornou multilíngue!
As a start KeepRight may be used in english, german and brazilian portugese. New translations are welcome! The gettext template file is right here. Special thanks go to Rodrigo for this great idea!

Zunächst gibt es KeepRight auf deutsch, englisch und brasilianischem Portugiesisch. Weitere Sprachen sind willkommen! Das gettext-Template gibt es hier. Vielen Dank an Rodrigo für diese großartige Idee!

Como início, o KeepRight pode ser usado em inglês, alemão e Portuguẽs Brasileiro. Novas traduções são bem vindas! O arquivo com o modelo para gettext está bem aqui. Agradecimentos especiais para o usuário Rodrigo, por esta grande ideia!

2010-04-17

If you want to export errors from KeepRight you will want to have a look at the interfacing guide

2010-04-05

Getting rid of the evil db-parameter
You may have noticed that you couldn't pan around the whole world in KeepRight as you liked. There were invisible boundaries and you always had to take care about the db-parameter in the URLs to be appropriate for the current position.
This is over now! The db-parameter is gone. So have fun panning around the whole world and fixing errors easier than ever!

For archeologists: Old log entries have moved.

a few words on the new comment feature

Please give a comment that helps me improve the check routines if you find a false-positive. Don't confuse the comment box with an editing feature. This is not Potlatch! You cannot add missing tags via KeepRight!

Please note that in order to make the JOSM link work, JOSM must already be running when you hit the JOSM-link. Furthermore you have to enable the 'remote control'-plugin in JOSMs options.

Currently the following checking procedures are implemented

multiple nodes on the same spot
Try to find nodes that are (almost) on the same spot. Distances less than +/-0.5 meters are considered zero

non-closed areas
By convention ways tagged with special combinations of key and value pairs are considered to be areas and are drawn as such in the map. Therefore it is necessary that they form closed loops. Non-closed areas are invisible in the map! The standard.xml file is used to determine which key-value-combinations are drawn as areas; any instance of these has to be closed-loop.

dead-ended one-ways
Streets tagged as one-way must not be dead-ended (where should all the cars pile at the end of the road?). Nodes where just one-way streets begin (or end) cannot be reached (escaped from). Please note that motorways and motorway_links are considered one-way implicitly, so this check applies.

almost-junctions
Streets that have (at least) one unconnected end are examined here. If such an end-node is very close to any other way an error is reported. Unconnected end-nodes should probably be connected to adjacent ways.

deprecated tags
As shown in http://wiki.openstreetmap.org/index.php/Deprecated_features some tags get replaced by others as new tagging conventions evolve. Consider this as a notice, not as an error. The term 'deprecated' is deprecated; you're free to tag anything the way you like. This is just a hint for new tagging conventions that have evolved in the meantime.

missing tags
Ways, nodes and relations should in most cases have at least one tag (besides created_by)

motorways without ref
The ref-tag documents the reference (e.g. 'A 10') for motorways. These are mandatory as they are very important information

places of worship without religion
Churches, mosques and synagogues etc. need an extra religion tag giving info about the religion

point of interest without name
The name tag should be specified for every point of interest as its content gets rendered in the map next to the POI symbol

ways without nodes
Ways that don't consist of at least two nodes don't make much sense as they won't get rendered.

floating islands
Any highways drawn on the map should be accessible by car starting anywhere in the world. Ferries and highways (even railway platforms) are included in this check, so almost any island in the sea should be reachable starting from the mainland.

railway crossings without tag
(Level)-Crossings of railways and highways should have a common node as junction that is tagged with 'railway=level_crossing' if it is a crossing where larger vehicles can cross or with 'railway=crossing' if it is a crossing just for pedestrians

wrongly used railway crossing tag
Ways that take part in level-crossings of railways and highways have to be on the same layer and should in the normal case be not tagged as bridge or tunnel

fixme-tagged items
Nodes, ways or relations that are tagged with FIXME should be reviewed...

relations without type
Find any relation that has no type tag, wich is mandatory for relations.

intersections without junctions
Streets that graphically intersect need a common node that represents the crossing. The only exception are intersections on different layers (eg. bridges or tunnels). Intersections of streets with other objects like waterways or riverbanks should be avoided

overlapping ways
Segments of ways that lie on top of each other (the same nodes connected by different ways in the same order) are a problem for routing software. They happen accidently and are hard to find.

loopings
Any way that contains any single node more than twice is considered an error. Any way may contain just one node twice. If more than one node is found twice it is considered an error.

misspelled tags
Tags that are used very seldom and almost look like very common tags (only one character difference) are reported as a warning.

layer conflicts
Connected ways should be on the same layer. Crossings on intermediate nodes of ways on different layers are obviously wrong. Junctions on end-nodes of ways on different layers are also deprecated, but common practice. So you may ignore this part of the check and switch them off separately. Please note that bridges are set to layer +1, and tunnels to -1, anything else to layer 0 implicitly if no layer tag is present.

motorways connected directly
Motorways should only be connected to other motorways or motorway_links. They should especially not be directly connected to highway=primary or highway=residential roads. Please note: This check may produce false positives on motorways ending in cities but it can be a valuable tool for looking up unwanted connections of motorways and other roads.

boundaries
Administrative Boundaries can be expressed either by tagging ways or by adding them to a relation. They should be closed-loop sequences of ways, they must not self-intersect or split and they must have a name and an admin_level.

restrictions
This check is about turn restrictions defined by relations. A turn restriction relation needs a valid type attribute, a way as 'from' member, another way as 'to' member and optionally one or more ways or nodes as via members that need to be connected to 'from' and 'to'

missing maxspeed
maxspeed tags are not mandatory but they are very helpful for successful routing. This check shall help users finding highways lacking the maxspeed tag. Please only add maxspeed tags if the allowed maxspeed differs from the default speed for the given highway!

roundabouts
roundabout are always one-way streets directed counter-clockwise in right-hand driving countries or clockwise in left-hand driving countries.

bridge-tags
Someone draws a bridge and forgets to tag it as highway... A bridge should always have one of the 'major' tags that its direct neighbour ways have. Currently these are: highway, railway, cycleway, waterway, footway, piste, aerialway, pipeline, building, via_ferrata

If you find an error in my errors lists I would definitely like to hear about it!

Impressum

This work is done without commercial background, just for my personal pleasure. I would be very happy if it was helpful for the OSM Project.

If you like to contact me, my mailbox at the austrian server of gmx is labelled KeepRight.
Please understand that I will not always be able to immediately respond to your mail on weekdays.