Referenz zu XSL-FO

(Auszug aus "XSL-FO ― Die Referenz" von Manuel Montero Pineda & Steffen Herkert, 2016, dpunkt.verlag)

Warum eine Referenz zu XSL-FO?

XSL-FO ist tot. Dieser Satz geistert schon seit geraumer Zeit durch die XML- und Publishing-Welt. Lang lebe CSS Paged Media!

Fakt ist, dass der W3C-Standard zu XSL-FO 1.1 bereits Ende 2006 veröffentlicht wurde und XSL-FO 2.0 seit 2012 nicht über den Status eines Working Draft hinausgekommen ist. Obendrein hat die W3C XSL-FO Working Group Ende 2013 aufgrund mangelnder Beteiligung ihre Aktivitäten eingestellt. Dies und die steigende Konzentration auf die neue Technologie CSS Paged Media (kurz Print CSS), die es seit 2013 als W3C Working Draft gibt, spricht auf den ersten Blick gegen das Verfassen einer Referenz zu XSL-FO.

Wir waren und sind aber anderer Meinung! Noch immer ist XSL-FO DIE Sprache für Seitengestaltung und Umbruch von Druck- und PDF-Produkten. Obwohl Print CSS einfacher und kompakter ist, steckt es noch in den Kinderschuhen. (Noch) nicht alle Anforderungen an Print-Layouts können mit der ursprünglich für die Darstellung am Bildschirm konzipierten Sprache vollständig umgesetzt werden, viele Renderer unterstützen die neue Technologie noch nicht oder nur ungenügend. Heute führt noch immer kein Weg daran vorbei, XML-basierte Printlayouts mit XSL-FO zu generieren. Aus diesen Gründen sind wir nicht davon abgekommen, dieses "kleine" Projekt, das wir 2007 blauäugig angefangen haben, viel Zeit und Nerven gekostet hat und nur neben den alltäglichen Aufgaben in Angriff genommen werden konnte, nach 9 Jahren endlich zu vollenden und zu veröffentlichen.

Unser Ziel war es, eine vollständige, inhaltlich gehaltvolle sowie anschauliche und interaktive Referenz zu den Elementen und Attributen von XSL-FO in deutscher Sprache zu verfassen. Diese Referenz soll als umfassendes Nachschlagewerk für die Arbeit mit FO dienen, beim Lernen und Anwenden dieser Technologie helfen sowie mithilfe der zahlreichen Code- und Ausgabe-Beispiele zur Lösung von Layout-Problemen beitragen. Zwar sind bereits viele Referenzen zu XSL-FO auf dem Markt, jedoch meistens auf Englisch und nicht gerade aussagekräftig. Wir hoffen, dass dieser über 3500-Seiten große Brocken alles beinhaltet, was ein FO-Anwender in einer Referenz zu finden wünscht und darüber hinaus.

Aufbau und Gebrauch der Referenz

Die Referenz besteht aus sechs Hauptbereichen. Zuerst erfolgt eine Auflistung der Formatierungsobjekte sowie der FO-Eigenschaften nach thematischen Kategorien gemäß des W3C-Standards (siehe Kapitel 6 "Formatting Objects", Kapitel 7 "Formatting Properties" und Kapitel 5.10 "Core Function Library"). Die Inhalte der folgenden Bereiche sind jeweils alphabetisch geordnet. Als Zweites folgen die einzelnen Elemente, darauf die Attribute. Der vierte Teil beschäftigt sich mit den Funktionen von XSL-FO. Zu guter Letzt werden die aktuellen Erweiterungen des Antenna House Formatter (auf Englisch) sowie Erweiterungen der DocBridge-Reihe von Compart behandelt.

Bei dem Gebrauch dieser Referenz ist besonders zu beachten, dass sie durch-und-durch verlinkt ist. Somit kann man zum Beispiel bei der Beschreibung eines Elements oder beim Nachvollziehen eines Code-Beispiels schnell zur ausführlichen Erklärung eines Attributes springen, ohne das Attribut lange auf der Website suchen zu müssen.

Code-Beispiele:

Die XSL-FO-Dateien der in der Referenz enthaltenen Code-Beispiele sind als Download (ZIP-Ordner) kostenlos verfügbar. Die Ausgaben zu den Beispielen (mit Ausnahme der Beispiele zu den Compart-Erweiterungen) wurden mit dem Antenna House Formatter V6 generiert.

Zu jedem Element bzw. Objekt sind folgende Angaben zu finden:

  • Kapitel-Nummer in der W3C Recommendation
  • thematische Kategorie
  • Beschreibung
  • Versionsnummer
  • Auflistung der Eltern- und Kindelemente
  • Attribute mit einer kurzen Beschreibung
  • Tabelle mit ausgewählten Formatierern und deren Unterstützung des Elements (J = Ja, N = Nein, P = Partiell, ? = Nicht implementiert/keine Angabe)
  • Code-Beispiel
  • Ausgabe des Beispiels
  • gegebenenfalls weiterführende Links
  • Auszug aus der W3C Recommendation

Zu jedem Attribut bzw. zu jeder Eigenschaft sind folgende Angaben zu finden:

  • Kapitel-Nummer in der W3C Recommendation
  • thematische Kategorie
  • ausführliche Beschreibung
  • erlaubten Werte mit einer Beschreibung
  • Vererbung
  • Default-Wert
  • Versionsnummer
  • Welche Elemente erlauben das Attribut?
  • Tabelle mit ausgewählten Formatierern und deren Unterstützung des Attributs
  • Code-Beispiel
  • Ausgabe des Beispiels
  • Auszug aus der W3C Recommendation

Zu den Funktionen sind folgende Angaben zu finden:

  • Kapitel-Nummer in der W3C Recommendation
  • thematische Kategorie
  • Beschreibung
  • Werte
  • Versionsnummer
  • Tabelle mit ausgewählten Formatierern und deren Unterstützung der Funktion
  • Code-Beispiel
  • Ausgabe des Beispiels

Die Erweiterungen:

Die Antenna House Formatter XSL Extensions (auf Englisch) sind untergliedert in Funktionen, Werte, Elemente und Eigenschaften mit jeweils ähnlichen komplexen Angaben, wie bei den "normalen" Elementen, Attributen und Funktionen von XSL-FO.

Die Erweiterungen von Compart sind unterteilt in Elemente und Attribute. Bei den Compart-Elementen finden sich Angaben zur Kategorie, eine Beschreibung, erlaubte Attribute, ein Code-Beispiel sowie die passende Ausgabe. Die Compart-Attribute bestehen u.a. aus Angaben zur Kategorie, einer Beschreibung, erlaubte Werte und Vererbung sowie ebenso aus einem Code-Beispiel und dessen Ausgabe.

Inhalt

  

Tipp der data2type-Redaktion:
Zum Thema XSL-FO bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: