Artikel

Mit Screenreadern testen (1): Zitatauszeichnung

Last modified: September 21, 2014

Semantik in HTML ist ja etwas Wunderbares, interessant wird es, wenn man sich die Interpretation durch Screenreader genauer ansieht. Bei meiner Recherche zur Technikwürze zum Thema Formulare hatte ich schon an der einen oder anderen Stelle aufgehorcht. Immer mal wieder war mir nicht klar, habe ich die Semantik in HTML unzureichend gesetzt oder liegt es an der Kombination von Screenreader und / oder Browser / System. Daher werde ich jetzt in loser Folge semantische Auszeichnungen in Screenreadern testen. Den Anfang macht die Auszeichnung von Langzitaten – blockquote -, von Kurzzitaten mit Hilfe des q-Elementes und die jeweilige Zuordnung zur zitierten Quelle – cite.

Screenreader und Zitate: das Gesamtergebnis

Um gleich mit der argumentativen Tür ins Haus zu fallen: Es sieht durchwachsen aus mit der Ausgabe von Zitaten – nur Langzitate werden standardmäßig vorgelesen – aber auch nicht immer. Leider muss man sagen, die gesamte Semantik eines Artikels geht dann doch verloren. Der Weg kann nicht sein, jedes Zitat als blockquote-Element umzusetzen . Vor allem wenn man bedenkt, wie alt die semantische Auszeichnung von Zitaten ist. Die Verwendung reicht quasi ins HTML-Urgestein zurück: Kleine Geschichte des blockquote-Elements anhand der Spezifikationen.

Vor allem kann man die Unterstützung in der Ausgabe bei Screenreadern an der konkreten Browserunterstützung des jeweiligen Elements ablesen. So sitzt das Langzitat mit Hilfe des blockquote-Elements schon weitaus fester, auch wenn man mitunter das explizite Vorlesen erst hinzuschalten muss. Das Kurzzitat mit Hilfe des q-Elements, das ja lange Zeit nur von wenigen Browsern unterstützt wurde – IE 8 hat da ja endlich nachgezogen, hat das Nachsehen. Die Unterstützung wird dauern, da haben Screenreader eindeutig Nachholbedarf. Gänzlich abgeschlagen dann die Angabe der Quelle mit Hilfe des cite-Elements. Einzig als Attribut im Langzitat wird cite von JAWS vorgelesen. Befüllt man das cite-Attribut mit einer URL, sollte man darauf achten, dass sie nicht lang ist, denn JAWS liest das dann wirklich bis zum letzten Zeichen vor. ;) Einzige Ausnahme ist Window-Eyes, das auch über das Kurzzitat – das q-Element – informiert.

Die Testumgebung

Ich habe eine einfache Testseite erstellt, in der ich im ersten Absatz den alleinigen Einsatz eines Kurzzitats und dessen Quelle und darauf folgend das Langzitat – ein blockquote-Element mit gefülltem cite-Attribut – teste.

Der Blindtext-Generator sagt, dass esse est percipi ein Gassenhauer ist:

Überall dieselbe alte Leier. Das Layout ist fertig, der Text lässt auf sich warten.

Quelle: Blindtext-Generator

Diese Testseite habe ich dann mit folgenden Screenreadern und Browser-Erweiterungen getestet:

  • JAWS 11 mit IE 8 (Windows) und Firefox 3.6 (Windows)
  • NVDA 2010.1 mit Firefox 3.6 (Windows) und IE 8 (Windows)
  • Window-Eyes 7.1. und IE 8 (Windows)
  • COBRA 8.1. und IE 6 (Windows)
  • HAL 11 und IE 8 (Windows)
  • Thunder und WebbIE (Windows)
  • VoiceOver mit Safari 4.0.4 (Macintosh)
  • Webscreenreader WebAnywhere
  • Fangs Screenreadersimulator (Firefox)
  • Fire Vox Screenreader-Plugin (Firefox)

Die Einstellungen der Screenreader und Erweiterungen sind typisch, also auf eine Default-Installation eingestellt, um festzustellen, ob die semantische Auszeichnung defaultmäßig auch aktiviert ist.

Vergleich Screenreader und Interpretation von Zitaten

Sieht man sich nun in der vergleichenden Tabelle die Ergebnisse im Detail an, ist der Interpretationsvorsprung von Langzitaten deutlich erkennbar. Pro Screenreader wird getestet, ob das Langzitat vorgelesen wird und auch bei einer Standardinstallation aktiviert ist, ob die Quelle als Attribut im Langzitat, das Kurzitat und das alleinstehende cite-Element mit entsprechender Info vorgelesen wird. Denn natürlich wird der entsprechende Text des Elementes immer vorgelesen, aber viel wichtiger ist, dass der Textabschnitt auch als Zitat gekennzeichnet wird.

