Office Open XML

From Wikipedia, the free encyclopedia
  (Redirected from OOXML)
Jump to: navigation, search
Not to be confused with Open Office XML or Microsoft Office XML formats.
Office Open XML Document
Filename extension .docx, .docm
Internet media type application/vnd.
openxmlformats-officedocument.
wordprocessingml.
document[1]
Developed by Microsoft, Ecma, ISO/IEC
Initial release 7 December 2006; 7 years ago (2006-12-07)
Latest release 3rd edition  / 15 August 2012; 2 years ago (2012-08-15)
Type of format Document file format
Extended from XML, DOC, WordProcessingML
Standard ECMA-376, ISO/IEC 29500
Open format? Yes
Website ECMA-376, ISO/IEC 29500-1:2012
Office Open XML Presentation
Filename extension .pptx, .pptm
Internet media type application/vnd.
openxmlformats-officedocument.
presentationml.
presentation[1]
Developed by Microsoft, Ecma, ISO/IEC
Initial release 7 December 2006; 7 years ago (2006-12-07)
Latest release 3rd edition  / 29 June 2011; 3 years ago (2011-06-29)
Type of format Presentation
Extended from XML, PPT
Standard ECMA-376, ISO/IEC 29500
Open format? Yes
Website ECMA-376, ISO/IEC 29500:2008
Office Open XML Workbook
Filename extension .xlsx, .xlsm
Internet media type application/vnd.
openxmlformats-officedocument.
spreadsheetml.
sheet[1]
Developed by Microsoft, Ecma, ISO/IEC
Initial release 7 December 2006; 7 years ago (2006-12-07)
Latest release 3rd edition  / 29 June 2011; 3 years ago (2011-06-29)
Type of format Spreadsheet
Extended from XML, XLS, SpreadsheetML
Standard ECMA-376, ISO/IEC 29500
Open format? Yes
Website ECMA-376, ISO/IEC 29500:2008

Office Open XML (also informally known as OOXML or OpenXML) is a zipped, XML-based file format developed by Microsoft[2] for representing spreadsheets, charts, presentations and word processing documents. The format was initially standardised by Ecma (as ECMA-376) and, in later versions, by ISO and IEC (as ISO/IEC 29500).

Starting with Microsoft Office 2007, the Office Open XML file formats have become the default[3] target file format of Microsoft Office.[4][5] Microsoft Office 2010 provides read support for ECMA-376, read/write support for ISO/IEC 29500 Transitional, and read support for ISO/IEC 29500 Strict.[6] Microsoft Office 2013 additionally supports both reading and writing of ISO/IEC 29500 Strict.[7]

Background[edit]

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

Microsoft announced in November 2005 that it would co-sponsor standardization of the new version of their XML-based formats through Ecma International, as "Office Open XML".[9][10] The presentation was made to Ecma by Microsoft's Jean Paoli and Isabelle Valet-Harper.[11][12]

Standardization process[edit]

Microsoft submitted initial material to Ecma International Technical Committee TC45, where it was standardized to become ECMA-376, approved in December 2006.[13]

This standard was then fast-tracked in the Joint Technical Committee 1 of ISO and IEC. After initially failing to pass, an amended version of the format 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.[14] The resulting four part International Standard (designated ISO/IEC 29500:2008) was published in November 2008[15] and can be downloaded from the ITTF.[16] A technically equivalent set of texts is published by Ecma as ECMA-376 Office Open XML File Formats — 2nd edition (December 2008); they can be downloaded from their web site.[17]

The ISO standardization of Office Open XML was controversial and embittered,[18] with much discussion both about the specification and about the standardization process.[19] According to InfoWorld:

OOXML was opposed by many on grounds it was unneeded, as software makers could use OpenDocument Format (ODF), a less complicated office software format that was already an international standard.[18]

— InfoWorld

The same InfoWorld article reported that IBM (which supports the ODF format) threatened to leave standards bodies that it said allow dominant corporations like Microsoft to wield undue influence. The article further says that Microsoft was accused of co-opting the standardization process by leaning on countries to ensure that it got enough votes at the ISO for Office Open XML to pass; although it does not specify exactly who accused Microsoft.[18]

