User:Georf/MV-Street-Compare

From OpenStreetMap Wiki
Jump to navigation Jump to search

Dies ist ein ENTWURF

Beschreibung

Wir bekommen von ORKa-MV eine Liste von Straßen. In dieser Liste sind zwei Typen von Straßen aufgeführt. Zum Einen sind das Straßen, die in den OSM-Daten vorhanden sind, aber im amtlichen Register nicht auftauchen, nachfolgend als bad_name bezeichnet. Zum Anderen sind das Straßen, die in den OSM-Daten nicht vorhanden ist, aber laut amtlichen Register vorhanden sein müssten, welche nachfolgend missing_name genannt wird.

Um alle Einträge einmalig abzuarbeiten stellt dieses Projekt eine Art Todo-Liste zur Verfügung, auf der man die Einträge abhaken kann, die schon kontrolliert oder korrigiert wurden. Dafür gibt es folgende Zustände von Einträgen:

todo Eintrag ist noch nicht bearbeitet
changed Die OSM-Daten wurden geändert. Es passt nun überein.
wont-fix Die OSM-Daten wurden nicht geändert. Es liegt eine Verwechslung oder ähnliches vor.

API

Die Daten können mit einer RESTful-API angesprochen und bearbeitet werden. Die aktuelle Version ist 0.1.

0.1

Alle Daten können nur als JSON abgerufen werden.

Daten abrufen
GET /streets/left,bottom,right,top

Dies liefert eine Liste von maximal 100 Einträgen. Eine beispielhafte Ausgabe ist:

   {
       "status": 200,
       "data": [
           {
               "id": "4273",
               "osmid": "41740041",
               "name": "Am Kirchtor",
               "de:amtlicher_gemeindeschluessel": "13074084",
               "gemeindename": "Warin",
               "ref": "",
               "type": "residential",
               "status": "wont-fix",
               "hint": "bad_name"
           },
           {
               "id": "4274",
               "osmid": "146877731",
               "name": "Am Kirchtor",
               "de:amtlicher_gemeindeschluessel": "13074084",
               "gemeindename": "Warin",
               "ref": "",
               "type": "residential",
               "status": "changed",
               "hint": "bad_name"
           },
           {
               "id": "4275",
               "osmid": "26145370",
               "name": "Am Kirchtor",
               "de:amtlicher_gemeindeschluessel": "13074084",
               "gemeindename": "Warin",
               "ref": "",
               "type": "unclassified",
               "status": "changed",
               "hint": "bad_name"
           }
       ]
   }

Man kann die Ausgabe filtern. Dafür gibt man zusätzlich folgende Parameter an:

status todo, changed, wont-fix Nach Status filtern
hint bad_name, missing_name Nach Hinweis-Typ filtern


GET /streets/left,bottom,right,top/status
GET /streets/left,bottom,right,top/hint
GET /streets/left,bottom,right,top/hint/status
GET /streets/left,bottom,right,top/status/hint
Daten ändern
POST /street/id
status todo, changed, wont-fix Status ändern

Es kann der Status einer Straße geändert werden. Dazu wird ein POST mit dem Parameter status gesendet.