Der Schlüssel 'colour' bei Public-Transport-Relationen

Inzwischen haben die meisten Public-Transport-Relationen auch den Tag colour, der für die Linienfarbe steht (z.b. U2 Berlin = rot).

https://taginfo.openstreetmap.org/keys/colour#values leidet aber etwas darunter, dass nicht festgelegt ist, ob der HTML-Farbcode in Klein- oder Großbuchstaben geschrieben werden soll – also #ff0000 oder #FF0000. ff0000 ist deutlich häufiger, ich kann zwischen den beiden Schreibweisen aber keinen Vorteil entdecken.

Darf ich zur kurzfristigen Kampfabstimmung bitten?

Wo ist das Problem, ist doch beides gültig. Man könnte auch “red” schreiben, oder “#f00

In der Tat kann man auch “red” nehmen. Fürs Rendern wäre es aber leichter, wenn zumindest der Hexadezimalcode nicht auch noch in 2 Varianten geschrieben würde.

Die Schreibweise nennt sich “Hexadezimal”

Nun ist es so, dass bei Hexadezimal das Zahlensystem aus Ziffern und Buchstaben besteht. Hierbei kommen die Ziffer 0-9 und die Buchstaben A-F bzw. a-f vor.

Da sowohl der englische als auch der deutsche Wikipediaartikel beide Schreibweisen **explizit **angibt würde ich mich daran halten, insofern keine Quelle vorhanden ist, aus der hervorgeht das eine der beiden Schreibweisen (groß-klein) zu bevorzugen ist bzw. eine derer falsch ist.

Ich stimme daher:

+1 für “A-F” und “a-f”

Grüße

Jedes Programm das solche Hexangaben benutzt oder vergleicht muss mit Groß- und Kleinbuchstaben klar kommen. Ich sehe keinen Grund, da in OSM eine Ausnahme zu machen.

“colour” bei Public-Transport-Linien leidet eher darunter, das es als Bitte an den Renderer benutzt wird oder damit die Farbe der Fahrzeuge angegeben wird. Es ist eigentlich für die Linien, deren Farbe ihre übliche Bezeichnung ist. Es gab z.B. in Jönköping in Schweden solche Innenstadtbusse. Da wäre man mit dem offiziellen Namen oder der Nummer von den meisten Leuten vor Ort gar nicht verstanden worden. Leider kann man solche Fälle in OSM jetzt nicht mehr taggen, da colour für andere Zwecke benutzt wird.

ich würde vermuten, dass solche Farben vor allem für print definiert sind, und da ist rgb unüblich, man nimmt entweder CMYK oder ein proprietäres Farbsystem wie Pantone oder vielleicht RAL.

+1. In einen Hexzahlenparser noch ein „lower(…)“ einzubauen, um vorher alles auf Kleinbuchstaben zu bringen, ist jetzt nicht sooo schwierig. In den 80ern wurden Hexzahlen ausschließlich mit Großbachstuben geschrieben, heute sind die kleinen mehr in Mode. Gültig ist jedenfalls beides.

Mehr Schwierigkeiten macht vermutlich die verkürzte Schreibweise von #ff0000 als #f00 (das kommt aus den Zeiten, als sich die Webspaceprovider noch jedes Megabyte teuer bezahlen ließen und die drei gesparten Bytes bares Geld bedeuteten), die lässt sich aber auch mit einer kurzen Regenechse wieder auf sechs Stellen aufblasen.

–ks

