Office Open XML
This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article "Office_Open_XML"
.

content
Office Open XML Document
Image:X-office-document.svg
Filename extension .docx
Internet media type application/vnd.
openxmlformats-officedocument.
wordprocessingml.document1
Developed by Microsoft, Ecma International
Type of format Document file format
Extended from XML, DOC, WordProcessingML
Website Ecma 376, DIS 29500
Office Open XML Presentation
Image:X-office-presentation.svg
Filename extension .pptx
Internet media type application/vnd.
openxmlformats-officedocument.
presentationml.presentation1
Developed by Microsoft, Ecma International
Type of format Presentation
Extended from XML, PPT
Website Ecma 376, DIS 29500
Office Open XML Workbook
Image:X-office-spreadsheet.svg
Filename extension .xlsx
Internet media type application/vnd.
openxmlformats-officedocument.
spreadsheetml.sheet1
Developed by Microsoft, Ecma International
Type of format Spreadsheet
Extended from XML, XLS, SpreadsheetML
Website Ecma 376, DIS 29500

Office Open XML (also referred to as OOXML, OpenXML, or Open XML) is a file format for representing spreadsheets, charts, presentations and word processing documents. An Office Open XML document file contains mainly XML based files compressed within a zip package.

The Office Open XML format specification has been approved as a free and open Ecma International standard. A newer improved version is approved as an ISO/IEC standard.2345678

Microsoft originally developed the specification as a successor to its earlier binary and Office 2003 XML file formats. The specification was later handed over to Ecma International to be developed as the Ecma 376 standard, under the stewardship of Ecma International Technical Committee TC45. Ecma 376 was published in December 20069 and can be freely downloaded from Ecma International.10

An amended version of the format, ISO/IEC DIS 29500 (Draft International Standard 29500), received the necessary votes for approval as an ISO/IEC Standard as the result of a JTC 1 fast tracking standardization process that concluded in April 2008.11

The current stage in the standardization process of ISO/IEC IS 29500 is "International Standard under publication".12 The official designation of the international standard is: ISO/IEC IS 29500, Information technology – Office Open XML formats.

Starting with Microsoft Office 2007, the Office Open XML file formats have become the default file format of Microsoft Office, the currently market-leading office suite.1314 Microsoft Office 14 will be the first version to implement the ISO/IEC IS 29500 compliant version of Office Open XML.15

Contents

Background

Prior to the 2007 edition, the core applications of the Microsoft Office software suite (primarily Word, Excel, and PowerPoint) by default stored their data in binary files. Historically, these files were difficult for other applications to interoperate with, due to the lack of publicly available information and royalty-free access to the format specifications. More recently, Microsoft has offered these binary format specifications under a royalty-free covenant not to sue as part of its Open Specification Promise.1617 While a level of support for the binary formats had been achieved by some applications, full interoperability remained elusive.

In 2000, Microsoft released an initial version of an XML-based format for Excel, which was incorporated in Office XP. In 2002, a new file format for Microsoft Word followed.18 The Excel and Word formats – known as the Office 2003 XML formats – were later incorporated into the 2003 release of Microsoft Office.

In May 2004, governments and the European Union recommended to Microsoft that they publish and standardize their XML Office formats through a standardization organization.1918 Microsoft announced in November 2005 that it would standardize the new version of their XML-based formats through Ecma, as "Ecma Office Open XML".20

File format and structure

Office Open XML main components

Office Open XML uses a file package conforming to the Open Packaging Convention. This format uses mechanisms from the ZIP file format and contains the individual files that form the basis of the document. In addition to Office markup, the package can also include embedded files such as images, videos, or other documents.

Document markup languages

An Office Open XML file may contain several documents encoded in specialized markup languages corresponding to applications within the Microsoft Office product line. Office Open XML defines multiple vocabularies using 27 namespaces and 89 schema modules.

The primary markup languages are:

  • WordprocessingML for word-processing
  • SpreadsheetML for spreadsheets
  • PresentationML for presentations

Shared markup language materials include:

  • Office Math Markup Language (OMML)
  • DrawingML used for vector drawing, charts, and for example, text art (additionally, though deprecated, VML is supported for drawing)
  • Extended properties
  • Custom properties
  • Variant Types
  • Custom XML data properties
  • Bibliography

