Office Open XML (ISO/IEC 29500) bezeichnet eine Reihe von auf XML basierenden Dateiformaten für Büroanwendungspakete, das den Daten- und Dateienaustausch zwischen Büroanwendungspaketen ermöglichen soll.
Office Open XML | |
---|---|
Dateiendung: | keine |
Fehler bei Vorlage * Parametername unbekannt (Vorlage:Infobox Dateiformat): "containerfor; extension; screenshot; standard; owner; genre; extendedfrom; extendedto; name; creatorcode; mime; containedby" |
Es wurde von Microsoft der Ecma International zur Standardisierung vorgelegt. Die Standardisierung von Office Open XML erfolgte am 7. Dezember 2006 als Ecma-Standard Ecma 376. Die ISO-Standardisierung wurde im März 2008 erteilt.[2]
Vorgeschichte
Durch die große Verbreitung von Microsoft Office haben sich die dazugehörigen Dateiformate (DOC, XLS, PPT, etc.) als ein De-facto-Standard für den Dokumentenaustausch etabliert.
Der Aufbau dieser Office-Formate war nicht offen dokumentiert, sondern musste bei Microsoft lizenziert werden. Da die Kosten und vor allem die Lizenzbedingungen nicht für alle Anbieter akzeptabel sind, waren manche Konkurrenten (speziell OpenSource-Projekte) gezwungen, den Aufbau der Dateiformate durch Reverse Engineering herauszufinden. Aufgrund der dem Reverse Engineering anhaftenden Probleme und dem Umstand, dass die Dateiformate eng mit der inneren Arbeitsweise der Microsoft Office-Anwendungen verknüpft sind, kann es zu fehlerhafter Erzeugung und Darstellung der Dateiinhalte durch Konkurrenz-Anwendungen kommen. Mittlerweile hat Microsoft die Spezifikation der Formate veröffentlicht.[3]
Um das automatisierte Erstellen und Verarbeiten von Microsoft Office-Tabellenkalkulationsdokumenten zu vereinfachen, wurde mit Microsoft Excel 2002 ein XML-basiertes Dateiformat eingeführt[4] (XML Spreadsheet[5]), das allerdings nur einen Teil der Excel-Funktionalität abspeichern kann.
Mit Microsoft Office 2003 wurde die XML-Unterstützung ausgeweitet und neue XML-basierte Dateiformate eingeführt, vor allem in Microsoft Word.[6]
Für Microsoft Office 2007 wurden die XML-basierten Dateiformate überarbeitet und zum neuen Standarddateiformat bestimmt. Dieses Dateiformat bildet die Basis von Office Open XML.
Das ebenfalls auf XML basierende OASIS Open Document Format for Office Applications (ODF) wird von Microsoft abgelehnt, da es unter anderem zu sehr auf dem Dateiformat – und damit der Arbeitsweise und dem Funktionsumfang – von OpenOffice.org basiere und nicht geeignet sei, alle bereits existierenden Microsoft Office-Dokumente abzubilden.[7]
Verfechter von ODF halten dem entgegen, dass ODF durch proprietäre, inkompatible Erweiterungen alle Eigenschaften von Microsoft-Office-Dokumenten abbilden könne.[8]
Standardisierung
Seit einiger Zeit wird – vor allem von Regierungen (beispielsweise des US Bundesstaates Massachusetts) oder der EU – gefordert, dass zukünftig nur noch offen dokumentierte, herstellerunabhängige, standardisierte Dateiformate benutzt werden sollen, um Lock-in-Effekte zu vermeiden und um die Interoperabilität und den langfristigen Zugriff auf Dateiinhalte sicherzustellen. Aufgrund dieser Forderungen hat Microsoft das Microsoft Office 2007-Dateiformat der Ecma International zur Standardisierung vorgelegt. Die Standardisierung erfolgt dort im Rahmen des technischen Komitees 45 (TC45).
Am Standardisierungsprozess sind Apple, Barclays Capital, BP, die British Library, Essilor, Intel, die The United States Library of Congress, Microsoft, NextPage, Novell, Statoil ASA und Toshiba beteiligt.[9]
Office Open XML wurde am 7. Dezember 2006 von der Ecma International-Hauptversammlung als Ecma Standard 376 genehmigt.[10]
Im Dezember 2006 wurde Office Open XML bei der ISO als ISO/IEC CD 29500 zur Standardisierung im Schnellverfahren eingereicht. In einer Abstimmung im September 2007 konnte es nicht die nötige Zustimmung erreichen, um als ISO-Standard akzeptiert zu werden.[11].
Nach einer im Februar 2008 anberaumten Sitzung - bei der die Antworten der Ecma International zu den zahlreichen Kommentaren die bei der Stimmabgabe im September 2007 eingereicht worden sind, bewertet wurden - bestand für stimmberechtige ISO-Mitglieder bis Ende März 2008 die Möglichkeit ihre ursprünglich abgegebene Stimme zu ändern.
Der FFII, der auch die <NO>OOXML-Kampagne betreibt, verbreitete, dass es zu Unregelmäßigkeiten beim Standardisierungsprozeß gekommen sei [12] und warf Microsoft vor, die Standardisierungsgremien diverser Länder mit Strohmännern aufzufüllen.[13].
Wie ISO am 2. April 2008 bekannt gab, hat der Standardvorschlag die notwendige Stimmenmehrheit erhalten und wurde als ISO-Standard IS 29500 akzeptiert.
Lizenzierung
Wie alle Ecma International-Standards wird auch der Office Open XML-Standard frei verfügbar und kopierbar sein [14].
In einem covenant not to sue hat Microsoft erklärt, dass es unwiderruflich auf eine Durchsetzung aller für eine konforme Umsetzung der Office 2003 XML Reference Schemas-Spezifikation notwendigen Patente gegenüber Programmteilen, die diese Spezifikation implementieren, verzichtet [15]. Die Rechtsanwaltskanzlei Baker & McKenzie hat im Auftrag von Microsoft unter anderem den Inhalt und die Gültigkeit dieses covenants überprüft und in einer Studie [16] festgestellt, dass keine Lizenz benötigt wird, um Office Open XML einsetzen zu können [17].
Des Weiteren hat Microsoft die Office 2003 XML Reference Schemas- und die Office Open XML 1.0 – Ecma-376-Spezifikation in die Microsoft Open Specification Promise (OSP) aufgenommen. In der OSP verspricht Microsoft auf die Durchsetzung von Patenten gegenüber Programmteilen, die die angeführten Spezifikationen implementieren, zu verzichten. Die OSP bezieht sich allerdings nur auf von Microsoft explizit angeführten Versionen der jeweiligen Spezifikationen.[18] Außerdem gilt dies nicht für eventuelle Patentansprüche Dritter.
Aufbau
Office Open XML besteht aus einer Spezifikation für ein Containerformat, den Open Packaging Conventions, und einer Reihe von XML-basierten Auszeichnungssprachen für die einzelnen Komponenten eines Büroanwendungspaketes. Office Open XML-Dokumente werden in Packages gespeichert, die den Open Packaging Conventions entsprechen. Ein Package ist eine ZIP-Datei, die alle Bestandteile (Parts und Items) eines Dokuments enthält.
Parts sind die einzelnen Bestandteile (Bausteine) des Inhalts des Dokuments (Text, Graphiken, Bilder, etc.), während Items beschreibende Metadaten sind, die festlegen wie die einzelnen Bestandteile des Dokuments zusammengestellt und dargestellt werden sollen. Items können in Relationship items und Content-Type items unterteilt werden. Relationship items beschreiben wie die einzelnen Parts zusammenhängen, d.h. wie die einzelnen Bestandteile des Dokuments zusammengefügt werden müssen, während Content-Type items den Content-Type der einzelnen Bestandteile festlegen, d.h. wie die einzelnen Bestandteile dargestellt werden müssen. Jedes Office Open XML-Dokument besteht aus einem main part (Hauptbestandteil) und evt. weiteren Bestandteilen, die vom main part über ein relationship item referenziert werden. Der Aufbau, Name und Pfad (innerhalb der ZIP-Datei) des main parts hängt vom Typ des Office Open XML-Dokuments (Textverarbeitungsdokument, Tabellenkalkulationsdokument, etc.) ab.
Die Auszeichnungssprachen sind
- WordprocessingML für Textverarbeitungsdokumente
- SpreadsheetML für Tabellenkalkulationsdokumente
- PresentationML für Präsentationsdokumente
- DrawingML für Zeichnungsdokumente
- VML für Zeichnungsobjekte innerhalb anderer Dokumente)
und eine Reihe von Hilfs-Auszeichnungssprachen für Custom XML Data Properties (zum Speichern von beliebigen XML in einem Package), Dateieigenschaften, mathematische Formeln und bibliographischen Hinweisen
Ein minimales Office Open XML- Textverarbeitungsdokument enthält im Wurzelverzeichnis der ZIP-Datei eine XML-Datei namens /[Content_Types].xml, sowie drei Verzeichnisse /_rels, /docProps und ein Verzeichnis mit den eigentlichen Dokumentdaten.
- [Content_Types].xml-Datei
- Diese Datei enthält eine Beschreibung des Inhaltes der ZIP-Datei
- _rels-Verzeichnis
- In den _rels-Verzeichnissen werden die Abhängigkeiten zwischen den einzelnen Parts gespeichert und zwar je Part in einer eigenen Datei mit der Erweiterung .rels. In einem Textverarbeitungsdokument mit Text und Bildern, ist der Text zum Beispiel in der Datei /word/document.xml gespeichert und in der Datei /word/_rels/document.xml.rels befinden sich dann die Verweise auf die eingebetteten Bilder. Es gibt immer eine Datei /_rels/.rels, in der die package relationships gespeichert sind und der main part festlegt wird. Diese Datei ist die erste Datei, die beim Öffnen gelesen wird.
- docProps-Verzeichnis
- Das /docProps-Verzeichnis enthält in den Dateien core.xml, app.xml und custom.xml diverse Dokumenteigenschaften (Metadaten), wie Autor, Speicherdatum, etc.
- Dokumentdaten-Verzeichnis
- Das Dokumentdaten-Verzeichnis (zum Beispiel /word) enthält die eigentlichen Dokumentdaten. Im Falle eines Textverarbeitungsdokuments zum Beispiel eine Datei document.xml, die gemäß WordprocessingML aufgebaut ist.
Praktische Umsetzung
Microsoft Office 2007 für Microsoft Windows und Microsoft Office 2008 für Mac OS X[19] unterstützen Open Office XML bisher weitgehend, jedoch nicht vollständig[20]. Für ältere Microsoft Office-Versionen (ab Version 2000) bietet Microsoft einen „Compatibility Pack“ [21], der es ermöglicht, das Format zu lesen und zu schreiben.
Weitere Office-Pakete mit Office-Open-XML-Unterstützung sind Corel WordPerfect Office ab Version X4 (nur Import) [22] und der OpenOffice.org-Fork NeoOffice für Mac OS X. Novell bietet mit OpenXML Translator ein Office Open XML-Plugin für die Novell-Version von OpenOffice.org an. Die Alpha-Version von OpenOffice.org 3.0 enthält Unterstützung für den Import und Export von Office Open XML-Dateien.[23]
Die Tabellenkalkulation Gnumeric[24] und die Textverarbeitung AbiWord[25] bieten Import- und (außer Abiword) auch Export-Funktionen.
Apple unterstützt Office Open XML-Anhänge in der E-Mail-Applikation des iPhones [26] und seinem Office-Produkt iWork ab Version ’08.
Kritik
Office Open XML wird von zahlreichen Seiten kritisiert, unter anderem von den OpenDocument-Befürwortern IBM und Sun Microsystems und Mitgliedern der Open Source-Bewegung, die im GrokDoc-Wiki eine Liste von Einwänden gegen die Aufnahme von Office Open XML als ISO-Standard veröffentlicht haben.[27]
Kritisiert wird hierbei der Umfang der Spezifikation mit über 6.000 Seiten. Kritiker gehen davon aus, dass es für andere Softwarehersteller praktisch unmöglich sei, das Dateiformat korrekt und vollständig in ihren Anwendungen zu implementieren.[28][29][30]
Des weiteren verwendet Office Open XML keine W3C-Empfehlungen wie MathML für die Formeldarstellung oder SVG für die Darstellung von Vektorgrafiken, sondern speichert Office Open XML diese Elemente in von Microsoft entwickelten Formaten. Kritiker gehen davon aus, dass nur Microsoft die Spezifikation im vollen Umfang umsetzen könne, während Konkurrenzprodukte nur eine Teilmenge implementieren können[28].
Zudem soll die Norm einigen ISO-Normen widersprechen, beispielsweise der Norm für die Darstellung von Datum und Uhrzeit oder der Norm für die Abkürzung von Bezeichnungen von Sprachen[31]. Des Weiteren wird angeführt, dass Office Open XML als ganzes einer bestehenden ISO-Norm widersprechen könnte, nämlich der Norm ISO/IEC 26300:2006 (OpenDocument)[32].
Weblinks
Einzelnachweise
- ↑ http://www.iana.org/assignments/media-types/application/
- ↑ http://www.iso.org/iso/pressrelease.htm?refid=Ref1123
- ↑ Microsoft Office Binary: [1]
- ↑ Microsoft Knowledge Base: INFO: Microsoft Excel 2002 and XML (englisch)
- ↑ Microsoft Developer Network: XML Spreadsheet Reference (englisch)
- ↑ Microsoft: Bringing the XML Vision to the Desktop with Office 2003 (englisch)
- ↑ Microsoft: Ecma International Standardization of OpenXML File Formats Frequently Asked Questions (englisch)
- ↑ Gary Edwards: Kommentar zu: „An Antic Disposition: Follow the Leader“ (englisch)
- ↑ Ecma International: Status Report: TC45 – Ecma Office Open XML File Formats Standard, 17 August 2006, Redmond, Washington, USA (englisch)
- ↑ Ecma International: Ecma International approves Office Open XML standard, Geneva, 7 Dezember 2006 (englisch)
- ↑ Pressemitteilung der ISO vom 4. September 2007
- ↑ http://www.heise.de/newsticker/Gegner-von-Microsofts-OpenXML-fuer-Abbruch-der-ISO-Standardisierung--/meldung/95553
- ↑ http://www.heise.de/newsticker/Microsoft-erhaelt-Negativ-Auszeichnung-fuer-OpenXML-Kampagne--/meldung/96868
- ↑ Ecma International: What is Ecma International (englisch)
- ↑ Microsoft: Microsoft Covenant Regarding Office 2003 XML Reference Schemas
- ↑ Baker & McKenzie: Standardisation and Licensing of Microsoft’s Office Open XML Reference Schema (englisch)
- ↑ Brian Jones: No license needed to use the Office Open XML formats (englisch)
- ↑ Microsoft: Microsoft Open Specification Promise
- ↑ Dieter Brors, Office 2008, in: c't special 2/2008, Mac, Seiten 62ff., 63.
- ↑ Griffin Brown: OOXML and Office 2007 Conformance: a Smoke Test (englisch)
- ↑ Microsoft Download Center: Microsoft Office Compatibility Pack für Dateiformate von Word, Excel und PowerPoint 2007
- ↑ Corel: Corel WordPerfect Office X4 Standard Edition - Compatible (englisch)
- ↑ OpenOffice.orgNinja: OpenOffice.org 3.0's new features, an early look (english)
- ↑ GNOME: GNOME Office / Gnumeric - Gnumeric Stable 1.8 Series (englisch)
- ↑ Abisource: AbiWord v2.6.0 Release Notes (englisch)
- ↑ iPhone User’s Guide (english)
- ↑ Einwände gegen die Standardisierung im GrocDoc-Wiki
- ↑ a b Bob Sutor: Is Open XML a one way specification for most people?
- ↑ fsfe: Is OpenXML now a standard?
- ↑ http://www.golem.de/0804/58723.html Golem: Office Open XML ist ISO-Norm (Update)
- ↑ grokdoc: Ecma 376 contradicts numerous international standards
- ↑ GrokDoc: ISO/IEC 26300:2006 (OpenDocument Format for Office Applications)