Nutzer überschreibt maxspeed-Angaben durch z.B. maxspeed=DE:zone30

Ich folge dieser Diskussion mit großem Interesse, halte mich aber wegen fehlendem Hintergrundwissen raus.
Zwei Sachen möchte ich aber anmerken.

Es gehört sich a.m.S. nicht im Header eines Threads User anzugreifen. Das kann man, wenn man es für nötig hält, im Text machen.

Es gehört sich a.m.S. nicht, wenn ein Vorgehen zu einer kontroversen Diskussion führt, weiter zumachen, als gebe es die Diskussion nicht.

:rage:

@Nop: RubenKelevra ist hier und kommuniziert hier mit uns, oder nicht? Er hat sogar inzwischen ein Proposal gestartet. Eine Meldung an die DWG halte ich für vollkommen überzogen.

+1, wäre nett wenn der Graf das noch ändern würde. Man kann z.B. statt des Namens „user“ schreiben, oder „userin“ falls man gerne die Frauenrechte hervorheben will

“maxspeed” sollte normalerweise einen numerischen wert enthalten - Alternativ auch mit “mph” also Maßeinheit. Die informationen WOHER dieses Maxspeed kommt gibt es je nach land in maxspeed:type oder source:maxspeed

Aber das in maxspeed selber zu schreiben ist kaputt.

In OSM taggen wir erst den einfachen fall und dann ergänzen wir mit zusatzinformationen für auswertungen/nutzer die es genauer wissen wollen. Nur noch die “komplexe” information in einem tag abzulegen was eigentlich die einfache information haben sollte ist bullshit.

Flo

Das kannst Du als PKW-Fahrer so sagen. Ich dahingegen meine, dass man die Daten möglichst anwendungsneutral erfassen sollte. Dann ist maxpeed mit numerischen Werten oftmals “bullshit”, weil nicht vollständig/korrekt erfasst:

Da ich deutlich weniger Auto als Fahrrad fahre fühle ich mich mal nicht angesprochen.

Der Punkt ist das ich einen komplexen fall (Wie die conditionals) nicht vereinfachen KANN.

Aber wenn ich einen einfachen fall habe wie ein “maxspeed=50” der aus einer “Geschlossenen Ortschaft” kommt
muss ich nicht einen komplexeren Fall daraus konstruieren in dem ich in das maxspeed dann ein DE:urban schreibe.

Das ist Unsinn weil mit einem mal JEDER datennutzer wissen muss was DE:urban ist nur um ein fucking maxspeed zu kennen.

Das ist die indentische diskussion zu dem feingranularerem tagging von natural=water. Wenn ich nur wissen will wo wasser ist kann ich natural=water nehmen. Dann kann ein weiteres water=basin / basin=retention mir am Arsch vorbeigehen. Wenn ich aber wissen will welche Flächen als Regenrückhaltebecken genutzt werden kann ich weiter rein suchen. Das hab ich immer als ein Grundkonzept von OSM angesehen das ich mit möglichst wenig mitteln etwas nützliches damit machen kann, wenn ich spezifischere dinge suche muss ich mehr tags auswerten.

Wenn ich also zu den conditionals zurückkomme. Hier werden beliebige Rechtsnormen ja durcheinander geworfen. Es gibt ein maxspeed für die Straße, und es gibt maxspeeds die durch Bauart, Konfiguration oder kombination aus Fahrzeug und Straßenklasse definiert sind. Das jeweilig niedrigere gilt. Da wir als OSM keine Kenntnis des Fahrzeugs haben mappen wir die limits der Straße und die Straßenklasse.

Aufgabe des Fahrzeugsführers ist es dann das für ihn rechtlich richtige Maxspeed zu wählen.

Dann hier auf die Rechtliche Situation das ich mit dem Anhänger ja nur 80 darf hinzuweisen ist halt eine Nebelkerze. Das hängt am Anhänger und nicht an der Straße.

