[MS-OFFDI]:

Microsoft Office File Format Documentation Introduction

Intellectual Property Rights Notice for Open Specifications Documentation

§  Technical Documentation. Microsoft publishes Open Specifications documentation (“this documentation”) for protocols, file formats, data portability, computer languages, and standards support. Additionally, overview documents cover inter-protocol relationships and interactions.

§  Copyrights. This documentation is covered by Microsoft copyrights. Regardless of any other terms that are contained in the terms of use for the Microsoft website that hosts this documentation, you can make copies of it in order to develop implementations of the technologies that are described in this documentation and can distribute portions of it in your implementations that use these technologies or in your documentation as necessary to properly document the implementation. You can also distribute in your implementation, with or without modification, any schemas, IDLs, or code samples that are included in the documentation. This permission also applies to any documents that are referenced in the Open Specifications documentation.

§  No Trade Secrets. Microsoft does not claim any trade secret rights in this documentation.

§  Patents. Microsoft has patents that might cover your implementations of the technologies described in the Open Specifications documentation. Neither this notice nor Microsoft's delivery of this documentation grants any licenses under those patents or any other Microsoft patents. However, a given Open Specifications document might be covered by the Microsoft Open Specifications Promise or the Microsoft Community Promise. If you would prefer a written license, or if the technologies described in this documentation are not covered by the Open Specifications Promise or Community Promise, as applicable, patent licenses are available by contacting .

§  License Programs. To see all of the protocols in scope under a specific license program and the associated patents, visit the Patent Map.

§  Trademarks. The names of companies and products contained in this documentation might be covered by trademarks or similar intellectual property rights. This notice does not grant any licenses under those rights. For a list of Microsoft trademarks, visit www.microsoft.com/trademarks.

§  Fictitious Names. The example companies, organizations, products, domain names, email addresses, logos, people, places, and events that are depicted in this documentation are fictitious. No association with any real company, organization, product, domain name, email address, logo, person, place, or event is intended or should be inferred.

Reservation of Rights. All other rights are reserved, and this notice does not grant any rights other than as specifically described above, whether by implication, estoppel, or otherwise.

Tools. The Open Specifications documentation does not require the use of Microsoft programming tools or programming environments in order for you to develop an implementation. If you have access to Microsoft programming tools and environments, you are free to take advantage of them. Certain Open Specifications documents are intended for use in conjunction with publicly available standards specifications and network programming art and, as such, assume that the reader either is familiar with the aforementioned material or has immediate access to it.

Support. For questions and support, please contact .

Revision Summary

Date / Revision History / Revision Class / Comments /
3/18/2009 / 1.0 / Major / Initial Availability
7/13/2009 / 1.01 / Major / Changes made for template compliance
8/28/2009 / 1.02 / Editorial / Revised and edited the technical content
11/6/2009 / 1.03 / Editorial / Revised and edited the technical content
2/19/2010 / 2.0 / Editorial / Revised and edited the technical content
3/31/2010 / 2.01 / Editorial / Revised and edited the technical content
4/30/2010 / 2.02 / Editorial / Revised and edited the technical content
6/7/2010 / 2.03 / Editorial / Revised and edited the technical content
6/29/2010 / 2.04 / Editorial / Changed language and formatting in the technical content.
7/23/2010 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
9/27/2010 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
11/15/2010 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
12/17/2010 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
3/18/2011 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
6/10/2011 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
1/20/2012 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
4/11/2012 / 2.04 / None / No changes to the meaning, language, or formatting of the technical content.
7/16/2012 / 2.5 / Minor / Clarified the meaning of the technical content.
10/8/2012 / 2.6 / Minor / Clarified the meaning of the technical content.
2/11/2013 / 2.6 / None / No changes to the meaning, language, or formatting of the technical content.
7/30/2013 / 2.7 / Minor / Clarified the meaning of the technical content.
11/18/2013 / 2.8 / Minor / Clarified the meaning of the technical content.
2/10/2014 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
4/30/2014 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
7/31/2014 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
10/30/2014 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
9/4/2015 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
7/15/2016 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
9/14/2016 / 2.8 / None / No changes to the meaning, language, or formatting of the technical content.
9/19/2017 / 3.0 / Major / Significantly changed the technical content.

Table of Contents

1 Introduction 6

1.1 Glossary 7

1.2 References 7

1.2.1 Normative References 7