Richard Stallman of the Free Software Foundation has stated that "Microsoft offers a gratis patent license for OOXML on terms which do not allow free implementations."[20]

Licensing[edit]

Under the Ecma International code of conduct in patent matters,[21] participating and approving member organisations of ECMA are required to make available their patent rights on a reasonable and non-discriminatory (RAND) basis.

Holders of patents which concern ISO/IEC International Standards may agree to a standardized license governing the terms under which such patents may be licensed, in accord with the ISO/IEC/ITU common patent policy.[22]

Microsoft, the main contributor to the standard, provided a Covenant Not to Sue[23] for its patent licensing. The covenant received a mixed reception, with some like the Groklaw blog criticizing it,[24] and others such as Lawrence Rosen, (an attorney and lecturer at Stanford Law School), endorsing it.[25]

Microsoft has added the format to their Open Specification Promise[26] 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 […]

This is limited to applications which do not deviate from the ISO/IEC 29500:2008 or Ecma-376 standard and to parties that do not "file, maintain or voluntarily participate in a patent infringement lawsuit against a Microsoft implementation of such Covered Specification".[27][28] The Open Specification Promise was included in documents submitted to ISO/IEC in support of the ECMA-376 fast track submission.[29] Ecma International asserted that, "The OSP enables both open source and commercial software to implement [the specification]".[30]

Versions[edit]

The Office Open XML specification exists in a number of versions.

ECMA-376 1st edition (2006)[edit]

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

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
The Open Packaging Conventions (OPC), for the package model and physical package, is defined and used by various document types in various applications from multiple vendors.
It defines core properties, thumbnails, digital signatures, and authorizations and encryption capabilities for parts or all the contents in the package.
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

Later versions of the ECMA-376 standard are aligned and technically equivalent to the corresponding ISO standard.

ISO/IEC 29500:2008[edit]

The ISO/IEC standard is structured into four parts.[31] Parts 1, 2 and 3 are independent standards; for example Part 2, specifying Open Packaging Conventions, is used by other files formats including XPS and Design Web Format. Part 4 is to be read as a modification to Part 1, on which it depends.

A technically equivalent set of texts is also published by Ecma as ECMA-376 2nd edition (2008).

Part 1 (Fundamentals and Markup Language Reference)
This part has 5560 pages. It contains:
  • Conformance definitions
  • Reference material for the XML document markup languages defined by the Standard
  • XML schemas for the document markup languages declared using XSD and (non-normatively) RELAX NG
  • Defines the foreign markup facilities
Part 2 (Open Packaging Conventions)
This part has 129 pages. It contains:
  • A description of the Open Packaging Conventions (package model, physical package)
  • Core properties, thumbnails and digital signatures
  • XML schemas for the OPC are declared using XSD and (non-normatively) RELAX NG)
Part 3 (Markup Compatibility and Extensibility)
This part has 40 pages. It contains:
  • A description of extensions: elements and attributes which define mechanisms allowing applications to specify alternative means of negotiating content
  • Extensibility rules are expressed using NVDL
Part 4 (Transitional Migration Features)
This part has 1464 pages. It contains:
  • Legacy material such as compatibility settings and the graphics markup language VML
  • A list of syntactic differences between this text and ECMA-376 1st edition

The standard specifies two 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.

Compatibility between versions[edit]

The intent of the changes from ECMA-376 1st edition to ISO/IEC 29500:2008 was that a valid ECMA-376 document would be a valid ISO 29500 "transitional" document,[32] but at least one change introduced at the BRM (refusing to allow further values for xsd:boolean) had the effect of breaking backwards compatibility for most documents.[33] A fix for this has been suggested to ISO/IEC JTC1/SC34/WG4, and was approved in June 2009 to go forward as a recommendation for the first amendment to Office Open XML.[34]

Applications able to read documents compliant to ECMA-376 edition 1 will regard ISO/IEC 29500-4 Transitional documents containing ISO 8601 dates as corrupt.[35]

