DE:Änderungssatz
Ein Änderungssatz (changeset) ist eine Gruppe von Änderungen, die in einer bestimmten Zeit von einem Nutzer vorgenommen wurde. Ein Änderungssatz kann z.B. das Anlegen eines neuen Objekts, das Ergänzen weiterer Tags an bestehenden Objekten, das Ändern eines Tags, das Löschen eines Objeks und das Löschen eines Tags enthalten.
Zu einem Änderungssatz können Änderungen nur hinzugefügt werden, solange er "offen" ist. Ein Änderungssatz kann entweder explizit geschlossen werden (siehe die Dokumentation deines Editors) oder wird nach einer gewissen inaktiven Zeit (derzeit eine Stunde) automatisch geschlossen. Ein Benutzer kann gleichzeitig mehrere offene Änderungssätze haben. Ein Änderungssatz hat eine Obergrenze (derzeit 50 000 Änderungen) und eine maximale Lebensdauer (derzeit 24 Stunden), bevor er automatisch geschlossen wird.
Änderungssätze können auf der Hauptseite in der Chronik eingesehen werden. Sie haben einen Bereich, also eine räumliche Ausdehnung, nämlich das Rechteck, das alle Änderungen umschließt - dieser kann sehr groß sein, besonders bei "Bots", die häufig nur kleine Änderungen vornehmen, dies jedoch weltweit. Das ist der Grund, weshalb in der Chronik eines Kartenausschnitts viele Änderungssätze auftauchen, die wenig relevant erscheinen.
Abonniert man die Chronik eines Kartenausschnittes als RSS-Feed, lassen sich diese großflächigen Edits mit einem Tool herausfiltern [1]
Räumliche Ausdehnung von Änderungssätzen
Generelle Empfehlung: Änderungssätze sollten möglichst lokal sein.
Tausende Freiwillige begutachten täglich Hunderte Änderungssätze, um die Qualität der Beiträge in ihrer Region sicher zu stellen und neuen Mappern mit Rat und Tat beiseite zu stehen. Beispielsweise bietet osmcha.org die Möglichkeit, neue Änderungssätze nach verschiedenen Kriterien zu filtern und aufzulisten. Üblicherweise können in diesen Filtereinstellungen geografische Bereiche vordefiniert werden. Überdeckt ein neuer Änderungssatz diesen Bereich, wird er als Treffer aufgelistet. Jedoch haben einige ältere oder einfachere solcher Werkzeuge limitierte Filter-Möglichkeiten: Es wird nicht geprüft, ob einzelne geänderte Objekte in den vordefinierten Suchbereich fallen, sondern ob eine Überlappung mit der sogenannten Bounding Box vorliegt, also dem Rahmen, der von den zwei geänderten Objekte definiert wird, die am weitesten voneinander entfernt sind. Das heißt, dass ein Änderungssatz als Treffer aufgelistet werden kann, obwohl kein einziges Objekt im vordefinierten Suchbereich geändert wurde. Gerade Änderungssätze mit einer großen räumlichen Ausdehnung und nur wenigen geänderten, kleinen Objekten haben eine hohe Wahrscheinlichkeit bei sehr vielen freiwillig Begutachtenden in den Trefferlisten zu erscheinen, ohne dass diese mit ihrem lokalen Wissen etwas beitragen könnten - oder aufgrund ihres Interessensgebietes möchten. Daher werden solche Änderungssätze von manchen Mappern als unhöflich erachtet und teils in den Qualitätssicherungstools als "schlecht" markiert, auch wenn alle Änderungen - abgesehen von der Größe - "gut" sind.
Es gibt keinen Konsens zur optimalen räumlichen Ausdehnung von Änderungssätzen. Manche Mapper akzeptieren, wenn sich Änderungssätze auf einzelne Kontinente beschränken. Andere begrüßen es, wenn diese auf einzelne Städte beschränkt bleiben.
Um Konflikte zu vermeiden und aus Höflichkeit gegenüber den Begutachtenden wird folgendes empfohlen:
- Fasse Änderungen in kleinen Gebieten zusammen (z.B. innerhalb einer Stadt, eines Landkreises oder eines Bundeslands)
- Vermeide Änderungen in mehreren Ländern gleichzeitig
- Speichere oder lade Änderungen hoch, bevor du auf der Karte eine andere Region betrachtest (oder bei Apps wie StreetComplete: bevor du in den Flieger steigst...)
Änderungssatz-Diskussionen
Änderungssatz-Diskussionen sind Kommentare und Antworten (eine Diskussion!), die in der Ansicht der Details eines Änderungssatzes auf der OSM-Website angezeigt werden. Es ist ein guter Ort, um neue Benutzer zu begrüßen und ihnen Tipps zum Mappen zu geben – oder um einen Änderungssatz mit seinem Ersteller zu diskutieren, wenn der Änderungssatz problematisch ist. Weitere Informationen sind ein einem Blogeintrag der OpenStreetMap Foundation zu finden.
Auf resultmaps.neis-one.org/osm-discussions kann man sich aktuell diskutierte Änderungssätze ansehen und die Diskussionen nach Land filtern. Eine Liste der letzten Diskussionen eines Benutzers wird von dieser Webseite https://resultmaps.neis-one.org/osm-discussion-comments?user=USERNAME&commented (USERNAME individuell anpassen) bereitgestellt.
Tags für Änderungssätze
Änderungssätze haben Schlüssel=Wert-Paare (Tags). Die überwiegende Mehrheit von Änderungssätzen hat zwei Tags:
- comment=* - Kommentar, der die Gruppe von Änderungen beschreibt. Manche Programme (z.B. www.osm.org) stellen dieses Tag nicht als Tag, sondern als Überschrift des Änderungssatzes dar.
Jeder Mapper ist dazu aufgerufen, einen aussagekräftigen, nicht automatisch generierten Änderungssatz beim Hochladen seiner Änderungen einzugeben, der die Änderungen beschreibt, denn der Kommentar wird fast überall erscheinen, wo der Änderungssatz aufgelistet wird. Es ist wahrscheinlich, dass andere Mapper diesen Änderungssatzkommentar lesen und verstehen wollen, was du gemacht hast. Siehe auch Gute Änderungssatz-Kommentare. - created_by=* - gibt den Editor an, mit dem die Änderungen vorgenommen wurden, bzw. den Namen des Scripts bei automatischen Änderungen durch Bots.
Andere häufiger benutzte Tags für Änderungssätze sind u.a.:
- source=* - gibt die Quelle an (von JOSM seit etwa 2014 erzwungen, "survey" steht für die Datenebene in JOSM)
- imagery_used=* – Hintergrund-Luftbilder und Hintergrundkarten, die während des Bearbeitens angezeigt wurden (wird vom iD-Editor automatisch gesetzt)
- bot=yes - kennzeichnet automatischen Änderungen durch Programme (auch Skripts oder Bots genannt)
- is_in=*
Änderungssätze können nach dem Schließen nicht mehr editiert werden, und es wird keine Versionsgeschichte der Tags von Änderungssätzen gespeichert.
Benutzerdefinierte Änderungssatz-Tags sind möglich. Als das entworfen wurde, wurde das vorgesehen, um den Entwicklern der Editoren möglichst viel Flexibilität zu geben und nicht, um die Komplexität auf die Endnutzern abzuwälzen. Trotzdem erlauben JOSM und Potlatch 2 dem Endnutzer die Eingabe benutzerdefinierter Tags. Im iD-Editor ist das nicht möglich. Er fragt nach einem Inhalt für comment=*
und setzt automatisch created_by
sowie imagery_used
Technisches
Änderungssätze wurden mit API v0.6 im April 2009 eingeführt. Für Änderungen vor dieser Zeit wurden künstliche Änderungssätze nachträglich erzeugt.
Technische Details sind in der Dokumentation für API 0.6 zu finden. Siehe auch Get Capabilities.
Changeset Dump
Es gibt eine großes bzip-komprimiertes XML-Datei mit allen Änderungssätzen auf planet.osm.org zum Herunterladen. Diese kann entweder mit ChangesetMD oder osmchanges-postgres in eine PostgreSQL-Datenbank importiert werden.
Änderungssätze bei einzelnen Editoren
Änderungssätze in JOSM
In den Standardeinstellungen legt JOSM bei jedem Upload einen neuen Änderungssatz an und schließt diesen direkt anschließend. Es kann sinnvoll sein, dies zu ändern, wenn man z.B. während des Editierens mehrmals zwischendurch kleine Änderungen hochlädt anstatt zusammengehörige Änderungen am Schluss zusammen hochzuladen.
In JOSM ist der Kommentar erforderlich, und das Feld ist mit dem zuletzt benutzten Wert vorbelegt (auch über Sessions hinweg). Andere Tags können im Register "Merkmale des Änderungssatzes" gesetzt werden. Das Tag created_by ist vorbelegt mit Angabe von JOSM als Editor sowie Sprache und Versionsnummer. Eine Änderung dieses Werts wird kaum jemals sinnvoll sein. Andere Tags wie z.B. source können hinzugefügt werden, sie müssen im Unterschied zum Kommentar aber für jeden Änderungssatz erneut eingegeben werden und sind auch in der Änderungssatzverwaltung nicht sichtbar.
Änderungssätze in Potlatch
Änderungssätze in Potlatch 1
Benutzt man Potlatch 1 im Live-Edit-Modus, hat man nur dann die Möglichkeit, den Änderungssatz zu kommentieren, wenn man über das "Erweitert"-Menü den Änderungssatz manuell schließt.
Im Modus mit Speichern wird man aufgefordert, einen Kommentar einzugeben, dieser ist jedoch optional.
Das tag created_by erhält auch hier als Wert den Namen des Editors sowie Sprache und Versionsnummer sowie zusätzlich den Modus (live oder save).
Änderungssätze in Potlatch 2
Beim ersten Speichern eines Änderungssatzes wird man aufgefordert, einen Kommentar einzugeben, dieser ist jedoch optional. Möchte man in einer Bearbeitungssitzung den aktuellen Änderungssatz beenden und einen neuen beginnen (für den dann wieder ein neuer Kommentar vergeben werden kann), so muss man vor dem Speichern der Änderungen, die in den neuen Satz sollen, die alten Satz schließen (das geht durch drücken der Taste C).
Die Tags der Änderungssätze enthalten die Build-Nummer, die Versionsnummer und den Namen des Editors.
Werkzeuge zur grafischen Darstellung geänderter Objekte eines Änderungssatzes
- Achavi (en) allgemeiner Verweis https://overpass-api.de/achavi/?changeset=CS-ID Beispiel: https://overpass-api.de/achavi/?changeset=70637044
- Changeset by Comparison Visualization (en) allgemeiner Verweis https://resultmaps.neis-one.org/osm-change-viz?c=CS-ID Beispiel: https://resultmaps.neis-one.org/osm-change-viz?c=70637044
- OSM Lab Changeset-map (en) allgemeiner Verweis https://osmlab.github.io/changeset-map/#CS-ID Beispiel: https://osmlab.github.io/changeset-map/#70637044
- OSMCha (en) allgemeiner Verweis https://osmcha.mapbox.com/changesets/CS-ID Beispiel: https://osmcha.mapbox.com/changesets/70637044
- Im DE:JOSM-Editor mit Hilfe der Funktion Änderungssatz umkehren (DE:JOSM/Plugins/Reverter notwendig). Menü "Daten" > "Änderungssatz umkehren" > "Änderungssatzkennung(ID) eintragen" > "Rückgängig"
- DE:OSM_History_Viewer allgemeiner Verweis https://osmhv.openstreetmap.de/ Beispiel: https://osmhv.openstreetmap.de/changeset.jsp?id=70637044