Römische Zahlen im Web mit HTML und CSS - ein Überblick

Donnerstag, 15 Juli 2010 21:59 MET

Thema:
Webgestaltung  
Stichworte:
, , ,  
 
Römisches Ziffernblatt einer Uhr
Römische Zahlen im Web mit HTML und CSS - ein Überblick [hyperkontext | Weblog]

Im Web sollte die römische Zahl auch von Programmen sinnvoll zugeordnet, verstanden oder zumindest angezeigt werden. Ich versuche einen Überblick, wie wir das umsetzen können.

Optionen: Römische Zahl aus Buchstaben generieren, Unicode und Sonderzeichen schreiben oder mit CSS darstellen.

Fazit: Römische Zahlen können aus Buchstaben zusammen gesetzt sein. Die Unicode-Zeichen sind hierfür in der Praxis ziemlich unbrauchbar. Wenn eine Zahl wichtig ist, sollte sie zusätzlich in gebräuchlicher Art geschrieben sein.

Programme sollten römische Zahlen verstehen

Es ist wieder ein typischer Fall des Unterschiedes zwischen gedrucktem und digitalem Dokument: Eine gedruckte Seite interpretiert ausschließlich ein Mensch (mit Ausnahme der OCR-Technik).

Ein digitales Dokument wird hingegen nicht nur von Menschen gelesen und interpretiert, sondern auch von Programmen, die den Text für verschiedene Zwecke auswerten.

Die Konsequenz ist, dass zum Beispiel eine visuell dargestellte Überschrift nicht automatisch auch eine Überschrift für ein verarbeitendes Programm ist, solange sie nicht dementsprechend ausgezeichnet wurde. Im Web also mit Hilfe der Auszeichnungssprache HTML (Hypertext Markup Language).

Die speziellen Zeichen für römische Zahlen sind in der Praxis leider unbrauchbar.

Auf einem gedrucktem Blatt Papier liegt die Interpretation und das Verstehen einer römischen Zahl ausschließlich an der Sehkraft und Bildung der lesenden Person. Im Web sollte die römische Zahl aber auch von Suchmaschinen, Screenreadern, Braille-Ausgabegeräten und anderen Programmen sinnvoll zugeordnet, verstanden oder zumindest angezeigt werden.

Wie sieht es nun in der Praxis aus, wenn wir auf einer Webseite über Heinrich den Achten schreiben? Macht es einen Unterschied, ob ich Heinrich 8., Heinrich VIII oder einfach Heinrich der Achte schreibe?

Wie sieht es mit Jahreszahlen aus? Ordnet eine Suchmaschine MDCCLXXXII auch dem Jahr 1782 zu?

Intelligenter als gedacht

Soweit ich das kurz testete.

In Verbindung mit berühmten Personen agieren Suchmaschinen recht souverän und bringen die vorhin erwähnte Variante in den richtigen Kontext. Bei hohen römischen Zahlen, also einer Jahresangabe zum Beispiel, stellen (die bekannten) Suchmaschinen hingegen selten einen Zusammenhang zur Zahl her.

Screenreader agieren mit guten Algorithmen, die mit Hilfe von Buchstaben geschriebene römische Zahlen oft erkennen und als solche vorlesen. Mit definitiver Ausnahme von einzeln geschriebenen Zeichen, also I, V oder X oder aus vielen Zeichen zusammengesetzter römischer Zahl.

Wem es also wichtig ist, dass sein Text auch im Zusammenhang gefunden wird, der sollte beispielsweise römische Datumsangaben daneben auch in gebräuchlicher Weise hinschreiben. Abgesehen davon, werden viele Menschen, sofern die Website nicht nur von Historikern besucht wird, bei solchen Jahresangaben schon mal aus dem Lesefluss gerissen.

Wer nun – sowohl Mensch, als auch Software – genau was versteht, ist naturgemäß nicht allgemein und sicher zu beantworten.

Optionen im Überblick

Es gibt zwei Möglichkeiten, römische Zahlen zu schreiben:
Aus Buchstaben generieren oder mit den vorgesehenen Unicode-Zeichen.

