Gemeindegrenzen vs. PLZ-Gebiete ... reicht eine Relation, oder zwei?

Hi,

z.B. im Nord-Osten von Niedersachsen fehlen noch für etliche Gemeinden die Grenzpolygone als Relationen, zu sehen z.B. unter http://tools.geofabrik.de/osmi/?view=boundaries&lon=10.52472&lat=53.24237&zoom=10&overlays=coastline,boundary_relations_5,boundary_ways_5,boundary_ways_with_unknown_admlvl,non_simple_boundary_ways

Was für diese Gebiete aber schon existiert, sind die PLZ-Grenzen aus dem Import von http://wiki.openstreetmap.org/wiki/Import/Catalogue/Postleitzahlen_Deutschland_2010 , zu sehen unter http://tools.geofabrik.de/osmi/debug.html?view=plz&lon=10.31461&lat=53.20044&zoom=9&overlays=plz_osm

Es gibt nun einige kleine Gemeinden, bei denen sind die bereits erfassten PLZ-Grenzen identisch mit den Gemeindegrenzen. Somit könnten die PLZ-Grenzen ja auch als boundary=administrative dienen. Wie gesagt: nur dort wo die Grenzen tatsächlich identisch wären.

Für den Landkreis Lüneburg findet sich hier mal eine Zusammenstellung: http://wiki.openstreetmap.org/wiki/L%C3%BCneburg/LKLG-Relationen

Meine Idee / Frage:

Z.B. für den Ort Deutsch Evern habe ich den Schlüssel boundary=postal_code auf =administrative geändert sowie admin_level=8 hinzugefügt.

d.H. für BEIDE Grenzarten (politisch und PLZ) existiert jetzt nur EINE Relation. Ist das so in Ordnung?

Oder sollten für PLZ-Grenzen und Gemeindegrenzen (bei Deckungsgleichheit!) doch je eine eigene (dann wohl inhaltsgleiche) Relation einmal mit boundary = administrative und einmal mit
boundary = postal_code angelegt werden (bzw. so belassen werden)?

Wie habt ihr das in anderen Gegenden der Republik gemacht? Was sagt Taginfo oder Tagwatch dazu?

Kernfrage also: EINE oder ZWEI Relationen?

Gruß, Stephan

Moin,

eine.
Stellen sich irgendwann wirklich Unterschiede heraus, kann man sie immer noch trennen.

Gruß
Georg

Solche Gemeinden oder Städte gibts viele - Du hast den Value geändert? Sprich es gibt nun keinen postal_code mehr? Das wäre blöd. Ich nehm mal eher an Du hast da etwas ergänzt. Dann ist der Schlüssel aber doppelt belegt. Ich hab hier Software die sucht nach dem postal_code und dann gäbe es Ecken die hätten dann gar keinen mehr.

Moin,

  1. steht es doch ganz eindeutig da:
  1. kann man es ganz einfach bei “Deutsch Evern” nachprüfen:

Der postal_code = 21407 blieb davon unverändert.

Da braucht man nichts anzunehmen … und sich auch nicht um ungelegte Eier zu sorgen. :wink:

Gruß
Georg

Hi stephan,

ist absolut ok so und auch korrekt getaggt.

weiter so.

gruss
walter

p.s: kennst du das?
http://wnordmann.homeunix.com/index.php/osm
server ist nicht der schnellste und auch nicht 7/24 up aber beides ändert sich bald.

Nur mal eben dass ich das richtig verstehe. Wenn ich von einem Punkt wissen will in welcher PLZ der liegt dann reicht das nicht dass ich boundary=postal_code suche sondern muss außerdem noch nach postal_code=XXXXX gucken? Oder hat sowie jedes PLZ-taugliche Polygon ein postal_code=XXXXX und ich kann mir die Abfrage mit dem boundary sparen? Dann frag ich mich warum es überhaupt noch den Fall das Tag boundary=postal_code gibt. Was wertet Mapnik denn aus?

boundary=* definiert, WAS für eine Grenze das ist:

  • ortsgrenze: boundary=administrative
  • plz-grenze: boundary=postal_code
  • beides: adminstrative ist “stärker”

der rest steht hier: http://wiki.openstreetmap.org/wiki/Import/Catalogue/Postleitzahlen_Deutschland_2010

gruss
walter

Wie ist denn bisher der Status Quo in Deutschland?

Gibt es Gebiete, wo es zwar boundary=administrative (ggf. it postal_code =XXXXX), aber KEINE boundary=postal_code Multipolygone gibt?

Oder auch “boundary=administrative;postal_code” ???

Danke für den Link, sehr interessant. Wenn ich das richtig verstehe, ist das Ziel, alles mit postal_code=XXXXX zu haben.
Fürs nächste Update ist der Schlüssel dann auch für meine Datenbank vorgemerkt, der default.style für osm2pgsql hat das normal nämlich nicht drin. Demnach hat Mapnik die PLZ-Grenzen noch aus der “alten” Schreibweise oder ich hab nicht die aktuelle Datei.

ja klar, immer dort wo plz-grenze=gemeinde-grenze ist. da sind 2 MP absolut unnötig - und das war ja auch tiotot’s Frage.

auf keinen Fall!! wenn du sowas finden solltes, bitte ändern
könntest dir das wiki - genauso wie diesen mini-thread nochmal durchlesen.

gruss
Walter

