Jewiki unterstützen. Jewiki, die größte Online-Enzy­klo­pädie zum Judentum.

Helfen Sie Jewiki mit einer kleinen oder auch größeren Spende. Einmalig oder regelmäßig, damit die Zukunft von Jewiki gesichert bleibt ...

Vielen Dank für Ihr Engagement! (→ Spendenkonten)

How to read Jewiki in your desired language · Comment lire Jewiki dans votre langue préférée · Cómo leer Jewiki en su idioma preferido · בשפה הרצויה Jewiki כיצד לקרוא · Как читать Jewiki на предпочитаемом вами языке · كيف تقرأ Jewiki باللغة التي تريدها · Como ler o Jewiki na sua língua preferida

EPUB

Aus Jewiki
Zur Navigation springen Zur Suche springen
Der Titel dieses Artikels ist mehrdeutig. Weitere Bedeutungen sind unter EPUB (Begriffsklärung) aufgeführt.
EPUB
Logo
Dateiendung: .epub
MIME-Type: application/epub+zip
Entwickelt von: International Digital Publishing Forum
Aktuelle Version: 3.1[1] (Stand: 5. Januar 2017)
Standard(s): Spezifikationen



EPUB (Akronym für electronic publication) ist ein offener Standard für E-Books vom International Digital Publishing Forum (IDPF), der den älteren Standard Open eBook (OEB beziehungsweise Open eBook Publication Structure, OEBPS) ersetzt.

Optional können DRM-Mechanismen integriert werden. Das Format definiert aber keine Implementierung, sondern überlässt das den jeweiligen Darstellungsprogrammen. Annotationen wie Notizen, Lesezeichen etc. sind nicht Teil des Standards. Mit Version 3 ist es möglich, buchstabengenau auf eine Textstelle zu verweisen.

Auf EPUB basierende E-Books erlauben eine dynamische Anpassung des Textes an die jeweilige Bildschirmgröße des Lesers und eignen sich damit insbesondere für die Ausgabe auf Handheld-Geräten. Im Gegensatz dazu wird beispielsweise der Text bei PDF genau wie im gedruckten Buch formatiert angezeigt.

Format

Der EPUB-Standard basiert auf einer Anzahl freier Standards. In Version 2 sind das hauptsächlich XML, XHTML, DTBook, SVG, CSS, NCX (aus DTBook), Dublin Core und Zip. Ferner ist die Interpretation folgender Pixelgraphikformate erforderlich: PNG, JPEG/JFIF, GIF. In Version 3 entfällt einerseits DTBook, dafür kommen weitere Formate, etwa für Audio und optional für Video hinzu (deren Implementierung teilweise Lizenzen benötigt), in Version 3.1 kommen Formate für Schriftarten in den Formaten SFNT und WOFF hinzu[1].

Die Spezifikation von EPUB in der Version 2 gliedert sich in drei Teile, die unterschiedliche Bereiche definieren[2]:

  • Die Struktur der eigentlichen Inhalte
  • Das Paketformat
  • Die Struktur des Archivs

Hinzu kommen in Version 3 noch[3]:

  • Medienüberlagerungen (für eine alternative Präsentation als Hörbuch)
  • Kanonische Fragmentidentifizierer (für Verweise auf beliebige Stellen in einem Buch)

Ab Version 3.0.1 kann zudem festgelegt werden, ob die Präsentation seitenbasiert oder rollbar sein soll. Zudem kann festgelegt werden, wie sich der Inhalt an den verfügbaren Platz anpasst – entweder ähnlich wie bei SVG durch Festlegung eines Darstellungsbereiches und gegebenenfalls anschließender Skalierung („fixiert“) oder ähnlich wie bei XHTML durch automatische Aufteilung des Inhaltes auf den verfügbaren Platz ohne Skalierung (nicht „fixiert“).

Open Publication Structure

Die für die eigentlichen Inhalte zu verwendenden Formate werden durch die Open Publication Structure (OPS) geregelt. Die erlaubten Inhaltsdokumente werden in EPUB Content Documents 3.1 behandelt. Alle verwendbaren Formate sind in EPUB Publications 3.1 festgelegt, siehe nächster Abschnitt.

EPUB unterscheidet hier prinzipiell zwischen den eigentlichen Inhaltsdokumenten und weiteren Dokumenten in anderen Formaten, die in diese eingebettet werden können, also immer inhaltlich von Inhaltsdokumenten abhängig sind und nicht selbständig auftreten.

Dokumente werden in einer oder mehreren UTF-8- oder UTF-16-codierten Dateien gespeichert.

In der Version 2.0/2.0.1 werden Inhaltsdokumente mit jeweils einer Untermenge von XHTML 1.1 oder mit DTBook realisiert, wobei bei gängigen Darstellungsprogrammen eine Interpretation von DTBook gewöhnlich nicht implementiert ist. SVG 1.1 (ohne Interaktivität oder Animation) kann entweder als Dateninsel in XHTML-Dokumenten verwendet werden oder es wird als Bild oder Objekt eingebettet. Stilvorlagen können in einer Untermenge des Formates CSS 2.0 verwendet werden. Hinzu kommen wenige für EPUB spezifische Stilvorlagen-Eigenschaften. Skript-Anwendungen sind nicht erlaubt.

In der Version 3.0/3.0.1 werden Inhaltsdokumente entweder mit der XML-Variante von HTML5 realisiert oder mit SVG 1.1 (ohne Interaktivität oder Animation). Hinsichtlich HTML5 ist nicht definiert, welchem Arbeitsentwurf Autoren folgen sollen, noch wie angegeben wird, welcher Arbeitsentwurf in einem Buch verwendet wird. Wie in HTML5 beschrieben und eingeschränkt, kann zudem auch Präsentations-MathML als Dateninsel verwendet werden. Stilvorlagen beziehen sich hier hauptsächlich auf CSS 2.1 und einige Module von CSS 3.0. Skript-Anwendungen sind optional, die Dokumente sind jeweils so zu gestalten, dass der Inhalt mit und ohne Interpretation von Skripten zugänglich ist. Eine kleine Untermenge des Formates SMIL kann zudem verwendet werden, um eine Medienüberlagerung zu realisieren. Bei dieser werden Audio-Dateien mit dem Inhalt verknüpft, um eine Präsentation auch als Hörbuch anbieten zu können.

