XSLT-Templates kapseln vorgefertigte komplexe XPath- und XSLT-Abfragen, die mit den oben genannten Möglichkeiten der Element-Abfragen nicht umzusetzen sind. Dazu gehört unter anderem die Ausgabe des verlinkten Inhaltsverzeichnisses.
Template-Aufrufe werden über das spezifische Attribut @callTemplate="template-name"
an einem beliebigen HTML-Element im TPL-Template erzeugt.
Erlaubt sind lediglich die Aufrufe der folgenden Templates:
alleAutoren
Listet alle Autoren (inkl. MarkUp), getrennt durch das im ConfigFile definierte Trennzeichen (Abschnitt "Einstellungen für den Haupttitel" => "Trennzeichen für mehrere Autoren")
alleHerausgeber
Listet alle Herausgeber (inkl. MarkUp), getrennt durch das im ConfigFile definierte Trennzeichen (Abschnitt "Einstellungen für den Haupttitel" => "Trennzeichen für mehrere Autoren")
inhaltsverzeichnis
Gibt das komplette generierte Inhaltsverzeichnis aus
Falls ein Template keine Ausgabe erzeugt, z.B. wenn alle Herausgeber gelistet werden sollen, in der XML-Instanz aber kein Element <meta_hrsg>
existiert, dann wird das Element – im Gegensatz zum oben genannten Verhalten bei Element-Abfragen – trotzdem generiert!
Beispiel 14. Abfrage aller Autoren
<div callTemplate="alleAutoren"/>
HTML-Ausgabe im EPUB:
<div>Siegfried <span class="unterstr">Lenz</span> | <span class="durchgestr">Tobias</span> Fischer | Vorname <strong>Nachname</strong></div>
Beispiel 15. @class
Attribute am abfragenden Element werden übernommen
<div callTemplate="alleAutoren" class="t_autor"/>
HTML-Ausgabe im EPUB:
<div class="t_autor">Siegfried <span class="unterstr">Lenz</span> | <span class="durchgestr">Tobias</span> Fischer | Vorname <strong>Nachname</strong></div>