In addition to the above markup languages custom XML schemas can be used to extend Office Open XML.

The XML Schema of Office Open XML emphasizes reducing load time and improving parsing speed. In a test with applications current in April 2007, XML based office documents were slower to load than binary formats.21 To enhance performance, Office Open XML uses very short element names for common elements and spreadsheets save dates as index numbers (starting from 1899 or from 1904). In order to be systematic and generic, Office Open XML typically uses separate child elements for data and metadata (element names ending in Pr for properties) rather than using multiple attributes, which allows structured properties. Office Open XML does not use mixed content but uses elements to put a series of text runs (element name r) into paragraphs (element name p). The result is terse and highly nested in contrast to HTML, for example, which is fairly flat, designed for humans to write in text editors and is more congenial for humans to read.

Office MathML (OMML)

Office Math Markup Language is a mathematical markup language which can be embedded in WordprocessingML, with intrinsic support for including word processing markup like revision markings,22 footnotes, comments, images and elaborate formatting and styles.23 The OMML format is different from the World Wide Web Consortium (W3C) MathML recommendation that does not support those office features, but is partially compatible24 through relatively simple XSL Transformations.

The following Office MathML example defines the fraction: \frac{\pi}{2}

<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>

DrawingML
Example of DrawingML charts

DrawingML is the vector graphics markup language used in Office Open XML documents. Its major features are the graphics rendering of text elements, graphical vector based shape elements, graphical tables and charts.

The DrawingML table is the third table model in Office Open XML (next to the table models in WordprocessingML and SpreadsheetML) and is optimized for graphical effects and its main use is in presentations created with PresentationML markup. DrawingML contains graphics effects (like shadows and reflection) that can be used on the different graphical elements that are used in DrawingML. In DrawingML you can also create 3d effects, for instance to show the different graphical elements through a flexible camera viewpoint. It is possible to create separate DrawingML theme parts in an Office Open XML package. These themes can then be applied to graphical elements throughout the Office Open XML package.25

DrawingML is unrelated to the other vector graphics formats such as SVG. These can be converted to DrawingML to include natively in an Office Open XML document. This is a different approach to that of the OpenDocument format, which uses a subset of SVG, and includes vector graphics as separate files.

Container structure

Container structure of Part 2 of the Ecma Office Open XML standard, Ecma 376

Office Open XML documents are stored in Open Packaging Convention (OPC) packages, which are ZIP files containing XML and other data files, along with a specification of the relationships between them.26 Depending on the type of the document, the packages have different internal directory structures and names. An application will use the relationships files to locate individual sections (files), with each having accompanying metadata, in particular MIME metadata.

A basic package contains an XML file called [Content_Types].xml at the root, along with three directories: _rels, docProps, and a directory specific for the document type (for example, in a .docx word processing package, there would be a word directory). The word directory contains the document.xml file which is the core content of the document.

[Content_Types].xml 
This file describes the contents of the package. It also contains a mapping for file extensions and overrides for specific URIs.
_rels 
This directory contains relationships for the files within the package. To find the relationships for a specific file, look for the _rels directory that is a sibling of the file, and then for a file that has the original file name with a .rels appended to it. For example, if the content types file had any relationships, there would be a file called [Content_Types].xml.rels inside the _rels directory.
_rels/.rel 
This file is where the package relationships are located. Applications look here first. Viewing in a text editor, one will see it outlines each relationship for that section. In a minimal document containing only the basic document.xml file, the relationships detailed are metadata and document.xml.
docProps/core.xml 
This file contains the core properties for any Office Open XML document.
word/document.xml 
This file is the main part for any Word document.

Relationships

Relationship files in Office Open XML

An example relationship file (word/_rels/document.xml.rels), is:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<Relationships
  xmlns="http://schemas.microsoft.com/package/2005/06/relationships">
  <Relationship Id="rId1"
    Type="http://schemas.microsoft.com/office/2006/relationships/image"
    Target="http://en.wikipedia.org/images/wiki-en.png"
    TargetMode="External" />
  <Relationship Id="rId2"
    Type="http://schemas.microsoft.com/office/2006/relationships/hyperlink"
    Target="http://www.wikipedia.org"
    TargetMode="External" />
</Relationships>

As such, images referenced in the document can be found in the relationship file by looking for all relationships that are of type http://schemas.microsoft.com/office/2006/relationships/image. To change the used image, edit the relationship.

