autodetect : Detects the ODF version of the root document from the given ODF package. ODF documents with version 1.2/1.3 will be validated against conformance, version 1.0/1.1 against none strict. In all other choices the document is validated with respect to the selected OpenDocument version regardless of the version information that is included in the file
conformant : Checks the basic requirements conforming OpenDocument documents must meet. This modes considers the version of the checked documents. This means that for OpenDocument v1.2/1.3 documents (or if OpenDocument v1.2/1.3) has been selected) the conformance definitions of the OpenDocument v1.2/1.3 specification are taken as basis, while those of the OpenDocument v1.1/v1.0 specification are taken as basis for OpenDocument v1.1/v1.0 documents. Please note that not all provisions for conforming documents are checked.
extended conformance test: For OpenDocument v1.2/1.3 documents (or if OpenDocument v1.2/1.3 has been selected), the basic requirements of extended conforming ODF documents are checked. For OpenDocument v1.0/v1.1 documents (or if OpenDocument v1.0/v1.1 has been selected) this mode equals the conformance test mode.
validation: For OpenDocument v1.1/v1.0 documents (or if OpenDocument v1.1/v1.0 has been selected) the selected document is validated in regard of the OpenDocument v1.1/v1.0 schema. For OpenDocument v1.2/1.3 documents (or if OpenDocument v1.2/1.3 has been selected) this mode equals the conformance test mode.
strict validation: For OpenDocument v1.1/v1.0 documents (or if OpenDocument v1.1/v1.0 has been selected) the selected document is validated in regard of the strict OpenDocument v1.1/v1.0 schema. For OpenDocument v1.2/1.3 documents (or if OpenDocument v1.2/1.3 has been selected) this mode equals the conformance test mode.
For OpenDocument v1.1/v1.0 documents, the validation and strict validation tests are more restrictive than a conformance test. Please note that this means that errors may be reported for documents that are actually conforming to the ODF specification.
The strict validation test is recommended for developers that want to make sure that an OpenDocument v1.0/v1.1 document does not only validate in regards to the ODF schema, but also does not use any extensions. The recommended mode for OpenDocument v1.2 documents is conformance test.
The following items are checked by the validation service:
OpenDocument v1.2/1.3 documents
If the test type is conformance test, and if the file is not a formula file, then the sub files content.xml, styles.xml, meta.xml and settings.xml are validated with respect to the OpenDocument v1.2/1.3 schema.
If the test type is extended conformance test, and if the file is not a formula file, then the sub files content.xml, styles.xml, meta.xml and settings.xml are pre-processed as described in section 1.4.2.1 of the OpenDocument v1.2 specification (that is foreign elements and attributes are removed), and are then validated with respect to the OpenDocument v1.2/1.3 schema.
OpenDocument v1.1/1.0 documents
If the test type is conformance test, and if the file is not a formula file, then the sub files content.xml, styles.xml, meta.xml and settings.xml are pre-processed as described in section 1.5 of the OpenDocument specification (that is foreign elements and attributes are removed), and are then validated with respect to the schema of the selected OpenDocument version.
If the test type is validation, and if the file is not a formula file, then the sub files content.xml, styles.xml, meta.xml and settings.xml are validated with respect to the schema of the selected OpenDocument version. Pre-processing of foreign elements and attributes is not applied.
If the test type is strict validation, and if the file is not a formula file, then the sub files content.xml, styles.xml, meta.xml and settings.xml are validated with respect to the strict schema of the selected OpenDocument version. Pre-processing of foreign elements and attributes is not applied.
All versions
If the file is a formula file, then the sub file content.xml is validated with respect to the MathML 3.0 W3C RelaxNG schema. The sub files styles.xml, meta.xml and settings.xml are checked as described for other document types.
The file META-INF/manifest.xml is validated with respect to the manifest schema of the selected ODF specification.
If the file is an ODF 1.2/1.3 file, then the META-INF/documentsignatures.xml and META-INF/macrosignatures.xml sub files are validated with respect to the digital signatures schema of the ODF 1.2/1.3 specification.
For all embedded objects in ODF format, the content.xml, styles.xml, meta.xml and settings.xml are validated as described for the main document above
It is checked whether the file itself ans all embedded objects in ODF format contain at least a content.xml or styles.xml sub file.
This services is based on the Apache ODF Validator and Sun's Multi-Schema XML Validator (MSV) is used for all validation tasks.
The following actions take place before or during the validation:
A DTD document declaration within a manifest.xml file is ignored. For the logging level verbose, an information is displayed if this happens
Note: Very early ODF implementations in OpenOffice.org wrongly included a document type declaration. Ignoring the document type enables the validation of the manifest despite of this error.
A namespace "http://openoffice.org/2001/manifest" within a manifest.xml file is changed to "urn:oasis:names:tc:opendocument:xmlns:manifest:1.0". For the logging level verbose, an information is displayed if this happens.
Note: Early ODF implementations in OpenOffice.org used the wrong namespace. Changing it to the correct one enables the validation of the manifest despite the wrong namespace.
Namespaces defined in the ODF v1.0 Committee Draft 2 are replaced with those of the ODF v1.0 OASIS Standard. For the logging level verbose, an information is displayed if this happens.
Note: Changing the namespaces enables the validation of documents that conform to the ODF v1.0 CD2. Such documents have been saved by OpenOffice.org 1.0 beta versions.
The value of draw:points attributes is truncated to 2048 characters. For the logging level verbose, an information is displayed if this happens.
Note: The truncation of this attribute value avoids a stack overflow in MSV while validating the attribute value against a regular expression.
A namespace "http://openoffice.org/2004/database" within a content.xml file is changed to "urn:oasis:names:tc:opendocument:xmlns:database:1.0", and a namespace "http://openoffice.org/2004/office" within a content.xml file is changed to "urn:oasis:names:tc:opendocument:xmlns:office:1.0". For the logging level verbose, an information is displayed if this happens.
Note: These namespaces were used in OpenOffice.org 2.x database documents, because database documents are included in OpenDocument since version 1.2 only. Changing them enables the validation of OpenOffice.org 2.x database documents.
The following schemas are being used:
MathML: The MathML 3.0 (2nd edition) schema from http://www.w3.org/Math/RelaxNG/mathml3/mathml3.rng is used in general for MathML validation.
OpenDocument RELAX NG Schemas: The schemas used are those available on the OASIS OpenDocument Technical Committee web page.
This service is provided to you by The Document Foundation