Eine weitere Option wäre, sie mit CSS darzustellen. Der Unterschied zu den anderen zwei ist, dass eine normal geschriebene Zahl im HTML-Quelltext als Grundlage dient und daraus eine römische, griechische oder sogar japanische dargestellt wird, ohne sie so in den Text geschrieben zu haben.

Nachfolgend die drei Möglichkeiten im Detail:

1. Römische Zahl aus Buchstaben – bewährte Praxis

Diese Schreibweise ist aus pragmatischer Sicht die zu empfehlende.

Wie schon vorhin angeschnitten, im Zusammenhang mit berühmten Personen oder oft erwähnten historischen Ereignissen ordnen Suchmaschinen römische Zahlen durchaus richtig ein.

Programme und alternative Ausgabegeräte interpretieren aus Buchstaben geschriebene römische Zahlen häufig korrekt. Screenreader lesen diese Konstrukte teilweise auch als Zahl vor. Die selbe Aussage trifft vermutlich auch auf viele andere Programme zu, die Texte aus dem Web auswerten.

Zu Bedenken ist jedoch, dass spätestens bei Zahlen ab 40 (XL) – manchmal aber auch schon XXIII (23), die Erkennung im Screenreader nicht mehr zuverlässig ist. Es wird dann eben nur die Buchstabenreihe vorgelesen und es kommt auf die interpretierende Person an, ob die Zahl verstanden wird. Nunja, auch bei vielen sehenden Menschen gerät der Lesefluss bei römischen Zahlen ab 40 ins Stocken.

Eva Papst hat zu diesem Thema aus Sicht einer Braille- und Screenreader-Benutzerin schon vor längerer Zeit einen erhellenden Artikel geschrieben:
Sprachausgaben und römische Zahlen – Was bedeutet CDLXXIX? (Die Antwort ist übrigens 479.)

Die Screenreader haben sich vielleicht verbessert und interpretieren nun auch höhere römische Zahlen als solche. Viele Menschen werden aber ihre Schwierigkeiten haben, solche Konstrukte flüssig zu lesen.

Die Konsequenz: Wo immer möglich, die Zahl zusätzlich in gewohnter Form anzeigen. Das dient Mensch und Maschine gleichermaßen.

2. Unicode und Sonderzeichen – schlechteste Lösung

In der Theorie der logische und adäquate Ansatz. In der Praxis ziemlich unbrauchbar.

Es gibt auch die Möglichkeit, eine römische Zahl aus den reservierten HTML-Entities be­ziehungs­weise mit Unicode zusammen zu setzen.

Das Problem bei dieser Schreibweise:
Mit so mancher Software oder durch bestimmte Konstellationen (Betriebssystem, Browser, Schriftset) werden die Zeichen überhaupt nicht angezeigt. Zum Beispiel im IE (zumindest bis Version 8), wenn nicht eines der äußerst raren Schriftsets installiert ist, das diese Sonderzeichen beinhaltet.

Hinzu kommt, dass – laut Aussage von Eva Papst in einer E-Mail an mich – die Darstellung dieser Zeichen für Braille-Ausgabe gar nicht definiert und technisch vorgesehen ist. Im Gegensatz zu Schmuckzeichen ist es bei Zahlen eine heikle Sache, wenn sie mitunter gar nicht dargestellt werden.

Die Variante wäre daher ernsthaft nur einsetzbar, wenn die Zielgruppe eingegrenzt ist und alle die gleiche Ausstattung und ähnliche Bedürfnisse haben (in einem Intranet denkbar).

3. Mit CSS – gefinkelter Spezialeinsatz

Die Zahl normal ge­schrie­ben, die ge­wünschte Dar­stellung per CSS.

Eine gefinkelte Methode wäre, die automatische Nummerierung von CSS (Cascading Style Sheets) zur Darstellung von römischen Zahlen zu verwenden. Wie die Nummerierung funktioniert, beschrieb ich schon einmal im Jahr 2007: Nummerieren mit CSS.

