Mit XML will Microsoft Office-Dokumente öffnen

16.05.2007
Von Wolfgang Sommergut 
Zwar schuf Microsoft mit Office 2007 ein neues, auf XML gestütztes Format, doch konform zu Standards wird die Softwaresuite für Bürokommunikation dadurch nicht.

Der Erfolg des Web und offener Datenformate wie HTML blieb nicht ohne Folgen für Microsoft. In der Version 2000 führten die Redmonder als Alternative zu den Binärdateien ein Format namens "Webseite" ein, das Dokumente in einer Mischung aus HTML und XML-Inseln speicherte. Sie ließen sich mit dem Internet Explorer weitgehend so darstellen wie in der Ursprungsapplikation und mit Hilfe von Active X Controls auch teilweise im Web-Client bearbeiten. Die Kombination aus diversen Web-Standards und proprietären Elementen war selbst jedoch kein offener Standard und wurde von kaum einem Dritthersteller unterstützt.

XML-Ära eingeläutet

Office Open XML geht auf das Dateiformat von Office 2003 zurück, das anwendungsspezifische Eigenheiten codierte und eine etablierte Standards ignorierte.
Office Open XML geht auf das Dateiformat von Office 2003 zurück, das anwendungsspezifische Eigenheiten codierte und eine etablierte Standards ignorierte.

Erst Office 2003 läutete die XML-Ära ein, nachdem OpenOffice 1.0 bereits ein Jahr zuvor standardmäßig seine Daten in einem Format auf Basis der Extensible Markup Language gespeichert hatte. Microsoft bot zudem in den Professional- und Enterprise-Versionen die Möglichkeit, Informationen auf Basis anwenderdefinierter XML-Schemata abzulegen. Als Alternative zu den binären Formaten entwickelten die Redmonder Ingenieure eigene XML-Strukturen, die sämtliche Layout-Informationen der Office-Programme aufbewahren konnten. Die später in WordprocessingML (Textverarbeitungsdokumente), SpreadsheetML (Tabellenkalkulationsdokumente) und PresentationML (Präsentationsdokumente) umbenannten Formate gerieten allerdings in die Kritik, weil sie sich für Formatierungsangaben, mathematische Formeln, Vektorgrafiken oder Metadaten an keine bestehenden Standards hielten, sondern proprietäre Sonderwege gingen.

In Office 2007 wertet Microsoft die XML-Formate nun weiter auf, indem sie die altgedienten Binärdateien als voreingestellte Speicheroption ersetzen. Nach dem Vorbild von OpenOffice teilten die Redmonder Entwickler die Informationen nun in mehrere XML-Dateien auf und fassten diese in einem ZIP-Archiv zusammen. Durch die Komprimierung der XML-Dokumente fallen diese in der Regel kleiner aus als die bisherigen Binärformate.

XML für die Prozessintegration

Zu den wesentlichen Vorteilen der neuen Dateiformate gehört zunächst, dass sie Beschränkungen der alten Binärstrukturen aufheben, über die Anwender seit Jahren klagten. Eine Verbesserung ist etwa die größere Robustheit von Klartextformaten, aus denen selbst in einem fehlerhaften Zustand die Benutzerdaten zumeist noch extrahiert werden können. Beschädigte Word- oder Excel-Dateien alter Prägung nahmen ihre Inhalte hingegen oft mit ins Grab, wenn die internen Verwaltungsdaten durcheinandergerieten.

Die Verwendung einer gängigen Syntax wie jener von XML eröffnet der Office-Welt ein riesiges Angebot an Standardwerkzeugen. Das betrifft etwa Tools zur Gültigkeitsprüfung von Dokumenten (validierende Parser) genauso wie solche zur Umwandlung in andere Formate (etwa XSLT-Prozessoren) oder für die Signierung und Verschlüsselung der Dateien.

Sobald eine Software mit der Struktur von Office-XML-Dateien umgehen kann, ist sie in der Lage, sie ebenso zu lesen und zu verändern wie Word, Excel oder Powerpoint. Microsoft bewirbt die XML-Fähigkeiten seiner Desktop-Schwergewichte mit beispielhaften Nutzungsszenarien, in denen etwa ein Word-Dokument im Rahmen eines Workflows automatisch Informationen aus einer Datenbank übernimmt und in ein eingebettetes Formular einfügt. Das Redmonder Marketing spricht in diesem Zusammenhang von "Smart Documents".

Office-Dokumente in Drittanwendungen einbinden