In Version 3.1 wird ausdrücklich darauf hingewiesen, dass diese Version sich nicht auf eine spezielle Version von XHTML, SVG oder CSS festlegt, Autoren und Programmierer von Darstellungsprogrammen sollen sich an den aktuellen Empfehlungen des W3C orientieren. Damit ist die Spezifikation von EPUB unabhängig von den Spezifikationen der genutzten Webstandards.[1] Bei SVG wird folglich zudem auch nicht mehr die Verwendung von Interaktivität oder Animation ausgeschlossen, es gibt lediglich einen allgemeineren Hinweis auf mögliche Implementierungslücken bei diversen Modulen bei den Darstellungsprogrammen.

Open Packaging Format

Die Strukturierung wird durch das Open Packaging Format (OPF) geregelt, das aktuell in Version EPUB Publications 3.1 vorliegt.

Die Struktur und die Aufnahme von Metadaten beschreibt eine Stammdatei (Dateinamenserweiterung: .opf).

Darin werden im ersten Abschnitt, im Element „metadata“, die Metadaten hauptsächlich nach dem Dublin-Core-Schema bereitgestellt. Die Art der Notation ist im Detail für Version 3 anders als für Version 2, was Probleme für Leser bedeuten kann, wenn sie mit älteren Programmen auf solche Information direkt zugreifen möchten, statt das Buch-Archiv zu entpacken und direkt in den Quelltext der OPF-Datei zu gucken. Die gleiche Information, die bei einem Buch nach Version 2 also noch zugänglich sein kann, kann mit einer Notation gemäß Version 3 unzugänglich werden und umgekehrt bei Programmen, die nur Version 3 interpretieren und nicht mehr die Notation von Version 2.

In einem zweiten Abschnitt, im Element „manifest“, werden alle weiteren im Archiv gespeicherten Dateien aufgelistet.

Der weitere Abschnitt, durch das Element „spine“ repräsentiert, ist etwas, was bei gedruckten Büchern dem Buchrücken entspricht, die Struktur dient primär dazu, die Lesereihenfolge des Buches für das Darstellungsprogramm festzulegen. Prinzipiell unterschieden wird dabei zwischen Bestandteilen eines Buches, welche in einer linearen Lesereihenfolge stehen, und solchen, die dies nicht tun. Entsprechend kann dies bei jedem Eintrag eines Inhaltsdokumentes angegeben werden. Insbesondere die Versionen 2 und 3.0.1 verlangen ferner, dass alle Inhaltsdokumente, auf die von Dokumenten verwiesen wird, welche im „spine“ stehen, selbst in diesem Verzeichnis stehen. Praktisch kann das Probleme für Bücher verursachen, deren Struktur ganz oder teilweise keiner einfachen, linearen Lesereihenfolge folgt und die stattdessen eine eigene, eingebaute Navigation bereitstellen, bei welcher man also etwa zu Alternativen verzweigen kann oder bei welcher es wie in einem Netzwerk oder Labyrinth prinzipiell keine bestimmte Lesereihenfolge gibt. Derartige Inhaltsstrukturen waren schon bei gedruckten Büchern problematisch, sind aber eigentlich für eine digitale Repräsentation kein technisches Problem mehr.

Die praktischen Probleme für EPUB-Bücher ergeben sich daraus, dass viele gängige Darstellungsprogramme die Angabe ignorieren, dass Inhaltsdokumente nicht in einer linearen Lesereihenfolge erscheinen sollen, die Dokumente werden dann in der Reihenfolge angezeigt, wie sie im „spine“ notiert sind oder im Anschluss an die als linear gekennzeichneten Inhalte. Dies ist ein explizit erlaubtes Vorgehen. Dies erschwert es Autoren nichtlinearer Werke praktisch, in diesem Format sinnvoll zu veröffentlichen (es könnten etwa als improvisierte Gegenmaßnahme viele inhaltsleere Inhaltsdokumente vor und nach einem nicht linearen Dokumenten in das „spine“ eingefügt werden, um dem Leser nahezulegen, nicht die vom Programm vorgeschlagene Reihenfolge zu nutzen, sondern die dem jeweiligen Buch eigenen Navigationsmittel zu verwenden).

Mit dem Attribut „toc“ beim Element „spine“ wird auf ein Inhaltsverzeichnis für menschliche Leser des Buches verwiesen. Mit einem weiteren optionalen Abschnitt können besondere Strukturen des Buches wie die Titelseite, Inhaltsverzeichnis, Index, Glossar etc. angegeben werden.

Das für menschliche Leser gedachte Inhaltsverzeichnis, welches außerhalb der normalen Lesereihenfolge dargestellt wird, wird in Version 2.0/2.0.1 im Abschnitt „navMap“ in einer Datei, typisch mit der Dateinamenserweiterung .ncx in dem XML-Format NCX angegeben, das DTBook entstammt. Jedem Eintrag wird im Attribut „playOrder“ eine Position innerhalb der Reihenfolge der wiederzugebenden Texte zugeordnet.

Ein solches Dokument ist in Version 3.0/3.0.1 optional und nur als Hilfe für alte Darstellungsprogramme der Versionen 2 gedacht. In Version 3.1 ist das NCX-Dokument als veraltet oder überholt gekennzeichnet[1]. Darstellungsprogramme der Versionen 3 sollen es nicht mehr interpretieren. Dafür ist in diesen Versionen das Inhaltsverzeichnis in einem Dokument anzugeben, welches mit einer Untermenge der XML-Variante von HTML5 zu realisieren ist und damit auch innerhalb der normalen Lesereihenfolge verfügbar gemacht werden kann.

