Listen

(Auszug aus "E-Books mit ePUB ─ Von Word zum E-Book mit XML" von Dr. Victor Wang)

Listen oder Aufzählungen sind Blockelemente, die gleichrangige Textstellen – meist Absätze – mit einer gezählten oder ungezählten Listennummer versehen. Typografisch werden Listen in der Regel mit einem Einzug kenntlich gemacht.

Bei den Listenkonzepten der beiden OPS-Standards treffen wir auf deutliche strukturelle Unterschiede. XHTML bietet ein minimalistisches Konzept, das Struktur und Layout komplett trennt. Es existiert jeweils ein Rahmenelement, für die gezählte Liste <ol> ("ordered list") bzw. für die ungezählte Liste <ul> ("unordered list").

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
  <head>
   <title>Listen XHTML</title>
  </head>
  <body>
   <div class="Gliederungsebene">
     <h1>Gezählte Liste</h1>
     <p>Die höchsten Kohlenstoffdioxidemissionen pro Einwohner in Tonnen (Statistisches Bundesamt, 2005):</p>
       <ol>
         <li>
           <p>Amerika:</p>
           <ol>
             <li>Vereinigte Staaten: 19,4</li>
             <li>Canada: 17</li>
           </ol>
         </li>
         <li>Saudiarabien: 12,8</li>
         <li>Russland: 10,4</li>
         <li>Deutschland: 10,1</li>
       </ol>
   </div>
  </body>
</html>


Code-Beispiel: Listen mit XHTML

Es gibt demnach in XHTML keine strukturelle Festlegung, welcher Listentyp in der Darstellung zu verwenden ist, denn das in HTML noch vorhandene Attribut type gibt es in XHTML nicht mehr. Die Formatierung wird zunächst einfach dem Browser bzw. dem Reader überlassen, beispielsweise stellt Adobe Digital Editions bzw. iBooks das obige Beispiel wie folgt dar:

XHTML-Listenbeispiel (Adobe Digital Editions)

XHTML-Listenbeispiel (iBooks)

Abbildung: XHTML-Listenbeispiel (Adobe Digital Editions bzw. iBooks)

Erst durch ein entsprechendes Stylesheet kann diese Darstellung übersteuert werden, was den Einsatz von Klassenattributen nahelegt, damit das Stylesheet weiß, wie die jeweilige Liste darzustellen ist. So könnte im Beispiel die äußere Liste römisch und die innere mit Kleinbuchstaben gezählt werden:

<ol class="liste-roemisch">
  <li>
     <p>Amerika:</p>
     <ol class="liste-buchstabe">
        <li>Vereinigte Staaten: 19,4</li>
        <li>Canada: 17</li>
     </ol>
  </li>
  <li>Saudiarabien: 12,8</li>
  <li>Russland: 10,4</li>
  <li>Deutschland: 10,1</li>
</ol> 

Code-Beispiel: Listen in XHTML mit dem class-Attribut

Weiterhin könnte diese Klasse in einem CSS-Stylesheet abgefragt und dann mit dem entsprechenden CSS-Listenstiltyp (list-style-type) behandelt werden:

ol.liste-buchstabe
{
 list-style-type: lower-alpha;
 font-family: Arial, sans-serif;
}
ol.liste-roemisch
{
 list-style-type: lower-roman;
 font-family: Arial, sans-serif;
} 

In diesem Fall zeigt der Adobe Digital Editions bzw. iBooks wie erwartet die Listen korrekt an.

XHTML-Listenbeispiel mit class-Attributen und CSS-Fromatierung (Adobe Digital Editions)

XHTML-Listenbeispiel mit class-Attributen und CSS-Fromatierung (iBooks)

Abbildung: XHTML-Listenbeispiel mit class-Attributen und CSS-Fromatierung (Adobe Digital Editions bzw. iBooks)

