Hallo Thomas,
ich kann zu diesem Thema nur meine persönliche Meinung zum Besten geben, und genau genommen kann auch jeder andere nur dies tun. Ich würde es jedenfalls bedauern, wenn zu den von dir angesprochenen Fragen “korrekte” Lösungen vorgeschrieben würden. Es ist eigentlich auch nicht sinnvoll, weil dann die “unkorrekten” Lösungen korrigiert werden müssten, und das zu einem Zeitpunkt, wo die meisten Flächen schon gemappt sind. Ich denke eher, es sollte jeder so machen, wie er es für richtig und vernünftig hält, zumal die Unterschiede im Ergebnis geringfügig sind - die Gesamtgröße aller z.B. landuse=forrest-Flächen würde sich wohl nur minimal ändern, wenn man es so oder so macht, und ich schätze, dass die Fehler, die sich auf andere Art einschleichen, wesentlich größer sind.
Was zählen sollte, sind die besseren Argumente für die eine oder die andere Lösung. Wobei trotzdem keine Einigkeit zustande kommen dürfte, weil verschiedene Leute die Argumente dafür und dagegen unterschiedlich gewichten.
Bei alledem gilt es auch noch zu bedenken, dass die Flächen eigentlich höchstens das drittwichtigste der OSM-Daten sind. Für das wichtigste halte ich die ways, die möglichst vollständig und korrekt eingezeichnet werden sollten. Da gibt es noch jede Menge auch grober Fehler bei wichtigen Straßen. Das Zweitwichtigste sind die Adressen und POIs, damit man per Router auch dahin findet, wo man hin will. Da fehlt noch jede Menge.
Nun zu deinen Fragen: Die erste und dritte Frage ist eigentlich die gleiche, und laufen auf die Frage hinaus, ob highways eine Fläche haben oder nicht. Die OSM-Antwort ist, dass sie in der Realität schon eine Fläche haben, aber davon wird in der Datenbank abstrahiert - sie werden als Linien gespeichert (dürfen aber immerhin eine Breite haben, die leider viel zu selten angegeben ist - daraus könnte sich jeder leicht die Fläche berechnen). Wann immer man nun ein Gebiet, das an einen Straße grenzt, am Straßenrand, also mit Abstand zur per highway=* erfassten Straßenmittellinie enden lässt, macht man einen zusätzlichen Fehler: nicht nur der highway ist falsch positioniert, sonder der Straßenrand auch. Jetzt ist auch die Angabe einer Straßenbreite sinnlos, weil sie nie mit der Straßenbreite übereinstimmen wird, die sich durch die Gebietsgrenzen am Straßenrand ergeben. Wenn irgendwann jemand genauere und bessere Daten hat, und den Verlauf der Straße korrigieren möchte, dann muss er nicht nur den highway korrigieren, sondern auch noch die areas, deren Grenzen am Straßenrand enden. Und je mehr Mühe sich der ursprüngliche Mapper gegeben hat, mit möglichst vielen Punkten den Straßenrand möglichst genau abzubilden, um so mehr Freude hat derjenige, der es gern korrigieren möchte - ich spreche aus Erfahrung.
Dazu kommt, dass landläufigerweise praktisch niemand darauf achtet, dass alle highways außerhalb von Gebieten liegen. Der Grad der highway-Separierung variiert unter Berücksictigung der Art der Fläche, um die es geht, der Art des highways und dem Umstand, ob der highway zwischen zwei gleichartigen Flächen verläuft oder zwischen zwei verschiedenartigen. Sachlich begründen lassen sich diese unterschiedlichen Lösungen nicht, und ich wüsste auch nicht, wie man verbindlich definieren soll, wann eine Fläche einen Abstand zu einem highway wahren sollte und wann nicht.
Da also ein Kompromiss nicht vernünftig definierbar ist, und die Extremlösung, alle highways aus den Gebieten herauszulassen, nicht praktikabel ist, habe ich mich für die andere Extremlösung entschieden: Gebiete, die an highways grenzen, benutzen den highway als Grenze bzw. dessen nodes. Die einzige Ausnahme bilden Autobahnen und autobahnähnliche Straßen. Aber das ist oft meist nicht relevant, weil neben der Autobahn an beiden Seiten Feldwege verlaufen, so dass die Autobahn sowieso nicht selbst an ein Gebiet grenzt.
Die Vorgehensweise hat folgende Vorteile:
Bei Änderungen an der highway-Geometrie müssen stets nur die nodes des highway geändert werden und nie etwas nebendran.
Falls der highway Grenze zwischen zwei areas ist, wird durch die highway-Korrektur automatisch auch die Gebietsgrenze verbessert.
Man kann problemlos neue highways einzeichnen, ohne deswegen bereits eingezeichnete Gebiete zerschneiden zu müssen.
Auf der Karte sieht es immer gut aus, weil auch bei höchster Auflösung kein weißer Streifen zwischen Straße und z.B. Acker erscheint.
Wer eine Flächen-Statistik macht, berechnet einfach aus Breite und Länge die Fläche alle innenliegenden highways und der halbe Fläche aller Grenz-highway. Die Summe subtrahiert er von der Fläche und kommt so auf eine hinreichend genaue Netto-Fläche (falls er z.B. nicht sowieso Feldwege zur farmland-Fläche rechnen wollte, weil ohne sie eine Landwirtschaft nicht möglich wäre).
Zur Teilfrage in der ersten Frage, was man bei zwei Flächen ohne highway dazwischen machen sollte: konsequenterweise sollten die auch gemeinsame nodes nutzen. Wenn z.B. ein Acker an eine Wiese grenzt, wäre jeder noch so kleine Abstand künstlich und sicherlich falsch.
Zur Frage “kleine Fläche innerhalb von großer”: Meine Meinung ist, dass jeder Punkt auf der Welt nur zu höchstens einem landuse/natural gehören sollte. Deshalb wandert bei mir z.B. landuse=cemetery immer aus dem landuse=residential hinaus; entweder per inner im Multipolygon, oder er liegt meist sowieso am Dorfrand. Gebäude oder Parkplätze dagegen sind eine andere Kategorie und insofern normalerweise Bestandteile eines umgebenden landuse.
Gruß
Karl