OEBPS Container Format

Die Verpackung aller Teildateien in eine einzelne Datei und die Struktur des darin enthaltenen Dateisystems wird durch das OEBPS Container Format (OCF) geregelt, das aktuell in Version EPUB Open Container Format (OCF) 3.1 vorliegt. Sämtliche Teildateien werden in einer Zip-Archivdatei mit der Dateinamenserweiterung .epub zusammengefasst. Darin müssen mindestens enthalten sein:

  • eine unkomprimierte Datei mit dem Namen mimetype und dem Inhalt application/epub+zip im Wurzelverzeichnis als erste Datei im Archiv,
  • ein Verzeichnis META-INF mit einer Datei namens container.xml, die auf die Stammdatei der Publikation verweist,
  • die Stammdatei,
  • ein Inhaltsverzeichnis zur Navigation durch die Publikation und
  • mindestens eine Inhaltsdatei.

Beispiele

Das Dateisystem in einem minimalen Buch gemäß EPUB 2 könnte so aussehen:

  mimetype
  META-INF/
    container.xml
  inhalt.opf
  inhalt.ncx
  inhalt.xhtml

Das Dateisystem für EPUB 3 kann ähnlich aussehen, allerdings gibt es für die Navigation eine andere Datei (hier „nav.xhtml“ genannt) im Format XHTML, die Datei „inhalt.ncx“ ist hier optional, für alte Darstellungsprogramme aber sinnvoll:

  mimetype
  META-INF/
    container.xml
  inhalt.opf
  inhalt.ncx
  nav.xhtml
  inhalt.xhtml

container.xml

  <?xml version="1.0" encoding="UTF-8"?>
  <container
    xmlns="urn:oasis:names:tc:opendocument:xmlns:container"
    version="1.0">
    <rootfiles>
      <rootfile
        full-path="inhalt.opf"
        media-type="application/oebps-package+xml"/>
    </rootfiles>
  </container>

Stammdatei „inhalt.opf“ (Version 2)

  <?xml version="1.0" encoding="UTF-8"?>
  <package version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:opf="http://www.idpf.org/2007/opf"
    xmlns="http://www.idpf.org/2007/opf"
    unique-identifier="BookId">
    <metadata>
      <!-- Die folgende Buchidentifikation ist einzigartig für jedes Buch zu wählen -->
      <dc:identifier id="BookId" opf:scheme="UUID">6f2e78a1-c4f3-4895-b58b-347f92fb2d14</dc:identifier>
      <!-- Hauptsprache des Buches -->
      <dc:language>de</dc:language>
      <!-- Buchtitel -->
      <dc:title xml:lang="de">Hallo Welt</dc:title>

      <!-- bis hier notwendige Metainformationen, es folgen einige optionale: -->

      <!-- Beschreibung -->
      <dc:description xml:lang="de">Beispiel für ein Buch im Format EPUB 2.</dc:description>
      <!-- Erzeuger, Erschaffer des digitalen Buches, hier auch der Autor -->
      <dc:creator
        opf:file-as="Zufall, Rainer"
        opf:role="aut"
        xml:lang="de">Rainer Zufall</dc:creator>
      <!-- Charakteristischer Zeitpunkt der Erstellung des Buches -->
      <dc:date opf:event="creation">2013-10-23</dc:date>
      <!-- Zeitpunkt der Veröffentlichung -->
      <dc:date opf:event="publication">2013-10-23</dc:date>
    </metadata>
    <!-- Verzeichnis der Dateien des Buches -->
    <manifest>
      <item id="ncx" href="inhalt.ncx" media-type="application/x-dtbncx+xml"/>
      <item id="Datei_1" href="inhalt.xhtml" media-type="application/xhtml+xml"/>
    </manifest>
    <!-- Reihenfolge der Inhalte des Buches -->
    <spine toc="ncx">
      <itemref idref="Datei_1"/>
    </spine>
  </package>

Stammdatei „inhalt.opf“ (Version 3)

  <?xml version="1.0" encoding="UTF-8"?>
  <package version="3.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:opf="http://www.idpf.org/2007/opf"
    xmlns="http://www.idpf.org/2007/opf"
    unique-identifier="Id">
    <metadata>
      <!-- Die folgende Buchidentifikation in Kombination mit folgendem Datum einzigartig für jedes Buch zu wählen -->
      <dc:identifier id="Id">6f2e78a1-c4f3-4895-b58b-347f92fb2d14</dc:identifier>
      <!-- Datum der letzten Änderung -->
      <meta property="dcterms:modified">2013-10-26T17:27:34Z</meta>
      <!-- Hauptsprache des Buches -->
      <dc:language>de</dc:language>
      <!-- Buchtitel -->
      <dc:title xml:lang="de">Hallo Welt</dc:title>

      <!-- bis hier notwendige Metainformationen, es folgen einige optionale: -->

      <!-- Beschreibung -->
      <dc:description xml:lang="de">Beispiel für ein Buch im Format EPUB 3.</dc:description>
      <!-- Erzeuger, Erschaffer des digitalen Buches, hier auch der Autor -->
      <dc:creator id="rainer" xml:lang="de">Rainer Zufall</dc:creator>
      <meta refines="#rainer" property="file-as">Zufall, Rainer</meta>
      <meta refines="#rainer" property="role" scheme="marc:relators">aut</meta>
      <!-- Angabe des Typs der Buchidentifikation -->
      <meta property="identifier-type" refines="#Id">UUID</meta>
      <!-- Zeitraum der Erstellung des Buches -->
      <meta property="dcterms:created">2013-10-23/26</meta>
      <!-- Zeitpunkt der Veröffentlichung -->
      <meta property="dcterms:issued">2013-10-26</meta>
    </metadata>
    <!-- Verzeichnis der Dateien des Buches -->
    <manifest>
      <item id="ncx"    href="inhalt.ncx"   media-type="application/x-dtbncx+xml"/>
      <item id="inhalt" href="inhalt.xhtml" media-type="application/xhtml+xml"/>
      <item id="nav"    href="nav.xhtml"    media-type="application/xhtml+xml" properties="nav"/>
    </manifest>
    <!-- Reihenfolge der Inhalte des Buches -->
    <spine toc="ncx">
      <itemref idref="nav"/>
      <itemref idref="inhalt"/>
    </spine>
  </package>

