There is a time for all good things to come to an end, and the time has come to shut down OpenXmlDeveloper.org.
Screen-casts and blog posts: Content on OpenXmlDeveloper.org will be moving to EricWhite.com.
Forums: We are moving the forums to EricWhite.com and StackOverflow.com. Please do not post in the forums on OpenXmlDeveloper.org. Instead, please post in the forums at EricWhite.com or at StackOverflow.com.
Please see this blog post for more information about my plans moving forward. Cheers, Eric
Open XML is based on a document format originally developed by Microsoft Corporation. OpenDocument file format is based on a file format originally developed by the StarDivision of Sun Microsystems. This page provides a short summary of some of the key differences between the two formats.
The two formats reflect the capabilities of their respective application suites with Open XML developed to serialize documents created by Microsoft Office, and ODF developed to serialize documents created by StarOffice, which later became Open Office.
From a developer perspective, one of the most noticeable distinctions is a difference in philosophy in the markup. Open XML features an element-centric approach, and tends toward deeper element hierarchy. OpenDocument format features an XML mixed content approach, and uses an attribute centric approach to markup. To illustrate these differences, consider markup for a paragraph that contains a bolded word.
The following markup reflects that Open XML divides paragraphs (w:p) into runs (w:r), which then contain text (w:t) elements. The bolded run contains run properties (w:rPr), which then contains the bold element (w:b) to indicate that the text in the run is bold.
<w:p> <w:r> <w:t xml:space="preserve">This is a </w:t> </w:r> <w:r> <w:rPr> <w:b /> </w:rPr> <w:t>bold</w:t> </w:r> <w:r> <w:t xml:space="preserve"> word.</w:t> </w:r></w:p>
The following markup reflects that ODF represents paragraphs (text:p) using XML mixed content (interspersed text nodes and elements). The bolded text is contained in a span element (text:span), which contains a style name that refers to a style in which text is bolded. Additionally, it reflects a shallower element hierarchy, with the style represented by an XML attribute (text:style-name).
<text:p text:style-name="P1"> This is a<text:s/><text:span text:style-name="T2">bold</text:span><text:s/>word.</text:p>
Office Online: Differences between the OpenDocument Text (.odt) format and the Word (.docx) format.
Wikipedia: Comparison of Office Open XML and OpenDocument