Grundsätzlich waren derartige Anwendungen auch schon in Zeiten älterer Office-Versionen und mit Binärdateien möglich. Allerdings beschränkten sich die dynamischen Veränderungen von Texten oder Tabellen auf die jeweiligen Applikationen, die mit Hilfe von Makros und ODBC-Treibern die geladenen Daten veränderten. Der Anspruch von Office 2007 geht in dieser Hinsicht wesentlich weiter: Dokumente sollen sich nicht nur von den Word, Excel & Co. verarbeiten lassen, sondern von beliebigen Drittanwendungen. Dazu zählen vor allem Server-Applikationen, die Dokumente oder Kalkulationstabellen programmatisch erzeugen und verändern können. Microsoft positioniert Office deshalb als Rich-Client-Alternative zum Browser, weil ein Web-Server statt dynamisch erzeugter HTML-Seiten etwa auch per Skript generierte Word-Dateien an den Client schicken könnte. Der Hersteller bietet im Rahmen der "Visual Studio Tools for Office" entsprechende Bibliotheken an.

Office-Dateien bieten sich daher nach der Vorstellung von Microsoft als universelles Format an, in dem Informationen durch Workflows und Prozesse geschleust werden. Eine wesentliche Rolle spielt dabei auch der Biztalk-Server, der eingehende XML-Daten abhängig von definierbaren Bedingungen an externe Anwendungen übergeben kann und dabei den gesamten Verarbeitungsvorgang orchestriert. Allerdings spielen bei solchen Business-Daten traditionelle Office-Dokumente mit ihren zahlreichen Formatierungsanweisungen eine untergeordnete Rolle, dort dominieren entweder firmenspezifische XML-Schemata oder E-Business-Standards.

Wolken am XML-Himmel

Microsoft konnte eine Reihe von Anwendern, besonders im öffentlichen Sektor, nicht von den angepriesenen Vorteilen der schönen neuen XML-Welt überzeugen. Das lag weniger daran, dass der XML-Ansatz die gemachten Versprechen technisch nicht einlösen könnte. Vielmehr stießen sich Kritiker an Microsofts Nutzung der Technologie, besonders an mangelnder Offenheit und fehlender Konformität mit etablierten Standards. Wenn der Zugang zu den anwendereigenen Daten schon nicht mehr durch technische Barrieren der Binärformate verstellt wird, dann sollten sich die XML-Dokumente nicht als rechtliche Fallen erweisen. Beispielsweise sah die ursprüngliche Lizenz für die Dateiformate vor, dass sie nicht mit Software bearbeitet werden dürfen, die der GNU Public Licence unterliegt. Das trifft etwa auf den Konkurrenten Openoffice zu. Der US-Bundesstaat Massachusetts setzte Microsoft mit der Entscheidung unter Druck, das Open Document Format (ODF) als verbindlichen Standard für alle Office-Dokumente einzuführen. Dieses ging aus "OpenOffice XML" hervor und wurde beim Konsortium Oasis von einer Reihe von IT-Firmen entwickelt. Mittlerweile gehören der ODF Alliance Dutzende Unternehmen an, das Dateiformat selbst wurde im Mai 2006 als ISO-Standard verabschiedet.

Microsoft konterte damit, dass es die neuen XML-Formate unter der Bezeichnung "Office Open XML" (OOXML) bei der ECMA International zur Standardisierung einreichte, wo sie als ECMA-376 im Dezember 2006 verabschiedet wurden. In weiterer Folge sollten die Redmonder Dateiformate über die ISO als internationale Technologiestandards etabliert werden. Microsoft machte sich für ein Schnellverfahren durch die Standardisierungsorganisation stark, so dass OOXML innerhalb von fünf Monaten am Ziel sein könnte. Allerdings sprachen sich die Vertreter einiger Länder gegen die rasche Verabschiedung der Office-Formate aus. Microsoft witterte dahinter in einem offenen Brief eine Verschwörung der IBM. Anfang April schafften es die Redmonder, gegen den Widerstand von 20 Ländern das Schnellverfahren von der ISO genehmigt zu bekommen.

Vielfältige Einwände gegen OOXML

Die Kritik an der Etablierung von OOXML als Standard entzündet sich an einer Reihe von Punkten. So begründete Microsoft die Entscheidung für ein eigenes XML-Format damit, dass dieses alle Eigenschaften der alten Binärdateien abbilden müsste. ODF dagegen sei darauf ausgelegt, möglichst portabel zwischen verschiedenen Anwendungen zu sein und daher nicht in der Lage, alle Funktionen von MS Office darzustellen. Die Gegner von OOXML argumentieren nun damit, dass es nicht Aufgabe eines Standards für Office-Dokumente sein könne, exakt die Eigenheiten einer bestimmten Software zu berücksichtigen. Seine Aufgabe bestehe darin, damit Dokumente zwischen Textverarbeitungen, Tabellenkalkulationen oder Präsentationsgrafiken verschiedener Hersteller auszutauschen.

