Ich bin über ein Changeset gestolpert, in dem ein Mapper-Kollege zwei Gebäudehälften, die ich separat mit zwei geteilten Punkten (eine Wand) gemappt hatte, in ein Multipolygon überführt hat. Die beiden alten Umrisse wurden als Outer in die Relation aufgenommen, alle Tags von den Umrissen gelöscht und in die Relation überführt. Aus den beiden verschiedenen Hausnummern “17” und “19” entstand in der Relation dann “19;17”. Semikolons können in Hausnummern kaum ausgewertet werden und Informationen gehen verloren.
Darauf angesprochen bestritt der Kollege das gemacht zu haben. Also hab ich mal iD gestartet und versucht nachzuvollziehen, was passiert sein könnte. Und in der Tat verbockt iD das: Markiere ich die beiden Gebäudehälften (mit gedrückter Umschalttaste) bekomme ich im Kontextmenü die Option “Vereinigen” (englisch “Merge”) geboten. “Vereinigen” ist, wie ein kurzer Test ergab, wohl auf Linien anwendbar, wenn sie zu einem Way vereinigt werden können, also mindestens einen gemeinsamen Punkt haben und zusammen zwei Enden, als auch auf Flächen, wenn sie sich in mindestens einem Punkt berühren. Im Fall der Linien erzeugt iD eine gemeinsame Linie. Im Fall der Flächen erzeugt iD eine neue Relation mit den Flächen als Outers. In beiden Fällen werden nachfragelos alle Tags zusammengeschmissen und verschiedene mit Semikolon zusammengefasst. Ich kann also zum Beispiel aus einem Fluss und einer Straße eine Flussstraße machen oder aus einem natural=wood + landuse=residential ein Waldwohngebiet.
Die Sache mit den Linien kann ich ja noch nachvollziehen, da muss der User halt aufpassen, was er für Linien zusammenführt. Das Vereinigen der Flächen halte ich aber zumindestens für grob fahrlässig. Der unbedarfte Mapper bekommt gar nicht mit, dass da eine Relation erstellt wurde, deren Support in iD doch eher rudimentär ist. Dass bei Konflikten nicht nachgefragt sondern versemikolont wird, wird auch zu vielen unentdeckten Problemen/Fehlern führen.
Meiner Meinung nach sollte ein Multipolygon auch keine sich an Kanten berührenden Flächen als Outer enthalten. Ist das zulässig/gewünscht oder nicht?