DE:Maplint
- Inhalt
- Maplint war im Jahr 2007 eines der ersten Qualitätssicherungstools und hat lange Zeit gute Dienste getan.
- Einfluss auf OpenStreetMap
- Maplint ist also der erste notwendige Schritt zur Verbesserung der Qualität der OSM-Daten.
- Gründe für die Überlebtheit
- Es ist inzwischen durch neuere und bessere Tools wie KeepRight oder JOSM-Validator ersetzt worden, man könnte das Programm allerdings noch lokal betreiben. Der Dienst wurde im März 2010 eingestellt.
- Archivierungszeitpunkt
- Dezember 2009
Fusseln (engl.: Lint) findet man überall. Sie sammeln sich unterm Bett oder in den Taschen der Jeans. Und ab und zu muss man sich einfach die Zeit nehmen, um sie wieder los zu werden.
Das Gleiche passiert auch mit den OpenStreetMap-Daten: In dunklen Ecken sammeln sich "Fusseln". Das können Wege sein, die mit veralteten Tags versehen sind, oder die von einem Knoten A nur wieder zum Knoten A führen. Es können Tags mit Tippfehlern sein oder eine Autobahn, bei der das ref-Tag fehlt. OSM-Daten können viele verschiedene Arten von Fehlern enthalten oder einfach unvollständig sein.
Die Maplint Funktion kann einige dieser Fehler in den OSM-Daten erkennen und Fehlerberichte oder Warnungen ausgeben, die dabei helfen, diese Probleme zu beseitigen. Maplint kann diese Fehler aber nicht selbst beheben, es zeigt sie lediglich an. Einige dieser Fehler ließen sich automatisch korrigieren und vielleicht schreibt auch jemand ein Programm, das diese Fehler beseitigt. Andere Fehler können nur durch Benutzereingaben beseitigt werden.
Maplint ist nach dem Programm "Lint" benannt, das jeder C-Programmierer kennt (oder kennen sollte). Es analysiert den Quellcode von Programmen und ist dabei sehr pingelig, es zeigt auch die kleinsten Fehler an, die sich eingeschlichen haben. Maplint versucht dasselbe mit den OSM-Daten zu erreichen.
Einen Maplint Bericht anzeigen
Du bekommst den Maplint Bericht in der Slippy Map angezeigt, wenn Du in den Kartenoptionen (das blaue Plus rechts oben in der Karte) ein Häckchen bei "Maplint" setzt.
Bei www.informationfreeway.org gibt es noch weitere Optionen, um den Maplint Bericht als Schicht über der Slippy Map angezeigt zu bekommen.
Anmerkung: Die Geschwindigkeit mit der die Daten aktualisiert werden, hängt davon ab wie schnell Tiles@Home die Kacheln neu rendert. Typischerweise dauert es ein paar Tage bis Deine Änderungen im Maplint Bericht berücksichtigt werden. Wenn Du Deinen eigenen Maplint Bericht rendern willst, findest Du unten eine Anleitung dazu.
Die Bedeutung der Farben
Maplint ordnet jedes Problem einer Kategorie zu: Fehler (engl.: "Errors"), Warnungen (engl.: "Warnings") und Anmerkungen (engl.: "Notices"):
- Fehler (Rot)
- Hier stimmt sicher etwas nicht. Z. B. hat ein Segment mit Länge Null keinen Sinn, etwa wenn es von einem Knoten A zum gleichen Knoten A führt. Das würde als Fehler eingestuft und sollte auf jeden Fall überprüft werden.
- Elemente mit leerem Schlüsselwort im Tag
- Zwei oder mehr Knoten haben genau die gleichen Koordinaten
- Nicht mehr verwendete Tags (engl.: deprecated)
- Autobahnen ohne ref-Tag
- Bei einer Relation fehlt ein Element
- Warnungen (Orange)
- Hier stimmt vermutlich etwas nicht. Die Ursache sollte nicht blindlings beseitigt werden, sonder erst überprüft werden, weil es nicht sicher ist, dass hier ein Fehler vorliegt. Z. B. könnte ein Segment ohne Weg einfach bedeuten, dass jemand sich (noch) nicht die Mühe gemacht hat, den Weg einzugeben. Es bedeutet nur, dass hier etwas korrigiert werden muss.
- Tags mit leerem Wert
- Wege ohne Tag (außer "created_by")
- Brücken/Tunnel ohne Layer-Tag
- Kirchen ohne Angabe der Religion
- POI (z. B. Kirche, Kino, Apotheke) ohne Namen
- highway=residential ohne Namen
- Anmerkungen (Gelbgrün)
- Hier sieht etwas ungewöhnlich aus. Es könnte ein Fehler sein. Oder es ist so gewollt.
- Tags, die in der Karte nicht dargestellt werden. Das ist an sich in Ordnung, es könnte aber ein Tippfehler sein
Einen Maplint Bericht selbst rendern
Schau Dir als erstes den Code von applications/utils/maplint in SVN an.
Lade die OSM Datei herunter, die Du überprüfen willst und speichere sie ins Unterverzeichnis data. Angenommen, Du hast die heruntergeladene Datei "London.osm" genannt.
Lass dann "bin/maplint London" laufen (das Maplint Programm sucht im Unterverzeichnis data nach Dateien mit der Endung ".osm").
Dadurch werden mehrere Dateien im Unterverzeichnis data angelegt, die alle mit "London" beginnen (oder mit dem von Dir gewählten Dateinamen):
London.osm | Deine ursprüngliche OSM Datei |
London-maplint.osm | OSM Datei, die den Testbericht enthält. Das Dateiformat ist in Maplint/XML Format beschrieben. |
London-maplint-report.txt | Eine Textdatei mit dem Testbericht. |
London-maplint-stat.txt | Eine Textdatei mit Statistiken über die gefundenen Probleme. |
London-maplint-with-tags.osm | Noch eine OSM Datei, die Pseudo-Tags der Form <tag k="maplint:error" v="..."/> enthält und von Programmen verwendet werden kann, die mit Tags umgehen können, aber das Maplint XML Format nichts verarbeiten können. |
London-maplint.svg | Wenn Du Osmarender4 installiert hast und die OSMARENDER Umgebungsvariable auf dieses Verzeichnis gesetzt hast, wird diese SVG Datei automatisch erzeugt (Näheres siehe unten). |
London-maplint-waypoints.gpx | Eine GPX Datei mit den POIs/waypoints, die in GPS-Geräte geladen werden kann. Garminspezifisches wird teilweise unterstützt, aber die Unterstützung für Wege ist noch rudimentär und unvollständig. Um sie mit anderen GPS-Geräten verwenden zu können, musst Du sie eventuell mit einem Filter bearbeiten. |
Anmerkung: Derzeit brauchst Du dazu noch xsltproc und das Hilfsprogramm make.
Osmarender
Du kannst Osmarender4 (oder eine neuere Version) verwenden, um einen Maplint Bericht in eine SVG-Datei zu rendern. Fehler, Warnungen und Anmerkungen werden in Rot, Gelb und Grün angezeigt, Knoten als dicker Punkt, Segmente als dicke Linien und Wege als dünn umrandete Linien. Der Test des Fehlers etc. wird neben den Knoten bzw. entlang der Linie angezeigt. Straßen, Bahnlinien und Flüsse werden ebenfalls gerendert, aber die meisten Details werden nicht gerendet. Oben siehst Du ein Beispiel für einen gerenderten Maplint Bericht.
Osmarender4 findest Du in SVN.