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.
Erlaubt sind die folgenden Element-Aufrufe:
meta_titel | meta_untertitel | meta_isbn | meta_e-isbn | doi | urn | meta_uebersetzer | meta_illustrator | meta_gattung | meta_hrsg-1 | meta_hrsg-2 | meta_hrsg-3 | meta_hrsg-4 | meta_hrsg-5 | meta_autor-1 | meta_autorvorname-1 | meta_autornachname-1 | meta_autor-2 | meta_autorvorname-2 | meta_autornachname-2 | meta_autor-3 | meta_autorvorname-3 | meta_autornachname-3 | meta_autor-4 | meta_autorvorname-4 | meta_autornachname-4 | meta_autor-5 | meta_autorvorname-5 | meta_autornachname-5 | meta_e-joker-1 | meta_e-joker-2 | meta_e-joker-3 | meta_e-joker-4 | meta_e-joker-5 | meta_e-copyright | meta_e-bio | meta_e-kurztext | meta_dl-name
Beispiel 8. Ausgabe des Titels
<div valueOf="meta_titel"/>
HTML-Ausgabe im EPUB:
<div>Buchtitel</div>
Beispiel 9. 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, enfernt.
Beispiel 10. Leere Ergebnis-Elemente werden gelöscht
<div valueOf="meta_e-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 11. Leere Ergebnis-Elemente erhalten
<div valueOf="meta_e-joker-5" preserveEmptyElement="true"/>
HTML-Ausgabe im EPUB:
<div></div>
@class
Attribute am abfragenden Element werden übernommen:
Beispiel 12. Attribute werden übernommen
<div valueOf="meta_untertitel" class="t_untertitel"/>
HTML-Ausgabe im EPUB:
<div class="t_untertitel">Buch-Untertitel</div>
Fehlerhafte Element-Abfragen erzeugen im Oxygen-Logfile UND im EPUB eine rot hinterlegte Fehlermeldung.
Beispiel 13. 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!