Zwei Relationen. Weil bei einer müßte man ja nach dem derzeitigen Schema boundary=administrative;postal_code in die Relation schreiben. Interessanterweise wird Taggimg mit dem “;”-Separator hier von manchen Leuten jetzt nicht so toll gefunden, wo sie es an anderer Stelle angeblich OK ist. Entscheidet euch doch mal!

Wenn ich boundary=administrative benutze, wie bekomme ich denn dann die Postleitzahlrelationen, wenn ich eine Abfrage nach boundary=postal_code mache? Zwar bekommt man die Postleitzahlen noch mit einem Filter nach Relationen mit postal_code=* aus der Datenbank, aber von einem ordentlichen Schema oder Abfragestil ist das weit entfernt, ähnliches gilt ersatzweise für admin_level=* . Da bleibt also nur zwei Relationen zu erstellen, damit es sauber ist.

Jaaaaa, du bist der erste, der auch mal “von der anderen Seite her” argumentiert, Danke.

Ich finde, da sollte über kurz oder lang mal eine festere Definition gefunden werden, ob nun eine Relation für beides oder jeweils eine eigene.

Könnte mal jemand, wer die “Problematik” auch generell sieht, das vielleicht auf der de-Mailingliste anstoßen?

Wie verhält es sich denn in anderen Staaten? und welche Applikationen werten denn bisher auch die PLZ-Relationen aus?

Also ich denke in einem ordentlichen Schema braucht es keine doppelten Informationen. Es würde also genügen admin_level= zu definieren oder postal_code=
Welchen Vorteil habe ich jetzt von einem Tag namens boundary= ? Eigentlich keinen.
Das ist beim ÖPNV genau das Gleiche. Hier habe ich das sinnlose Tag type=route und dann route=… Ob in in der Datenbank also nun erst type=route suche und anschließend alles mit route=bus tram und Co suche oder ob ich gleich nur nach route=bus suche ist doch egal. Wobei letzteres sogar schneller sein sollte.

Ich bin auch für zwei Relationen, allein um die alten Daten vom Import noch zu haben. Wenn aber beschlossen ist alles auch Gebiete umzustellen, an die ich über postal_code=xxxxx rankomme soll mir das auch recht sein. Wichtig ist nur dass man eine Abfrage machen kann, wo man zu einem Punkt die PLZ bekommen kann, das muss funktionieren!

Sehe ich anders:

Wenn ich erst nach type=route filtere (z.B. mit osmosis), und aus dem erzeugten Unterdatenbestand mir die benötigten bus,tram,trolleybus,rail,light_rail usw rausfische, sollte das erheblich schneller gehen, als immer in sämtlichen Relationen aufs neue suchen zu müssen.

Gruß,
ajoessen

also ich weiß nicht wie genau Osmosis filtert, aber bei o5mfilter kann ich statt nach type=route auch nach route= filtern. und damit hätte ich fast das Gleiche Ergebnis. Wenn in einem zweiten Schritt dann nach route=bus gesucht wird sogar wieder ein identisches.
Aber wahrscheinlich unterstützt auch Osmosis einen Filter nach route=*
Also bei Punkten und Wegen gibt es statt key value auch nur die Option nach key zu suchen. Für Relationen konnte ich das leider nicht finden.
Der einzige Unterschied ist das alle Relationen rausfliegen, welche nur mit type=route getagt sind und nicht weiter spezifiziert wurden. Diese brauchst du aber in deinem Beispiel nicht.
Auch der Umkehrschluss, dass jemand alle Relationen mit type=route raus haben möchte ließe sich über den key route=* lösen. Ich kann also den Sinn nicht erkennen.

Moin,

Ihr solltet schon Gleiches mit Gleichem vergleichen:
Dem Wortlaut nach hat viw recht - solange er nur eine Unterkategorie in allen Relationen sucht (dies ist die Analogie zu postal_code und admin_level).
Andre hat recht - wenn er mehrere Unterkategorien von route bearbeiten möchte. (Dies ist der Unterschied bei ÖPNV - road ist wieder eigentlich nur eine Einzelunterkategorie).

Bei den Relationen mit nur einer Unterkategorie ist der Aufwand identisch, ob man nun nach Relations-Typ oder nach tatsächlicher Eigenschaft sucht - von daher sind die eigenen Relationen (für postal_code und admin_level bei identischem Verlauf) zwar Ariel-reines Schema - aber eigentlich nur Selbstzweck.

Gruß
Georg

Wo ist der Unterschied? Ich möchte alle Straßen haben. Ich suche also nach highway=. Ich möchte alle Routen haben ich suche also nach route=.
Heute kann ich alle Routen aber zusätzlich mit type=route finden. Und genau dieses überflüssige type=route kann man sparen.
Ja ich weiß Josm filtert danach und sortiert die unterschiedlichen types. Aber das kann man anpassen!

u.A. meine http://wnordmann.homeunix.com/otm/plz1.html
und das ohne Probleme, solange ihr hier nur diskussiert aber nichts gravierendes ändert.
Grosse Sorgen mach ich mir aber nicht, da aus solchen “man müsste, man sollte, im wiki müsste man”-Diskussionen fast nie was rauskommt.

Gegen eine Vereinfachung hab ich allerdings nichts einzuwenden.

Gruss
Walter

So dann werde mal konkret. Welche Vereinfachungen Deiner Meinung nach zulässig werden und ab wann eine Auswertbarkeit Verloren geht?