Screenreaderaktiviertblockquoteblockquote und citeqcite
JAWS 11 mit IE 8jajajaneinnein
JAWS 11 mit Firefox 3.6.3jajajaneinnein
NVDA 2010.1 mit Firefox 3.6.3jajaneinneinnein
NVDA 2010.1 mit IE 8janeinneinneinnein
Window-Eyes 7.1. und IE 8neinjaneinjanein
COBRA 8.1. und IE 6neinneinneinneinnein
Thunder und WebbIEneinneinneinneinnein
Hal mit IE 8neinneinneinneinnein
VoiceOver mit Safari 4.0.4neinjaneinneinnein
Webscreenreader WebAnywhereneinneinneinneinnein
Fangs Screenreadersimulatorjajaneinneinnein
Fire Vox Screenreader-Pluginneinneinneinneinnein

Screenreader und Zitate: die Ergebnisse im Einzelnen

Das Langzitat

Standardmäßig aktiviert ist der Hinweis auf ein Langzitat nur bei JAWS und NVDA. Bei JAWS wird das Langzitat mit Zitatblock-Anfang und -Ende angesagt, NVDA setzt vor und hinter das Langzitat Zitatblock. Window-Eyes hat die Ansage des Langzitats nicht standardmäßig aktivert. In den Ausführlichkeitseinstellungen wählt man > Browsermodus > Hervorhebung / Bereichshervorhebung aus und hakt an, dass vor und nach dem Langzitat eine Nachricht eingefügt wird. Entsprechend hört sich das dann auch an: am Anfang Bereichshervorhebung und am Ende des Langzitats Bereichshervorhebung Ende. So ganz konsistent funktioniert das nicht, im Testbeispiel wird das Ende des Langzitats nicht angesagt.

VoiceOver: Testseite mit Ausführlichkeit hochgesetzt

Abbildung: Testseite mit Voiceover und Ausführlichkeit hochgesetzt

Auch VoiceOver geht für das Ansagen von Auszeichnungen über die Ausführlichkeitseinstellung. Dort kann man für unterschiedlichste Elemente die Ausführlichkeit erhöhen. Man kann für alles die Ausführlichkeit auf hoch setzen oder für einzelne Elemente. Aber auch wenn man die Ausführlichkeit für alles auf hoch setzt, wird die Zitatinformation noch nicht vorgelesen. Man muss erst den Textblock anwählen und dann wird die Zusatzinformation Zitatblock Ebene-1 vorgelesen. Etwas sehr gewöhnungsbedürftig, aber das ist ja VoiceOver im Allgemeinen. :) VoiceOver versucht ja auch mit dem Konzept der Webspots fehlende Semantik zu ersetzen – ein verständliches, aber auch schwieriges Konzept. Mit VoiceOver arbeite ich immer noch verhältnismässig langsam, die Lernkurve ist trotz schneller Anfangserfolge für mich recht hoch. :)

Fangs: Ausgabe der Testseite

Abbildung: Testseite mit Fangs: Zitaterkennung

In Screenreadern wie Thunder, die nicht direkt mit dem Browser arbeiten, sondern mit einem Browserersatz wird das Zitat als solches nicht vorgelesen, aber durch Anführungszeichen gekennzeichnet, die auch vorgelesen werden. Ähnlich stellt das der Screenreader-Simulator Fangs dar, er markiert ganz richtig für das Langzitat den Anfang mit Block quote start und das Zitatende mit Block quote end.

Das Langzitat in Kombination mit einer Quellenangabe liest nur JAWS verständlich und verlässlich vor. NVDA scheint zwar das cite-Attribut zu erkennen, aber gibt für die Testseite kein verständliches Ergebnis wieder. Man müsste noch testen, ob NVDA nur bestimmte Werte für das cite-Attribut zulässt, etwa nur eine URL.

Tonbeispiele: Langzitat

Das Kurzzitat

Wie schon ausgeführt, ist das Kurzzitat mit Hilfe des q-Elements noch ein Stiefkind der Ausgabe. Nur Window-Eyes gibt es genauso wie das Langzitat hervorgehoben wieder. Thunder liest auch für das Kurzzitat die Anführungszeichen vor, was wenigstens markiert, dass es sich um ein Zitat handeln könnte. Ansonsten wird ausnahmslos über das Kurzzitat hinweg gelesen. Es erfolgt auch keine Zuordnung zur Quelle des Kurzzitats, das cite-Element wird schlicht überlesen. Ich habe auch sonst keine Einstellungen gefunden, um auch noch das Kurzzitat erkennbar zu machen. Aber ich lasse mich da gerne korrigieren. :) Als Variante hatte ich noch dem q-Element das cite-Attribut testweise hinzugefügt, aber das wurde von Window-Eyes ebenfalls ignoriert.

Fazit

Man könnte jetzt den irrigen Schluss ziehen und alle Zitate – auch Kurzzitate – als Langzitate kennzeichnen. Im Einzelfall kann man das sicherlich noch entscheiden – wann beginnt schon ein Lang- und endet ein Kurzzitat. :) Aber das ist natürlich keine wirkliche Lösung. Und man muss anmerken dürfen, dass eine gängige semantische Auszeichnung wie das Kurzzitat einfach zum Standard gehören sollte, auch und gerade für das Repertoire eines Screenreaders. Also muss man sich einfach wieder auf die Wartebank setzen und hoffen, dass nach der aktuellen Browserunterstützung auch die Screenreader nachziehen werden, Window-Eyes hat das ja schon.

