molily: Geeigneter Listentyp für Pargraphen?

Beitrag lesen

<adressen>
<adresseintrag>
<name>...</name>
<strasse>...</strasse>
...
</adresseintrag>
...
</adressen>

<h1>Adressen</h1><ul><li>
<dl><dt>Adresse</dt><dd><dl>
<dt>Name</dt><dd>...</dd>
<dt>Straße</dt><dd>...</dd>
...
</dl></dd></dl></li>
...
</ul>

Welchen Sinn hat es hier, bei jedem Eintrag <dt>Adresse</dt> zu schreiben? Dass die einzelnen Einträge Adressendaten beinhalten bestehend aus Einzeldaten, besagt auch schon die Überschrift.
Darüber hinaus habe ich absichtlich herausgestellt, dass der eindeutige Datensatztitel (»Primärschlüssel«) hier meinem Verständnis nach der Name ist, es ist also kein Merkmal wie alle anderen Merkmale. Daher auch wie wie gesagt <adresseintrag id="[Name]"> und entsprechend <th headers="name" scope="row">[Name]</th> oder entsprechend <dl><dt>Datensatztitel1</dt><dd><dl><dt>Merkmal1</dt><dd>Wert1</dd>...</dl></dd>..</dl>. Das verschwimmt hier vollkommen, dein Datensatztitel ist immer gleich und enthält eine Nullinformation. Wie würdest du diesen Bedingungen Rechnung tragen?

Die Eigenschaft eines Datensatzes ruft immer eine Spalte hervor, die Gleichförmigkeit aller anderen Datensätze verlangt.

Gut, diesen Nachteil einer Tabelle hatte ich bisher nicht beachtet. Ein Vorteil erwächst ja nur dann daraus, wenn die Datensätze einem Vergleich unterzogen werden sollen -- und genau dann sind Tabellen ja sinnvoll.

Ich sehe den Vorteil nicht nur bei Vergleichen.

Im Übrigen hattest du gefordert, die Elementliste im besagten DCMI Core Element Set-Dokument als Tabelle auszuzeichnen, dabei ist es doch selbst eine klassische verschachtelte Liste?

Sobald die Vergleichbarkeit der Datensätze im Vordergrund steht, verwende ich Tabellen.

Worin besteht diese Vergleichbarkeit? Die Aufzählung ist weitesgehend ungeordnet und Querbezüge sind, soweit ich es sehe, nicht vorhanden. Insofern halte ich die jetzige Aufteilung noch für angemessener, weil der Sprung in einer Spalte von Zeile zu Zeile nicht sehr notwendig ist, da das Springen von Eintrag zu Eintrag bereits über die Überschriften ermöglicht wird.

Die Auszeichnung beeinflusst hier durchaus die Art der Aufnahme der Inhalte. Eine Überschriftenstruktur etwa kann als solche durchsprungen werden und taucht in entsprechenden Gliederungsnavigationen auf. Eine Tabelle erlaubt es, eine Zelle zumindest über zwei Achsen in seiner Zugehörigkeit zu bestimmen (zugegeben, das geht bei verschachtelten dl-Elementen auch, also <dl><dt>Datensatztitel1</dt><dd><dl><dt>Merkmal1</dt><dd>Wert1</dd>...</dl></dd>..</dl>, wäre vielleicht auch angemessener beim obigen Codebeispiel, müsste man näher untersuchen) und sie erlaubt ein direktes Springen von einem bestimmten Wert eines Datensatzes zu einem Wert eines anderen Datensatzes desselben Merkmals.

Wozu nutze ich dies, wenn nicht zum Vergleich?

Bei der Überschriftenstruktur dient es etwa dem Scannen/»Überfliegen« der Seite, also dem schnellen Erfassen der Datensätze über ihren eindeutigen Titel. Dasselbe gilt für die Tabelle, dort wird man sich wahrscheinlich vor allem zwischen den linken th-Zellen mit den Datensatztiteln bewegen.
Sicherlich könnte man behaupten, das Durchsuchen über diese Kopfzellen wäre bereits ein Vergleichen/Abgleichen, aber wieso dann eine Adressenliste nicht als Tabelle auszeichnen? Die häufigste Nutzung einer solchen Adressenliste/-datenbank ist, die Liste nach einem bestimmten Namen zu durchforsten, der den gesuchten Eintrag bezeichnet, und dann in den Datensatz einzusteigen.

