Nahezu jede größere Verwaltungslösung bietet inzwischen eine XML (Extensible Markup
Language) Schnittstelle. Das erleichtert den Datenaustausch zwischen Systemen oder den
Datenimport in ein neuese System erheblich. Aber was ist genau XML und das auch immer wieder
genannte XSL?
XML (Extensible Markup Language)
XML ist eine Meta-Sprache, mit der es möglich ist, Auszeichnungssprachen für Dokumente
zu
erzeugen. Eine bekannte Auszeichnungssprache für das WWW ist HTML. HTML kann in XML
formuliert werden. Im Unterschied zu HTML sind bei XML die Auszeichnungselemente (tags)
jedoch nicht festgelegt. Weiterhin enthält XML keinerlei Möglichkeiten auszudrücken, wie XML-
Daten am Bildschirm angezeigt, oder auf Papier ausgedruckt werden sollen. Dies macht XML
einerseits einfacher als HTML, die Visualisierung ist jedoch dafür um einiges schwieriger.
Zentrales Anliegen für den Einsatz von XML ist es, Inhalte maschinell zugänglich,
auffindbar und
manipulierbar zu machen. Um das zu erreichen, wird mit XML eine Möglichkeit gegeben, Inhalte
über kennzeichnende Markierungen in funktionale Blöcke zu untergliedern. Diese Auszeichnungen
werden tags genannt. Tags werden durch spitze Klammern gekennzeichnet, z.B.: <kapitel>. Wird
von der Gesamtheit der Tags gesprochen, spricht man von Markup.
XML ist keine Markup-Sprache in dem Sinn, dass die Menge der Auszeichnungselemente
(tags)
festgelegt ist, wie z.B. bei HTML. Die Namen der Tags können von XML-Anwender/innen frei
erfunden werden. Die Tag-Namen können so gewählt werden, dass sie die Bedeutung des Inhalts
ausdrücken. Ein tag <buchtitel> erklärt sich selbst. Bei bedeutungstragenden tags spricht man
von
semantischem Markup.
In diesem Sinn ist XML eine erweiterbare Auszeichnungssprache, woraus das Kürzel XML
-
eXtensible Markup Language - seine Begründung erhält.
XSL (Extensible Stylesheet Language)
XSL ist ein auf XML-basierender Standard, mit dem man XML-Dokumente transformieren
und
formatieren kann.
Genaugenommen besteht XSL aus 3 Teilen, oder besser gesagt drei Sprachen:
- XSL-FO (XSL Formatting Objects) die
Sprache um formatierte Ausgabe zu beschreiben.
- XSLT (Extensible Stylesheet Language
Transformations) die Sprache um XML umzuwandeln
- XPath (XML Path Language) die Sprache
zum Adressieren und Selektieren von XML-Knoten
Oft findet jedoch eine Verwechslung zwischen XSL und XSLT statt. XSL ist die Extensible
Stylesheet Language (erweiterbare Auszeichnungssprache), und besteht aus zwei Unterstandards:
XSLT (zur Transformation) und XSL-FO (zur Formation).
Formal ausgedrückt: XSL = XSLT + XSL-FO
In der Praxis zeigt sich, dass der große Vorteil von XML nämlich die Erweiterbarkeit
gleichzeitig die
größten Aufwendungen beim Einsatz erfordert. Es gilt XML != XML. Daher ist eine XML
Schnittstelle ohne XSL nicht vollständig zu nennen.
Im PLM/PDM Umfeld ist eine XML Schnittstelle für dreierlei Aufgaben interessant
1. Datenimport
Ein neues System muss zunächst mit Informationen befüllt werden. Diese existieren
normalerweise bereits in mehr oder weniger strukturierter Form. Für einen Import in das neue
System müssen diese Daten in der vorgegebenen Weise formatiert und importiert werden. Da es
sich bei den XML Dateien um einfache ASCII Dateien mit entsprechender Strukturierung handelt ist
dies relativ einfach zu bewerkstelligen.
2. Datenexport / Reporterstellung
Reports und Protokolle sind ein weiterer Anwendungsfall für eine XML Schnittstellle.
Die Integration
der XML Schnittstelle in das Verwaltungssystem (z.B. PDM) wird dabei deutlich mehr gefordert. Es
müssen aus dem Verwaltungssystem alle Informationen an die XML Schnittstelle übergeben
werden können. Zusätzlich muss eine Transformation in die gewünschte Form und das gewünschte
Format angestoßen werden können.
So können z.B. formatiert PDF Dateien oder auch Exceltabellen zur Weiterbearbeitung
erstellt
werden.
3. Datenaustausch
Beim Datenaustausch zwischen zwei Systemen wird man nicht um den Einsatz einer
Transformation auskommen da wie oben gesagt XML nicht gleich XML ist. Im einfachsten Fall wird
im exportierten XML ein Objekt z.B. mit <artikel> bezeichnet, für den Import muss dieses Objekt
aber z.B. mit <Art-ID> bezeichnet werden. In diesem Fall muss mindestens eines der beteiligten
Systeme in seiner XML Schnittstelle auch die Anwendung von XSLT Stylesheets ermöglichen.
Auf folgende Funktionalitäten muss geachtet werden:
- XML als Schnittstelle für Import
und Export
- Alle Objekttypen und Objekteigenschaften
müssen auch in der XML Schnittstelle verfügbar sein
- optionale Anwendung von XSL bei Import
und Export
- möglichst auch Verarbeitung von physikalischen
Dokumenten über die XML Schnittstelle
- Verarbeitung auch von Dokumenten,
nicht nur Metadaten