| Office Open XML | |
|---|---|
| Dateiendung: | .docx, .xlsx, .pptx |
| MIME-Type: | application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.openxmlformats-officedocument.presentationml.presentation[1] |
| Entwickelt von: | Microsoft, Ecma International[2] |
| Erstveröffentlichung: | 2006 |
| Art: | Office-Anwendungen |
| Erweitert von: | ZIP,XML,DOC,XLS,PPT |
| Standard(s): | ECMA-376, ISO/IEC 29500-1:2008,ISO/IEC 29500-2:2008,ISO/IEC 29500-3:2008,ISO/IEC 29500-4:2008 |
| Das Microsoft-Office-Open-XML-Format | |
Office Open XML, auch bekannt alsOOXML oderMicrosoft Open XML (MOX)[3] (ECMA-376Office Open XML File Formats bzw.ISO/IEC 29500Information technology – Office Open XML formats), beschreibt vonMicrosoft entwickelteDateiformate zur Speicherung vonBürodokumenten aufXML-Basis, die den Daten- beziehungsweise Dateiaustausch zwischen verschiedenen Büroanwendungspaketen ermöglichen sollen.[4][5]
Von OOXML wurden insgesamt drei unterschiedliche Versionen spezifiziert und standardisiert, die untereinander nicht kompatibel sind: Version „ECMA-376“ und „ISO/IEC 29500:2008“ (in zwei Versionen, „Transitional“ sowie „Strict“).[6][7]
Die erste Formatspezifikation wurde derEcma International vonMicrosoft zur Standardisierung vorgelegt. Diese erfolgte am 7. Dezember 2006 als Ecma-StandardECMA-376. Die Erstveröffentlichung alsNormISO/IEC 29500 erfolgte am 19. November 2008 in geänderter Version.[8]
Zuvor wurde jedoch bereits die ebenfalls XML-basierte, aber herstellerunabhängige undquelloffene SpezifikationOpenDocument als Standard für dieInteroperabilität von Bürodokumenten bzw. -Anwendungen durch dieISO und dieIEC angenommen,[9] und 2006 als internationale Norm ISO/IEC 26300 veröffentlicht.[10] Im Gegensatz zumMicrosoft Open XML-Standard standen beimOASISOpenDocument-Standard laut Microsoft jedoch nicht die Anforderungen, Randbedingungen und Erfahrungen der Microsoft-Kunden im Vordergrund. MOX/OOXML soll genauer auf die „speziellen“ Arbeitsweisen von Microsoft-Office-Anwendungen zugeschnitten sein.[11]
Durch die große Verbreitung vonMicrosoft Office hatten sich die dazugehörigen binären undproprietären Dateiformate vonMicrosoft Word,Microsoft Excel undMicrosoft PowerPoint in vielen Bereichen als einDe-facto-Standard für den Dokumentenaustausch etabliert.
Der Aufbau dieser Office-Formate war jedoch 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 (speziellOpen-Source-Projekte) gezwungen, den Aufbau der Dateiformate durchReverse-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, konnte es zu fehlerhafter Erzeugung und Darstellung von Dateiinhalten durch entsprechend entwickelte Konkurrenzanwendungen kommen. Mittlerweile hat Microsoft die Spezifikation der Formate veröffentlicht.[12]
Um das automatisierte Erstellen und Verarbeiten von Microsoft-Office-Tabellenkalkulationsdokumenten zu vereinfachen, wurde mit Microsoft Excel 2002 einXML-basiertes Dateiformat eingeführt[13] (XML Spreadsheet[14]), das allerdings nur einen Teil der Excel-Funktionalität abspeichern kann.
Mit Microsoft Office 2003 wurde die XML-Unterstützung ausgeweitet, und es wurden neue XML-basierte Dateiformate eingeführt, vor allem in Microsoft Word.[15]
Für Microsoft Office 2007 wurden die XML-basierten Dateiformate überarbeitet und zum neuen Standarddateiformat bestimmt. Dieses Dateiformat bildet die Basis vonOffice Open XML.
Der ebenfalls aufXML basierende und 2006 bereits international genormte und quelloffene Standard für Dateiformate von BürodokumentenISO/IEC 26300 (OpenDocument 1.0, abgekürzt ODF), welcher ursprünglich vonSun Microsystems entwickelt wurde und durch die herstellerunabhängige OrganisationOASIS nach wie vor gepflegt und weiterentwickelt wird, wird von Microsoft zwischenzeitlich zwar in allen Office-Anwendungen direkt unterstützt, als originäres Standard-Dateiformat für Microsoft Office allerdings abgelehnt. Unter anderem, da es angeblich noch zu sehr auf dem Dateiformat – und damit der Arbeitsweise und dem Funktionsumfang – vonOpenOffice.org basiere und nicht geeignet sei, alle bereits existierenden Microsoft-Office-Dokumente abzubilden.[16]
Verfechter von ODF halten dem jedoch entgegen, dass ODF durchproprietäre Erweiterungen selbstverständlich alle inkompatiblen Eigenschaften von Microsoft-Office-Dokumenten direkt abbilden könne.[17]
Seit einiger Zeit wird – vor allem von Regierungen (beispielsweise des US-BundesstaatesMassachusetts) oder derEU – gefordert, dass zukünftig nur noch offen dokumentierte, herstellerunabhängige, standardisierte Dateiformate benutzt werden sollen, umLock-in-Effekte zu vermeiden und um dieInteroperabilität und den langfristigen Zugriff auf Dateiinhalte sicherzustellen. Aufgrund dieser Forderungen hat Microsoft das Microsoft-Office-2007-Dateiformat der Ecma International zur Normung vorgelegt. DieNormung erfolgt dort im Rahmen des technischen Komitees 45 (TC45).
Am Normungsprozess sindApple,Barclays Capital,BP, dieBritish Library,Essilor,Intel, dieThe United States Library of Congress,Microsoft,NextPage,Novell,Statoil ASA undToshiba beteiligt.[18]
Office Open XML wurde am 7. Dezember 2006 von der Ecma-International-Hauptversammlung als Ecma-Standard 376 genehmigt.[19]
Im Dezember 2006 wurde Office Open XML bei derISO als ISO/IEC CD 29500 zur Normung im Schnellverfahren (JTC 1 Fast Track Process[20]) eingereicht. In einer Abstimmung im September 2007 konnte es nicht die nötige Zustimmung erreichen, um als ISO-Norm akzeptiert zu werden.[21]
Nach einer im Februar 2008 anberaumten Sitzung – bei der den zahlreichen Kommentaren begegnet wurde, die bei der Stimmabgabe im September 2007 eingereicht worden sind – bestand für die stimmberechtigten ISO-Mitglieder bis Ende März 2008 die Möglichkeit, ihre ursprünglich abgegebene Stimme zu ändern. Im Zuge der nationalen Abstimmungen wurde immer wieder über Unregelmäßigkeiten berichtet.[22] DerFFII warf Microsoft vor, so die Normungsgremien diverser Länder mitStrohmännern aufzufüllen.[23] In Norwegen soll das nationale Normungsgremium eine eindeutige Ablehnung von 21 Nein- und 2 Ja-Stimmen durch seine Mitglieder ignoriert haben.[24]
In einemoffenen Brief haben ISO/IEC-SC-34-Mitglieder während des Normungsverfahrens die gegen sie erhobenen persönlichen Attacken missbilligt.[25]
Wie die ISO am 2. April 2008 bekanntgab, hat der Normentwurf die notwendige Stimmenmehrheit erhalten und wurde zunächst als ISO-Normentwurf ISO/IEC DIS 29500 akzeptiert. Die nationalen Normungsorganisationen von Südafrika (SABS), Brasilien (ABNT), Indien und Venezuela haben jedoch innerhalb der vorgesehenen Frist Einsprüche gegen die Veröffentlichung von ISO/IEC 29500 als Norm erhoben. Eine Entscheidung der zuständigen Gremien über die Einsprüche wurde für Ende Juni 2008 angekündigt; bis dahin wurde die Normung bzw. Veröffentlichung suspendiert.[26] Am 15. August 2008 gab die ISO bekannt, dass die Einsprüche der nationalen Normungsorganisationen zurückgewiesen wurden und die Norm nun zur Veröffentlichung freigegeben ist.[27] Eine vollständige Implementierung der Norm existiert bisher noch nicht, auch Microsoft Office 2007 erfüllt nicht alle Anforderungen.[28]Die Veröffentlichung als NormISO/IEC 29500 erfolgte am 19. November 2008 in vier Teilen:[8] Mittlerweile gibt es eine Neuausgabe mit Veröffentlichung im September 2012.[29]
Die vier Dokumente können alsöffentlich verfügbare Normen kostenlos bei ISO heruntergeladen werden.[30]
Wie alle Ecma-International-Standards ist auch Office Open XML frei verfügbar und kopierbar.[31]
In einemcovenant not to sue hat Microsoft erklärt, dass es unwiderruflich auf eine Durchsetzung aller für eine konforme Umsetzung derOffice-2003-XML-Reference-Schemas-Spezifikation notwendigenPatente gegenüber Programmteilen, die diese Spezifikation implementieren, verzichtet.[32] Die RechtsanwaltskanzleiBaker & McKenzie hat im Auftrag von Microsoft unter anderem den Inhalt und die Gültigkeit diesescovenants überprüft und in einer Studie[33] festgestellt, dass keine Lizenz benötigt wird, um Office Open XML einsetzen zu können.
Zudem hat Microsoft dieOffice-2003-XML-Reference-Schemas- und dieOffice-Open-XML-1.0–ECMA-376-Spezifikation in dieMicrosoft Open Specification Promise (OSP) aufgenommen. In der OSP verspricht Microsoft, auf die Durchsetzung vonPatenten gegenüber Programmteilen, die die angeführten Spezifikationen implementieren, zu verzichten. Die OSP bezieht sich allerdings nur auf von Microsoft explizit angeführte Versionen der jeweiligen Spezifikationen.[34] Außerdem gilt das nicht für eventuelle Patentansprüche Dritter.
LautSoftware Freedom Law Center würde sich das Versprechen jedoch auf neue Versionen nur ausdehnen, wenn sich Microsoft an Standardisierungs-Aktivitäten beteiligt. Durch ein Beenden der Standardisierungs-Aktivitäten seitens Microsoft wäre das Versprechen also hinfällig.[35]
Office Open XML besteht aus einer Spezifikation für einContainerformat, denOpen Packaging Conventions, und einer Reihe von XML-basiertenAuszeichnungssprachen für die einzelnen Komponenten eines Büroanwendungspaketes. Office-Open-XML-Dokumente werden in Packages gespeichert, die denOpen Packaging Conventions entsprechen. Ein Package ist eineZIP-Datei, die alle Bestandteile (Parts undItems) eines Dokuments enthält.
Parts sind die einzelnen Bestandteile (Bausteine) des Inhalts des Dokuments (Text, Grafiken, Bilder etc.), währendItems beschreibendeMetadaten sind, die festlegen, wie die einzelnen Bestandteile des Dokuments zusammengestellt und dargestellt werden sollen.Items können inRelationship items undContent-Type items unterteilt werden.Relationship items beschreiben, wie die einzelnenParts zusammenhängen, d. h., wie die einzelnen Bestandteile des Dokuments zusammengefügt werden müssen, währendContent-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 einemmain part (Hauptbestandteil) und eventuell aus weiteren Bestandteilen, die vommain part über einrelationship item referenziert werden. Der Aufbau, Name und Pfad (innerhalb der ZIP-Datei) desmain parts hängt vom Typ des Office-Open-XML-Dokuments (Textverarbeitungsdokument, Tabellenkalkulationsdokument etc.) ab.
Die Auszeichnungssprachen sind
und eine Reihe von Hilfsauszeichnungssprachen fürCustom 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 imWurzelverzeichnis der ZIP-Datei eine XML-Datei namens/[Content_Types].xml sowie drei Verzeichnisse/_rels,/docProps und ein Verzeichnis mit den eigentlichen Dokumentdaten.

