XML-Know How

Formatierungen

Die wohl wichtigste Funktion für den Satz ist es, aus den XML-Strukturen automatisiert einen Umbruch ableiten zu können. Für eine automatische Formatierung können in InDesign XML-Elemente bestimmten Formaten zugeordnet werden. Die Funktion findet sich im Kontextmenu der Strukturansicht > Tags zu Formaten zuordnen.

Abbildung: Dialog zur Zuordnung von XML-Elementen zu Formaten
Abbildung: Dialog zur Zuordnung von XML-Elementen zu Formaten

Für einfach strukturierte Dokumente ist diese Funktion völlig ausreichend – sobald die Strukturen komplexer werden, stößt dieses Verfahren leider schnell an seine Grenzen. Der Grund ist ernüchternd: Einem XML-Element kann in InDesign immer nur ein Format zugewiesen werden – unabhängig von seiner Position im Dokument. Es ist also nicht möglich zu sagen: Ein <absatz> im <grundtext> soll immer in 10 Punkt formatiert werden, ein <absatz> innerhalb von <fussnote> jedoch nur in 8 Punkt.

Eine wünschenswerte Erweiterung wäre die Möglichkeit, mit XPath-Ausdrücken[4] arbeiten zu können und somit Formatierungen in Abhängigkeit von der Struktur vorzunehmen. Leider ist diese Funktion auch in der Version  CS4 nicht realisiert.

Das Mapping macht auch schnell klar, dass für XML-Elemente jeweils entsprechende InDesign-Layoutfunktionen zuständig sind: Absatzformate werden entsprechend Blocklevel-Elementen zugewiesen, Zeichenformate den korrespondierenden Inline-Elementen. Ebenso können Tabellen- und Zellenstile den entsprechenden XML-Elementen zugewiesen werden.[5]

Diese Analogie von bekannten InDesign-Funktionen mit XML-Strukturen ist für die Benutzer recht intuitiv und funktioniert sehr zuverlässig. Eine Erweiterung auf Objektstile würde sich anbieten, ist aber zurzeit noch nicht implementiert.

Die Zuordnung muss nicht erst während des Imports – und damit jedesmal aufs Neue – vorgenommen werden. Vielmehr besteht die Möglichkeit, eine Zuordnung einmalig anzulegen, in einem Template zu speichern und diese über die Funktion Laden… weiter zu verwenden. Sobald mehrere Werke gemäß der selben XML-Struktur umgesetzt werden sollen, lohnt sich dieser Aufwand.


  • [4]    Vgl. das Kapitel II.A.6 über XPath
  • [5]    Hier ist jedoch zu beachten, dass nur XML-Tabellen, die mit den entsprechenden Attributen des Adobe-InDesign-Namespace ausgezeichnet sind, als Tabellen importiert werden. Der folgende Code-Ausschnitt zeigt eine korrekt umgesetzte Tabelle
<tabelle xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/"
aid:table="table" aid:trows="4" aid:tcols="4">
<tabellenzelle aid:table="cell" aid:crows="1" aid:ccols="1"
aid:ccolwidth="134.75">
<abs>Inhalt der Zelle</abs>
...