Before you start
Learn what to expect from this tutorial, and how to get the most out of it.
Even from the early days of computers in the office, word processors, spreadsheets, presentation software have been the giants among applications. From Lotus® 1-2-3 and WordStar to today's behemoth integrated office suites, much of the information valuable to computer users is maintained in the saved files of office apps. Recently people and organizations are more conscious about the importance of open data formats. You don't entirely own your data if the only way to use it is through the interface of a proprietary application. With the acceptance of XML as lingua franca for semi-structured data, users inevitably began to demand open formats for their office apps, preferably in XML. Users want to be able to make some sense of what's in their saved files, and to use a variety of tools on them.
Responding to such demands In 2002, the Organization for the Advancement of Structured Information Standards (OASIS) began an effort to create a standard for office application files, formally called OASIS Open Document Format for Office Applications and popularly abbreviated ODF. The International Organization for Standardization (ISO) followed up with acceptance of ODF as an international standard (ISO/IEC 26300). After years of overall development, ODF nears version 1.2 and covers spreadsheets, word processor documents, presentation files, drawings, and more. You've probably come across files with extensions such as .odt, .ods, .odp, or .odd. Obviously you can process such files by running an office application suite. But sometimes you need more control, or you need to do things that are not the typical role for office applications. Suppose you wanted to develop a system that automatically generated open document files from a Web form, or perhaps a search engine for office documents. In such cases you need a good understanding of the storage format, and this tutorial offers an easy start.
This tutorial is written for developers who are familiar with XML and XML Namespaces. It might be useful to have some familiarity with XHTML. See Resources for articles and tutorials covering these topics. You should have an application that can create and open ODF files, such as the OpenOffice.org application suite or IBM Lotus Symphony.