Application support[edit]

Some older versions of Microsoft Word and Microsoft Office are able to read and write .docx files after installation of the free compatibility pack provided by Microsoft,[36] but some items such as equations are converted into images that cannot be edited.[37]

Starting with Microsoft Office 2007, the Office Open XML file formats have become the default[3] file format of Microsoft Office.[4][5] However, due to the changes introduced in the Office Open XML standard, Office 2007 is not entirely in compliance with ISO/IEC 29500:2008.[38][39][40][41] Microsoft Office 2010 includes support for the ISO/IEC 29500:2008 compliant version of Office Open XML,[39] but it can only save documents conforming to the transitional schemas of the specification, not the strict schemas.[42][43] Note that the intent of the ISO/IEC is to allow the removal of the transitional variant from the ISO/IEC 29500 standard.[43]

The ability to read and write Office Open XML format is however not limited to Microsoft Office; other office products are also able to read and write this format. SoftMaker Office 2010 is able to read and write .DOCX and .XLSX files in its word processor and spreadsheet applications. LibreOffice supports reading and writing Office Open XML files.[44] OpenOffice.org from version 3.0 has been able to import Office Open XML files.[45] Version 3.2 improves this feature with read support even for password-protected Office Open XML files.[46] [47] [48] The Go-oo fork of OpenOffice.org could also write OOXML files. KOffice version 2.2 and later and Calligra Suite was able to import Office Open XML files. Other office products that offer import support for the Office Open XML formats include TextEdit (included with OS X), iWork, IBM Lotus Notes, Abiword, WordPerfect, Kingsoft Office and Google Docs.

See also[edit]

