Kein maxspeed=* gebraucht, wenn zone:maxspeed da?

Hallo,
in diesem Changeset: https://www.openstreetmap.org/changeset/78212122 wurde zumindest teilweise, nämlich auf der Hackenberger Straße in Remscheid, maxspeed=30 durch zone:maxspeed=DE:30 ersetzt. Es ist ja schön, dass so dokumentiert wurde, dass eine 30er-Zone vorliegt. Aber aus meiner Sicht wurde da trotzdem eine Information getilgt, nämlich maxspeed=30.

Dasselbe “Problem” gab es schon mal, da hatte der betreffende User maxspeed=30 durch maxspeed:type=DE:zone30 ersetzt. War allerdings auf anderen Straßen. Am Ende wurde dann maxspeed=* händisch wieder ergänzt, da maxspeed:type eine Ergänzung, aber kein Ersatz ist. Müsste das hier auch passieren?

Habe auch gerade gesehen, dass in dem genannten Changeset noch mehr passiert ist. Teilweise wurde wieder maxspeed=* entfernt und dafür maxspeed:type gesetzt: Vergleiche die Versionen 10 und 11 von https://www.openstreetmap.org/way/35313828/history

Da fällt mir auch auf, dass im gleichen Changeset an der L 58 (Linde) die maxspeed entfernt wurde. Sinnig scheint mir das so nicht.

Das englische Wiki sagt zu zone.maxspeed=, “If a speedlimit is bound to an area and not just to a way it should be tagged with maxspeed=* and zone:maxspeed=*.”. Im deutschen Wiki das steht unter zone:maxspeed= nicht so explizit, maxspeed= findet sich aber auch dort rechts unter “sinnvolle Kombinationen”. Insofern gibt es gar keinen Grund maxspeed= zu löschen. Du hast ihn ja schon im Changeset auf die Änderungen angesprochen. Vielleicht möchtest Du noch einen Verweis auf diesen Forenthread ergänzen. Dann kann er sich dazu äussern…wenn er das möchte.

Ja natürlich, danke, habe das soeben gemacht.

Oh, da scheint tatsächlich etwas schief gelaufen zu sein, tut mir Leid.

Die komplett entfernten maxspeeds waren so gedacht, hab sie nur im Changelog vergessen anzugeben - ich bin ziemlich sicher, dass die falsch sind, und dort 60/70 erlaubt, weil teilweise außerhalb der Stadt.

Die Idee war, da die nächsten Tage nach den Änderungen eine Neuerfassung vorzunehmen - das ist mir wohl entfallen.

Ich schau mir das heut Abend noch an und repariere was sich finden lässt :slight_smile:

super

Also ich halte das für einen Fehler. Und zone:maxspeed ist IMHO quasi deprecated - In England wird schon immer source:maxspeed verwendet und StreetComplete drückt das massiv auch in Deutschland rein. Daher habe ich vor einem Jahr auch source:maxspeed übernommen und den Deutschen sonderweg gelassen.

source:maxspeed ist aber kein Ersatz für einen numerischen wert in maxspeed, sondern nur eine Ergänzung. Das ist eben wie in OSM üblich eine verfeinerung der Daten. Ein router den das nicht interessiert der nimmt halt nur maxspeed.

Flo

Meinst Du vielleicht maxspeed:typ?
https://forum.openstreetmap.org/viewtopic.php?id=60027

Ich fand “source:maxspeed” schon immer bescheuert. Erstmal ist der Tag verdreht, denn maxspeed ist keine Eigenschaft einer Quelle und dann ist source=* schon länger in Benutzung für die Datenlage der Erfassung…

maxspeed:source sollte dann eben beschreiben ob man das aus dem Gedächtnis taggt oder grade vor Ort ist memory/survey.

Über source:maxspeed wurde zudem nie abgestimmt IIRC, es gab also gar keine Möglichkeit einen Konsens zu finden oder Kritik zu äußern.

Einem maxspeed einen Typ zuzuordnen macht für mich dagegen durchaus Sinn, vom Tag her.

Btw wird leider erst morgen was, bin heute zu müde um das alles durchzugehen.

Jap. Aber für maxspeed haben wir eh vier verschiedene Sachen, maxspeed:type und dann noch zone:maxspeed was de facto dann auch dasselbe ist, und zone:traffic spielt da manchmal auch noch mit rein.

@ Ruben
Jap, aber dann nimm doch für 30er-Zonen dann auch maxspeed:type=DE:zone30 statt zone:maxspeed=DE:30, so, wie es SC auch macht. Ich meine es ist eig. auch egal na ja Hauptsache maxspeed und irgendwas anderes mit maxspeed ist da.