Hyperlink relations

The following code shows an example of inline markup for a hyperlink:

<w:hyperlink r:id="rId2" w:history="1"
  xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" 
  xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">

In this example, the Uniform Resource Locator (URL) is represented by "rId2". The actual URL is in the accompanying relationships file, located by the corresponding "rId2" item. Linked images, templates, and other items are referenced in the same way.

Embedded or linked media file relations

Pictures can be embedded or linked using a tag:

<v:imagedata w:rel="rId1" o:title="example" />

This is the reference to the image file. All references are managed via relationships. For example, a document.xml has a relationship to the image. There is a _rels directory in the same directory as document.xml, inside _rels is a file called document.xml.rels. In this file there will be a relationship definition that contains type, ID and location. The ID is the referenced ID used in the XML document. The type will be a reference schema definition for the media type and the location will be an internal location within the ZIP package or an external location defined with a URL.

Document properties

Office Open XML uses the Dublin Core Metadata Element Set and DCMI Metadata Terms to store document properties. Dublin Core is a standard for cross-domain information resource description and is defined in ISO 15836:2003.

Core properties

An example document properties file (docProps/core.xml) that uses Dublin Core metadata, is:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cp:coreProperties xmlns: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>Office Open XML</dc:title>
  <dc:subject>File format and structure</dc:subject>
  <dc:creator>Wikipedia</dc:creator>
  <cp:keywords>Office Open XML, Metadata, Dublin Core</cp:keywords>
  <dc:description>Office Open XML uses ISO 15836:2003</dc:description>
  <cp:lastModifiedBy>Wikipedia</cp:lastModifiedBy>
  <cp:revision>1</cp:revision>
  <dcterms:created xsi:type="dcterms:W3CDTF">2008-06-19T20:00:00Z</dcterms:created>
  <dcterms:modified xsi:type="dcterms:W3CDTF">2008-06-19T20:42:00Z</dcterms:modified>
  <cp:category>Document file format</cp:category>
  <cp:contentStatus>Final</cp:contentStatus>
</cp:coreProperties>

Structure of the standard

To aid the reader's understanding, the Office Open XML specification contains both normative material and informative material.

ISO/IEC 29500:2008

The ISO/IEC standard is structured into four parts, each of which are independent standards.27citation needed

  • Part 1: Fundamentals and Markup Language Reference (5550 pages)
    • Contains conformance definitions
    • Contains the reference material for WordprocessingML, SpreadsheetML, PresentationML, DrawingML, Shared MLs and Custom XML Schema, defining every element and attribute including the element hierarchy (parent/child relationships)
    • XML schemas for the markup languages are declared as XSD and (non-normatively) using RELAX NG
    • Defines the custom XML data storing facility
    • Schemas are included in the text
  • Part 2: Open Packaging Conventions (128 pages)
  • Part 3: Markup Compatibility and Extensibility (40 pages)
    • Describes extension facilities of OpenXML documents and specifies elements and attributes by which applications with different extensions can interoperate
    • Extensibility rules are expressed using NVDL (ISO/IEC 19757-4)
  • Part 4: Transitional Migration Features (1455 pages)
    • Contains reference material of legacy and transitional interest
    • Contains controversial material such as compatability settings and the graphics markup language VML
    • Contains list of differences between ECMA 376 and IS 29500

The standard specifies six levels of document and application conformance, strict and transitional for each of WordprocessingML, PresentationML and SpreadsheetML. The standard also specifies applications descriptions of base and full.

ECMA 376:2006

The ECMA standard is structured in five parts to meet the needs of different audiences.10

  • Part 1: Fundamentals
    • Vocabulary, notational conventions and abbreviations
    • Summary of primary and supporting markup languages
    • Conformance conditions and interoperability guidelines
    • Constraints within the Open Packaging Conventions that apply to each document type
  • Part 2: Open Packaging Conventions
    • Defines the Open Packaging Conventions (package model, physical package)
    • Defines core properties, thumbnails and digital signatures
    • XML schemas for the OPC are declared as XML Schema Definitions (XSD) and (non-normatively) using RELAX NG (ISO/IEC 19757-2)
  • Part 3: Primer
    • Informative (non-normative) introduction to WordprocessingML, SpreadsheetML, PresentationML, DrawingML, VML and Shared MLs, providing context and illustrating elements through examples and diagrams
    • Describes the custom XML data storing facility within a package to support integration with business data
  • Part 4: Markup Language Reference
    • Contains the reference material for WordprocessingML, SpreadsheetML, PresentationML, DrawingML, Shared MLs and Custom XML Schema, defining every element and attribute including the element hierarchy (parent/child relationships)
    • XML schemas for the markup languages are declared as XSD and (non-normatively) using RELAX NG
    • Defines the custom XML data storing facility
  • Part 5: Markup Compatibility and Extensibility
    • Describes extension facilities of OpenXML documents and specifies elements and attributes by which applications with different extensions can interoperate
    • Extensibility rules are expressed using NVDL (ISO/IEC 19757-4)

