Um diese Schwäche der Textvariablen zu umgehen, sind seit Version 2 der Template-Engine Element-Abfragen möglich.
Element-Abfragen werden über das Attribut @valueOf="element"
an einem beliebigen HTML-Element im TPL-Template erzeugt.
Dabei greift die Template-Engine ausschließlich auf die E-Book-Metadaten aus dem Element <titelei_ebook>
zu. Einzige Ausnahme ist hier die Print-ISBN aus den "normalen" Metadaten die mit meta_isbn
abgefragt werden kann.
Anmerkung | |
---|---|
Erlaubt sind die folgenden Element-Aufrufe:
|
parsX 3.0 - veraltete Element-Aufrufe | |
---|---|
Mit parsX 3.0 wurden im Zuge der Metadaten-Überarbeitung einige Element-Aufrufe als "veraltet" markiert. Diese funktionieren auch weiterhin noch, erzeugen im EPUB-Log jedoch eine Warnung. Im folgenden Eine vollständige Liste mit Ersetzungen:
|
Beispiel 23. Ausgabe des Titels
<div valueOf="meta_titel"/>
HTML-Ausgabe im EPUB:
<div>Buchtitel</div>
Beispiel 24. Ausgabe des Titels als Überschrift 6. Ebene
<h6>Titel ist: "<span valueOf="meta_titel"/>"</h6>
HTML-Ausgabe im EPUB:
<h6>Titel ist: "<span>Buchtitel</span>"</h6>
Falls eine Element-Abfrage kein Ergebnis liefert, wird das Element welches das @valueOf
-Attribut enthält, entfernt.
Beispiel 25. Leere Ergebnis-Elemente werden gelöscht
<div valueOf="meta_joker-5"/>
HTML-Ausgabe im EPUB:
Falls dieses Verhalten nicht erwünscht ist, das Element also trotzdem leer erzeugt werden soll, kann das Attribut @preserveEmptyElement="true"
gesetzt werden:
Beispiel 26. Leere Ergebnis-Elemente erhalten
<div valueOf="meta_joker-5" preserveEmptyElement="true"/>
HTML-Ausgabe im EPUB:
<div></div>
@class
Attribute am abfragenden Element werden übernommen:
Beispiel 27. Attribute werden übernommen
<div valueOf="meta_untertitel" class="t_untertitel"/>
HTML-Ausgabe im EPUB:
<div class="t_untertitel">Buch-Untertitel</div>
Achtung | |
---|---|
Fehlerhafte Element-Abfragen erzeugen im Oxygen-Logfile UND im EPUB eine rot hinterlegte Fehlermeldung. Beispiel 28. Fehlerhafte Abfrage <div valueOf="keinElement"/> HTML-Ausgabe im EPUB: <div><span style="background-color: red;"><strong>FEHLER!</strong> Es sind nur die folgenden Element-Aufrufe erlaubt: `meta_titel`, `meta_untertitel`, [...]</span></div> Anzeige im EPUB: Liefern Sie niemals ein EPUB aus, welches eine solche Fehlermeldung enthält! |