Detailliertes Inhaltsverzeichnis „inhalt.ncx“ (für Version 2, optional für Version 3)

  <?xml version="1.0" encoding="UTF-8"?>
  <ncx
    xmlns="http://www.daisy.org/z3986/2005/ncx/"
    version="2005-1"
    xml:lang="de">
    <head>
      <!-- Dieselbe Buchidentifikation wie in der OPF-Datei: -->
      <meta name="dtb:uid" content="6f2e78a1-c4f3-4895-b58b-347f92fb2d14"/>
    </head>
    <docTitle>
      <text>Hallo Welt</text>
    </docTitle>
    <docAuthor>
      <text>Rainer Zufall</text>
    </docAuthor>
    <navMap>
      <navPoint playOrder="1" id="id_01">
        <navLabel>
          <text>Hallo Welt</text>
        </navLabel>
        <content src="inhalt.xhtml"/>
      </navPoint>
    </navMap>
  </ncx>

Detailliertes Inhaltsverzeichnis „nav.xhtml“ (für Version 3)

<?xml version="1.0" encoding="UTF-8" ?>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ops="http://www.idpf.org/2007/ops"
      xml:lang="de">
  <head>
    <title>Inhaltsverzeichnis</title>
  </head>
  <body>
   <nav ops:type="toc">

    <h1>Inhaltsverzeichnis</h1>

    <ol>
      <li><a href="nav.xhtml">Inhaltsverzeichnis</a></li>
      <li><a href="inhalt.xhtml">Hallo Welt</a></li>
    </ol>

  </nav>
 </body>
</html>

Eigentlicher Inhalt „inhalt.xhtml“ (für Version 2)

Eine einfache XHTML-Datei:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xml:lang="de">
  <head>
    <title>Hallo Welt</title>
  </head>
  <body>
    <h1>Hallo Welt</h1>
    <p>Ein einfacher Absatz als Textbeispiel.</p>
  </body>
</html>

Eigentlicher Inhalt „inhalt.xhtml“ (für Version 3)

Eine einfache XHTML-Datei (nach einem Arbeitsentwurf für HTML5 und mit erweiterndem Attribut type aus dem Namensraum OPS/EPUB, um die semantische Funktion von Elementen genauer zu kennzeichnen):

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ops="http://www.idpf.org/2007/ops"
      xml:lang="de">
  <head>
    <title>Hallo Welt</title>
  </head>
  <body>
    <h1>Hallo Welt</h1>

    <section ops:type="chapter">
      <h2>Titel des ersten Kapitels</h2>
      <p>Ein einfacher Absatz als Textbeispiel.</p>
      <p>...</p>
    </section>
    <section ops:type="chapter">
      <h2>Titel des zweiten Kapitels</h2>
      <p>...</p>
    </section>
  </body>
</html>

Überprüfung

Da alle Inhalte des EPUBs standardisiert sind und auf XML basieren, kann ein EPUB-Archiv auf seine Gültigkeit geprüft werden. Dabei werden der Aufbau des Archivs und die darin enthaltenen Dokumente überprüft.

Zur Prüfung ist der Einsatz von Validatoren üblich. Unproblematisch ist es dabei, die XML-Dokumente in einem EPUB auf Wohlgeformtheit zu prüfen, also auf die Einhaltung der ziemlich einfachen XML-Syntax-Regeln.

Für die für EPUB spezifizierten Formate und im Buch verwendete Formate wie XHTML, SVG, Digital Talking Books gibt es zudem besondere Spezifikationen, also festgelegte Regeln, die zu prüfen sind. Aus verschiedenen Gründen ist dies für Programme deutlich komplizierter. Hier spricht man davon, dass auf Gültigkeit oder auch Validität geprüft wird. Dazu muss der Regelsatz des jeweiligen Formates in speziellen formalen Sprachen vorliegen, welche von dem Prüfprogramm, auch Validator genannt, verstanden werden. Die Formulierung des Regelsatzes eines Formates in solch einer formalen Sprache wird Dokumenttypdefinition oder auch XML-Schema genannt, kurz auch Schema. Häufig verwendet wird zur Prüfung der vom IDPF selbst herausgegebene epubcheck.[4]