Moin,
in der Doku (https://wiki.openstreetmap.org/wiki/Key%3Acolour) werden alle hexadezimal-Zahlen GROß geschrieben, hab aber auf die Schnelle kein Verbot für kleinschreibung entdeckt.

Habe gerade mal ein bisschen tiefer in den css color specifications gegraben dort aber auch nichts gefunden. Naja laut Hexadecimal gibt es ja auch keine universelle Vorgabe:

Aber wie schon erwähnt, egal welcher Programmiersprache oder Styler ich diesen Hex-String vorwerfe sollte mit beiden klarkommen.

HTML erlaubt explizit GROẞE und kleine Buchstaben. Beim Serialisieren sollen Algorithmen aber kleine Buchstaben ausgeben: https://www.w3.org/TR/html/infrastructure.html#colors

CSS hat hier als Beispiel kleine Buchstaben, benutzt aber im Text auch GROẞE: https://www.w3.org/TR/css-color-3/#rgb-color
Ich kann aber bei CSS keine formale Definition finden, was “Hexadecimal” bedeutet.

Wie auch immer: groß und klein ist beides OK. Klein finde ich hübscher.

Was haltet Ihr von Wörtern? Die häufigsten Werte sind Farbnamen:
https://taginfo.openstreetmap.org/keys/colour#values

hier eine alphabetische Liste von Standardfarben:
https://www.w3schools.com/colors/colors_names.asp

Könnte schon Sinn machen. Wenn ich nem Touri eine Strecke erkläre sag ich ja auch nicht “take the pound eff eff dee dee zero zero line” sondern eher “take the yellow line”.
Wenn die Betreiber einen Hexwert oder eine RAL-Farbe o.ä. definiert haben, könnte man die nehmen. Aber ansonsten wäre “yellow” wohl sinnvoller. Wenn beim Rendern dann verschiedene Gelb-Töne rauskommen, ist’s ja nicht schlimm.

Gut gebrüllt. Mir geht aber es nicht um irgendwelche Programme, sondern um Mapnik.

Inhaltlich bin ich in dieser Frage nicht festgelegt. Wir können auch gerne (sofern möglich) die Farbnamen nehmen.

Von Farbtafeln wie RAL oder HKs würde ich abraten, da gibt es hunderte. Das interessiert nur den Drucker auf Hochglanz.
Wer es unbedingt genau haben will, soll eben Hex-Darstellung nehmen. Der Programmierer eines Datenconsumers, der das nur in Groß- oder Kleinbuchstaben kann, hat seinen Beruf verfehlt. Für die Textausgabe ist es auch ohne Belang.
Einem Renderer wie Mapnik ist die Hex-Schreibweise egal, nur mit grünlilablassblau dürfte er Schwierigkeiten haben.

Sechs Farbennamen auf dem Farbkreis (RYGCBM) und vielleicht noch bright/dark sollten reichen. Präziser sind die Farben nach ein paar Jahren auf Anzeigetafeln oder in Schaukästen eh nicht.
Mehr als eine Empfehlung kann das aber nicht sein, denn die eindeutige Zuordnung der 16 Mio (3x8 Bit) RGB-Farben zu einem Farbnamen dürfte hoffnungslos sein.
Die Ausgabe auf z.B. Monitor ist sowieso unterschiedlich, man sehe sich nur dasselbe Bild auf zwei Bildschirmen nebeneinander an.

Am Rande:

Im Zweifel für die Geschindigkeit :wink:

http://www.websiteoptimization.com/speed/tweak/lowercase/

Ich rate davon ab genau definierbare Werte mit Hilfe von Fuzzy-Begriffe zu subsumieren.

Als Gegenbeispiel denke ich z.B. an das Wort “pink”:
Während der Engländer unter “Pink” den Farbcode: #ffc0cb versteht, versteht ein Deutscher darunter eher: Farbcode: #fc0fc0

Ebenfalls haben wir dann das Problem, das man sprachlich Farben definieren kann, die im RGB-System nicht vorkommen. Gerade einige Druckfarben die üblicherweise im CMYK-Farbraum definiert werden sind nicht im RGB-System definierbar. Gerade C für Cyan ist hier ein gutes Beispiel… während in den Druckfarben Cyan ein Cyan darstellt (Farbcode: #00B7EB) wird im Web der Farbcode: #00FFFF genutzt.

Und warum sollten wir uns in solche “Grenzbereiche” der Farbenlehre wagen, wenn wir einfach einen rgb-Wert definieren können der zumindest im RGB-System eindeutig ist. Gerne kann man zusätzlich auch noch einen CMYK-Wert oder einen RAL oder sonstwas Wert angeben - aber soetwas unspezifisches wie Blau oder Grün würde ich nur ungerne angeben.

siehe auch:

https://cafebabel.com/de/article/farben-sprichst-du-blun-5ae0083cf723b35a145e3398/

Hmm… an die psychologische bzw. sogar physiolische Warnehmung bzw. dass in manchen Sprachen dasselbe Wort “grün” und “blau” bedeutet hatte ich nicht gedacht.

Also wohl doch in #hex angeben. Ist dann aber ganz klar Taggen für den Renderer :slight_smile:
Wenn “gelbe Linie” eine offizielle Bezeichnung ist, könnte das in ein anderes Tag, z. B. alt_name.

Wenn die Festlegung in einem System wie RAL oder Pantone ist, dann ist der einzige Weg es verlustfrei zu taggen dass man die Farbe in diesem System taggt. Hex-Darstellung meint vermutlich RGB, damit kann man viele Farben gar nicht darstellen.
Weil das geht heißt es aber nicht, dass man nicht einfach auch grün oder gelb schreiben kann. Vielleicht wäre für Farben in proprietären Farbsystemen jeweils ein eigener key sinnvoll, so dass man gleichzeitig eine ungefähre Übersetzung nach rgb bzw. Farbnamen taggen kann?

Nö. Es geht nicht um Mapnik. Es geht um die OSM-Datenbank. Da sollen die Eigenschaften der Objekte eingetragen werden und alle verarbeitenden Programme wie Mapnik müssen dann zusehen, was sie daraus machen. Wir tragen ja auch keine Schriftgrößen für Städtenamen ein sondern die Einwohnerzahlen der Städte.

Inwiefern kann also eine Farbe wirklich eine Eigenschaft einer ÖPV-Linie sein und nicht nur ein Wunsch des Mappers für die Darstellung oder eine gebräuchliche Darstellung? Das hat man dann, wenn die Muggel nicht “Nimm die Linie 41” sondern “Nimm die rote Linie” sagen. Das ist ein Grund “colour” bei dieser Linie zu benutzen.

Schau dir mal diese Links an:
Washington Metro
MBTA
Jaipur Metro
Lahore Metro

Harry Potter habe ich nie gelesen. Aber wäre es jetzt korrekt zu sagen “Amerikaner und Inder sind alle Muggel”?