Licensing

Reasonable and Non Discriminatory

Ecma International provides specifications that "can be freely copied by all interested parties without restrictions".28 Under the Ecma code of conduct in patent matters, participating and approving member organisations are required to make available their patent rights on a Reasonable and Non Discriminatory (RAND) basis. While making patent rights available on a RAND basis is considered a common minimum patent condition for a standard, international standardization has a clear preference for royalty-free patent licensing. That is why Microsoft, a main contributor to the standard, provided a Covenant Not to Sue29 for its patent licensing. The covenant received a mixed reception, with some (like the Groklaw blog) identifying problems30 and others (such as Lawrence Rosen, an attorney and lecturer at Stanford Law School) endorsing it.31

Open Specification Promise

Microsoft also added the format to their Open Specification Promise32 in which

"Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation to the extent it conforms to a Covered Specification […]"

subject to certain restrictions. Office Open XML can therefore be used under the Covenant Not to Sue or the Open Specification Promise.

The Open Specification Promise was included in documents submitted to ISO in support of the Ecma 376 fast track submission.33 Ecma International asserted that, "The OSP enables both open source and commercial software to implement [the specification]."34

In support of the licensing arrangements Microsoft commissioned an analysis from the London legal firm Baker & McKenzie.35

Several standards and OSS licensing experts expressed support in 2006 of the OSP. A 2006 article in Cover Pages quotes Lawrence Rosen, an attorney and lecturer at Stanford Law School, as saying,

"I'm pleased that this OSP is compatible with free and open source licenses."36

In 200637, Mark Webbink; a lawyer and member of the board of the Software Freedom Law Center, and former employee of Linux vendor Red Hat; has said,

"Red Hat believes that the text of the OSP gives sufficient flexibility to implement the listed specifications in software licensed under free and open source licenses. We commend Microsoft’s efforts to reach out to representatives from the open source community and solicit their feedback on this text, and Microsoft's willingness to make modifications in response to our comments."38

Standards lawyer Andy Updegrove said in 2006 the Open Specification Promise was

"[…] what I consider to be a highly desirable tool for facilitating the implementation of open standards, in particular where those standards are of interest to the open source community."39

On March 12, 2008 the Software Freedom Law Center, which provides services to protect and advance free software and open source software, has warned of problems with the Open Specification Promise as it relates to Office Open XML and the GNU General Public License (GPL).40 In a published analysis of the promise it states that41

  • "Any code that implements the specification may also do other things in other contexts, so in effect the OSP does not cover any actual code, only some uses of code."42
  • "...it permits implementation under free software licenses so long as the resulting code isn't used freely."42
  • "The OSP cannot be relied upon by GPL developers for their implementations not because its provisions conflict with GPL, but because it does not provide the freedom that the GPL requires."42

Microsoft amended the OSP FAQ to specifically assure GPL license users that the open licensing of its covered formats through the Open Specification Promise applies to users of the GPL license when implementing covered implementations:

"The OSP provides the assurance that Microsoft will not assert its Necessary Claims against anyone who make, use, sell, offer for sale, import, or distribute any Covered Implementation under any type of development or distribution model, including the GPL."43

