POI aktuell halten

Warum die Ids ermitteln, wenn nur die Anzahl interessiert? Dafür gibt’s ja auch out count;


area[name="Deutschland"][admin_level=2]->.schland;
(node(area.schland)["lastcheck"];
way(area.schland)["lastcheck"];
rel(area.schland)["lastcheck"];
);
out count;

Ergebnis (unter “Daten” zu finden):


  <count total="7892" nodes="4783" ways="2992" relations="117"/>

Das ist bei mir auch so, es hängt mir CodeMirror zusammen und lässt sich unter “Editor” → “Codemirror aktivieren” abstellen.

Hi

geow - danke für die Links, den ein oder anderen hatte ich noch nicht gesehen. Dass diese Diskussion ein Wiedergänger ist, zeigt doch, dass dieses Thema vielen am Herzen liegt, was mich freut, und andererseits, dass es offensichtlich noch keine befriedigende Lösung gibt.

Richtig, das rutscht bei meinem Ansatz wie oben geschrieben durch. Aber gibt es wirklich POI, die über mehrere Generationen fälschlicherweise eine neue Version bekommen?
Meine Auswertung zeigt zweifelfrei, dass sich seit x Tagen niemand mehr um dieses Objekt gekümmert hat. Das bedeutet entweder “nichts genaues weiss man nicht” oder “alles noch so OK wie es eingetragen ist”. Mit zunehmender Zeit wird ersteres naturgemäß immer wahrscheinlicher. Daher kontrolliere und korrigiere ich “nach bestem Wissen und Gewissen”. Letztere Fälle markiere ich mich check_date.
Dieses Vorgehen beschert mir aktuell über 600 POI, die älter als ein Jahr sind, genug Arbeit um ein paar zu “übersehen”.

Bei einem konsequenten Vorgehen mit check_date (oder was auch immer) wird es doch erst richtig spannend. Man wird immer im unklaren bleiben, ob jemand nur im Vorbeifahren gesehen hat, dass es die Kneipe noch gibt, oder wirklich kontrolliert hat, ob der wheelchair access auf dem Damenklo noch korrekt ist - es sei denn wir kleistern die Nodes mit einer Vielzahl von check_date:… zu.
Was ist wenn das check_date deutlich älter ist, das der Timestamp? Technische Änderung? Check_date nicht aktualisiert? Wir können dieses Thema nicht komplett lösen.
Was ich beitragen möchte ist, dass OSM nicht zu einer Datenmüllhalde wird, mit Elementen, die über Jahre als Karteileiche ihr Dasein fristen… und unbedarfte Benutzer dann sagen “Das hat doch schon ewig geschlossen und steht hier immer noch, OSM ist Mist”. Jeder kennt solche Fälle bei der kommerziellen Konkurenz, oder :slight_smile:

Schönen Abend!

Man könnte auch einfach mal anfangen, OSM Notes zu bearbeiten.

https://www.openstreetmap.org/#map=14/51.5139/7.4680&layers=N

Verstehe ich nicht. Wenn CodeMirror deaktiviert ist, fehlen natürlich solche Annehmlichkeiten wie Syntax Highlighting. Aber man kann doch trotzdem editieren (also ich zumindest).

Da ist bei mir ein schwarzes Loch. Die nächste ist erst 12 km weit entfernt. :wink:

Die Anmerkung “(auf mobilen Geräten deaktivieren; Änderung wirkt erst nach App-Neustart).” passt schon. Mit aktivem CodeMirror kann ich die Query nicht anpassen unter Chrome, sowohl auf Android als auch iPhone.

Mit Firefox für Android habe ich da sowohl mit als auch ohne CodeMirror kein Problem (mit ist natürlich schöner). Insoweit für mich wirklich in keinster Weise nachvollziehbar.

Ich finde es nicht sooo gut, jedes überprüft eObjekt mit lastcheck oder welchem tag auch immer zu versehen - wenn sich das durchsetzt, wird es die history unnötig aufblähen. Meiner Meinung wäre so etwas wie der OSM Tasking manager sinnvoller.

Baßtölpel

+1 Genau deshalb hab ich mir gedacht das Thema wieder auf den Tisch zu bringen :slight_smile:

IMHO sollte ein Aktualisierungstag nur gesetzt werden, wenn wirklich ausdrücklich alle tags gecheckt wurden.

Und genau diese Datenleichen werden immer mehr, wenn es weitergeht wie bisher. Die Frage ist also, was kann man tun…
Mein Vorschlag wäre ein Proposal mit einem festen Vorschlag für folgende Punkte:

  • Welches Tag wird benutzt.

  • Welche Typen sollen damit versehen werden (amenity=,shop= whatever)

  • Wann wird das tag gesetzt/aktualisiert