ist eigentlich falsch:
maxspeed:type=DE:zone30 ist source:maxspeed=DE:zone:30 in DE - https://wiki.openstreetmap.org/wiki/DE:Key:source:maxspeed

maxspeed:type=* sollte für maxspeed=* eingesetzt werden - https://wiki.openstreetmap.org/wiki/DE:Key:maxspeed:type um daraus Länderspezifische Geschwindigkeiten abzuleiten (?) Wird leider durch SC weltweit genutzt - maxspeed:type=* is only in used in certain regions of the world namely the United Kingdom. (?)

zone:= sollte “Gebiete” erfassen in denen diese Beschränkungen gelten - https://wiki.openstreetmap.org/wiki/Proposed_features/trafficzone
(This tag overlaps somewhat with source:maxspeed=*. - https://wiki.openstreetmap.org/wiki/Key:zone:maxspeed )

EDIT:

wurde 3. Nov. 2009 aufgenommen - ob abgestimmt oder nicht (gibt es heute viele unabgestimmte) - etwas in OSM zu ändern ist “verpönnt”. Es hätte doch schon ein zwei Jahre später (oder jetzt?) "maxspeed:source=* generell geändert werden. Oder einzelne Tags, die andere ähneln - einfach umändern und festlegen:
https://wiki.openstreetmap.org/wiki/Key:check_date

Shönen Sonntag …

Osmose weist häufig auf fehlende zone:maxspeed=DE:30 (o.ä.) Werte hin, wenn die Umgebung dies suggeriert. Ich habe auch schon versehentlich bei der Korrektur den maxspeed Wert entfernt. Aus algorithmischer Sicht ergibt das ganze für mich wenig Sinn, die Maxspeedangabe ist völlig redundant, wenn ein Eintrag wie zone:maxspeed=DE:30 vorliegt. Jeder Router sollte das auslesen und in maxspeed=30 übersetzen können, selbst wenn dies nicht in den Metadaten eingetragen ist. source:maxspeed ist natürlich eine andere Geschichte, da dies häufig den bzgl. des maxspeeds nichtssagenden Wert “sign” annimmt.

Kann man aber auch andersrum sehen. zone:maxspeed ist redundant, da der Router nur an der Information maxspeed=30 interessiert ist. Die kriegt er aus maxspeed viel einfacher also sich in die Besonderheiten von verschiedenen Ländern einzuarbeiten oder Tabellen mit den verschiedenen Abkürzungen wie “DE:urban” zu führen.

source=* gibt allgemein die Quelle einer Information an.
source:maxspeed=* gibt die Informations-Quelle für Maxspeed an, zum Beispiel sign, DE:rural oder einfach nur survey oder der Link zu einem Mapillary-Bild. Dabei ist nicht maxspeed eine Eigenschaft von source, sondern *** ist die Eigenschaft von source:maxspeed.
Daneben gibt es noch source:addr=* und source:geometry=* die ähnlich gelagert sind.

Wenn man zone:maxspeed=DE:30 benutzt, habe ich kein Problem damit, wenn redundant maxspeed=30 angegeben wird. Bei dem ähnlichen zone:traffic=DE:urban ist ebenfalls maxspeed=50 impliziert, aber achtet jemand auf sowas? Vor allem, trotz dass nicht für Renderer oder andere SW getagged werden soll, welches Fahrassistenzsystem wertet zone:traffic=DE:urban aus? Im Gegenzug dazu kann man eine Datenbank leicht automatisiert bereinigen, wenn die Auswertung entsprechend vorbereitet wurde. Nur muss dazu genügend Datenmaterial vorhanden sein, damit es sich lohnt, zone:traffic=DE:urban auszuwerten.

zone:maxspeed=* selbst ist nicht redundant, da sich hier weitere Verkehrsvorschriften ändern. Bei Tempo-30-Zonen zum Beispiel:

  • Radfahren auf Straßen erlaubt, auch wenn Radwege vorhanden sind
  • Es gibt keine Vorfahrtsstraßen
    Ich weiß, das selbst Kommunen das falsch handhaben, dennoch gibt es entsprechende Verwaltungsvorschriften, die eine entsprechende Beschilderung vorschreiben.

Kann ich nicht so stehen lassen, denn auch heute schon müssen Router implizierte, länderabhängige Geschwindigkeitsbegrenzungen berücksichtigen. Auf Autobahnen oder Landstraßen zum Beispiel, oder autobahnähnlichen Bundesstraßen. Da macht zone:maxspeed=DE:motorway plötzlich Sinn. Vor allem, wenn eine allgemeine Geschwindigkeitsbegrenzung auf Autobahnen eingeführt werden oder nur geändert werden sollte, wie kürzlich in den Niederlanden.

Auch auf Autobahnen und Landstraßen werden explizite Maxspeed angaben gemappt. Die Diskussionen in der Vergangenheit zu DE:rural und DE:urban waren nicht so, dass es einen Konsens für die Umwandlung von expliziten zu impliziten Angaben gegeben hätte. Und so steht es auch im Wiki. Die Verbreitung der impliziten Angaben beruht “vor allem durch die Implementierung in StreetComplete” (Zitat Wiki). Dort steht "Immer gebräuchlicher wird auch die Verwendung von maxspeed:type=<Ländercode>:, zuletzt vor allem durch die Implementierung in StreetComplete. Dieser Schlüssel sollte anstelle von maxspeed=* verwendet werden. ". Es mag ja sein, dass eine implizite Angabe Vorteile bietet, aber was man taggen “sollte” wird nicht von iD oder StreetComplete entschieden.

leider zunehmend doch. iD user haben oft die tags überhaupt nicht im Blick (um sie zu sehen muss man erstmal aktiv werden, per default sind sie “versteckt”), und bei streetComplete entscheidet der oder die Entwickler, welche tags auf alle Objekte gehören (das ist ja gerade das “complete” im Namen, und das Prinzip der app).

Derzeit halte ich es nicht für schlecht, die zusätzliche Information maxspeed:type=<Ländercode>: einzubringen. Damit wird es möglich, gesetzliche Geschwindigkeitsbegrenzungen bei Änderung schnell und flächendeckend einzubringen. Um in diesem Zusammenhang maxspeed=* zu Entfernen, halte den gegenwärtigen Zeitpunkt als zu früh. Kann aber später maschinell nachgeholt werden.

Implizierte Angaben sind auch aus dem Grunde sinnvoll, da man damit sehr viele Daten in der Datenbank einsparen kann. Wenn sie nicht zutreffend sind, können sie überschrieben werden. Sie sollten aber nicht zu tief im Editor versteckt sein, sodass man sie zur Kontrolle einfach aufrufen und bei Bedarf ändern kann. Nur die zusätzlichen und die geänderten Daten werden gespeichert, die Implizierten eben nicht und werden immer nur aus den vorhandenen Daten hergeleitet. So sind viele access-Angaben impliziert und leiten sich aus dem Wege-Typ ab.

Auf einer Seite können die VZ an de Weg gemappt werden (Rad- und Fußwege) aber nicht die abgeleiteten entfernt werden.
Hier sollen VZ an den Weg gemappt werden und die abgeleiteten entfernt werden.

maxspeed:type=<Ländercode>: sollte nur auf der Insel gelten und nicht in DE oder anderen Ländern source:maxspeed=<Ländercode>: ersetzen. Das kann ich dann zur Änderung weltweit genauso verwenden.

Es kommt immer auf den Mapper an, wie er die Daten aufnimmt und einträgt
Wenn maxspeed=50, source:maxspeed=DE:urban dran steht und plötzlich per Gesetz “30” wird, lässt es sich genauso ändern. Was wird aber dann mit den maxspeed=30, source:maxspeed=sign oder DE:zone:30? - die müssen ja sicherlich auch geändert werden.

Irgendwie wäre ein maxspeed=DE:zone30 anstatt maxspeed=30 und maxspeed:type=DE:zone30 viel sinnvoller.

Der Datennutzer muss nur noch einen Tag auswerten und es ist klar, dass es eine Zone oder eben ein Gebiet (=“DE:urban”) ist.

Wenn dort maxspeed=30 drin steht, ist klar, dass es von einem Schild kommt… und damit spart man sich auch tolle Kombinationen wie maxspeed:type:backward=DE:zone30 oder ist es maxspeed:backward:type=DE:zone30?

Spätestens mit zeitlichen Beschränkungen wird es dann ziemlich unübersichtlich - wobei ich das Gefühl hab, dass die zunehmen und nicht ab.

Ein Beispiel wäre hier, da gibt’s alles, source:maxspeed=, maxspeed:type=, maxspeed:forward= und maxspeed:backward. Ein Parser muss sich schon ziemlich anstrengen, da etwas sinnvolles rauszulesen.

https://www.openstreetmap.org/way/41681431