Und auch hier ist wieder das Grundkonzept das wir vom einfachen zum komplexen gehe. Wenn ich einen simplen Auswerter habe dann sagt das - “ah prima - hier ist 50” - Wenn da ein conditional mit “30 zwischen 7 und 17 Uhr” dran steht ist das halt schick das für die genaueren Traversal speeds im A* zu kennen - Aber das sind dann die letzten 2% Genauigkeit.

Flo

Tut mir leid, aber ich kann nichts komplexes daran erkennen: *if xyz=DE:urban then maxspeed = 50 *

Ein LKW-Router (>7.5t): *if xyz=DE:rural then maxspeed = 60 *

Du schreibst es selbst: Wir sollten erfassen, was für eine Straße das ist und welche Geschwindigkeitsbegrenzungen dort gelten können Datenanwendungen einfach selber ableiten.

Gerade wenn wie in den Niederlande sich das maxspeed ändert müssen wir in OSM nichts tun.

Wie oben feststellte, habe ich von den Hintergründen keine große Ahnung.

Und deshalb ist für mich maxspeed das, was ich mal in der Schule gelernt habe. Maxspeed hieß dort maximale Geschwindigkeit oder Höchstgeschwindigkeit oder in Physik Vmax. Und für mich gehören hinter Vmax Ziffern bzw. Zahlen. Und die gelten sowohl in Berlin wie in Moskau oder Peking, halt dann weltweit.

Vielleicht sollte man das mal in den Fokus nehmen.

:rage:

Hast du mal schnell die liste aller ISO 3166 2 letter country codes und ihrer rechtlich angeordneten zonen namen und deren maxspeed? Wo ist die zentral gepflegt das nicht jeder Auswerter diese Liste selber manuell auf Zuruf pflegen muss?

Und das du nichts machen musst ist halt Unsinn. Als wären die Daten in OSM so gepflegt das man sich darauf verlassen kann. Und NEIN - Auch wenn sich in Paris das default maxspeed von 50 → 30 ändert kannst du nicht einfach alles ändern auf 30 weil es könnte ja sein das auf diesem Teilstück die quelle nicht dein Ortschild sondern ein Schild ist.

Bei jeder Änderung eines Gebietes muss jedes maxspeed kontrolliert werden. Als HINT können dir dann die entsprechenden CCcode:Areadefinition helfen die alle zu finden.

Flo

Also sollten Router maxspeed gänzlich ignorieren, oder was ist Dein Argument?

Richtig, wenn man einfach nur stumpf maxspeed einträgt, dann hast Du Recht.

Nicht alles was hinkt ist ein vergleich.

Der punkt ist das doppelte tag einen teil überschneidung hat ist GUT - Denn es gibt redundanzen über die man beide Werte partiell auf plausibilität prüfen kann.

ein maxspeed:type=DE:urban und maxspeed=100 kann man sofort als falsch identifizieren - Nur welches falsch ist ist nicht ganz klar. Erhöht halt die Hamming Distanz zwischen richtigen und falschem tagging.

Hab ich ja nicht gesagt - Ich habe gesagt das beides - ein numerisches maxspeed UND ein maxspeed:type oder source:maxspeed (mir gleich) notwendig und gut ist.

Denn wie oben schon geschrieben:

  • Es macht es den Auswertern/Nutzern einfacher
  • Es erhöht die Hamming Distanz um falsches tagging zu entdecken

Das Numerische zu eliminieren und durch am ende random identifier zu ersetzen streicht die redundanz und macht es den Auswertern schwieriger zu einem wirklichen maxspeed zu kommen.

Flo

das stimmt so nicht weil es nur Güterverkehr betrifft

Wie ich ja schon schrieb - Die ganze liste ist nur eine Nebelkerze. Die hat so viel mit OpenStreetmap zu tun wie Kim Jong Un mit der Bundestagswahl.

Die maxspeeds die man da als die angebliche Komplexität immer wieder auftischt hat mit den draussen beobachtbaren Verboten (Und nur die mappen wir) nichts zu tun.