Legal experts and academics have confirmed that the licensing is similar to the licensing terms offered by IBM, and to a lesser extent Sun and Adobe on their Office formats but warned that ambiguous legal jargon contained in Microsoft's Open Specification Promise, although understood in the terminology of the specialist patent and intellectual property law community, makes it hard for small developers to determine with certainty that Microsoft will not be entitled to sue them for using OOXML. They criticize Microsoft for not explicitly defining which parts of its 6000 page OOXML specification contains intellectual property. The OSP has never been tested in a court of law regarding intellectual property rights, and the OSP does not name which court or jurisdiction a dispute will be heard in. David Vaile, executive director of the Cyberspace Law and Policy Centre at the University of New South Wales, acknowledges that the Microsoft approach to its Open Specification Promise is similar although not identical to other approaches used by IBM, and to a lesser extent Adobe and Sun, and that these represent a substantial advance on the past practice of negotiating long case-by-case agreements.44

Standardization

Office Open XML is currently an Ecma standard (Ecma-376, approved on 7 December 2006). Ecma 376 was created using as a basis a new version of the Microsoft Office 2003 XML file format, donated by Microsoft, which was being created for Microsoft Office 12.

The specification entered fast-track standardization within ISO/IEC as DIS 29500 (Draft International Standard 29500).45 In a September 2007 vote by ISO/IEC member bodies, the draft text was not approved as an international standard. A ballot resolution process in March 2008 amended the text.

On April 2, 2008, ISO and IEC officially stated that the DIS 29500 had been approved for acceptance as an ISO/IEC Standard, pending any appeals.11 In accordance with the JTC 1 directives the Project Editor created a new version with the final text within a month after the BRM, to be published as ISO/IEC 29500. After review and corrections this text has been distributed to the members of SC34.46

On May 21st, 2008, Microsoft announced that it will be an active participant in the future evolution of the Office Open XML standard.47

In october 2008 ISO/IEC committee JTC1/SC34 (Document Description and Processing Languages) created a working group for maintenance of the ISO/IEC 29500 standard within ISO/IEC. 48

Application support

The list here is not exhaustive. A More exhaustive list of supporting/partial implementations of Office Open XML can be found on Microsoft's office open XML Community website.

Ecma 376 implementations

The current Ecma 376 specification is supported in several office suites from various vendors.

  • Microsoft Office 2007 for Windows uses the Office Open XML format as the default.
  • Older versions of Office (2000, XP and 2003) require a free compatibility pack provided by Microsoft.49 It is available for Windows 2000 Service Pack 4 and newer operating systems. The compatibility pack does not require Microsoft Office, but does require Microsoft Windows. It can be used as a standalone converter with products that read Office's older binary formats, such as OpenOffice.org.50
  • Microsoft Office 2008 for Mac supports the Office Open XML format.51 For older versions of Office on the Mac, a converter is available.
  • Microsoft Office Mobile 6.1 supports Office Open XML on Mobile devices.52
  • Adobe Buzzword, the online word processor by Adobe Systems, imports and exports Microsoft Word (DOC and DOCX) and Word 2003 XML files.53
  • Apple Inc.'s iWork '08 suite has read-only support for Office Open XML word processing, spreadsheet and presentation file formats in Pages, Numbers and Keynote (respectively).545556
  • Apple Inc.'s iPhone has read-only support for Office Open XML attachments to email.57
  • Apple Inc.'s TextEdit, the built-in word processing program of Mac OS X, has read and write support for Office Open XML files starting with Mac OS X v10.5.58
  • Altova's MapForce includes support for data integration based on the Office Open XML spreadsheet data format.59
  • Altova's StyleVision adds Word 2007 (Office Open XML) wordprocessing capabilities to its graphical stylesheet design tool.60
  • Altova's DiffDog supports detailed differencing for Office Open XML and ZIP archive file pairs.59
  • The online Thinkfree Office supports Office Open XML word processing files, and will support spreadsheets and presentation files in the future.61
  • AbiWord includes an input filter for Office Open XML documents beginning with version 2.6.0.62
  • Corel WordPerfect Office X4 includes extensive support for Office Open XML.63
  • Gnumeric has limited SpreadsheetML support.64
  • QuickOffice, a mobile office suite for Symbian and Palm OS, supports wordprocessing and spreadsheets in Office Open XML format.65
  • OfficeSuite, a mobile office suite for Symbian devices, supports wordprocessing and spreadsheets in Office Open XML format.66
  • DataViz' DocumentsToGo for PalmOS supports Office Open XML documents.67
  • Datawatch supports Office Open XML spreadsheets in its report mining tool Monarch v9.0.68
  • docx4all is an open source wordprocessor (GPL license), written in Java's Swing, which uses docx4j to edit docx documents.69
  • docx4j is an open source library (Apache license) which provides Java support for the WordprocessingML component of Office Open XML.70
  • Intergen has released a Silverlight plugin that allows Office Open XML word processing files to be viewed within a web browser.71
  • OpenOffice.org has read-only Office Open XML support (importing).72
  • The Mac OS X-based NeoOffice office suite supports opening, editing, and saving of most Office Open XML documents since version 2.1.73
  • OpenXML Writer is an open source text editor for creating WordprocessingML files.74
  • Online word processor Zoho Writer supports exporting to the Office Open XML WordprocessingML format.75
  • Oxygen XML Editor allows you to extract, validate, edit and process the XML data stored in Office Open XML files. These capabilities allow developers to use data from Office 2007 documents together with validation and transformations (using XSLT or XQuery) to other file formats. Validation is done using the latest Ecma 376 XML Schemas.76
  • Xpertdoc Studio is a document merge and assembly product which generates Office Open XML WordprocessingML files from any platform supporting the .NET Framework or the Java programming language.77
  • TX Text Control, a family of reusable wordprocessing components for developers support reading and writing of Office Open XML wordprocessing files.78