1.2.2 Informative References 8

2 Microsoft Word Persistence Formats 9

2.1 Word Binary File Format 9

2.1.1 Applicability 9

2.1.2 Application and Versions 9

2.1.3 File Name Extensions 9

2.2 Ecma Office Open XML Document 10

2.2.1 Applicability 10

2.2.2 Application and Versions 10

2.2.3 File Name Extensions 10

2.2.4 Reference Information 10

2.3 Office Open XML Document 11

2.3.1 Applicability 11

2.3.2 Application and Versions 11

2.3.3 File Name Extensions 11

2.3.4 Reference Information 11

2.4 OpenDocument Text Document 12

2.4.1 Applicability 12

2.4.2 Application and Versions 12

2.4.3 File Name Extensions 12

2.4.4 Reference Information 12

3 Microsoft Excel Persistence Formats 13

3.1 Excel Binary File Format 13

3.1.1 Applicability 13

3.1.2 Application and Versions 13

3.1.3 File Name Extensions 13

3.2 Office Excel 2007 Binary File Format 14

3.2.1 Applicability 14

3.2.2 Application and Versions 14

3.2.3 File Name Extensions 14

3.3 Ecma Office Open XML Spreadsheet 14

3.3.1 Applicability 14

3.3.2 Application and Versions 14

3.3.3 File Name Extensions 15

3.3.4 Reference Information 15

3.4 Office Open XML Spreadsheet 15

3.4.1 Applicability 15

3.4.2 Applications and Versions 15

3.4.3 File Name Extensions 16

3.4.4 Reference Information 16

3.5 OpenDocument Spreadsheet Document 16

3.5.1 Applicability 16

3.5.2 Application and Versions 16

3.5.3 File Name Extensions 17

3.5.4 Reference Information 17

4 Microsoft PowerPoint Persistence Formats 18

4.1 PowerPoint Binary File Format 18

4.1.1 Applicability 18

4.1.2 Application and Versions 18

4.1.3 File Name Extensions 18

4.2 Ecma Office Open XML Presentation 19

4.2.1 Applicability 19

4.2.2 Application and Versions 19

4.2.3 File Name Extensions 19

4.2.4 Reference Information 19

4.3 Office Open XML Presentation 20

4.3.1 Applicability 20

4.3.2 Application and Versions 20

4.3.3 File Name Extensions 20

4.3.4 Reference Information 20

4.4 OpenDocument Presentation Document 21

4.4.1 Applicability 21

4.4.2 Application and Versions 21

4.4.3 File Name Extensions 21

4.4.4 Reference Information 21

5 Change Tracking 22

6 Index 24

1  Introduction

This document introduces the persistence formats that are primarily used by the following product versions:

§  Microsoft Excel 97

§  Microsoft Excel 2000

§  Microsoft Excel 2002

§  Microsoft Office Excel 2003

§  Microsoft Office Excel 2007

§  Microsoft Excel 2010

§  Microsoft Excel 2013

§  Microsoft Excel 2016

§  Microsoft PowerPoint 97

§  Microsoft PowerPoint 2000

§  Microsoft PowerPoint 2002

§  Microsoft Office PowerPoint 2003

§  Microsoft Office PowerPoint 2007

§  Microsoft PowerPoint 2010

§  Microsoft PowerPoint 2013

§  Microsoft PowerPoint 2016

§  Microsoft Word 97

§  Microsoft Word 2000

§  Microsoft Word 2002

§  Microsoft Office Word 2003

§  Microsoft Office Word 2007

§  Microsoft Word 2010

§  Microsoft Word 2013

§  Microsoft Word 2016

Each format consists of a set of data structures to which applications can read or write data, typically by writing a conforming stream of bytes to a file system as a stand-alone file.

In addition to introducing the persistence formats that are primarily used by these product versions, this document identifies related documents and specifications that provide more information about each format and how each format is implemented in each product version.

1.1  Glossary

This document uses the following terms:

animation: A record of synthetic, successive still images that produce an illusion of movement when played back.

document template: A file that serves as the basis for new documents.

drawing object: A shape, curve, line, WordArt, or other type of graphical object that can be inserted into a document.

embedded object: An object that is created by using one application and is hosted in a document that was created by using another application. Embedding an object, rather than inserting or pasting it, ensures that the object retains its original format. Users can double-click an embedded object and edit it with the toolbars and menus from the application that was used to create it. See also Object Linking and Embedding (OLE).