Die eigentlich zulässig Höchstgeschwindigkeit hängt vom Fahrzeugtyp, Zulassung, Konfiguration des möglichen Gespanns ab - Das hat aber alles mit OSM nichts zu tun auch wenn man das immer wieder gerne ins Feld führt als “Das ist ja eh alles noch viel komplizierter also lass uns das aktuelle System kaputt machen”

Es geht alleinig um das was da draussen als Schilder steht. Nicht mehr und nicht weniger. Und ja - Da gibt es conditionals mit “30kmh zwischen 7 und 17 Uhr” - das sind aber alles eher ausnahmen als die Regel.

Wenn du als Auswerter nur das “maxspeed=” nimmst hast du 80% erschlagen. Wenn man :forward/:backward supported hast du 95%. Und wie in allen IT Systemen musst du für die letzten 5% Geschwindigkeitsbeschränkungen dann 90% des Codes schreiben.

Alle Vorschläge und auch das Proposal sind keine Vereinfachung für die Auswertung. Denn mit einem mal muss ich lange Listen pflegen statt des parsens eines Numerischen wertes. Den rest der Komplexität werde ich ja nicht los.

Dazu kommt das ich die plausibilitätsprüfung verliere die ggfs dann möglich ist wenn sowohl maxspeed:type wie auch maxspeed getagged sind.

Ich gehe sofort ein proposal mit das 2 von den 3 möglichkeiten maxspeed:type, source:maxspeed und zone:maxspeed als deprecated definiert. Ich würde maxspeed:type behalten und den rest eliminieren - Aber solange der Blumenstrauß kleiner wird ist es mir recht.

Flo

Ganz genau! Kein Zeichen → kein maxspeed.

Machst es mit Deinen Redundanzen aber wieder komplexer und fehleranfälliger.

Ich möcht mal noch einwerfen, dass maxspeed=30 nicht nur maschinenlesbar(er) ist, sondern alle - auch OSM-Fremde - können damit am ehesten was anfangen.

@OSM_RogerWilco https://forum.openstreetmap.org/viewtopic.php?pid=828420#p828420

usw. usf.

Dass das alles eine Nebelkerze ist, lässt sich ganz einfach mit Verkehrszeichen 393 zeigen, da stehen nämlich genau nur 3 explizite Werte ohne die ganze Fahzeugspezifischen Spezialregelungen.

Tja, was soll ein LKW-Router damit anfangen?

Maxspeed ist die höchstzulässige Geschwindigkeit. Wenn ein Lkw nur 60, aber ein Pkw 100 fahren darf, dann ist maxspeed immer noch 100.
Und zur Frage, wer das braucht: Normalnutzer, denen ein “irgendeinlandspezifischer Tag” beim Auslandsurlaub herzlich wenig nutzt - und auch nicht erfasst werden könnte. Oder weiß jemand auf Anhieb, welchen “Text” man in Bolivien eingeben müsste, wenn man dort ein “100er-Schild” sieht?

Den Wunsch nach Revert würde ich daher unterstützen.
Auch wenn es aus datenlogischer Sicht anders vielleicht besser wäre, bin ich eindeutig für KISS! Im Übrigen sind Redundanzen kein Problem, sondern ein Mittel der Qualitätskontrolle… Sollte man einmal darüber nachdenken.

Das sehe ich auch so. Wir mappen ja auch nicht, dass Kinder bis 10 Jahre auf dem Fußweg statt auf der Straße fahre dürfen/müssen
highway=footway + bicycle:conditional=age @ <10

und nicht zu vergessen: Begleitpersonen dürfen dann ebenfalls.

Da ja die Variante “wir taggen für jede Fahrzeugart die explizite Höchstgeschwindigkeit” offensichtlich rausfällt, ist dem LKW Router vollkommen egal, welche maxspeed Variante gemappt ist. Der muss sich in jedem Fall die Info so oder so ais einem separaten Datensatz holen und mit dem gemappten maxspeed vergleichen.