Je nach verwendeter EPUB-Version kann es dabei im Detail verschiedene Probleme geben:

  • Der genannte Validator (die Version 3 davon) hat etwa bei EPUB 2 Probleme damit, Inhaltsdokumente im Format Digital Talking Books zu prüfen.
  • EPUB 3.0.1 nutzt leider die gleiche Versionsnummer wie EPUB 3, von daher kann ein Validator nicht automatisch korrekt anhand der im Buch angegebenen Versionsnummer unterscheiden, welche Version vom Autor verwendet wurde, was fehlerhafte Ergebnisse oder falsche Warnungen im Zuge der Validierung zur Folge haben kann.
  • Die normative Variante eines Formates besteht oft aus Prosa, ist also nicht formal als Schema formuliert. Nicht normativ gibt es dann häufig Schemata als Repräsentationen des Formates für Programme. Weil die Schemata nicht beliebig komplexe Sachverhalte korrekt darstellen können, können die Schemata von der normativen Spezifikation abweichen, eine Prüfung mit einem Programm kann also zu falschen Fehlermeldungen führen oder auch Fehler übersehen.
  • EPUB 3 verlangt, dass die XHTML-Inhaltsdokumente der Empfehlung zu HTML5 folgen. Zu dieser Empfehlung gibt es kein offizielles Schema, welches HTML5 repräsentiert. Mit Version 3.1 werden sogar gar keine speziellen Versionen von XHTML, SVG oder auch CSS mehr vorgesehen, was richtig oder angemessen ist, ist also zeitabhängig und damit nicht mehr eindeutig definiert.
  • Die Spezifikationen von EPUB 3.0 und EPUB 3.0.1 wurden vor der von HTML5 veröffentlicht, es ist also nicht genau klar, auf was sich EPUB 3 formal logisch bezieht, wenn es HTML5 nennt. 3.1 verzichtet auf eine präzise Zuordnung explizit.
  • In allen Versionen von EPUB kann ebenfalls SVG 1.1 verwendet werden, dies kann zwar gemäß einer Dokumenttypdefinition validiert werden, der Sprachumfang von Dokumenttypdefinitionen reicht aber für die Komplexität des Formates nicht aus, somit wird hier zum einen längst nicht alles geprüft, was automatisch prüfbar wäre, zum anderen erlaubt SVG in der normativen Prosa-Empfehlung diverse Strukturen, die mit der Dokumenttypdefinition nur näherungsweise abgebildet werden, schränkt andere Strukturen dafür wiederum ein, wo diese Einschränkung mit einer Dokumenttypdefinitionen gar nicht formuliert werden kann. Das für das Prüfprogramm verfügbare Schema für SVG weicht also deutlich von dem ab, was tatsächlich spezifiziert ist. In Version 3.1 kann auch eine andere Version von SVG verwendet werden, was eine Prüfung noch komplexer macht, da auch nicht immer angegeben werden muss, welche Version von SVG verwendet wurde.

Insgesamt ist das Ergebnis einer automatischen Prüfung folglich immer nur ein hilfreicher Hinweis auf Probleme. In einem weiteren Schritt ist dann manuell zu prüfen, ob das jeweilige Problem wirklich im Buch selbst liegt, mit einer fehlenden Versionierung der verwendeten Inhaltsformate zusammenhängt, in einem mangelhaften Schema zu suchen ist, an Fehlern des Validators liegt oder mit Mängeln und Inkonsistenzen der jeweiligen EPUB-Empfehlung zusammenhängt.

Trotz dieser Einschränkungen der Aussagekraft einer automatischen Prüfung gibt es Verlage oder Distributoren, die eine Veröffentlichung eines Buches im Format EPUB in ihrem Sortiment davon abhängig machen, ob das Buch einer solchen automatischen Prüfung mit einer gerade verwendeten Version eines Validators standhält.

Geschichte

Open eBook, der Vorläufer von EPUB, wurde von zwei Herstellern von E-Book-Systemen, nämlich SoftBook Press (hauptsächlich) und NuvoMedia Inc., für ihre mobilen Lesegeräte entwickelt und in den späten 1990er Jahren veröffentlicht.[5] Unter anderem setzte Microsoft 1998 auf Open eBook,[5] nachdem das eigene Lit-Format eingestellt wurde. Im September 1999 wurde Version 1.0 der Spezifikation veröffentlicht, die sogenannte Open eBook Publication Structure (OEBPS). Diese wurde im Juni 2001 (Version 1.0.1) und August 2002 (Version 1.2) mit neuen Formatempfehlungen aktualisiert. Im September 2007 wurde die Open Publication Structure (OPS) 2.0 unter dem heutigen Namen EPUB veröffentlicht, welches OEBPS ersetzt. Das Format wird seither im Rahmen des International Digital Publishing Forum (IDPF) entwickelt. Dateien dieser neuen Generation des Formats tragen nicht mehr die bisherige Dateiendung .opf (OEB Package Format), sondern nunmehr .epub.

Im Februar 2017 wurde das IDPF mit dem W3C vereint, die Arbeit an EPUB wird als Arbeitsgruppe des W3C fortgeführt. [6]

Unterstützung

Auf die Inhalte von digitalen Büchern im Format EPUB kann auf recht verschiedene Art und Weise zugegriffen werden. Weil die eigentlichen Inhalte aus Standardformaten wie XHTML und SVG bestehen, eignet sich prinzipiell eine breite Palette von Programmen zur Präsentation der Inhalte. Sofern das ZIP-Archiv, welches die EPUB-Datei darstellt, entpackt wird, wird der Inhalt des Buches für jegliches Darstellungsprogramm zugänglich, welches die Inhaltsformate interpretieren kann. EPUB selbst sieht insbesondere in der Version 2 eine solche Verwendung alternativ zu der als ZIP-Archiv direkt vor. Die gängigen allgemeinen Darstellungsprogramme für XHTML und SVG interpretieren aber außerhalb des EPUB-Umfeldes die für EPUB spezifischen Formate nicht, insbesondere die OPF-Datei wäre hier eigentlich von zentraler Bedeutung. Hinterlegt ein Autor oder Erzeuger eines EPUB-Archivs allerdings das in Version 3 ohnehin erforderliche Inhaltsverzeichnis im Format XHTML unter einem eindeutigen Dateinamen (bei einem deutschsprachigen Buch etwa „Inhaltsverzeichnis.xhtml“), und macht dieses so ausführlich, dass darüber alle Inhaltsdokumente direkt oder indirekt über Einbettung oder weitere Verweise zugänglich werden, wird solch ein EPUB-Archiv auch recht gut für gängige Darstellungsprogramme für Inhalte im Netz, die auf Mozilla/Gecko, Opera/Presto, WebKit/Blink, Trident basieren, ohne zusätzliche Erweiterungen nutzbar.

Zusätzlich gibt es auch Erweiterungen für diese Darstellungsprogramme, die in der Lage sind, das Archiv direkt zu handhaben und auch die EPUB-spezifischen Dateien, insbesondere die OPF-Datei zu interpretieren und so den Inhalt des Buches automatisch zugänglich zu machen.

