Ich bin ein Relationenzerstörer

Ich bin angeschrieben worden, ich hätte Relationen zerstört.

Wenn ich Relationen abändere oder neu erstelle, lade ich in JOSM mir die Wege herunter und die entsprechende Relation. Dabei kommt es vor, dass ich Wege teilen muss.

Durch den Hinweis habe ich festgestellt, wenn ich Wege teile, bekommt der eine Teil des Weges die Relationen weitervererbt, der andere Teil bekommt die Relationen nicht weitervererbt.

Persönlich finde ich das ziemlich unlogisch, weil, wenn ich einen Weg trenne, heißt das in meinem Erfahrungshorizont noch lange nicht, dass ich all die anderen Relationen ändern will. Warum bekommt nur ein Teil des Weges die Relationen ab?

Die eigentliche Frage ist, gibt es einen Automatismus, der diesen Schlamassel verhindert? Weil die anderen Relationen händisch nachzubearbeiten, finde ich eine Zumutung.

Wenn ich Wege teilen muß, nehme ich den iD.
:duck: :running_woman:

1 Like

Ich kann das nicht nachvollziehen: Ich habe es mit einer Wanderroute in JOSM ausprobiert:

  • Alle Elemente herunterladen,
  • dann einen beliebigen Punkt auf einem Segment ausgewählt und mit “P” den Weg geteilt.
  • Die resultierenden zwei Wegstücke waren dann automatisch Mitglieder in der Relation.

Vielleicht liegt es daran, dass noch nicht alle Elemente runtergeladen wurden, vielleicht dass die Relation selbst auch heruntergeladen werden muss?

My 2 cts.

Bei Deinem Verfahren kennt JOSM nur die eine Relation, die Du runtergeladen hast. Diese sollte korrekt behandelt werden. Andere Relationen, die den zu spaltenden Weg referenzieren, werden so aber von JOSM nicht erkannt. Seit einigen Monaten warnt JOSM in dieser Situation. Wenn das bei Dir nicht passiert, dann verwendest Du entweder eine recht alte Version von JOSM oder Du hast JOSM so konfiguriert, dass diese Warnung nicht kommt.

4 Likes

Wenn man einen Weg trennt, dann wird dieser kürzer und das abgetrennte Stück bekommt eine neue ID. Eine Relation, die den Vorgang nicht mitgeteilt bekommt, hat nun das kürzere Wegstück im Outer-Ring oder in der Route und der neue Abschnitt fehlt → Lücke.

… ich kann auch ernsthaft:
Derzeit wühle ich mich durch Wanderwege. Mit Hilfe eines kleine Overpass-scriptes suche und finde ich Lücken in Wanderwegen. Oft sind diese Lücken um die 10m lang (ein Mittelstück einer Kreuzung, ein Brückchen in der Wiese)
und vermutlich zu großen Teilen durch genau das Problem entstanden.
Bisher habe ich in Hessen mehrere Hundert dieser Lücken gefunden und behoben.
Allerdings kann es sein, daß ich Trümmer vergangener Zeiten aufräume: Einige der Wanderwege, die mir auffallen sind seit 10 Jahren nicht mehr angefasst worden…

Dabei habe ich versucht, mit dem JOSM zu arbeiten, bin aber doch immer wieder beim iD gelandet.
Sortieren, Anlegen, auf Vollständigkeit prüfen und tagging der Route geht besser mit dem JOSM. (Wobei man zum Überprüfen besser den OSM Relation Analyzer oder Waymarkedtrails nimmt.)
Aber wenn es um den Feinschliff geht (Wege teilen um Stummel zu entfernen oder winzige Stücke einzufügen) dann nehme ich tatsächlich lieber den iD. Wenn man im iD einen Weg teilt, dann bleiben beide Teile Mitglied der Relation und man muß bei Anhängseln den unerwünschten Teil aktiv raus nehmen.

Das mit der Zumutung teile ich - das Arbeiten mit Relationen fühlt sich bei beiden Editoren unrund an.

(Edit: Tippfehler)

1 Like

Zur eigentlichen Frage: Wenn man jeden Weg, den man teilen oder zusammenfügen will, nochmals als Element herunterlädt, holt sich JOSM auch die direkten Abhängigkeiten, also die Relationen, zu denen der Weg gehört.

Das kommt darauf an, wie man den Weg runterlädt.