Dann ins Wiki damit mit Hinweis auf Tools die die Bearbeitung unterstützen. Und um mit gutem Beispiel voranzugehen dann vielleicht eine Wochen-/Monatsaufgabe, damit auch endlich was ins Rollen kommt :)

Sollte doch mit der ‘deutschen Gründlichkeit’ möglich sein…

Es geht wohl primär um bestimmte POI, bei denen sich main- oder sub-tags regelmäßig ändern, wie z.B. shops, tourism und amenity. Ob sich dabei - selbst bei verbreiteter Anwendung - die Größe der Datenbank wesentlich erhöht, darf bezweifelt werden. Es wäre aber m.E. ein nicht unwesentliches Merkmal im Sinne der Qualitätssicherung, die umso wichtiger ist, je älter ein Objekt ist.

Ich finde auch, daß wir dringend ein Verfahren brauchen um festzuhalten, daß die Objekte überprüft wurden. Wie gesagt, einen tag auf den Objekten selbst finde ich aber nicht ideal.

Baßtölpel

Nicht so radikal, es kann auch sinnvoll sein, nur die Prüfung einzelner sub-tags zu ermöglichen - z.B. survey:date:opening_hours

survey:date ist bereits im Wiki dokumentiert
http://wiki.openstreetmap.org/wiki/Key:survey:date

und hat laut http://taghistory.raifer.tech/ mit weitem Abstand die größte Verbreitung, also sollten wir es vielleicht einfach verwenden…ohne weitere proposals :wink:

Nunja, es ist ‘aufgelistet’ - dokumentiert wäre irgendwie ausführlicher. Deshalb sind all diese Fragen ja offen und keiner weiss bescheid wie es gemacht werden sollte. Guckt euch mal hier die ganzen Hausnummern an :wink:

Also wenn es so aufgedröselt wird, bekomme ich doch ein paar Bauchschmerzen. Mal davon abgesehen, dass man dann vor lauter Keys überhaupt nicht mehr fertig wird mit der Dokumentation einer Kontrolle, wird das auch extrem unübersichtlich. Wir haben parallel diese Tankstellendiskussion, wo einige schon allein jeden der rund 20 Fuel-Keys taggen wollen (ggf. als “no”). Wenn dafür dann auch noch 20 Survey-Keys hinzukämen, zusätzlich dann noch solche Dinge wie Öffnungszeiten, x Zahlmöglichkeiten, Brand, dann haben wir in Zukunft regelmäßig Einträge mit 50 bis 60 Keys. Das ist irgendwo nicht mehr sinnvoll zu handhaben. Zumal dann auch die Versionshäufigkeit steigt, weil vermutlich jeder nur ein paar Teilaspekte prüft und somit häufiger die Dokumentationszeitstempel aktualisiert werden müssen.

Also dort sollte man doch ein sinnvolles Maß finden und ggf. auch mal Mut zur Lücke haben. Es ist besser wenn jemand vielleicht auch nur 80 Prozent des Umfangs prüft und das trotzdem einheitlich dokumentiert, statt dass ein solches Chaos angerichtet wird, was niemand mehr beherrscht.

Die History wird nicht aufgebläht; sie wird ergänzt. Es wird gezeigt, daß das Obejtk noch aktuell und keine Karteileiche ist. Ein Objekt in dessen History alle 6 Monate ein check_date (oder was auch immer) aktualisiert wird, ist besser, als eines dessen Historie seit 7 Jahren unverändert ist.

Ich denke manchmal sogar, daß es vielleicht sogar gut wäre, wenn veraltete POIs nicht mehr in der Hauptkarte angezeigt oder mit einem Fragezeichen versehen werden.

Christian

Ich finde auch, dass erst ein mal eine Grundbasis funktionieren sollte, bevor am Ende völliges Chaos herrscht. Lediglich die wichtigsten keys zu checken und trotzdem ‘aktuell’ eintragen finde ich ok - aber die reine Existenz oder ein einzelnes tag als aktuell zu deklarieren bringt nicht wirklich eine Verbesserung der Datenqualität.

Zum Thema History sehe ich eigentlich keine Probleme - ist die nicht genau für soetwas da?? :slight_smile: Schließlich sollte ja nicht alle 6 Wochen aktualisiert werden; ausreichend dürften 6 Monate - 2 Jahre sein (je nach Typ des POI)

Ansonsten könnte auch überlegt werden wann man das Objekt als aktuell taggt. Wenn man survey:date zB nur dann hinzufügt wenn die letzte Änderung lange her ist und noch alles identisch ist wird die History nicht allzusehr ‘belastet’. Das survey:date könnte bei einer Änderung des POI wieder gelöscht werden, der Timestamp würde dann genügen (und es gäbe keine Konflikte Timestamp vs survey:date). Allerdings wäre dieser Workflow meines Erachtens wieder zu kompliziert was die Beteiligung hemmt.

