Kleine Fragen 2014

Healthcare und Healthcare 2.0 kennst du schon? Das sieht mir so aus als wäre da etwas passendes dabei. Mir ist das gerade (nicht viel Zeit) etwas zu kompliziert, aber vielleicht kann damit jemand das passende herausfinden.

Was passiert eigentlich, wenn zwei Mapper zufällig gleichzeitig im selben Gebiet arbeiten?

Mal angenommen ich lade mir einen Ausschnitt herunter, arbeite an ein paar Stellen und lade dann alles wieder hoch. In der Zwischenzeit hat aber ein anderer Mapper andere Stellen im selben Ausschnitt überarbeitet und hochgeladen. Werden dann seine Bearbeitungen durch meinen Upload wieder rückgängig gemacht?

Da du mit Josm schaffst: Josm merkt das und zeigt einen sog. “Konflikt” an. Den kann man dann auch im Konflik-Menu bearbeiten - aber das ist schon einigermaßen heftig. Auf jeden Fall geht nix kaputt.

Gruss
walter

Gibt eine Konfliktmeldung: “Version auf dem Server ist neuer” und Hochladen wird abgebrochen. Bei Konfliktbearbeitung kann dann natürlich die Version des anderen Mappers überschrieben werden.
[edit] Zweiter
[edit2]
Noch mal gelesen: “Andere Stellen”, also selbst nicht geänderte, ergeben keinen Konflikt (siehe #104 vonNetzwolf).

Das “bemerkt” auch jeder andere Editor, weil die API ein Hochladen verhindert. Es ist allerdings möglich ein neues Objekt zu erstellen, auch wenn ein entsprechendes Objekt bereits erstellt wurde (kann ja keine Anwendung wissen).
Das nennt sich “Bearbeitungskonflikt” und gibt es z.B. auch bei Wikipedia oder jedem gescheiten Versionsverwaltungssystem. Irgendwo gibt es unter einem nicht ganz offensichtlichen Namen auch einen guten Wikipedia-Artikel dazu (also allgemein, weder OSM- noch WP-spezifisch).
BK: Ich tue so als wäre ich Zweiter, wobei ich auch Erster hätte sein können…

Nahmd,

Der heruntergeladene Ausschnitt ist ohne Bedeutung. Wichtig ist nur, welche Elemente (Nodes, Ways, Relations) Du verändert hast und also hochladen willst: wenn nach dem Herunterladen eines Elementes e ein anderer dieses Element auf dem Server verändert, kannst Du es nicht mehr hochladen. Löschen ist dabei äquivalent einer Änderung: hat ein anderer das Objekt gelöscht, kannst Du keine neue Version hochladen (und es auch nicht löschen). Hast ein anderer es geändert, so kannst Du es nicht löschen. Das gilt selbst bei identischen Änderungen, weil es sich nicht am Inhalt des Elements, sondern ausschließlich an der Version orientiert.

Du kannst also nicht aus Versehen Änderungen überschreiben.

Der vom Editor gemeldete “Versionskonflikt” bedeutet, dass auf dem Server eine neuere Version eines Elementes liegt als Deiner Bearbeitung zugrunde liegt. Zum Lösen des Konfliktes lädt der Editor die aktuelle Version des Elementes vom Server und zeigt Dir diese Serverversion parallel zu der von Dir bearbeiteten Version. Du darfst™ beide Versionen zusammenführen, und das Ergebnis dann hochladen (so das Element auf dem Server nicht schon wieder geändert wurde).

Am Beispiel: auf dem Server lag “Version 1: building=yes”. Das haben sowohl Du als auch Dein Kollege heruntergeladen. Dein Kollege fügt ein “tourism=hotel” hinzu und lädt hoch. Damit auf dem Server: “Version 2: building=yes; tourism=hotel”. Du fügst bei Dir “name=Zur Post” hinzu und willst hochladen: das führt zum Konflikt, weil Deine Änderung auf Version 1 basiert, der Server aber bereits Version 2 hat.

Zur Auflösung lädt Dein Editor Version 2 herunter und zeigt Dir an:

  • Server: “building=yes; tourism=hotel”
  • Editor: “building=yes; name=Zur Post”

Die verschmilzt Du zu “building=yes; name=Zur Post; tourism=hotel”, und lädst sie dann als Version 3 auf den Server.

Sind vom Konflikt nur Attribute betroffen, so ist er einfach zu lösen. Bei Ways kann auch die Struktur betroffen sein, also Du und Dein Kollege haben Nodes ergänzt/gelöscht. Das zu fixen ist nicht mehr trivial. Und das Auflösen von Konflikten zwischen Relationsversionen kann so gruselig sein, dass man lieber verwirft und neu bearbeitet.

JOSM bietet die nette Funktion “Daten aktualisieren”, die zu allen heruntergeladenen Elementen nachschaut, ob es auf dem Server eine neuere Version gibt, und neuere Versionen lädt. Bei aufwendigen Edits an Ways und (besonders) Relationen empfiehlt sich ein häufiges “Daten hochladen” und “Daten aktualisieren”.

Gruß Wolf

@Serienchiller: Kommt auf den Editor an. JOSM meckert, wenn auf dem Server eine neuere Version eines Weges ist als die Version die du runtergeladen hast bzw. hochladen willst.

Vielen Dank für die Antworten. So ganz trivial ist es also nicht, aber zumindest kann ich nichts kaputt machen.

Hi Serienchiller,

Bei JOSM ist das so:
Der zweite Uploader erhält einen Konflikt, er lädt die aktualisierten Daten herunter, und entscheidet in seiner Session, was jetzt richtig ist. Er vermischt die Änderungen mit starker JOSM Unterstützung.

ID:
Keine Ahnung.

GoMap!
Nutze ich, ist mir aber noch nie passiert, ich ändere im GO MAP aber nur sehr kleine Dinge.

In der Praxis kann das trotzdem “blutig” enden. Ich habe mal einen etwas sehr grossen Landuse geändert, dummerweise war ich nicht der einzige.
Im Ergebnis war die Relation im “Eimer” und auch die Reverter Plugins konnten den Schaden nur noch minimieren.

Was lernt uns das: Der Trend geht zu kleineren Objekten.

Christoph

Hallo,
Bei ID gibt es auch eine Fehlermeldung, jedoch keine Möglichkeit, den Konflikt zu beheben. Man ist dann gezwungen, Schritt für Schritt rückgängig zu machen und jedes mal erneut versuchen zu speichern - bis es klappt. Wenn man einmal auf diese Weise Arbeit verloren hat, beginnt man, atomarer einzuchecken.

Ich habe aber mal eine andere Frage. Wir haben auf einem öffentlichen Platz eine ehemalige, öffentliche, unterirdische Toilette mit Treppenzugang. Diese ist seit Jahren verschlossen, faktisch ist nur noch die Treppe und die Tür sichtbar. Dies ist nun getaggt als:

  • building yes
  • layer -1
  • level -1
  • location underground
  • note ehem. Toiletten

Manche Renderer machen daraus nun ein Gebäude, wo keines zu sehen ist. Dies finde ich recht unglücklich, ich möchte aber natürlich auch nicht für den Renderer mappen. Wie sollte man dieses Objekt korrekt taggen, sodass weder die Information verloren geht noch der Renderer Unsinn malt?

http://www.openstreetmap.org/way/161923205

Gruß

Wie kann man ein Bild in einen Forumsbeitrag einbetten? Es geht um screenshots von meinem Garmin.

[img]http://url.jpg[/img]

NullReference, anhand deines Namens, der Verwendung von “atomar” und deines Ärgers: verwende JOSM.

Level wird meines Wissens nach eigentlich nur für Indoormapping verwendet. Aber egal. Ist der Platz obendrüber als Fläche gemappt? Wohl nicht, denn ansonsten würde wohl kaum das Building mit layer=-1 gerendert werden. Ansonsten… Pech gehabt - Gebäude ist Gebäude, würde ich sagen.

hfst: und wenn das Bild noch nicht per http verfügbar ist, dann z.B. bei einem imagehoster oder help.osm.org (neue Frage, Bild einfügen, Frage dann nicht abspeichern sondern nur die Bild-URL kopieren) hochladen.

Guter Rat, ich hatte früher, vor jahren, mal damit gespielt und war ziemlich frustriert. Dann habe ich neulich wieder angefangen mit ID und war relativ positiv angetan. Klar, das Ding ist vom Funktionsumfang recht beschränkt. Da ich mich aber noch nicht an komplizierte Dinge herantraue, tut es ID für spontane Änderungen erst einmal.

Der Platz ist teilweise als Fäche gemappt. Ein Teil des Gebäudes liegt jedoch auf bzw. unter freier Fläche. Ich nehme mal das “level” weg und schaue was passiert.

Gruß

Dann besteht deine “Konflikbehandlung” halt darin, daß du nix hochladen kannst und somit alle Edit verloren hast.

Ich habe bei verschiedenen Dingen, die nicht nur OSM betreffen, bemerkt, daß sie nach einer mitunter erheblichen Wartezeit (Wochen/Monat/Jahre) auf einmal ganz einfach waren.

Du hast die OSM-Grundlagen ja jetzt drin -also probiere Josm doch einfach noch mal aus.

Gruss
walter

Was sagte doch der Lord als er nach seinen Kindern gefragt wurde? “Ich habe einen Sohn - einmal probiert, war nix, nie wieder” :wink:

Layer hat viel weniger Einfluss aufs Rendern als man denkt. Im Falle unseres Mapnik-Stils hilft bei building=* kein layer=-5 und kein tunnel=yes. Die Häuser stehen einfach über allem.

Grüße, Max

Nicht zwingend, Gebäudedurchfahrten/Tunnel werden (imho fälschlich) über die Häuser gemalt.
Beispiel: https://www.openstreetmap.org/way/204387847#map=19/50.97921/11.33110

Das liegt wahrscheinlich an tunnel=building_passage. Bei tunnel=yes sollte es richtig (mit unterbrochenen Seiten) gerendert werden. Das ist die Frage, welche Kombinationen wie gerendert werden. Als dritthäufigster Wert (nach yes und culvert) sollte das mittlerweile ein Kandidat für eine eigene Render-Regel sein. Aber man muss per Ticket die Stil-Entwickler auf das Problem aufmerksam machen.

Tunnel und Brücken sind ausgesprochen aufwändig, da man bei denen jeweils auch das layer=x mit betrachten muss. Von daher mag das noch einige Zeit dauern.

Edbert (EvanE)

habe hier die Öffnungszeiten eines Wochenmarktes
1+3 Sa im Monat
geht das mit der Syntax, habe selbst nichts gefunden