Daneben kann es auch noch eigenständig entwickelte Programme speziell zur Interpretation von EPUB geben, welche jedenfalls teilweise etwa Mozilla/Gecko oder WebKit/Blink intern als Programmbibliothek verwenden, um damit Inhalte zu präsentieren. Weil die Inhaltsdokumente mit XHTML und SVG aus XML bestehen, ist es allerdings auch für einen Anbieter noch relativ einfach, ausgehend von einem XML-Prozessor ein eigenes Präsentationsprogramm zu entwickeln, welches dann unabhängig von bereits bestehenden Programmbibliotheken verwendet werden kann oder eine Kombination anderer Bibliotheken ermöglicht.

Die Interpretation des Formates ist also primär von Programmen oder Programmbibliotheken abhängig, die recht breit auf vielen verschiedenen Betriebssystemen verfügbar sind, eine Abhängigkeit von bestimmten Geräten besteht nicht. Gleichwohl gibt es neben den gängigen Varianten von Rechnern auch spezielle Lesegeräte für digitale Bücher, teils auch mit bestimmten Einschränkungen hinsichtlich der Präsentation, etwa eine Anzeige nur in Grauwerten aufgrund der eingesetzten Technik (digitale Tinte, „elektronisches Papier“), welche dann intern wiederum auf die bereits genannten Programme oder Programmbibliotheken zurückgreifen können oder eigene Programme verwenden, um den Inhalt eines Buches zu präsentieren. Auch die in solchen Geräten verwendeten Prozessoren und Speicher fallen oft deutlich bescheidener aus, als man dies von den üblichen Rechnern für allgemeine Anwendungen im Büro oder Daheim gewohnt ist, was die darstellbaren Inhalte von der Komplexität und vom Umfang her einschränken kann.

Auch bei Verwendung gleicher Programmbibliotheken kann die Interpretation also verschiedenen Einschränkungen und Einflüssen unterliegen, die von Autoren und Lesern nicht allein daran abgeschätzt werden können, welche Programmbibliothek zur Präsentation verwendet wird. Hat ein Gerät etwa keinen Farbbildschirm, kann es auch farbige SVG-Dokumente nicht so präsentieren, wie vermutlich vom Autor beabsichtigt. Auch die Einbettung einer Bibliothek in eine Nutzerschnittstelle, eine graphische Oberfläche, kann Einfluss auf die Präsentationsmöglichkeiten haben. Hat etwa ein originales Darstellungsprogramm noch keine besonderen Probleme damit, lange Wörter oder große Graphiken zu präsentieren, kann dies ganz anders aussehen, wenn eine EPUB-Erweiterung versucht, denselben Inhalt zur Präsentation zu bringen, wenn dabei die Anmutung eines gedruckten Buches mit umblätterbaren Seiten erreicht werden soll.

Die Fähigkeiten oder die Güte der Interpretation von EPUB bei Eigenentwicklungen für spezielle Geräte sind für Außenstehende noch deutlich schwerer zu beurteilen, wenn das konkrete Gerät nicht vorliegt oder kaum kontrollierbar ist, ob dieses Programmversionen automatisch aktualisiert oder nicht.

Insgesamt ist die Beurteilung der Unterstützung des Fromates EPUB also noch schwerer zu überschauen als die allgemeine Unterstützung der eigentlichen Inhaltsformate XHTML und SVG. Pauschal ist allerdings immer davon auszugehen, dass die Darstellungsprogramme nicht alle Anforderungen von EPUB erfüllen und somit nicht jedwedes formal korrekte Buch im Format EPUB auch so präsentieren können, dass alle Inhalte zugänglich wären. In der Praxis sind Autoren daher gezwungen, nur eine Untermenge von EPUB in ihren Büchern zu verwenden, damit den Lesern alle im Buch enthaltenen Inhalte zugänglich bleiben. Die Untermenge ist kleiner als jene, die Autoren verwenden, wenn sie Inhalte direkt im Netz veröffentlichen, also ohne ein EPUB/ZIP-Archiv drumherum.

Spezielle Lesegeräte für E-Books

Nahezu alle E-Book-Reader (mit Ausnahme von Amazon Kindle) interpretieren das EPUB-Format zumindest teilweise. Oft ist nicht erkennbar oder einfach ermittelbar, ob die Geräte zur Präsentation auf etablierte Programmbibliotheken zurückgreifen oder eigene Entwicklungen einsetzen. Aussagen wie die Fähigkeit zur Interpretation von EPUB 2 oder EPUB 3 für ein bestimmtes Gerät sind in der Praxis meist kritisch zu beurteilen, weil es vermutlich bislang kein Programm gibt, welches die gesamte EPUB-Spezifikation in der Version 2 oder 3 korrekt interpretiert. Gemeint ist damit meistens, dass Basisbestandteile von EPUB interpretiert werden, was es ermöglicht, einfach gestaltete Bücher damit problemlos zu lesen. Bücher, welche die jeweiligen Möglichkeiten einer EPUB-Version mit reichhaltigeren Inhalten ausschöpfen, können immer Fehler und Lücken solcher Programme offenbaren.

Eine Übersicht, welche Geräte oder Programme welche Merkmale interpretieren, bietet zum Beispiel das EPUB 3 Support Grid.[7]

Programme zum Lesen (Auswahl)