Überrascht hat mich NVDA, der ja für seine Standardkonformität bekannt ist, dass er das Kurzzitat schlicht ignoriert. Ebenso wichtig wäre es, dass Semantik wie die Ansage eines Zitats schlicht immer voreingestellt ist. Schließlich trägt diese Semantik wesentlich zum Verständnis eines Textes bei. Und – das sei abschließend auch angemerkt, muss man Erweiterungen wie Fire Vox, die ja einen Screenreader nur simulieren, immer wieder und noch mit Bedacht nutzen. Sieht man sich die Ergebnisse im Vergleich zu JAWS oder NVDA an, lassen sie sich nicht mit einem realen Screenreader vergleichen. Man sollte also immer mit einem Screenreader testen, Erweiterungen und Simulationen sind bis dato nur Annäherungen.

Update

Das q-Element kann auch noch verschachtelt werden. Window-Eyes, das ja das Kurzzitat entsprechend markiert vorliest, macht das auch für verschachtelte Kurzzitate. Freilich wird ab einer gewissen Verschachtelungstiefe es schwer, die Informationen zur Bereichshervorhebung noch wirklich nachzuvollziehen. Vor allem auch, weil ja die korrekte inhaltliche Zuordnung zur Quelle für das Kurzzitat nicht ausgegeben wird.

9 Gedanken zu „Mit Screenreadern testen (1): Zitatauszeichnung

  1. Schlägst du vor, trotz all der Probleme, die das Element mit sich bringt, ›q‹ dennoch zu verwenden? Bis heute existiert ja nicht einmal ein praktikabler Weg, es visuell auszugeben.

    Was spricht dagegen, Inline-Zitate mit normalen Anführungszeichen zu kennzeichnen? Fragen markiert man ja auch mit einem Fragezeichen und nicht mit einem Element.

  2. Schöne Zusammenstellung mit überraschenden Erkenntnissen. Dank der tabellarischen Übersicht auch schnell zu erfassen. Leider (und das verheimlicht der Artikel) werden Zitate im Text schlicht mit Anführungszeichen und nicht semantisch gekennzeichnet. ;-) Aber wer will den Autoren das mit der Semantik beibringen?

  3. @Thomas

    Ja, ich bin trotz aller Unbill mit Browsern immer auf der Seite der Semantik. Und – wie ich ja erwähnte, wird das q-Element sogar vom IE 8 mittlerweile interpretiert. Also können nun auch Screenreader nachziehen. So ist das ja immer, zuerst der Browser, dann durch die assistive Schnittstelle. ;)

    Es geht in der Semantik in diesem Fall ja nicht nur um die Anführungszeichen, sondern um die konkrete Zuordnung auch zu einer Quelle. Das funktioniert ja auch schon im Browser, bestimmte Elemente haben halt dann auch eine bestimmte Semantik. Natürlich kann man Anführungszeichnen setzen, und wir könnten auch sicherlich irgendwie uns Überschriften sparen und da mal was mit fett und so machen. ;) Sorry, das ist jetzt etwas überzogen formuliert, ich weiss.

  4. @Ansgar

    Ich verheimliche das nicht, ich setze hier das q-Element ein, auch sonst. Deswegen bin ich grade etwas unsicher, wie Du das meinst …

    Aber sicherlich ist bei den meisten das q-Element nicht wirklich angekommen, weil die Browserunterstützung lange Zeit sehr mager war. Aber das hat sich ja mittlerweile geändert. Ich müsste das jetzt mal quer testen, aber soweit ich das gesehen habe, wird das fast schon flächendeckend unterstützt.

  5. @Sylvia: Die Browserunterstützung halte ich immer noch für lausig, vor allem, wenn man sich die Regel hält, daß Markup auch ohne CSS funktionieren muß. Welche Fortschritte siehst du seit 2004?
    Zur Quellenangabe genügt doch meistens ein Link, finde ich. Das kann jeder Parser.

  6. @Thomas

    Ich mache hier grade ein wenig Tests und Recherche zum q-Element. Ich kann Dir dann mehr dazu sagen …

  7. @Thomas

    Ich werde da in den nächsten Tagen mal ein Rounding zum Stand der Zitate, besonders das q-Element machen. Da hat sich schon ne Menge getan. Und in der von Dir zitierten Quelle aus dem Jahre 2004 sind eh schon alle Probleme debattiert worden. Einige haben sich aber – bis auf die sprachspezifischen Anführungszeichen – durchaus schon fast erledigt.

    Aber dazu mach ich dann einen kleinen Artikel. :)

  8. Oha, da bin ich ja schon gespannt. :)

    Falls das in deinem Artikel Platz findet: Generated Content ist in Mozilla-Derivaten nur visuell zugänglich, aber man kann ihn nicht kopieren.
    Das wird ein Problem, wenn man aus einem Text einen Block kopieren möchte, der ein Zitat enthält.

  9. Pingback: hyperkontext | Weblog