formula: A logical equation or function that produces a result in a spreadsheet application.

presentation: A collection of slides that are intended to be viewed by an audience.

slide: A frame that contains text, shapes, pictures, or other content. A slide is a digital equivalent to a traditional film slide.

slide show: A delivery of a sequence of presentation slides, typically to an audience.

table: A list that is defined in a workbook.

template: A file that contains pre-defined formatting including layout, text and graphics. It serves as the basis for new documents that have a similar look or purpose. See also form template (Microsoft InfoPath) and site template (SharePoint Products and Technologies).

workbook: A container for a collection of sheets.

XML schema: A description of a type of XML document that is typically expressed in terms of constraints on the structure and content of documents of that type, in addition to the basic syntax constraints that are imposed by XML itself. An XML schema provides a view of a document type at a relatively high level of abstraction.

MAY, SHOULD, MUST, SHOULD NOT, MUST NOT: These terms (in all caps) are used as defined in [RFC2119]. All statements of optional behavior use either MAY, SHOULD, or SHOULD NOT.

1.2  References

Links to a document in the Microsoft Open Specifications library point to the correct section in the most recently published version of the referenced document. However, because individual documents in the library are not updated at the same time, the section numbers in the documents may not match. You can confirm the correct section numbering by checking the Errata.

1.2.1  Normative References

We conduct frequent surveys of the normative references to assure their continued availability. If you have any issue with finding a normative reference, please contact . We will assist you in finding the relevant information.

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997, http://www.rfc-editor.org/rfc/rfc2119.txt

1.2.2  Informative References

[ECMA-376] ECMA International, "Office Open XML File Formats", 1st Edition, ECMA-376, December 2006, http://www.ecma-international.org/publications/standards/Ecma-376.htm

[ISO/IEC29500:2011] ISO/IEC, "Information technology -- Document description and processing languages -- Office Open XML File Formats -- Parts 1-4", ISO/IEC 29500-1:2011, 2011, http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=59575

[MS-DOC] Microsoft Corporation, "Word (.doc) Binary File Format".

[MS-OE376] Microsoft Corporation, "Office Implementation Information for ECMA-376 Standards Support".

[MS-OI29500] Microsoft Corporation, "Office Implementation Information for ISO/IEC 29500 Standards Support".

[MS-OLEDS] Microsoft Corporation, "Object Linking and Embedding (OLE) Data Structures".

[MS-OODF2] Microsoft Corporation, "Office Implementation Information for ODF 1.1 Version 2 Standards Support".

[MS-OODF3] Microsoft Corporation, "Office Implementation Information for ODF 1.2 Standards Support".

[MS-OODF] Microsoft Corporation, "Office Implementation Information for ODF 1.1 Standards Support".

[MS-PPT] Microsoft Corporation, "PowerPoint (.ppt) Binary File Format".

[MS-XLSB] Microsoft Corporation, "Excel (.xlsb) Binary File Format".

[MS-XLS] Microsoft Corporation, "Excel Binary File Format (.xls) Structure".

[MSDN-COMPAC] Microsoft Corporation, "Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats", Microsoft Download Center, http://www.microsoft.com/downloads/details.aspx?familyid=941B3470-3AE9-4AEE-8F43-C6BB74CD1466&displaylang=en

[ODF1.2] OASIS, "Open Document Format for Office Applications (OpenDocument) Version 1.2", 29 September 2011, http://docs.oasis-open.org/office/v1.2/os/OpenDocument-v1.2-os.html

[ODF] OASIS, "Open Document Format for Office Applications (OpenDocument) v1.1", 1 February 2007, http://docs.oasis-open.org/office/v1.1/OS/OpenDocument-v1.1-html/OpenDocument-v1.1.html

[RELAXNG] OASIS, Clark, J., Ed., and Makoto, M., Ed., "RELAX NG Specification", 3 December 2001, http://relaxng.org/spec-20011203.html

2  Microsoft Word Persistence Formats

Microsoft Word supports primarily four file formats:

§  Word Binary File Format, as described in [MS-DOC]

§  Ecma Office Open XML File Format, as described in [ECMA-376]

§  Office Open XML File Format, as described in [ISO/IEC29500:2011]

§  Open Document Format for Office Applications (OpenDocument), as described in [ODF] and [ODF1.2]