OOXML-Kritiker bringen außerdem vor, dass Microsofts Format gegen mehrere ISO-Standards verstoße. Das betrifft zum einen ODF, das bereits den Zweck eines herstellerübergreifenden Office-Formats erfülle und keinen konkurrierenden Vorschlag benötige. Daneben erhitzen einige eigenwillige Erfindungen aus Redmond die Gemüter. Dazu zählt etwa, dass die Spezifikation Anwendungen vorschreibt, vom gregorianischen Kalender abzuweichen, der die Grundlage für ISO 8601 bildet. Um mit einem Fehler einer alten Excel-Version kompatibel zu bleiben, schreibt OOXML und damit der ECMA-376-Standard vor, das Jahr 1900 als Schaltjahr zu behandeln. Darüber hinaus verwendet Microsoft ein proprietäres Datumsformat, eigene Codes für Landessprachen (anstelle von ISO 639), Windows Metafile statt ISO/IEC 8632 (Computer Graphics Metafile), das in Redmond erfundene DrawingML statt der W3C-Empfehlung SVG und ignoriert MathML zugunsten einer eigenen Notation für mathematische Formeln. Auf Kritik stößt zudem, dass sich Formatierungsangaben nicht an Standards wie CSS oder XSL orientieren, Microsoft eigene Codierungen für Farbwerte und Papiergrößen erfindet (statt der etablierten A4 oder Letter) sowie durch die ausgiebige Verwendung von Bitmasks den Einsatz von XSLT-Prozessoren limitiert.

Fazit

Der Umstieg von geschlossenen binären Datenstrukturen auf XML-Formate eröffnet eine Reihe neuer Möglichkeiten für die Verarbeitung von Office-Dokumenten durch externe Anwendungen. Microsoft selbst bietet Tools an, die den programmatischen Zugriff auf solche Dateien erlauben und beispielsweise die dynamische Erzeugung von Word-Dokumenten auf dem Server unterstützen. Das notorisch gestörte Verhältnis der Redmonder zu offenen Standards könnte indes einige der propagierten Vorzüge des XML-Formats konterkarieren: Die Verwendung einer Standardsyntax reicht nicht aus, wenn anstelle normierter Strukturen damit eigene Notationen und kryptische Codes transportiert werden. Sie erschweren den Zugang zu den Daten und behindern gängige XML-Tools. Das gilt nicht nur für die genannten Bitmasks, sondern auch für nicht dokumentiertes Verhalten von Office-Applikationen (beispielsweise Attribute der Art "Fußnotenformatierung wie Winword 8" oder "Zeilenumbrüche wie Winword 6"). Immerhin hat der Druck von Anwendern aus dem öffentlichen Sektor dazu geführt, dass Microsoft sein XML-Dateiformat als offenen Standard verabschieden lassen will. Trotz der vielfältigen Einschränkungen und proprietären Eigenheiten entkoppelt es die benutzereigenen Daten weitgehend von den Office-Applikationen. Die Ironie des mehr oder weniger offenen XML-Formats besteht aber darin, dass es auf absehbare Zeit die geschlossenen Binärdateien als Austauschformat nicht ablösen wird. Viele Anwendungen anderer Anbieter kommen nach jahrelangem Reverse Engineering gut damit zurecht – und wer noch ein altes MS Office im Haus hat, fährt mit .doc und .xls ebenfalls besser.

Office-Formate als Datengefängnisse

Seit ihren Anfängen nutzen Office-Anwendungen wie Textverarbeitungen, Tabellenkalkulationen oder Präsentationsgrafiken binäre Dateiformate, um ihre Informationen zu speichern. Der Aufbau der Speicherformate bildet dabei die von den Programmen intern genutzten Datenstrukturen getreu ab. In Zeiten von wenig leistungsfähiger PC-Hardware galt diese Technik als effizient, um Informationen aus Dateien zu laden oder dort zu hinterlegen. Aufgrund der engen Kopplung von Datenformaten und Anwendungen konnten Benutzer auf ihre eigenen Informationen kaum zugreifen, wenn sie nicht über die betreffende Software verfügten.

Office-Dateien erwiesen sich über Jahre auch deshalb als Informationsgefängnisse, weil Microsoft als Marktführer den Aufbau der von Office verwendeten binären Strukturen nie vollständig offenlegte. Konkurrenten, die Word- oder Excel-Dokumente verarbeiten wollten, kamen in der Regel nicht umhin, die Dateiformate durch Reverse Engineering zu erschließen. Microsoft verschärfte die Situation noch dadurch, dass sich Speicherformate mit neuen Programmversionen immer wieder änderten. Der Hauptgrund bestand in der engen Kopplung zwischen Software und Daten, so dass sich neue Features in den Anwendungen auch in der binären Serialisierung niederschlagen mussten. Die daraus resultierenden Kompatibilitätsprobleme erhöhten den Update-Druck auf die Anwender - ein von Microsoft durchaus erwünschter Nebeneffekt.