11.05.2006, 20:25 Uhr
XML-Formate werden erwachsen
XML-Dateiformate wie .docx, .xlsx und .pptx sind keine Spielerei mehr, sondern ernstzunehmende Komponenten einer professionellen Softwarelösung. Mit dem kommenden Microsoft Office System 2007 wird das erste End-to-end-XML-Dateiformat das Licht der Welt erblicken.
Peter Koen arbeitet als Program Manager für Global ISV Evangelism in der Developer und Platform-Evangelism-Gruppe bei Microsoft.
Bereits 2003 gab es erste Versuche XML-Technologie in die Microsoft-Office-Produktfamilie einzubringen, und mit Office XP gab es ein erstes XML-basierendes Dateiformat. Allerdings wurden diese Versuche nicht mit grosser Akzeptanz belohnt. Dies hatte gleich mehrere Gründe: Das XML-Dateiformat war schwierig zu erlernen, binäre Objekte wie beispielsweise Bilder wurden Base64 codiert im XML-Dokument abgelegt und haben somit die Dokumentgrösse drastisch erhöht. Viele Entwickler beschlossen daher den Weg des geringsten Widerstandes zu gehen und einfach über die Automatisierungsschnittstellen der Officeprogramme einzelne Dokumente zu manipulieren. Dieser Weg brachte aber auch viele kleinere Probleme mit sich: Ein relativ hoher Speicherverbrauch, die Notwendigkeit Office auf einem Server zu installieren, um serverseitig Dokumente erstellen zu können, und Sicherheitsrisiken.
Open jetzt auch bei Microsoft
Mit Hilfe des neuen Microsoft-Office-Open-XML-Format sollen diese Probleme der Vergangenheit angehören (http://www.microsoft.com/office/preview/). Das neue Format bietet die Möglichkeit, Dokumente zu bearbeiten ohne die Notwendigkeit Office auf dem System zu installieren. Dies beinhaltet nicht nur Änderungen am Text, sondern auch den Austausch von Grafiken oder aktiven Elementen, zum Beispiel in einem Word-Dokument eingefügte Exceldiagramme. Ermöglicht wird dies durch die Verwendung der Open Packaging Convention (OPC), welche ein Teil der XML Paper Specification (XPS) ist. XPS wurde als Standard für «digitales Papier» entwickelt und bietet auch ein bequemes Format zum Verpacken von Teildokumenten und Datenfragmenten in Datenströme mit Fehlerkorrektur, Signaturen und Rechtevergabe.
Kompaktes XML dank ZIP
OPC nutzt die ZIP-Kompressionstechnologie, um einzelne Teildateien, die den Inhalt eines Dokumentes ausmachen, in einer Datei zusammenzufassen. ZIP löst damit automatisch das Problem der Dateigrösse von XML-codierten Daten, da sich diese sehr gut komprimieren lassen. Weitere Vorteile sind die weite Verbreitung in der Industrie und damit die einfache Entwicklung von Werkzeugen, sowie die eingebaute Fehlerkorrektur, die dem neuen Dateiformat eine enorme Robustheit verleiht. Für die sinnvolle Verwendung in einem Dokumentmanagementprozess wurden zum ZIP-Format zusätzlich digitale Signaturen und digitale Berechtigungen eingefügt. Damit wird die Überprüfung der Echtheit von Daten und eine Verwaltung der Zugriffs- und Bearbeitungsberechtigungen ermöglicht. Zusammen mit den Indizierungs- und Verwaltungsmethoden des Sharepoint Servers können mächtige Dokumentverwaltungslösungen erstellt werden.
Nutzdaten und Metadaten
Innerhalb des ZIP-Paketes befinden sich sowohl die Nutzdaten des Dokumentes als auch die Metadaten. Einige dieser Metadaten werden benötigt, um den Inhalt des Dokumentes zu strukturieren, beispielsweise um eine Zuordnung von Bilddateien zu den entsprechenden Stellen im Dokument, an denen das Bild vorkommen soll, zu ermöglichen. Es können aber auch zusätzliche Metadaten hinzugefügt werden, zum Beispiel für eine Indizierung eines Suchdienstes oder auch um eigene Datendateien mit den Officedokumenten zu verbinden. So können unter anderem sehr schnell und einfach Dokumentvorlagen erstellt werden, die dann sogenannte Contentcontrols als Platzhalter für eigene Daten beinhalten. Diese können mit XML-Fragmenten verbunden werden, um Inhalte im Dokument zu befüllen. Wo bisher eine Instanzierung des Wordprozesses mit aufwändiger Programmierung des automatisierbaren Objektmodells notwendig war, reicht nun das Austauschen eines XML-Fragments innerhalb eines ZIP-Pakets.
Unabhängig dank offener Standards
Die Nutzdaten innerhalb des Pakets unterteilen sich in mehrere Teildokumente, die über die Metadaten - genauer gesagt über die Relations - verbunden werden. Bei einem Worddokument ist beispielsweise der Textinhalt ein XML-Dokument, die Formatvorgaben ein weiteres Dokument, die Definition der Dokumenteigenschaften ebenso und so weiter. Damit wird eine hohe Flexibilität bei der Bearbeitung der Dokumente gewährleistet. Es muss nun nicht mehr das gesamte Dokument geöffnet und bearbeitet, sondern nur noch ein Datenstrom aus dem ZIP-Paket ausgetauscht beziehungsweise bearbeitet werden. Microsoft bietet dafür eine Vielzahl von Klassen und Hilfsmethoden im WinFX SDK (Software Development Kit) an, so dass Entwickler lediglich einfache Methodenaufrufe tätigen müssen. Und für den Fall, dass kein .NET Framework zur Verfügung steht, da das Dokument beispielsweise auf einem Unix-basierenden System bearbeitet wird, kann man relativ leicht die entsprechenden Funktionen mittels ZIP-Bibliotheken, sowie XSLT, Xpath und anderen XML-Bearbeitungsstandards reimplementieren. Um die Entstehung von plattformübergreifenden Lösungen zu fördern, hat Microsoft die Definition des Open-XML-Formats an die ECMA zur Standardisierung übermittelt und eine Initiative zur Entwicklung von darauf basierenden Lösungen gegründet (http://www.openxmldeveloper.org/). Die eigentlichen Hauptdokumente der Pakete, wie der Korpus eines Worddokumentes oder die Daten eines Excelarbeitsblattes, sind in den bereits mit Office XP eingeführten Auszeichnungssprachen (kurz MLs für Markup Languages) implementiert. Damit sollte es ohne grössere Schwierigkeiten möglich sein, XML-Lösungen von Office XP auf Office 2007 zu migrieren. Dank der Auslagerung der Ressourcen, wie zum Beispiel Bilder, Format- und Schriftartdefinitionen in eigene XML-Dokumente sind die MLs wesentlich besser bearbeitbar geworden. Eine gute Ressource für weitere Informationen hierzu ist das Blog von Brian Jones, dem Lead Program Manager für Office (http://blogs.msdn.com/brian_jones).
Bestätigte Echtheit
Ein gerade bei Behörden, Banken oder in Anwaltskanzleien auftretendes Problem ist die Originalität von Dokumenten. Bei klassischen Papierdokumenten wurde mittels Unterschrift die Echtheit bestätigt. Open-XML-Format ermöglicht dies über digitale Signaturen. Viel besser als eine Unterschrift auf einem bedruckten Papier gewährleisten digitale Signaturen, dass ein Dokument seit der Signatur nicht mehr verändert wurde. Dank der offenen Struktur von XPS gehört auch das Problem der sich von Version zu Version ändernden Dokumentformate der Vergangenheit an. Für ältere Officeversionen bis hin zu Office 97 wird es entsprechende Zusatzmodule geben, die es ermöglichen, die neuen Dokumentformate zu verarbeiten. Für andere Softwareprodukte besteht die Möglichkeit über den Microsoft-XPS-Document-Writer-Druckertreiber alte Dokumente in das XPS-Format zu drucken und somit in den Arbeitsprozess einzubinden. XPS bietet zudem bessere und originalgetreue Ausdrucke an, was besonders bei Dokumenten, die mit Vektordaten, wie Immobilienplänen oder Ähnlichem verbunden sind, Vorteile bringt.
Nutzen liegt auf der Hand
Die Möglichkeiten Dokumentprozesse zu automatisieren und damit die Effektivität und Produktivität zu steigern sind so gross wie noch nie. Sicherheitsaspekte sind von vornherein bedacht worden, was dieses Dateiformat zum sichersten der Industrie macht. Microsofts-XML-Formate sind endlich erwachsen geworden.
Peter Koen