Office Open XML verwendet die XML-basierte Auszeichnungssprache Office MathML (OMML) zur Beschreibung mathematischer Formeln.
Das folgende Office-MathML-Beispiel beschreibt denBruch:
<m:oMathPara><m:oMath><m:f><m:num><m:r><m:t>π</m:t></m:r></m:num><m:den><m:r><m:t>2</m:t></m:r></m:den></m:f></m:oMath></m:oMathPara>
Ein Metadatenbeispiel (docProps/core.xml) nach demDublin-Core-Standard:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><cp:corePropertiesxmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"xmlns:dc="http://purl.org/dc/elements/1.1/"xmlns:dcterms="http://purl.org/dc/terms/"xmlns:dcmitype="http://purl.org/dc/dcmitype/"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><dc:title>OfficeOpenXML</dc:title><dc:subject>AufbaudesDateiformats</dc:subject><dc:creator>Wikipedia</dc:creator><cp:keywords>OfficeOpenXML,Metadaten,DublinCore</cp:keywords><dc:description>OfficeOpenXMLverwendetISO15836:2003</dc:description><cp:lastModifiedBy>Wikipedia</cp:lastModifiedBy><cp:revision>1</cp:revision><dcterms:createdxsi:type="dcterms:W3CDTF">2008-06-19T20:00:00Z</dcterms:created><dcterms:modifiedxsi:type="dcterms:W3CDTF">2008-06-19T20:42:00Z</dcterms:modified><cp:category>DateiformatfürDokumente</cp:category><cp:contentStatus>Final</cp:contentStatus></cp:coreProperties>
Microsoft Office 2007 für Windows[36] undMicrosoft Office 2008 fürmacOS[37] unterstützen nur die veraltete VersionECMA-376 1st edition von Office Open XML, die von der ISO abgelehnt wurde, der ISO-Standard 29500 wird nicht vollständig unterstützt.[38][39]Microsoft Office 2010 für Windows ermöglicht erstmals den Lesezugriff auf Dateien gemäß ISO-Standard 29500, doch voll unterstützt wird der Standard erst inMicrosoft Office 2013 für Windows.[40]Für ältere Microsoft-Office-Versionen (ab Version 2000) bietet Microsoft ein „Compatibility Pack“,[41] das es ermöglicht, das nicht ISO-konforme Format zu lesen und zu schreiben.
Eine Reihe weiterer Programme unterstützt Office-Open-XML-Formate, wobei in allen Implementierungen bislang die Kompatibilität zur veralteten VersionECMA-376 1st edition im Vordergrund steht und nicht die Implementierung des ISO-Standards.
Solche weiteren Office-Pakete mit Office-Open-XML-Unterstützung sindSoftMaker Office 2010 (Import und Export von .docx, Import von .xlsx),CorelWordPerfect Office ab Version X4 (nur Import),[42] ThinkFree Office ab Version 3.5,[43]OpenOffice.org ab Version 3.0[44] und die OpenOffice.org-AbspaltungenNeoOffice undLibreOffice.Apple unterstützt Office-Open-XML-Dateien in seinem OfficeproduktiWork ab Version ’08 sowie inTextEdit ab Mac OS X 10.5.
Der DokumentenbetrachterTextMaker Viewer 2010 kann Office-Open-XML-Dateien öffnen, anzeigen und ausdrucken. Außerdem erlaubt er die Wandlung dieser Dateien in dasPortable Document Format (PDF). Die TabellenkalkulationGnumeric[45] und die TextverarbeitungAbiWord[46][47] bieten Import- und auch Exportfunktionen.
Im Juni 2008 wurde für Office Open XML einSDK von Microsoft zur Verfügung gestellt. Es erlaubt die Bearbeitung, Anlage, Prüfung und Modifizierung der Daten.[48] Das SDK 1.0 basiert auf .NET 3.0.[49] Entgegen anderslautenden Meldungen wird für die Benutzung kein Officeprodukt benötigt.[50]
Bei seiner Einführung wurde Office Open XML unter anderem von denOpenDocument-BefürworternIBM undSun Microsystems sowie von Mitgliedern derOpen-Source-Bewegung kritisiert, die im GrokDoc-Wiki eine Liste von Einwänden gegen die Aufnahme von Office Open XML als ISO-Standard veröffentlicht haben.[51]
Bemängelt wurde dabei der Umfang der Spezifikation mit über 6000 Seiten. Kritiker gingen davon aus, dass nur Microsoft die Spezifikation in vollem Umfang umsetzen könnte, während es für Hersteller von Konkurrenzsoftware praktisch unmöglich wäre, das Dateiformat vollständig in ihre Anwendungen zu implementieren.[52][53][54]
Darüber hinaus verwendet Office Open XML nicht dieW3C-EmpfehlungenMathML für die Formeldarstellung oderSVG für die Darstellung von Vektorgrafiken, sondern speichert diese Elemente in von Microsoft entwickelten Formaten.
Zudem widerspreche die Norm einigen ISO-Normen, beispielsweise der Norm für die Darstellung von Datum und Uhrzeit oder der Norm für die Abkürzung von Bezeichnungen von Sprachen.[55] Zudem wurde angeführt, dass Office Open XML als Ganzes einer bestehenden ISO-Norm widersprechen könnte, nämlich der Norm ISO/IEC 26300:2006 (OpenDocument).[56]
Microsoft soll gemäß einem Bericht derComputer Weekly Druck auf den britischen MinisterDavid Willetts ausgeübt haben, um den Einsatz des konkurrierendenOpenDocument-Formats zu verhindern.[57]