The data team at Mapbox have built tools that allow detecting and cleaning these issues as they happen on the map.
Detecting issues with OSMlint
Each validator produces a GeoJSON output of the OpenStreetMap geometries that are invalid and needs review.
Fixing issues with To-fix
To-fix is a micro tasking tool that helps us create tasks of issues to fix on OpenStreetMap. The issues collected with OSMlint is loaded into to-fix, each of which is then reviewed by a member of the mapping community or the Mapbox data team. Over 500,000 issues have been fixed so far using to-fix.
To-fix also allows marking issues as false positives. These are later investigated and used to improve the validator algorithm in OSMlint.
The linting pipeline
We’ve implemented an architecture that automates the detection of issues using OSMlint and loading them into to-fix on a daily basis.
This helps keep the map free of basic data errors that would otherwise cause connectivity issues during routing and navigation. You can currently access the output of the following validators in to-fix for review:
- Crossing major highways
- Crossing minor highways
- Islands major highways
- Islands minor highways
- Kinks major highways
- Kinks minor highways
- Overlapping major highways
- Overlapping minor highways
- Unconnected major highways
- Unconnected minor highways
- Impossible one-ways major highways
- Impossible one-ways minor highways
- Highway intersects water - major
- Highway intersects water - minor
As always, we are constantly looking for issues in our systems and how it can better serve the needs of the OpenStreetMap community to create a truly open map of the highest quality. You can contribute by creating new validators, improving our current ones or just reviewing the issues on to-fix. Feel free to hit me on twitter or OpenStreetMap if you have ideas to share.