Programm Lizenz Plattform Bemerkungen
Adobe Digital Editions Freeware Windows, Mac OS X E-Book-Reader, liest und verwaltet neben EPUB-Dokumenten auch die Formate PDF, XHTML und ACSM
Aldiko Freeware Android
Azardi Freeware Windows, Linux, Mac OS X Nutzt intern zur Darstellung von Inhalten Gecko, wie etwa auch Firefox (kostenlos)
Bluefire Reader Freeware Apple iOS, Android, Windows Kann EPUB mit Adobe DRM lesen
Calibre GPLv3 Windows, Mac OS X, Linux Open-Source-Suite für E-Books[8]
Cool Reader GPLv2 Android, eComStation[9] Auch auf Kindle Keyboard mit Jailbreak
EPUBReader Freeware Windows, Mac OS X, Linux Erweiterung für Darstellungsprogramme vom Typ Gecko wie Firefox, Iceweasel, Seamonkey etc, mit der man EPUB-Dateien direkt lesen kann[10]
FBReader GPLv2 Windows, Linux, PDAs, Android
Freda CPOL v1.02 Windows 8, Windows Phone, Windows Mobile EPUB-Reader, unterstützt auch TXT- und HTML-Format[11]
Gitden Freeware iOS, Android EPUB-Reader App, sehr breite Unterstützung von ePub3 Features[12]
i2Reader Freeware Apple iOS
iBooks proprietär Apple iOS, Mac OS X ab iOS 3.2, ab Mac OS X 10.9
Laputa Reader Freemium Android Optisch aufwendiges Blättern ähnlich wie beim iPad
eBook.de Lese-App Freeware iOS, Android Kostenlose E-Book-Reader-Software[13]
Lucidor Freeware Windows, Linux, Mac OS X Nutzt intern zur Darstellung von Inhalten Gecko, wie etwa auch Firefox
Lucifox Freeware Windows, Linux, Mac OS X Erweiterung für Darstellungsprogramme vom Typ Gecko wie Firefox, Iceweasel, Seamonkey etc.
Mantano Reader proprietär iOS, Android
Mobipocket Freeware Windows, Blackberry, Symbian, Windows Mobile
Moon+ Reader Freemium Android Unterstützt TTS, Markierungen, Kommentare, weitere E-Book-Formate
Okular GPL Linux, Windows, Mac OS X Hinweis (Version 0.12): Die Gestaltung des E-Books wird nur eingeschränkt dargestellt (z. B. keine Kapitel, kein Inhaltsverzeichnis)
Overdrive Media Console Freeware Blackberry, Android, iOS, Windows Phone 7
pReader GPLv3 WebOS E-Book-Reader für viele Formate
Readium AGPLv3 / Apache v2.0 Windows, Linux, Mac OS X Erweiterung vom IDPF für Darstellungsprogramme vom Typ WebKit oder Blink wie etwa Chromium oder Google Chrome (kostenlos)
Sony Reader Apps Freeware Windows, Mac, Android, Sony Tablet
Stanza Freeware Windows, Mac OS X, Apple iOS
Sumatra PDF GPLv3 Windows Begann als PDF-Reader und unterstützt neben EPUB zahlreiche weitere Formate
Talking Clipboard Freeware Windows Software, die E-Books vorliest

Programme zum Erstellen von EPUBs

Neben einem Programm, um das ZIP-Archiv selbst zu erstellen, werden keine besonderen Programme benötigt, um Bücher im Format EPUB zu erzeugen. Für die Textinhalte in den XML-Dateien reicht ein einfacher Texteditor. Das ermöglicht es auch, die semantischen Möglichkeiten der Inhaltsformate voll auszuschöpfen. Konvertierungsprogramme und solche mit lediglich einer Ausgabe im Format EPUB verstehen zumeist den Inhalt nicht und sind daher meist nicht in der Lage, den Inhalt optimal zu strukturieren. Wird also ein Programm verwendet, welches eine Formatkonversion verwendet oder eine EPUB-Ausgabe anbietet, so ist es dringend zu empfehlen, den Inhalt mit einem einfachen Texteditor nachzuprüfen und nachzubessern, um ein optimales Ergebnis zu erzielen.

Oft ermöglichen es solche Programm auch, bereits begonnene EPUB-Archive einzulesen. Als Test bietet es sich hier an, ein manuell erstelltes Buch, welches semantische Textauszeichnung intensiv nutzt, ebenso wie die erlaubten Inhaltsformate, insbesondere XHTML und SVG, mit solch einem Programm zu laden und es wieder zu speichern oder nach kleineren Ergänzungen wieder zu speichern. Hat das Programm die semantische Textauszeichnung ohne Nachfrage verändert oder etwa SVG-Dokumente zu Pixelgrafik konvertiert oder ganz weggelassen, ist solch einem Programm offenbar mit äußerster Skepsis zu begegnen. Leider gibt es zahlreiche solche Programme, welche dem Format längst nicht gewachsen sind.

Software Lizenz Plattform Bemerkungen
ABBYY FineReader 11 proprietär Windows, Mac OS X Texterkennung (OCR) mit Exportfunktion ins EPUB-Format, 30 Tage Trial-Version erhältlich
Adobe InDesign[14] proprietär Windows, Mac OS X Desktop-Publishing-Programm (ab CS4)
Adobe RoboHelp proprietär Windows Autorensystem für Online-Dokumentation mit Exportfunktion ins EPUB-Format
Apple Pages proprietär Mac OS X Textverarbeitung mit Exportfunktion ins EPUB-Format
Atlantis Word Processor proprietär Windows Textverarbeitung mit Exportfunktion ins EPUB-Format, 30 Tage Trial-Version erhältlich
BlueGriffon EPUB Edition proprietär Windows, Linux, Mac OS X EPUB-Editor
Calibre GPLv3 Windows, Linux, Mac OS X Konvertierungsprogramm, Editor für EPUB und AZW3 (Kindle)[15]
Calligra Author LPGL / GPL Linux Teil der Calligra Suite
eBooksWriter proprietär Windows Demoversion erhältlich
eCub Freeware Windows, Linux, Mac OS X Konvertierungsprogramm
eLaix GPL Windows, Linux, Mac OS X LibreOffice-Plugin, das neben ILIAS-Lerneinheiten auch EPUBs exportiert (Projekt wird jedoch eventuell nicht mehr gewartet[16])
ePuper Freeware Windows EPUB-Editor, Freeware
Jutoh proprietär Windows, Mac OS X erstellt EPUBs aus ODT-Files, die z. B. mit OpenOffice oder LibreOffice erstellt wurden
Pandoc GPL Linux, Mac OS X, Windows, Universal (Haskell) Universelles Konvertierungsprogramm (auch TeX → EPUB)
Papyrus Autor proprietär Windows, Mac OS X Deutschsprachige Textverarbeitung mit Exportfunktion ins EPUB-Format
QuarkXPress[17] proprietär Mac OS X, Windows Desktop-Publishing-Programm
Sigil GPLv3 Windows, Linux, Mac OS X Open-Source-Editor zum Lesen und Schreiben von EPUBs
writer2ePub[18] Freeware Windows, Linux, Mac OS X Plug-in für LibreOffice und OpenOffice von Luca “Luke” Calcinai, das aus Textdokumenten EPUBs erstellt.
Xilisoft PDF to EPUB Converter proprietär Windows Konvertierungsprogramm, 30 Tage Trial-Version erhältlich