Diese manuelle Abfrage ist bei Tabellen und Überschriften sehr einfach, bei Definitionslisten ist nicht der Sprung zum nächsten dt-Eintrag möglich. Nun gut, du könntest sagen, dass ist ein praktisches Problem der Browser und dass es idealerweise eine solche Möglichkeit geben müsste; doch würde immer noch das Problem bestehen, dass deine Struktur den Namen gar nicht als Bezeichner herausstellt, sodass immer ein Einsteigen in das dd-Element eines Eintrags nötig wäre, um zum Namen zu springen. Auch ist diese fehlende Sprungmöglichkeit bei der visuellen Aufnahme natürlich nicht so kritisch, ich stelle mir hier vor allem eine akustische Ausgabe vor und ein Bewegen von Element zu Element über die Tastatur.
Da bei der Adressliste die Namen wie gesagt als »Index« verwendet werden, sollten sie auch entsprechend formatiert sein; in deinem Vorschlag sehen sie wie alle Eigenschaften des Eintrags aus. Der Sprung mit dem Auge zum nächsten hervorgehobenen Text wäre also ebenfalls erschwert.

Die Strukturierung kann also die Lesebedingungen und die Bedienungssituation entscheidend ändern und diese »Präsentation« der Daten hängt m.E. sehr stark mit der Verständlichkeit der Aussage zusammen, selbst wenn man annimmt, dass die verschiedenen Markupstrukturen denselben Sachverhalt wiedergeben, nur andere Schwerpunkte setzen und Herangehensweisen verwenden.

Dass sie die Bedingungen und die Handhabung beeinflussen ist mir natürlich klar. -- Das ist ja auch kein Zufall, sondern gewollt.

Das kann ich mir irgendwie nicht vorstellen, wenn ich mir die gängigen Lese- und Vorarbeitungsprozesse vorstelle, die ein Leser an solchen strukturieren Informationen vollzieht.

Aber als Autor kann ich ja nur einen Schwerpunkt und nur eine Herangehensweise mittels der Struktur präferieren.

Ja, vielleicht wäre es wirklich angemessen, danach zu fragen, welchen Zweck der Text erfüllen will, wie mit ihm umgegangen wird, und vor allem danach eine angemessene Struktur zu wählen.

Und natürlich wähle ich da die mir semantisch korrekt erscheinende, aber den Inhalt beeinflusst die Struktur dennoch nicht.

Wie gesagt, ich halte die Auszeichnungsweise durchaus für eine »Botschaft« und die besagten Schwerpunkte und Herangehensweisen bzw. Perspektiven vermitteln m.E. auch verschiedene Auffassungen des Inhalts, sie beeinflussen »das, was ankommt« folglich durchaus (ob das jetzt der Inhalt »an sich« ist oder nicht, finde ich irgendwie unwichtig).

Bei Überschriften muss man sich genauso Gedanken darüber machen, in wie weit sie den betitelten Inhalt kennzeichnen und »repräsentieren«, da stehen aber m.M.n. andere Kriterien im Vordergrund als bei der Definitionsliste im strengen Sinne, die Überschrift umfasst den Inhalt nicht. Aber die Unterscheidung verschwimmt mir, wenn ich von der Definition absehe und jeweils nur die Zuordnung vergleiche (gemäß dem Zitat aus der ersten HTML-Spec).

Zunächst würde ich niemals eine <dl> ohne <hx> verwenden, um immer einen klaren Bezugspunkt zu haben. Wenn ich eines dieser Elemente oder gar beide mit unpassenden Inhalten versehe, funktioniert das Konstrukt natürlich nicht, aber das ist ja bei einer Tabelle oder einzelnen Absätzen auch nicht anders.

Es ging mir auch eher um den Fall, in denen die Überschriften anstelle der dt-Elemente genutzt werden, also die dl-Hierarchie als Hierarchie des Inhalts des gesamten Dokuments begriffen wird (was m.E. meist der Fall ist, wenn dein einleitendes hx ein h1-Element ist).