Ist mir mit JOSM auch noch nicht passiert. Aber ich lade auch nicht nur “die Wege und die entsprechende Relation” (Ausgangsposting) runter, sondern sämtliche Daten des Gebietes, das bearbeitet wird. Dann sind auch alle vorliegenden Relationen zumindest teilweise geladen und werden beim Wege-Teilen berücksichtigt.

4 Likes

Ich kenne keinen Editor, der es anders macht als von dir beschrieben.

1 Like

JOSM sollte normalerweise beide geteilten Wegstücke wieder in richtiger Reihenfolge in die Relationen einfügen wenn man die normale ‘split way’ Funktion verwendet.
Wie andere bereits geschrieben haben kann es zu Fehlern kommen wenn Daten nur selektiv via z.B. Overpass heruntergeladen werden. Da sollte es aber auch eine Warnung geben.

Um eventuelle Fehler zu umgehen sollte man daher vor dem Teilen eines Wegs der nur selektiv heruntergeladen wurde einfach einen kleinen Bereich rundherum komplett laden.

iD ist leider berühmt-berüchtigt dafür dass es Relationen kaputt macht wenn Wege gespalten werden. Anders als bei JOSM werden die neuen Wegstücke immer nur am Ende hinzugefügt und nicht sortiert an der passenden Stelle. Dadurch können z.B. route relations bei denen die Reihenfolge wichtig ist beschädigt werden.

JOSM sollte normalerweise beide geteilten Wegstücke wieder in richtiger Reihenfolge in die Relationen einfügen wenn man die normale ‘split way’ Funktion verwendet.
Wie andere bereits geschrieben haben kann es zu Fehlern kommen wenn Daten nur selektiv via z.B. Overpass heruntergeladen werden. Da sollte es aber auch eine Warnung geben.

wenn man den Relationeneditor geöffnet hat muss man die Ansicht im RE nach dem Teilen aktualisieren, wenn man nur speichert fehlt evtl der andere Teil (mit der neuen ID)

korrekt

Nein, dann gibts beim Schließen des RE eine Konfliktmeldung.

Dann waren nicht alle Relationen in denen der Weg enthalten ist mit dabei.
Beim normalen Herunterladen der Daten mit JOSM kann das eigentlich nicht passieren. Wie lädst du denn die Daten herunter? Das hört sich jetzt schon nach einem Spezialfall an, dem der gewöhnliche Mapper nie begegnen wird.
Wird ein Weg geteilt, so sind bei JOSM immer alle Teile in der Relation, falls alle betreffenden Relationen in JOSM heruntergeladen wurden, was standardmäßig immer der Fall ist.
Mir ist so ein Fall wie bei dir mit JOSM noch nie begegnet.

Das ist bei JOSM auch so.

1 Like

Das ist inzwischen nicht mehr so, zumindest nicht bei einfachen Wander- und Radrouten und solange das vorgefundenen bereits korrekt sortiert ist. Dann sortiert auch iD neue, geteilte Wegstücke korrekt ein.

Ah, gut zu wissen. Route relations are broken by iD · Issue #8415 · openstreetmap/iD · GitHub wurde inzwischen anscheinend gelöst.

Jepp.
Nur bei PT-Relationen die auch die Haltestellenpositionen drin haben, wäre ich nach wie vor sehr vorsichtig.

1 Like

Ja, seit iD 2.29.0:
https://github.com/openstreetmap/iD/blob/develop/CHANGELOG.md#2290
https://github.com/openstreetmap/iD/pull/10149
:+1:

Ich fahre Radrelationen ab, lade mit

[out:xml][timeout:1090]; way[highway](around:2,50.3668614,9.1063125, usw.

die Wege entlang des GPS-Tracks runter.

Falls ich eine Relation brauche, lade ich die mit ihrer ID mit “Objekt herunterladen” herunter.

Wege, die ich mit dem ersten Verfahren nicht erwischt habe, hole ich mir mit:

[out:xml][timeout:90][bbox:{{bbox}}];
(
nwr[“highway”];
);
(._;>;);
out meta;

Einerseits ist das sehr übersichtlich und andererseits dachte ich mir, was ich mir nicht herunterlade, kann ich auch nicht kaputtmachen.

Das verhindert dann die notwendige Anpassung von evtl. anderen betroffenen Relationen bei der Teilung eines Weges durch JOSM. Alle Relationen welche den zu teilenden Weg enthalten, müssen entsprechend angepasst werden, sonst werden die durch die Teilung neu entstandenen Wegteile (neue Objekt-ID) nicht Teil der entsprechenden Relationen und so entsteht eben eine Lücke in den jeweiligen Relationen.

2 Likes