Digitale Rechteverwaltung

Beim Format EPUB ist es vorgesehen, optional in einer bestimmten Datei Informationen zur digitalen Rechteverwaltung (DRM) zu notieren, bis einschließlich Version 3.0 ist allerdings keine bestimmte Struktur dafür definiert. Eine Interpretation solcher Informationen ist folglich optional, eine gegebenenfalls danach vorgenommene Verschlüsselung der Inhalte kann diese also für viele Darstellungsprogramme unzugänglich machen. Momentan existieren zudem unterschiedliche, miteinander nicht kompatible Systeme. Das von Adobe entwickelte ADEPT-DRM-System hat von diesen eine vergleichsweise hohe Verbreitung; fast alle Händler, die ihre EPUB-Bücher schützen, verwenden dieses System, und es wird von vielen kommerziellen E-Book-Readern unterstützt, meist jedoch nicht von freien Darstellungsprogrammen oder Erweiterungen für Browser.

Ein weiteres DRM-System ist von Apple entwickelt. Bisher kann lediglich das firmeneigene Darstellungsprogramm iBooks Bücher in diesem Format entschlüsseln. Damit ist dieses System auf Geräte beschränkt, für die iBooks als Darstellungsprogramm verfügbar ist.

Entfernen des Kopierschutzes

Für die von Adobe entwickelte, digitale Rechteverwaltung ADEPT DRM wurde im Februar 2009 eine Möglichkeit publiziert, den Kopierschutz zu umgehen.[19] Dabei wurde nicht der Kopierschutz an sich geknackt, sondern lediglich der private Schlüssel extrahiert. Mit diesem lassen sich dann alle mit diesem Schlüssel geschützten EPUB-Dateien vollständig entschlüsseln und ohne digitales Rechtemanagement neu abspeichern. Diese neuen Dateien unterliegen somit nicht mehr den Restriktionen der digitalen Rechteverwaltung. Die Inhalte werden auch für andere Darstellungsprogramme zugänglich. Eventuell vorhandene persönliche Identifizierungsdaten bleiben vorhanden.

Auch das von Apple entwickelte DRM-System kann mit der Software Requiem ab Version 3.3 umgangen werden.[20]

Literatur

  • Victor Wang: E-Books mit ePUB – Von Word zum E-Book mit XML. 1. Auflage. mitp, Heidelberg u. a. 2011, ISBN 978-3-8266-5602-6.
  • Yves Apel: E-Books mit InDesign CC: Die Profi-Anleitung für ePub, Mobi & Co. dpunkt, Heidelberg 2014, ISBN 978-3-86490-121-8.
  • Yves Apel, Sasha Heck: ePub für (In)Designer: Mit InDesign Schritt für Schritt zum E-Book dpunkt, Heidelberg 2012, ISBN 978-3-89864-794-6. komplett online

Weblinks

Einzelnachweise

  1. 1,0 1,1 1,2 1,3 EPUB 3.1 Changes from EPUB 3.0.1. International Digital Publishing Forum, 5. Januar 2017, abgerufen am 29. März 2017 (english).
  2. EPUB 2.0.1. International Digital Publishing Forum, 4. September 2010, abgerufen am 29. März 2017 (english).
  3. EPUB 3.0. International Digital Publishing Forum, 11. Oktober 2011, abgerufen am 29. März 2017 (english).
  4. epubcheck
  5. 5,0 5,1 businessweek.com
  6. New Roadmap for Future of Publishing is Underway as W3C and IDPF Officially Combine. W3C, 1. Februar 2017, abgerufen am 29. März 2017 (english).
  7. epubtest.org
  8. calibre-ebook.com
  9. ecomstation.it
  10. epubread.com
  11. turnip.demon.co.uk/jim/freda
  12. gitden.com
  13. ebook.de
  14. Prüfstand: Intermezzo Adobes Creative Suite 5.5 setzt auf digitales Publishing. In: c’t, 14/2011
  15. calibre-ebook.com
  16. extensions.libreoffice.org
  17. Prüfstand: Schaltzentrale QuarkXPress 9 rüstet sich fürs digitale Publishing. In: c’t, 11/2011
  18. Writer2ePub
  19. Circumventing Adobe ADEPT DRM for EPUB. i♥cabbages – still another reverse engineering blog, 18. Februar 2009, abgerufen am 29. März 2017 (english).
  20. Jonny Greenwood: Remove iBooks DRM. Epubor, 9. Dezember 2014, abgerufen am 29. März 2017 (english).
Dieser Artikel basiert ursprünglich auf dem Artikel EPUB aus der freien Enzyklopädie Wikipedia und steht unter der Doppellizenz GNU-Lizenz für freie Dokumentation und Creative Commons CC-BY-SA 3.0 Unported. In der Wikipedia ist eine Liste der ursprünglichen Wikipedia-Autoren verfügbar.