References[edit]

  1. ^ a b c Microsoft. "Register file extensions on third party servers". microsoft.com. Retrieved 2009-09-04. 
  2. ^ "Q&A: Microsoft Co-Sponsors Submission of Office Open XML Document Formats to Ecma International for Standardization". Microsoft. 2005-11-21. 
  3. ^ a b "Microsoft Expands List of Formats Supported in Microsoft Office". Microsoft. Retrieved 2008-05-21. 
  4. ^ a b "Microsoft's future lies somewhere beyond the Vista by Evansville Courier & Press". Courierpress.com. Retrieved 2009-05-19. 
  5. ^ a b "Rivals Set Their Sights on Microsoft Office: Can They Topple the Giant? - Knowledge@Wharton". Knowledge.wharton.upenn.edu. Retrieved 2009-05-19. 
  6. ^ Overview of the XML file formats in Office 2010
  7. ^ Doug Mahugh. "Office’s Support for ISO/IEC 29500 Strict". MSDN blogs. Retrieved 2011-02-18. 
  8. ^ Brian Jones (2007-01-25). "History of office XML formats (1998–2006)". MSDN blogs. 
  9. ^ "Microsoft Co-Sponsors Submission of Office Open XML Document Formats to Ecma International for Standardization". Microsoft. 2005-11-21. 
  10. ^ Casson and Ryan, Open Standards, Open Source Adoption in the Public Sector, and Their Relationship to Microsoft’s Market Dominance
  11. ^ Microsoft hands over Office XML specs to Ecma
  12. ^ Slides presented by the TC45 committee to Ecma International
  13. ^ "Ecma International approves Office Open XML standard". Ecma International. 2006-12-07. 
  14. ^ "ISO/IEC DIS 29500 receives necessary votes for approval as an International Standard". ISO. 2008-04-02. 
  15. ^ ISO/IEC (2008-11-18). "Publication of ISO/IEC 29500:2008, Information technology — Office Open XML formats". ISO. Retrieved 2008-11-19. 
  16. ^ "Freely Available Standards". ITTF (ISO/IEC). 2008-11-18. 
  17. ^ a b "Standard ECMA-376". Ecma-international.org. Retrieved 2009-05-19. 
  18. ^ a b c Kirk, Jeremy (19 November 2008). "ISO publishes Office Open XML specification". InfoWorld. Retrieved 12 June 2010. 
  19. ^ "Norwegian standards body implodes over OOXML controversy". Ars Technica. 
  20. ^ Stallman, Richard (17 May 2009). "We Can Put an End to Word Attachments". Retrieved 12 June 2010. 
  21. ^ "Code of Conduct in Patent Matters". Ecma International. 
  22. ^ "ISO/IEC/ITU common patent policy". 
  23. ^ "Microsoft Covenant Regarding Office 2003 XML Reference Schemas". Microsoft. Retrieved 2006-07-11. 
  24. ^ "2 Escape Hatches in MS's Covenant Not to Sue". Groklaw. Retrieved 2007-01-29. 
  25. ^ Berlind, David (November 28, 2005). "Top open source lawyer blesses new terms on Microsoft's XML file format". ZDNet. Retrieved 2007-01-27. 
  26. ^ "Microsoft Open Specification Promise". Microsoft. 2006-09-12. Retrieved 2007-04-22. 
  27. ^ "http://www.ecma-international.org/publications/index.html". Ecma International. "Ecma Standards and Technical Reports are made available to all interested persons or organizations, free of charge and licensing restrictions" 
  28. ^ "Microsoft Open Specification Promise". Microsoft.com. 
  29. ^ "Licensing conditions that Microsoft offers for Office Open XML". Jtc1sc34.org. 2006-12-20. Retrieved 2009-05-19. [dead link]
  30. ^ "Microsoft Word — Responses to Comments and Perceived Contradictions.doc" (PDF). Retrieved 2009-09-16. 
  31. ^ "ISO search for "29500"". International Organization for Standardization. 2009-06-05. 
  32. ^ "Re-introducing on/off-values to ST-OnOff in OOXML Part 4". Retrieved 2009-09-29. 
  33. ^ "OOXML and Office 2007 Conformance: a Smoke Test". Retrieved 2009-09-29. 
  34. ^ "Minutes of the Copenhagen Meeting of ISO/IEC JTC1/SC34/WG4". 2009-06-22. Retrieved 2009-09-29.  page 15
  35. ^ "ISO/IEC 29500-4:2008/Draft Amd2:2011 - Draft - Information technology — Document description and processing languages — Office Open XML File Formats — Part 4: Transitional Migration Features - AMENDMENT 2" (PDF). 2011-03-02. Retrieved 2011-04-04 
  36. ^ "Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats (Version 3)". Microsoft. 2007-06-18. Retrieved 2007-09-04. 
  37. ^ Open a Word 2007 document in an earlier version of Word - Word - Office.com. Office.microsoft.com. Retrieved on 2013-07-17.
  38. ^ "OOXML Implementations: A Community of One". ODF Alliance. 2008-02-20. Retrieved 2009-05-19. 
  39. ^ a b "Microsoft Expands List of Formats Supported in Microsoft Office". Microsoft.com. 2008-05-21. Retrieved 2009-05-19. 
  40. ^ Lai, Eric (2008-05-27). "FAQ: Office 14 and Microsoft's support for ODF". Computerworld.com. Retrieved 2009-05-19. 
  41. ^ Andy Updegrove. "Microsoft Office 2007 to Support ODF — and not OOXML". ConsortiumInfo.org. Retrieved 2009-05-19. 
  42. ^ "ISO OOXML convener: Microsoft's format "heading for failure"". Ars Technica. 
  43. ^ a b Microsoft Fails the Standards Test
  44. ^ "LibreOffice OOXML". Retrieved 22 March 2012. 
  45. ^ "OpenOffice.org 3.0 New Features". 2008-10-13. Retrieved 2009-10-24. 
  46. ^ "OpenOffice.org 3.2 New Features". 2010. Retrieved 2010-11-13. 
  47. ^ Scott Gilbertson (13 February 2010). "OpenOffice 3.2 - now with less Microsoft envy". The Register. Retrieved 18 Feb 2013. "the ability to open password-protected Word, Excel, and PowerPoint files" 
  48. ^ "3.2.0 (build OOO320_m12) - Release Notes". Retrieved 18 Feb 2013. "Import of password protected Microsoft Office XML files" 

Further reading[edit]

External links[edit]