2.4  Professionelle XML Verarbeitung

Vom Single-Source Publishing bis zur Generierung von Java Code aus Klassendiagrammen. XSLT ist in vielen großen Softwareprojekten vertreten. Heute liefert eine Suche nach <xsl:stylesheet bspw. 14.868.501 Treffer. ↗↗

2.4.1  Single Source Publishing

Aus einer Quelle werden viele Ausgabe Formate generiert. Gängige Formate in der Technischen Dokumentation sind elektronische Ausgabe-Formate wie: CHM, EclipseHelp, JavaHelp, ePub, ..., Print-Ausgabe Formate, wie PDF oder Adobe Framemaker, oder XML Standard Austauschformate, wie DITA, S1000D, PI-MOD oder TEI.
Vorteile:
  • Bei einer Änderung in der XML Quelle werden auch automatisch alle anschließenden Formate aktualisiert.
  • Strikte Trennung von Content/Semantik und Layout/Design.
  • Auf der XML Quelle sind XML Features möglich, wie:
    • Modularisierung erlaubt die fein-granulare Wiederverwendung von Content-Bausteinen, sowie das Verlinken, Filtern, Suchen und Exportieren derselben.
    • Generalisierung
      ist ein DITA Konzept, welches die Wiederverendung von angepassten Topics in anderen DITA Systemen ermöglicht.
    • Gültigkeiten erlauben die bedingte Anwendung von Content-Bestandteilen auf Satz- und Wort-Ebene.
    • Versionierung und Diffing - Vergleich von Änderungen zwischen Versionen.
    • Intelligente Querverweise: Ein Link zwischen einzelnen XML Topics bleibt versionstreu.
    • Automatischer Satz, inkl. Zusamenhalte- und Trennregeln für Seiten, Absätze und Blöcke (Listen, Tabellen, etc).
  • Veraltete Formate können ausgetauscht werden, ohne dass der Content geändert werden muss oder verlorengeht.
  • Die XML Quelle kann ohne Aufbereitung in anderen Systemen wiederverwendet werden.
  • Es gibt weit verbreitete Standards zur Struktur der XML Quelle.
  • Nur das XML wird in der Datenhaltung persistiert.
  • Es gibt spezialisierte XML Datenbanken modified by alex, die besonders gut auf Baumstrukturen arbeiten. (Dokumente sind per se baum-strukturiert und sind eigentlich für eine relationale Datenbank ungeignet)
Die Redaktionssysteme der Technischen Dokumentation der führenden Hersteller in Deutschland haben XML unter der Haube und setzen auf die Single-Source Strategie.
  • dfgdfg
    fdgdfg
  • fdgdfg
  • fdgdfg
ACHTUNG!
dgdfg
dgdfgdfgdfgdfg
dsfsdfsdfsdfsdfsdf

2.4.2  Code Generierung

Nachdem man bei XSLT im Format der Ausgabe frei ist, kann auch direkt Plain-Text mit XSLT Regeln generiert werden. Daher liegt es nahe sich jegliche Form von Quelltext aus einer XML Repräsentation erzeugen zu lassen.
Beispielsweise speichern gängige CASE Tools (Computer Aided Software Engineering) UML Diagramme im XML Format ab, so z.B. ArgoUML ↗↗.
Diese Klassendiagramme lassen sich mittels XSLT direkt in Java-Code transformieren, wie z.B. in einem kleinen Open Source Projekt (aus vergangenen Tagen) : Butterfly Code Generator ↗↗
Es gibt auch einen schönen Artikel dazu im Java World Journal ↗↗.

2.4.3  Migrationen und Konvertierungen

Für jede erdenkliche Art der Migration eines XML Datenbestands oder eines Datenbank-Dumps / -Exports im XML Format, zwischen Produktversionen oder zwischen Dienstleister- und Dienstnutzer-Systemen, bietet sich XSLT zur Transformation an.
Dabei ist zu beachten, dass XSLT besonders schnell und gut auf verschachtelten Strukturen arbeitet. Entartet ein Baum zur Liste und/oder sind nur geringe Strukturanpassungen notwendig, wird man sich mit einem schnellen SAX Parser leichter tun.
Mittels der XSLT 3.0 können auch sehr große XML Quellen (Big Data) verarbeitet werden. Saxon bietet bspw. diese Streaming Option ↗↗.
Previous Page Next Page
Version: 93
Jan 25 2021