Gedacht ist die Funktion eigentlich für Zählung und Nummerierung von Elementen. Der Trick, diese Zahlendarstellung im Fließtext zu verwenden, besteht darin, die Zahl mit einem Element zu umschließen und per Inline-Style mit counter-reset die gerade darzustellende Zahl dort auch einzutragen.

Damit können nun Ziffern und Zahlen neben römischen, auch in griechischen, japanischen oder hebräischen Zeichen (bei letzteren zwei, soweit der Browser mitspielt) angezeigt werden, obwohl sie so nicht im HTML-Quelltext stehen.

Das CSS könnte in der Datei oder im Kopf der Seite so angelegt sein:

.roemisch:before { 
 content: counter(zahl,upper-roman) ' ['; 
} 
.roemisch:after { 
 content: ']'; 
}

Direkt im Text wird dann per counter-reset bestimmt, welche Zahl übersetzt und angezeigt werden soll:
<span class="roemisch" style="counter-reset:zahl 1782;">1782</span>

Diese Technik lässt natürlich verschiedene Varianten der Darstellung zu. Ein paar Beispiele habe ich hier erstellt:
> zur Demoseite

Vor- und Nachteile

Suchmaschinen, Screenreader und andere assistive Programme lesen einfach die Zahl und kümmern sich nicht darum, was via CSS angezeigt wird. Ältere Browser, welche die Angaben :before und :after nicht verstehen, zeigen ebenfalls einfach die normale Zahl an.

Eigentlich der ideale Zustand, bei dem die Darstellung von der inhaltlichen Bedeutung separiert ist.

Weiters brauchen Textersteller nicht überlegen, wie zum Beispiel die Jahreszahl 1782 auf römisch geschrieben wird. Das erledigt der Browser.

Schwieriger wird es in der Umsetzung, wenn diese Art von HTML-unkundigen Personen über einen Texteditor gepflegt werden soll. Außerdem ist das natürlich nur sinnvoll, wenn ständig römische (oder griechische) Ziffern und Zahlen angezeigt werden müssen.

Fazit: Praxis vor Theorie

Vermeiden wir eine religiös typografische Sicht (nur Sonderzeichen) und konzentrieren wir uns mehr auf die pragmatische, wie die beabsichtigte Information von möglichst vielen aufgenommen wird.

Im Gegensatz zu den Unicode-Zeichen werden mit Buchstaben geschriebene römische Zahlen immer angezeigt und viele Programme erkennen so manche Zahl dahinter. Viel mehr haben Menschen Probleme, eine römische Zahl zügig zu interpretieren. Manche kommen mitunter schon mit dem X (10) ins Schleudern.

Anstatt sich also mit Sonderzeichen und theoretischem Typokram herum zu schlagen:

  1. Römische Zahlen im Fließtext einfach aus Buchstaben zusammen setzen.
  2. Wenn eine Zahl wichtig ist – und das ist sie meistens, sollte sie zusätzlich in gebräuchlicher Art geschrieben sein. Damit ist Maschine und Mensch in jedem Fall ausreichend informiert.
Abschnitt 1 von 1

Ich bedanke mich an dieser Stelle bei Eva Papst, die einige von mir erstellte Beispiele mit ihren Screenreadern geduldig testete und kompetente Auskunft gab.

Gesammelte Verweise zum Thema

Externe Verweise dieses Artikels wurden zuletzt am 15. Juli 2010 auf Relevanz geprüft.

Datum:
veröffentlicht am 15 Juli 2010, 21:59 MET.
Artikel:
Römische Zahlen im Web mit HTML und CSS - ein Überblick [hyperkontext | Weblog]
Kurz-URL:
http://hyperkontext.at/s/270
Thema:
Webgestaltung 
Stichworte:
, , ,  

Dieser Eintrag kann nicht mehr kommentiert werden.

Mögliche themenverwandte Artikel aus dem Weblog

Blättern (chronologisch)

älterer Artikel »
Berichtigung meiner Kurzbeschreibung zum Buch »Gute Geschäfte«