Einfacher: survey:date wird bei JEDER Änderung auf das aktuelle Datum gesetzt (ein Auswertungstool sollte beachten, dass das auch mal vergessen wird); wenn der POI identisch ist wird es frühestens nach 6 Monaten neu gesetzt (btw: sollte reichen um immer genug zu tun zu haben :D)

@Kontinentalverschieber, du hast den Konjunktiv überlesen :wink: Es kann sinnvoll sein, nur die Prüfung einzelner sub-tags zu dokumentieren. Ich habe nicht angeregt, das flächendeckend zu machen. Datenkonsumenten sollten damit ohnehin kein Problem haben. Es war primär ein Kommentar zum kategorischen Vorschlag von Sir_Blight, eine Aktualisierung nur zu taggen, wenn “ausdrücklich alle tags gecheckt wurden”. Das wäre zwar prinzipiell wünschenswert, aber in der Praxis unrealistisch und nicht durchsetzbar.

Für den im OP genannten Zweck erscheint mir das Landshuter Tool bestens geeignet. Habt Ihr das schon bei euch ausprobiert? Die Spalten kann man übrigens sortieren…und so mit den “Fossilien” anfangen: http://osm.edvbl.dyndns.org/poi_lastcheck/

edit: link ergänzt

Hi

Wo ist dann der Unterschied zum Timestamp?

Vielleicht wäre das was für den Editor… “Du ein Cafe (o.ä.) geändert, war es eine technische oder inhaltliche Änderung?”

Technisch, im Sinne von Kontinentalverschieber, dass irgendwas am Objekt gebastelt wurde → kein Survey Tag
Inhaltlich im Sinne einer Überprüfung → Survey Tag, entweder aus Timestamp abgeleitet (default) oder es wird nach Datum gefragt, falls dieses Abweicht.

Die Unterscheidung könnte halbautomatisch sein. Wenn keine Tags geändert wurden, deutet es eher auf was technisches hin. Das Verschieben eines POI kann beides sein.

Das wäre falsch. Ich kann einen POI editieren, ohne alle Daten überprüft zu haben. Wenn ich einen falsch geschriebenen shop-Tag korrigere oder eine Anschrift ergänze, bestätige ich damit noch nicht die Öffnungszeiten; mit check_date hingegen bestätige ich die Aktualität aller Daten.

Ich bin für das manuelle Setzen von check_date und co. Es ist wie ein Prüfstempel dem ich den Objekt mitgebe.

Zu überlegen wäre, ob man Untertags einführt, z.B. daß man zwar die bloße Existenz eine Objektes bestätigen kann, nicht aber alle Eigenschaften.

Christian

Weiteres Beispiel zum vorherigen Kommentar: Man kann auch Teilweise den POI-Punkt leicht verschieden, das setzt auch das Änderungsdatum hoch ohne, dass man irgendwelche Tags angefasst hat.

Subtags halte ich nicht so sinnvoll, denn es verkompliziert die Sache unnötig und wenn man Tags überprüft, sollte man alle überprüfen.

Entschuldigt… ich habe mich missverständlich ausgedrückt. Ihr habt natürlich recht. Mit ‘jeder Änderung’ meine ich, wenn man im ‘Check-Modus’ arbeitet - also POI prüft und feststellt, dass sich einer geändert hat. Dann werden alle (oder zumindest die meisten) Tags aktualisiert und das survey:date gesetzt.

Wenn lediglich im ‘Tagesgeschäft’ eine Kleinigkeit geändert wird und der Rest garnicht geprüft wurde wird natürlich kein neues Datum gesetzt, sondern ein ggf. vorhandenes so belassen - da stimme ich euch zu.

Dann gibt es zum Auswerten 3 Zustände (wenn ich keinen Denkfehler hab):

  • nur timestamp → wenn neu: ok; wenn etwas älter: auf die Prüfliste
  • timestamp und survey:date sind gleich → es wurde zuletzt geprüft, also: ok. Wenn lange her: auf die Prüfliste
  • timestamp ist neuer als survey:date → zuletzt wurde evtl nur verschoben, ein Teil korrigiert oder ähnliches: je nach Zeitdifferenz abwägen ob ok oder auf die Prüfliste.

Das Tool ist vom Grundsatz nicht schlecht; kenne ich zum Ausprobieren erst jetzt. Ich dachte das Projekt wäre nie richtig realisiert worden, weil es unter der Wikiseite keinen Link zum Tool gibt - oder bin ich blind?