ODF

This page is about the Open Document Format (ODF) for office applications, including the Open Document Format Formula (ODFF, OpenFormula).
 * For more technical information about ODF, see Development/ODF_Implementer_Notes

Intro
LibreOffice natively implements ODF versions 1.0/1.1, 1.2, 1.2 with extensions, 1.3, or 1.3 with extensions (the latter two since release 7.0). This includes the OpenDocument Format Formula (OpenFormula a.k.a. ODFF) specifications as well since ODF version 1.2.

LibreOffice typically adopts the latest stable version of ODF as published by OASIS.

The ODF specification documents can be accessed through the OASIS ODF Technical Committee page.

ODF-related bugs
All bugs related to ODF interoperability have the "odf" whiteboard entry:
 * ODF Bugs or ODF Meta Bug

Bugs specifically about writing ODF files that fail to validate against the ODF schemas have the "odf_validation" whiteboard entry:
 * ODF Validation Bugs

ODF Extensions

 * For in-depth information regarding LibreOffice extensions to ODF, see Development/ODF Implementer Notes

Why does LibreOffice save extended ODF by default?
In order to make good standards, OASIS requires to have three conforming implementations upon approval of a standard, preferably more (see the OASIS approval process section 3.4.1). As such, we make it a habit to implement our proposals, and default to saving an extended file format that allows us to serialize and use new features. Over time, as these new features are standardized and we ship new versions of LibreOffice, we (typically) transparently migrate our code to use the agreed standard while retaining support for our original implementations.

In fact, this workflow has been the normal practice of both OpenOffice.org and LibreOffice for many years, as is reflected in the source of the features below. Many core features require serialization in the document format, and delaying all such features for (sometimes) several years while the standards process catches up is not a very sensible approach.

ODF Version Choice
For most purposes, we suggest that people use the latest published version of ODF, currently v1.3.

UI
LibreOffice permits switching the version of ODF it writes. Open the options page, and select the desired version (currently 1.0/1.1, 1.2, 1.2 extended, 1.3, or 1.3 extended) from the "ODF format version" dropdown.

LibreOffice 3.6 adds another option, labeled "1.2 extended (compat mode)", that writes out incorrect, but compatible-with-legacy-applications ODF.

ODFValidator
The primary online validator available is the ODF Toolkit Validator, made available online by the Document Foundation:
 * ODF Validator servlet
 * ODF Validator, alternative url

Office-o-tron

 * https://code.google.com/p/officeotron/
 * ''(2014-11-17 - The online-hosted version isn't working for me)

Quick instructions on building/running office-o-tron locally: ant application  # You may need to install ant and java first java -jar dist/officeotron-0.7.0.jar ~/my-test-file.docx ''# Takes ODF, OOXML, and ... more?''
 * Download a ZIP of the code from the list (I grabbed v0.7.0)
 * Unzip the file
 * In the same directory as the build.xml file, run:
 * The useful JAR is in dist/. Run it like this:

Older Validator (Deprecated)
There is an ODF 1.0-only validator available via the OpenDocumentFellowship's page, however the site is unmaintained and self-proclaimed "out of date", so we only metion it here to recommend against using it:
 * http://opendocumentfellowship.com/validator

Validity of LibreOffice Documents
By default, LibreOffice ODF documents contain certain LibreOffice-specific extensions (as explained elsewhere on this page). In some many circumstances, this means that the documents may not pass certain Validators. If you would like to have a document that validates 100% as ODF, follow the instructions in the section above and choose a non-extended format in the dropdown. Of course, be aware that choosing a strict, non-extended format is not the default behavior for LibreOffice and may cause data loss.

If you save a document as "ODF 1.2" or "ODF 1.3" and it does not validate as correct, please let us know in a bug report. Remember, only submit a bug report if the file is exported as ODF 1.2 (non-extended), or if the file is exported as "ODF 1.2 Extended" or "ODF 1.3 Extended" and you manually select the corresponding "Extended Conforming" validation mode, which is not the default.

Thanks!