Filters and converters

  • Microsoft has created Office Open XML Converter for Mac OS X that can convert Office Open XML files to the former binary file formats used in older versions of Microsoft Office.79
  • OxygenOffice includes xmlfilter which is the code that OpenOffice.org 3 will use to process Office Open XML files, and xmlfilter is completely different than OdfConverter.80 This filter however is only for importing Office Open XML files not for exporting them.
  • docXConverter by Panergy Ltd. converts from WordprocessingML to Rich Text Format (RTF) and from SpreadsheetML to Comma-separated values (CSV). docXConverter can be used to transfer WordprocessingML data to other applications that read RTF data such as Word 97.81
  • Microsoft and Sonata Software created a plugin to convert Office Open XML text documents to DAISY XML, an open standard format used for creating spoken document for disabled people.82
  • Google search supports direct HTML view of Office Open XML files. Found files can be viewed directly in a converted HTML view.83
  • OpenXML Document Viewer is an open source command line utility that provides Office Open XML to HTML transformation to display WordprocessingML files in web browsers.84
  • DataViz MacLinkPlus Deluxe 16 supports Office Open XML file formats.85

Other products

Planned and beta software

  • ExtenXLS will support Office Open XML in the forthcoming 7.0 release, which is aiming for a Q4 2008 release.97
  • Apache POI will support Office Open XML in the forthcoming 3.5 release, currently still in Beta98
  • Unified Office Format (UOF) Open Source Translator is being developed by Beihang University and partners to convert from Office Open XML to UOF and vice versa.99

ISO/IEC 29500 implementations

Microsoft has stated that Microsoft Office 14 will be the first version of Microsoft Office to support ISO/IEC 29500, though no release date has been announced.47

On July 28, 2008 Murray Sargent, a software development engineer in the Microsoft Office team confirmed that Word 2007 will have a service pack release that enables it to read and write ISO standard OOXML files.100

Microsoft, whose products currently only support the Ecma 376 standard version of Office Open XML, has committed to using the ISO/IEC 29500 standard in their products101 and has also committed to participate in the maintenance of this standard.

In a Zdnet article Alex Brown, leader of the ISO/IEC group in charge of deciding maintenance processes for any ISO/IEC 29500 Standard, stated

"I am hoping that Microsoft Office will shortly be brought into line with the [ISO/IEC] 29500 specification, and will stay that way".102

On March 13, 2008 Doug Mahugh, a Senior Product Manager at Microsoft specializing in Office client interoperability and the Open XML file formats confirmed that version 1.0 of the Open XML Format SDK

"will definitely be 100% compliant with the final ISO/IEC 29500 spec, including the changes accepted at the BRM".103

In a ComputerWorld interview from 2008, Doug Mahugh said that

"Microsoft would continue to update the SDK to make sure that applications built with it remained compliant with an Open XML standard as changes were made in the future".104