Das Listenkonzept von DTBook würde an sich diesen Umweg über ein Stylesheet nicht benötigen, da hier der Listentyp im Markup angegeben werden kann. Denn das Listenelement <list> enthält zusätzlich das Attribut enum, das die Zählung der Liste definiert. Der eigentliche Listenpunkt wird wie in XHTML mit <li> gekennzeichnet. Zusätzlich enthält die DTBook-Liste noch so genannte Listeneintragskomponenten <lic> ("list Item component"), die für tabellenähnliche Zuordnungen gedacht sind. So liegt es in der oben genannten Liste nahe, die beiden Angaben "Staat" und "Emissionswert" auf diese Weise zu kennzeichnen:

<list type="ol" enum="i">
  <li>
    <p>Amerika:</p>
    <list type="ol" enum="a">
      <li><lic>Vereinigte Staaten:</lic> <lic>19,4</lic></li>
      <li><lic>Canada:</lic> <lic>17</lic></li>
    </list>
  </li>
  <li><lic>Saudiarabien:</lic> <lic>12,8</lic></li>
  <li><lic>Russland:</lic> <lic>10,4</lic></li>
  <li><lic>Deutschland:</lic> <lic>10,1</lic></li>
</list> 

Code-Beispiel: Listen mit DTBook

Unzureichend formatierte DTBook-Liste (Adobe Digital Editions)

Abbildung: Unzureichend formatierte DTBook-Liste (Adobe Digital Editions)

Leider beachten die getesteten Reader (Adobe Digital Editions und Sony-PRS) dieses Markup nicht und zeigen die als gezählt getaggte Liste nur als ungezählte an. Die Listeneintragskomponenten sind im Layout durch einen größeren Abstand angedeutet. Im iBooks werden DTBook-Daten leider generell nicht angezeigt.

Der Vollständigkeit halber sei schließlich noch ein spezieller Listentyp erwähnt, der in beiden Standards XHTML und DTBook gleich lautet - die so genannte Definitionsliste. Eine solche Liste stellt eine glossar-ähnliche Struktur dar, wie das folgende Beispiel zeigt:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dtbook PUBLIC "-//NISO//DTD dtbook 2005-2//EN" "http://www.daisy.org/z3986/2005/dtbook-2005-2.dtd">
<dtbook xmlns="http://www.daisy.org/z3986/2005/dtbook/" version="2005-2">
  <head/>
  <book>
    <bodymatter>
      <level class="Gliederungsebene">
        <hd>Definitionsliste (Glossar)</hd>
        <p>Wichtige E-Book-Formate:</p>
        <dl>
          <dt>FB2</dt>
          <dd>Fiction Book Format</dd>
          <dt>LIT</dt>
          <dd>Format des Microsoft Readers</dd>
          <dt>Mobi</dt>
          <dd>Format des Mobipocket Readers</dd>
          <dt>OEB</dt>
          <dd>Open E-Book Format</dd>
          <dt>PDF</dt>
          <dd>Portable Document Format</dd>
        </dl>
        <p/>
      </level>
    </bodymatter>
  </book>
</dtbook> 

Code-Beispiel: eine Definitionsliste (Glossar) in DTBook

Die beiden aufeinanderfolgenden Elemente innerhalb der Definitionsliste <dl> legen den Begriff/Glossareintrag (<dt>) und die zugehörige Definition (<dd>) fest. Adobe Digital Editions und iBooks stellen diese Liste wie in der folgenden Abbildung dar:

XHTML-Definitionsliste (Adobe Digital Editions)

XHTML-Definitionsliste (iBooks)

Abbildung: XHTML-Definitionsliste (Adobe Digital Editions bzw. iBooks)

Taucht ein solcher Glossarbegriff im Fließtext auf, so kann das zugehörige semantische Element <dfn> ("Definition") verwendet werden, das in XHTML wie in DTBook gleich lautet.

   

<< zurück vor >>

 

 

 

Tipp der data2type-Redaktion:
Zum Thema ePub bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © mitp 2011
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "E-Books mit ePUB" denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

Verlagsgruppe Hüthig Jehle Rehm GmbH, Im Weiher 10, 69121 Heidelberg, kundenbetreuung(at)hjr-verlag.de