Implementations

  • Microsoft Open XML Format SDK105 contains a set of managed code libraries to create and manipulate Office Open XML files programmatically. Version 1.0 was released on June 10, 2008106 and incorporates the changes made to the Office Open XML specification made during the current ISO/IEC standardization process.107108 Version 2 of the Open XML SDK supports validating Office Open XML documents against the Office Open XML schema, as well as searching in Office Open XML documents.107
  • PowerTools for Open XML, a set of free open source cmdlets for Windows PowerShell to create and manipulate Office Open XML files at the command line or using shell scripts.109110111

Criticism

The ODF Alliance UK Action Group says that with OpenDocument an ISO-standard for Office files already exists and that two competing standards are against the very concept of a standard.112 Further, they argue that the Office Open XML file-format is heavily based on Microsoft's own Office applications and is thus not vendor-neutral, and that it has inconsistencies with existing ISO standards such as time and date formats and color codes.112

Specific criticism

  • Use of DrawingML and the transitional-use-only VML instead of W3C recommendation SVG.113 VML did not become a W3C recommendation.114
  • Use of Office Math ML instead of W3C recommendation MathML.115
  • Office Open XML does not define a macro language, leaving this aspect to be application-defined.116
  • The standard is long, with the version submitted to ISO comprising 6546 pages. Google alleges that this length is unnecessary, saying that the OpenDocument specification is 867 pages in length and achieves the same goals.117 That coupled with the fast track standardization process, Google claims, reduces the review time per page ratio.117
  • A comparison of some specific items in the format specification documents of Office Open XML and OpenDocument formats is used to claim disharmony within the Office Open XML format.118

See also

Wikimedia Commons has media related to:

References

  1. ^ a b c Microsoft. "Register file extensions on third party servers". microsoft.com. Retrieved on 2008-04-09.
  2. ^ http://www.ecma-international.org/activities/General/presentingecma.ppt
  3. ^ Ecma formal publications
  4. ^ Microsoft PowerPoint - BSI OOXML v1b.ppt
  5. ^ http://www.mass.gov/Aitd/docs/policies_standards/etrmv4dot0/etrmv4dot0information.rtf
  6. ^ http://www.itscj.ipsj.or.jp/sc34/open/1026.pdf
  7. ^ "Office Open XML wird als weltweiter ISO/IEC-Standard anerkannt". ntz Fachzeitschrift für Informations- und Kommunikationstechnik (Berlin: VDE-Verlag) (3-4): 10. 2008. ISSN 0948-728X, http://www.vde-verlag.de/ntz.html. 
  8. ^ Techtree.com India > News > Software > ISO puts Microsoft's OOXML Standard on Hold
  9. ^ Ecma International (December 7, 2006). "Ecma International approves Office Open XML standard". Press release. Retrieved on 2006-12-08.
  10. ^ a b Standard ECMA-376
  11. ^ a b "ISO/IEC DIS 29500 receives necessary votes for approval as an International Standard". ISO (2008-04-02).
  12. ^ ISO - ISO Standards - JTC 1/SC 34 - Document description and processing languages
  13. ^ http://www.courierpress.com/news/2008/oct/24/microsofts-future-lies-somewhere-beyond-the/
  14. ^ http://knowledge.wharton.upenn.edu/article.cfm?articleid=1795
  15. ^ Microsoft Expands List of Formats Supported in Microsoft Office
  16. ^ "How to extract information from Office files by using Office file formats and schemas". Microsoft (2007-03-27). Retrieved on 2007-07-10.
  17. ^ "Microsoft Office Binary (doc, xls, ppt) File Formats". Microsoft (2008-02-15). Retrieved on 2008-04-05.
  18. ^ a b Brian Jones (2007-01-25). "History of office XML formats (1998–2006)".
  19. ^ Telematics between Administrations Committee based on IDA expert group on open document formats (2004-05-25). "TAC approval on conclusions and recommendations on open document formats". IDABC - European eGovernment Services. Retrieved on 2007-07-30.
  20. ^ "Microsoft Co-Sponsors Submission of Office Open XML Document Formats to Ecma International for Standardization". Microsoft (2005-11-21).
  21. ^ George Ou (2007-04-27). "MS Office 2007 versus Open Office 2.2 shootout". ZDnet.com. Retrieved on 2007-04-27.
  22. ^ Jesper Lund Stocholm (2008-01-29). "Do your math - OOXML and OMML". A Mooh Point blog. Retrieved on 2008-02-12.
  23. ^ Murray Sargent (2007-06-05). "Science and Nature have difficulties with Word 2007 mathematics". MSDN blogs. Retrieved on 2007-07-31.
  24. ^ David Carlisle (2007-05-09). "XHTML and MathML from Office 2007". David Carlisle. Retrieved on 2007-09-20.
  25. ^ Wouter Van Vugt (2008-11-1). "Open XML Explained e-book". Openxmldeveloper.org. Retrieved on 2007-09-14.
  26. ^ Tom Ngo (December 11, 2006). "Office Open XML Overview" (PDF) 6. Ecma International. Retrieved on 2007-01-23.
  27. ^ Rex Jaeshke - project editor (2008-09-26). "N1080 Final Text for ISO/IEC 29500-1, Information technology -- Document description and processing languages -- Office Open XML File Formats -- Part 1: Fundamentals and Markup Language Reference".
  28. ^ "What is Ecma International".
  29. ^ "Microsoft Covenant Regarding Office 2003 XML Reference Schemas". Microsoft. Retrieved on 2006-07-11.
  30. ^ "2 Escape Hatches in MS's Covenant Not to Sue". Groklaw. Retrieved on 2007-01-29.
  31. ^ Berlind, David (November 28, 2005). "Top open source lawyer blesses new terms on Microsoft’s XML file format". ZDNet. Retrieved on 2007-01-27.
  32. ^ "Microsoft Open Specification Promise". Microsoft (2006-09-12). Retrieved on 2007-04-22.
  33. ^ Licensing conditions that Microsoft offers for Office Open XML
  34. ^ -Response Document- National Body Comments from 30-Day Review of the Fast Track Ballot for ISO/IEC DIS 29500 (ECMA-376) Office Open XML File Formats
  35. ^ Baker & McKenzie (June 2006). "Standardization and Licensing of Microsoft’s Office Open XML Reference Schema" (PDF). Baker & McKenzie. Retrieved on 2007-02-01.
  36. ^ "Microsoft's Open Specification Promise Eases Web Services Patent Concerns.". xml.coverpages.org (2006-09-12).
  37. ^ "Microsoft promises to hang patent fire over web services" (2006-09-12).
  38. ^ "Microsoft Open Specification Promise".
  39. ^ Peter Galli (2006-09-12). "Microsoft Promises Not to Sue over Web Services Specs".
  40. ^ "Software Freedom Law Center Publishes Analysis of Microsoft's Open Specification Promise new article". Software Freedom Law Center (March 12, 2008).
  41. ^ "Software Freedom Law Center Publishes Analysis of Microsoft's Open Specification Promise". Business Wire (March 12, 2008).
  42. ^ a b c "Microsoft's Open Specification Promise: No Assurance for GPL". Software Freedom Law Center (March 12, 2008).
  43. ^ "Microsoft Open Specification Promise". Retrieved on 2008-07-28.
  44. ^ Winterford, Brett (2008-02-14). "Can Microsoft be trusted on OOXML covenants?", ZDNet. Retrieved on 7 July 2008. 
  45. ^ ISO/IEC DIS 29500, Information technology -- Office Open XML file formats
  46. ^ IS 29500 has been sent to ITTF for publication (Jesper Lund Stocholm, personal blog - "This will finally make it possible for the NBs of ISO to verify that the editorial instructions from the BRM has made it into the final text")
  47. ^ a b Microsoft Expands List of Formats Supported in Microsoft Office
  48. ^ "Resolutions of ISO/IEC JTC 1/SC 34 Plenary Meeting, 2008-10-01, Jeju, Republic of Korea". ISO/IEC JTC1/SC34 Document Description and Processing Languages (2008-10-01). Retrieved on 2008-10-09.
  49. ^ "Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats (Version 3)". Microsoft (2007-06-18). Retrieved on 2007-09-04.
  50. ^ "Office Compatibility Pack Review". OpenOffice.org Ninja (2008-02-06). Retrieved on 2008-02-26.
  51. ^ Amazon. "Microsoft Office 2008 for Mac".
  52. ^ "Microsoft Office Mobile 6.1: Upgrade for Microsoft Office 2007 file formats". Microsoft (2007-11-28). Retrieved on 2007-11-29.
  53. ^ http://labs.adobe.com/technologies/buzzword/
  54. ^ "Apple - iWork - Pages". Retrieved on 2007-07-08.
  55. ^ "