From 3d5db6d1ac1703c8dff949f2af174cb4db2a101d Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Fri, 1 Aug 2025 11:58:35 +0000 Subject: [PATCH 01/12] FIX: Handle unknown versions gracefully - if no schema found for a particular version then throw an exceptions that reports the error and lists the currently supported versions; - added `1.4` to `Version` enum in preparation for 1.4 validation; - added static method to `Version` enum to output the supported versions; - if detected version is `UNKNOWN` then default to v1.1 (prep for v1.0 and v1.1 validation); and - bumped version to `0.18.5-SNAPSHOT` in project poms. --- odf-apps/pom.xml | 2 +- odf-core/pom.xml | 2 +- .../odf/validation/ValidatingParserImpl.java | 4 ++++ .../odf/xml/OdfSchemaFactory.java | 6 +++++- .../org/openpreservation/odf/xml/Version.java | 17 +++++++++++++++++ .../openpreservation/odf/xml/VersionTest.java | 3 ++- odf-reporting/pom.xml | 2 +- pom.xml | 2 +- 8 files changed, 32 insertions(+), 6 deletions(-) diff --git a/odf-apps/pom.xml b/odf-apps/pom.xml index f4f8ca14..70480105 100644 --- a/odf-apps/pom.xml +++ b/odf-apps/pom.xml @@ -5,7 +5,7 @@ org.openpreservation.odf odf-validator - 0.18.4 + 0.18.5-SNAPSHOT ../pom.xml diff --git a/odf-core/pom.xml b/odf-core/pom.xml index 798fca85..6d765226 100644 --- a/odf-core/pom.xml +++ b/odf-core/pom.xml @@ -5,7 +5,7 @@ org.openpreservation.odf odf-validator - 0.18.4 + 0.18.5-SNAPSHOT ../pom.xml diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java index 1bca12cb..edc9808e 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java @@ -137,6 +137,10 @@ private final List validateOdfXmlDocument(final OdfPackage odfPackage, .getForeignNamespaces())))); return messageList; } + Version version = getVersionFromPath(odfPackage, xmlPath); + if (version == Version.UNKNOWN) { + version = Version.ODF_11; + } Schema schema = (ns == null) ? null : SCHEMA_FACTORY.getSchema(ns, getVersionFromPath(odfPackage, xmlPath)); diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java index 7a5f4b9d..765070e0 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java @@ -132,7 +132,11 @@ public final Schema getSchemas(final Set namespaces, final Versio private final Source[] getSources(final Set namespaces, final Version version) { final List sources = new ArrayList<>(); for (final OdfNamespaces namespace : namespaces) { - final String schemaPath = SCHEMA_LOCATION_MAP.get(version).get(namespace); + Map schemaMap = SCHEMA_LOCATION_MAP.get(version); + if (schemaMap == null) { + throw new IllegalArgumentException("No schemas found for ODF version: " + version.version + ", supported versions are: " + Version.supportedVersions()); + } + final String schemaPath = schemaMap.get(namespace); if (schemaPath == null) { continue; } diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java b/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java index 699ca5ce..5648cc1f 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java @@ -25,6 +25,11 @@ public enum Version { */ ODF_13("1.3"), + /** + * ODF version 1.4. + */ + ODF_14("1.4"), + /** * Unknown version. */ @@ -35,6 +40,18 @@ public enum Version { */ public final String version; + public static final String supportedVersions() { + StringBuilder sb = new StringBuilder(); + String prepend = ""; + for (Version v : Version.values()) { + if (v != UNKNOWN) { + sb.append(prepend).append(v.version); + } + prepend = ", "; + } + return sb.toString().trim(); + } + /** * Constructs a {@code Version} enum constant with the specified version string. * diff --git a/odf-core/src/test/java/org/openpreservation/odf/xml/VersionTest.java b/odf-core/src/test/java/org/openpreservation/odf/xml/VersionTest.java index a3c5adda..9edd33a7 100644 --- a/odf-core/src/test/java/org/openpreservation/odf/xml/VersionTest.java +++ b/odf-core/src/test/java/org/openpreservation/odf/xml/VersionTest.java @@ -11,6 +11,7 @@ public void testFromVersion() { assertSame(Version.ODF_11, Version.fromVersion("1.1")); assertSame(Version.ODF_12, Version.fromVersion("1.2")); assertSame(Version.ODF_13, Version.fromVersion("1.3")); - assertSame(Version.UNKNOWN, Version.fromVersion("1.4")); + assertSame(Version.ODF_14, Version.fromVersion("1.4")); + assertSame(Version.UNKNOWN, Version.fromVersion("1.5")); } } diff --git a/odf-reporting/pom.xml b/odf-reporting/pom.xml index b8d3d582..4d6787b8 100644 --- a/odf-reporting/pom.xml +++ b/odf-reporting/pom.xml @@ -5,7 +5,7 @@ org.openpreservation.odf odf-validator - 0.18.4 + 0.18.5-SNAPSHOT ../pom.xml diff --git a/pom.xml b/pom.xml index ffaf3ffe..a52e866c 100644 --- a/pom.xml +++ b/pom.xml @@ -10,7 +10,7 @@ org.openpreservation.odf odf-validator - 0.18.4 + 0.18.5-SNAPSHOT pom From 742524f7cbdc55cbec4e0dfe363b9969ac4d7aaf Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Aug 2025 10:11:47 +0000 Subject: [PATCH 02/12] FIX: GitHub copilot suggestions - used derived version rather than call versionFromPath twice; and - moved prepend assignment inside string build condition. --- .../openpreservation/odf/validation/ValidatingParserImpl.java | 2 +- .../src/main/java/org/openpreservation/odf/xml/Version.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java index edc9808e..2f1fa76a 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java @@ -143,7 +143,7 @@ private final List validateOdfXmlDocument(final OdfPackage odfPackage, } Schema schema = (ns == null) ? null : SCHEMA_FACTORY.getSchema(ns, - getVersionFromPath(odfPackage, xmlPath)); + version); if (schema != null) { try { XmlValidationResult validationResult = this.validator.validate(parseResult, diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java b/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java index 5648cc1f..96f940a8 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java @@ -46,8 +46,8 @@ public static final String supportedVersions() { for (Version v : Version.values()) { if (v != UNKNOWN) { sb.append(prepend).append(v.version); + prepend = ", "; } - prepend = ", "; } return sb.toString().trim(); } From 0fe899960ac551c8775edd3d4bd5c571f1bc7ca4 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 5 Aug 2025 10:11:47 +0000 Subject: [PATCH 03/12] FEAT: ODF 1.4 validation - added schema documents for ODF v1.4 to resources; - added new schema documents to schema map; and - checked in batch files for `0.18.5-SNAPSHOT`. --- .../odf/xml/OdfSchemaFactory.java | 17 + .../odf/schema/odf/1.4/dsig-schema.rng | 60 + .../odf/schema/odf/1.4/manifest-schema.rng | 237 + .../odf/schema/odf/1.4/metadata.owl | 62 + .../odf/schema/odf/1.4/package-metadata.owl | 59 + .../odf/schema/odf/1.4/schema.rng | 18572 ++++++++++++++++ odf-validator | 2 +- odf-validator.bat | 2 +- 8 files changed, 19009 insertions(+), 2 deletions(-) create mode 100644 odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/dsig-schema.rng create mode 100644 odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/manifest-schema.rng create mode 100644 odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/metadata.owl create mode 100644 odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/package-metadata.owl create mode 100644 odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/schema.rng diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java index 765070e0..4e77fbaa 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java @@ -22,6 +22,7 @@ public class OdfSchemaFactory { private static final String SCHEMA_ROOT = "org/openpreservation/odf/schema/"; private static final String ODF_ROOT = SCHEMA_ROOT + "odf/"; + private static final String ODF_14_ROOT = ODF_ROOT + "1.4/"; private static final String ODF_13_ROOT = ODF_ROOT + "1.3/"; private static final String ODF_12_ROOT = ODF_ROOT + "1.2/"; private static final String ODF_11_ROOT = ODF_ROOT + "1.1/"; @@ -32,6 +33,11 @@ public class OdfSchemaFactory { private static final String SCHEMA_NAME_STRICT = "strict-schema.rng"; private static final String SCHEMA_NAME_METADATA = "metadata.owl"; private static final String SCHEMA_NAME_PACKAGE_METADATA = "package-metadata.owl"; + private static final String SCHEMA_PATH_DSIG_14 = ODF_14_ROOT + SCHEMA_NAME_DSIG; + private static final String SCHEMA_PATH_MANIFEST_14 = ODF_14_ROOT + SCHEMA_NAME_MANIFEST; + private static final String SCHEMA_PATH_ODF_14 = ODF_14_ROOT + SCHEMA_NAME; + private static final String SCHEMA_PATH_METADATA_14 = ODF_14_ROOT + SCHEMA_NAME_METADATA; + private static final String SCHEMA_PATH_PACKAGE_METADATA_14 = ODF_14_ROOT + SCHEMA_NAME_PACKAGE_METADATA; private static final String SCHEMA_PATH_DSIG_13 = ODF_13_ROOT + SCHEMA_NAME_DSIG; private static final String SCHEMA_PATH_MANIFEST_13 = ODF_13_ROOT + SCHEMA_NAME_MANIFEST; private static final String SCHEMA_PATH_ODF_13 = ODF_13_ROOT + SCHEMA_NAME; @@ -53,6 +59,7 @@ public class OdfSchemaFactory { private static final Map> schemaMap() { final Map> map = new EnumMap<>(Version.class); + map.put(Version.ODF_14, schemaMap14()); map.put(Version.ODF_13, schemaMap13()); map.put(Version.ODF_12, schemaMap12()); map.put(Version.ODF_11, schemaMap11()); @@ -60,6 +67,16 @@ private static final Map> schemaMap() { return map; } + private static final Map schemaMap14() { + final Map map = new EnumMap<>(OdfNamespaces.class); + map.put(OdfNamespaces.DSIG, SCHEMA_PATH_DSIG_14); + map.put(OdfNamespaces.MANIFEST, SCHEMA_PATH_MANIFEST_14); + map.put(OdfNamespaces.ODF, SCHEMA_PATH_METADATA_14); + map.put(OdfNamespaces.PKG, SCHEMA_PATH_PACKAGE_METADATA_14); + map.put(OdfNamespaces.OFFICE, SCHEMA_PATH_ODF_14); + return map; + } + private static final Map schemaMap13() { final Map map = new EnumMap<>(OdfNamespaces.class); map.put(OdfNamespaces.DSIG, SCHEMA_PATH_DSIG_13); diff --git a/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/dsig-schema.rng b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/dsig-schema.rng new file mode 100644 index 00000000..b79153e9 --- /dev/null +++ b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/dsig-schema.rng @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1.4 + + + diff --git a/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/manifest-schema.rng b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/manifest-schema.rng new file mode 100644 index 00000000..a601471b --- /dev/null +++ b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/manifest-schema.rng @@ -0,0 +1,237 @@ + + + + + + + + + + + + + + + + + + + + + Blowfish CFB + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SHA1/1K + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + edit + presentation-slide-show + read-only + + + + + + + + + + + + + + + + + + + + + PGP + + + + + PBKDF2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1.4 + + + + + [^:]+:[^:]+ + + + + + + + + + + + + + + + + SHA1 + + + + + + + + + + + + + + diff --git a/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/metadata.owl b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/metadata.owl new file mode 100644 index 00000000..ca046fd4 --- /dev/null +++ b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/metadata.owl @@ -0,0 +1,62 @@ + + + + + + + + + + + Open Document Schema Metadata Manifest Ontology + + + + + + The unique content.xml from the root path of the document + + + + + + The unique styles.xml from the root path of the document + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/package-metadata.owl b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/package-metadata.owl new file mode 100644 index 00000000..b1ae79a2 --- /dev/null +++ b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/package-metadata.owl @@ -0,0 +1,59 @@ + + + + + + + + + + Open Document Package Metadata Manifest Ontology + + + + + + + + + + + + + + + + Related to dcterms:hasPart of the Dublin Core Metadata Initiative + + + + + Used for any metadata file in the document + + + + + + + + + A string representing the MIME media type of a file (see RFC4288). + + + + + + + diff --git a/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/schema.rng b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/schema.rng new file mode 100644 index 00000000..0320326b --- /dev/null +++ b/odf-core/src/main/resources/org/openpreservation/odf/schema/odf/1.4/schema.rng @@ -0,0 +1,18572 @@ + + + + + + + + + + + + + + + + + + (([\i-[:]][\c-[:]]*)?:)?.+ + 1 + + + + + + + + + + + + + + + + + + + + + + + + \[(([\i-[:]][\c-[:]]*)?:)?.+\] + 3 + + + + + + + + + + + + + + + + + rgb + hsl + + + + + + + clockwise + counter-clockwise + + + + + + + + + + + + + + + + + + + + + discrete + linear + paced + spline + + + + + + + + + translate + scale + rotate + skewX + skewY + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + forward + reverse + + + + + + + + + + + + in + out + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + An IRI-reference as defined in [RFC3987]. See ODF 1.4 Part 3 section 18.3. + + + + + + + + + + true + false + + + + + + + + + + + + + + + + + + + + + + + + + + ($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+ + + + + + + ($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+(:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+$?[0-9]+)? + + + ($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+:($?([^\. ']+|'([^']|'')+'))?\.$?[0-9]+ + + + ($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+:($?([^\. ']+|'([^']|'')+'))?\.$?[A-Z]+ + + + + + + Value is a space separated list of "cellRangeAddress" patterns + + + + + + + + + + + + + + + + + + + + + + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + x + y + z + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + major + minor + + + + + + + + + + + + + + + + + + + + + + + + + start + end + top + bottom + + + + + + start + center + end + + + + + + + top-start + bottom-start + top-end + bottom-end + + + + + + + + + wide + high + balanced + + + + + custom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + row + column + both + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + rect\([ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)))|(auto))([ ]*,[ ]*((-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))))|(auto)){3}[ ]*\) + + + + + #[0-9a-fA-F]{6} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + sum + + + + + + + replace + sum + + + + + + + + + + + default + on-click + with-previous + after-previous + timing-root + main-sequence + interactive-sequence + + + + + + + + + + + + + + + + + custom + entrance + exit + emphasis + motion-path + ole-action + media-call + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + discrete + linear + paced + spline + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + transparent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + auto + column + page + + even-page + odd-page + + + + + + + auto + column + page + + even-page + odd-page + + + + + + + + + gregorian + gengou + ROC + hanja_yoil + hanja + hijri + jewish + buddhist + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short + medium + long + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + + + + + + + new + replace + + + + + + + + + + + + nohref + + + + + + + + + + + + + + + + + full + section + cut + arc + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + embed + + + + + onLoad + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + scale + scale-min + + + + + + + + scale + scale-min + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + first + last + all + media + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + table + query + command + + + + + + + + + + + + + + + + + value + formula + + + + + + + + + value + formula + none + + + + + + + + + value + none + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + remove + freeze + hold + transition + auto + inherit + + + + + + + + + remove + freeze + hold + auto + default + transition + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + center + + + + + + start + end + top + bottom + + + + + + start + center + end + + + + + + + + + + + flat + 3d + + + + + + + + + fixed + language + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + auto + always + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + i + I + + + + + + + + a + A + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + auto + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + indefinite + + + + + + + + + never + always + whenNotActive + inherit + + + + + + + + + never + always + whenNotActive + default + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ltr + ttb + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + objectBoundingBox + + + + + + + + + + + pad + reflect + repeat + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + accepted + rejected + pending + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + start + end + left + right + center + justify + + + + + + + + + + page + frame + paragraph + char + as-char + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + float + + + + + + + + percentage + + + + + + + + currency + + + + + + + + + + + + + date + + + + + + + + time + + + + + + + + boolean + + + + + + + + string + + + + + + + + + + + error + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + top + middle + bottom + from-top + below + + + + + + + + + + + + + + page + page-content + + page-content-bottom + + page-content-top + frame + frame-content + paragraph + paragraph-content + char + line + baseline + text + + + + + + + + + lr-tb + lr + rl-tb + rl + tb-rl + tb + tb-lr + + sideways-rl + sideways-lr + page + + + + + + + + + + + + + + + + + + boolean + short + int + long + double + string + datetime + base64Binary + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [A-Za-z0-9]{1,8} + + + + + + + + + + + + + + + + + + + non-primitive + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + equal-integer + is-boolean + equal-boolean + equal-use-only-zero + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + no-nulls + nullable + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + none + + + + + onRequest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + none + + + + + onRequest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + boolean + short + int + long + double + string + + + + + + + + + + + + + + + + + + + + + + + + + bit + boolean + tinyint + smallint + integer + bigint + float + real + double + numeric + decimal + char + varchar + longvarchar + date + time + timestmp + binary + varbinary + longvarbinary + sqlnull + other + object + distinct + struct + array + blob + clob + ref + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + primary + unique + foreign + + + + + + + + + + + cascade + restrict + set-null + no-action + set-default + + + + + + + cascade + restrict + set-null + no-action + set-default + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + parallel + perspective + + + + + + + + + + + + + + + + + + + + + + flat + phong + gouraud + draft + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + + + + new + replace + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + standard + lines + line + curve + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + flat + phong + gouraud + draft + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + parallel + perspective + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + segments + rectangle + + + + + + + + + + + + + + + + + normal + path + shape + + + + + + + path + shape + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + top-left + top + top-right + left + center + right + bottom-left + bottom-right + + + + + + auto + left + right + up + down + horizontal + vertical + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + single + double + triple + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + always + screen + printer + none + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + rect + round + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -0.5 + 0.5 + + + + + roman + swiss + modern + decorative + script + system + + + + + fixed + variable + + + + + normal + italic + oblique + + + + + normal + small-caps + + + + + normal + bold + 100 + 200 + 300 + 400 + 500 + 600 + 700 + 800 + 900 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + + + + + get + post + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + table + query + command + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + float + + + + + + + + + + + + percentage + + + + + + + + + + + + currency + + + + + + + + + + + + + + + + + date + + + + + + + + + + + + time + + + + + + + + + + + + boolean + + + + + + + + + + + + string + + + + + + + + + + + void + + + + + + + + void + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + horizontal + vertical + + + + + + + + linear + axial + radial + ellipsoid + square + rectangular + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left + center + right + + + + + horizontal + horizontal-on-odd + horizontal-on-even + + + + + + + + + + + + + + + + + + + + + + + + + + + + avoid-overlap + center + top + top-right + right + bottom-right + bottom + bottom-left + left + top-left + inside + outside + near-origin + + + + + + + + [A-Za-z]{1,8} + + + + + -?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)) + + + + + continuous + skip-white-space + + + + + none + solid + dotted + dash + long-dash + dot-dash + dot-dot-dash + wave + + + + + none + single + double + + + + + auto + normal + bold + thin + medium + thick + + + + + + + + + + selection + selection-indices + + + + + + + + + + + + + + + + table + query + sql + sql-pass-through + value-list + table-fields + + + + + + + + + + + To avoid inclusion of the complete MathML schema, anything is allowed within a math:math top-level element + + + + + + + + + + + + + + + + + + + + + [^:]+:[^:]+ + + + + + none + current + parent + + + + + 0.0 + + + + + + + + ([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)) + + + + + + ([0-9]+(\.[0-9]*)?|\.[0-9]+)% + + + + + ([0-9]+(\.[0-9]*)?|\.[0-9]+)(px) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + short + long + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + into-default-style-data-style + into-english-number + keep-text + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1.4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + + + + + + + + + + simple + + + + + + + replace + + + + + onLoad + + + + + + + + + + + + + + + + + + + new + replace + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + float + + + + + + date + + + + + + time + + + + + + boolean + + + + + + string + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text:page-count + text:paragraph-count + text:word-count + text:character-count + text:table-count + text:image-count + text:object-count + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text:reference-ref + text:bookmark-ref + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + value + unit + gap + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text:identifier + text:address + text:annote + text:author + text:booktitle + text:chapter + text:edition + text:editor + text:howpublished + text:institution + text:journal + text:month + text:note + text:number + text:organizations + text:pages + text:publisher + text:school + text:series + text:title + text:report-type + text:volume + text:year + text:url + text:custom1 + text:custom2 + text:custom3 + text:custom4 + text:custom5 + text:isbn + text:issn + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -?([0-9]+(\.[0-9]*)?|\.[0-9]+)% + + + + + \([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc))){2}[ ]*\) + + + + + -?[0-9]+,-?[0-9]+([ ]+-?[0-9]+,-?[0-9]+)* + + + + + + + + ([0-9]*[1-9][0-9]*(\.[0-9]*)?|0+\.[0-9]*[1-9][0-9]*|\.[0-9]*[1-9][0-9]*)((cm)|(mm)|(in)|(pt)|(pc)|(px)) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + title + outline + subtitle + text + graphic + object + chart + table + orgchart + page + notes + handout + header + footer + date-time + page-number + + + + + + + + + + fixed + current-date + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + previous-page + next-page + first-page + last-page + hide + stop + execute + show + verb + fade-out + sound + last-visited-page + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + embed + + + + + onRequest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + enabled + disabled + + + + + + + enabled + disabled + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + new + replace + + + + + + + + + + + + + + + + + + + + + none + from-left + from-top + from-right + from-bottom + from-center + from-upper-left + from-upper-right + from-lower-left + from-lower-right + to-left + to-top + to-right + to-bottom + to-upper-left + to-upper-right + to-lower-right + to-lower-left + path + spiral-inward-left + spiral-inward-right + spiral-outward-left + spiral-outward-right + vertical + horizontal + to-center + clockwise + counter-clockwise + + + + + none + fade + move + stripes + open + close + dissolve + wavyline + random + lines + laser + appear + hide + move-short + checkerboard + rotate + stretch + + + + + slow + medium + fast + + + + + + + + + + [0-9]+\* + + + + + row + column + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + + [A-Za-z0-9]{1,8} + + + + + + + + + + + + none + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -?([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)% + + + + + + + + + + + + unchecked + checked + unknown + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + no-repeat + repeat + stretch + + + + + + + left + center + right + top + bottom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + + + automatic + + + + named-symbol + + + + square + diamond + arrow-down + arrow-up + arrow-right + arrow-left + bow-tie + hourglass + circle + star + x + plus + asterisk + horizontal-bar + vertical-bar + + + + + + image + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + cubic-spline + b-spline + step-start + step-end + step-center-x + step-center-y + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + cuboid + cylinder + cone + pyramid + + + + + + + + + + + + + + + + + use-zero + leave-gap + ignore + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + side-by-side + stagger-even + stagger-odd + + + + + + + + + none + value + percentage + value-and-percentage + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + variance + standard-deviation + percentage + error-margin + constant + standard-error + cell-range + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + columns + rows + + + + + + + none + linear + logarithmic + moving-average + exponential + power + polynomial + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + prior + central + averaged-abscissa + + + + + + + + start + end + + + + + + + + near-axis + near-axis-other-side + outside-start + outside-end + + + + + + + at-labels + at-axis + at-labels-and-axis + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + solid + dotted + dashed + dot-dashed + + + + + + + + + + + + + + + top + middle + bottom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + manual + automatic + semi-automatic + + + + + + + none + fade-from-left + fade-from-top + fade-from-right + fade-from-bottom + fade-from-upperleft + fade-from-upperright + fade-from-lowerleft + fade-from-lowerright + move-from-left + move-from-top + move-from-right + move-from-bottom + move-from-upperleft + move-from-upperright + move-from-lowerleft + move-from-lowerright + uncover-to-left + uncover-to-top + uncover-to-right + uncover-to-bottom + uncover-to-upperleft + uncover-to-upperright + uncover-to-lowerleft + uncover-to-lowerright + fade-to-center + fade-from-center + vertical-stripes + horizontal-stripes + clockwise + counterclockwise + open-vertical + open-horizontal + close-vertical + close-horizontal + wavyline-from-left + wavyline-from-top + wavyline-from-right + wavyline-from-bottom + spiralin-left + spiralin-right + spiralout-left + spiralout-right + roll-from-top + roll-from-left + roll-from-right + roll-from-bottom + stretch-from-left + stretch-from-top + stretch-from-right + stretch-from-bottom + vertical-lines + horizontal-lines + dissolve + random + vertical-checkerboard + horizontal-checkerboard + interlocking-horizontal-left + interlocking-horizontal-right + interlocking-vertical-top + interlocking-vertical-bottom + fly-away + open + close + melt + + + + + + + + + + + + + + + + + + + + + + forward + reverse + + + + + + + + + + + + + + + + + visible + hidden + + + + + + + full + border + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + word + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + normal + ultra-condensed + extra-condensed + condensed + semi-condensed + semi-expanded + expanded + extra-expanded + ultra-expanded + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left + center + right + + + + + + + + + + + + + + + + + + + + + + + + + + + none + solid + bitmap + gradient + hatch + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + no-repeat + repeat + stretch + + scale + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + top-left + top + top-right + left + center + right + bottom-left + bottom + bottom-right + + + + + + + + + horizontal + vertical + + + + + + + + + + + + + + + + + + nonzero + evenodd + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + dash + solid + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 1 + + + + + + + + + miter + round + bevel + middle + none + + + + + + + butt + square + round + + + + + + + + + + + + none + scroll + alternate + slide + + + + + + + left + right + up + down + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + top + middle + bottom + justify + + + + + + + left + center + right + justify + + + + + + + no-wrap + wrap + + + + + + + + + + + + greyscale + mono + watermark + standard + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + visible + hidden + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + below + above + + + + + + + + + + + + automatic + left-outside + inside + right-outside + + + + + + + automatic + above + below + center + + + + + + + automatic + mm + cm + m + km + pt + pc + inch + ft + mi + + + + + + + + + + + + + + + + + straight-line + angled-line + angled-connector-line + + + + + + + fixed + free + + + + + + + + + + + + + + + + + horizontal + vertical + auto + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + correct + attractive + + + + + + + + + + + + + + + + + enabled + disabled + + + + + + + + + + + + + + + + + + + + + + standard + double-sided + + + + + + + object + flat + sphere + + + + + + + normal + inverse + + + + + + + object + parallel + sphere + + + + + + + object + parallel + sphere + + + + + + + luminance + intensity + color + + + + + + + enabled + disabled + + + + + + + replace + modulate + blend + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + visible + hidden + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + + + + content + position + size + + + + + + + + + + left + center + right + from-left + inside + outside + from-inside + + + + + + + + + + + + page + page-content + page-start-margin + page-end-margin + frame + frame-content + frame-start-margin + frame-end-margin + paragraph + paragraph-content + paragraph-start-margin + paragraph-end-margin + char + + + + + + + + + + + + + + + + + none + left + right + parallel + dynamic + run-through + biggest + + + + + + + + + + + + no-limit + + + + + + + + + + + + + full + outside + + + + + + + foreground + background + + + + + + + + + + + + clip + auto-create-new-frame + + + + + + + none + vertical + + + vertical + + + + + vertical + + + + + + + + auto + + + + + + + + iterative + once-concurrent + once-successive + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + content + thumbnail + icon + print-view + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + listtab + space + nothing + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + label-width-and-position + label-alignment + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + all + left + right + mirrored + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + + + + + + + + portrait + landscape + + + + + + + + + + + + + + + + + + + + + + + + + + + + headers + grid + annotations + objects + charts + drawings + formulas + zero-values + + + + + + + + + ttb + ltr + + + + + + + + + continue + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + horizontal + vertical + both + none + + + + + + + + + + + + + none + line + both + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + normal + + + + + + + + + + + + + + + + + + + + + + + + + start + center + justify + + + + + + + + + + + + auto + always + + + + + + + + + + + + + + + + + + + + + + + + + + + + auto + page + + + + + + + no-limit + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + ideograph-alpha + + + + + + + simple + hanging + + + + + + + normal + strict + + + + + + + top + middle + bottom + auto + baseline + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + above + below + + + + + + + left + center + right + distribute-letter + distribute-space + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text + + + + + + + + paragraph + + + + + + + + + + + section + + + + + + + + ruby + + + + + + + + table + + + + + + + + table-column + + + + + + + + table-row + + + + + + + + table-cell + + + + + + + + + + + + + + + graphic + presentation + + + + + + + + + + + + + + + drawing-page + + + + + + + + chart + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left + center + right + + + + + + char + + + + + + + + + + + + + + + + + + + + + + + font-color + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + top + middle + bottom + automatic + + + + + + + fix + value-type + + + + + + + + auto + 0 + 0deg + 0rad + 0grad + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + no-wrap + wrap + + + + + + + + none + bottom + top + center + + + + + + + none + hidden-and-protected + + + + protected + formula-hidden + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left + center + right + margins + + + + + + + + + + + + + + + + + + + + collapsing + separating + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + auto + always + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + lowercase + uppercase + capitalize + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + font-color + + + + + + + + + + + + + + + + + + + + super + sub + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + latin + asian + complex + ignore + + + + + + + + normal + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + embossed + engraved + + + + + + + + + + + + + + + + + + + + + + + + + + + font-color + + + + + + + + + + + + + + + + + + + + + + + font-color + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + letters + lines + + + + + + + + + + + + + + + + + none + + + none + accent + dot + circle + disc + + + above + below + + + + + + + + + + + + + + + + + + + fixed + line-height + + + + + + + + + + + + + + + + + + + + + true + + + none + + + + condition + + + none + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + records + current + page + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + average + count + countnums + max + min + product + stdev + stdevp + sum + var + varp + + + + + + + + + + + + + none + row + column + both + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + from-top + from-bottom + + + + + + + + + + + + + + + + + + + + + + + + + + + row + column + data + hidden + + + + + page + + + + + + + + + + + + + + + auto + average + count + countnums + max + min + product + stdev + stdevp + sum + var + varp + + + + + + + + + + + + + + + + + + + + + + + + + named + + + + + + + + previous + next + + + + + + none + member-difference + member-percentage + member-percentage-difference + running-total + row-percentage + column-percentage + total-percentage + index + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + auto + + + + + + auto + + + + + + + + + + auto + + + + + + auto + + + + + + + + + + + + + seconds + minutes + hours + days + months + quarters + years + + + + + + + + + + + + + + + + + tabular-layout + outline-subtotals-top + outline-subtotals-bottom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + data + + + + + + + + none + manual + name + + + + + + ascending + descending + + + + + + + + + + + + + + auto + average + count + countnums + max + min + product + stdev + stdevp + sum + var + varp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + row + column + both + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + column + row + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + row + column + table + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + stop + warning + information + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + self + cell-range + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text + number + + + + + + + + + + + + + + text-color + data-style-color + + + + + + window-font-color + + + + + + + background-color + + + + + + transparent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + from-another-table + to-another-table + from-same-table + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + row + column + table + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + enable + disable + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + column + row + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + + + + print-range + filter + repeat-row + repeat-column + + + + + + + + + + + + date + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + trace-dependents + remove-dependents + trace-precedents + remove-precedents + trace-errors + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + alpha-numeric + integer + double + + + + + + + + + + + + + + + + + + + + text + number + automatic + + + + + + + + ascending + descending + + + + + + + + + + + + + + + + + text + number + automatic + + + + + + + + ascending + descending + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + average + count + countnums + max + min + product + stdev + stdevp + sum + var + varp + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + copy-all + copy-results-only + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + none + unsorted + sort-ascending + + + + + + + + visible + collapse + filter + + + + + + + + + + + + + + + + + + + _self + _blank + _parent + _top + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + onRequest + + + + + + + + + + + new + replace + + + + + + + + + + + + + + + + + + + + + + + + + + simple + + + + + + + + + + + + + + + + + + + + + + + + + 1 + 2 + 3 + separator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + article + book + booklet + conference + custom1 + custom2 + custom3 + custom4 + custom5 + email + inbook + incollection + inproceedings + journal + manual + mastersthesis + misc + phdthesis + proceedings + techreport + unpublished + www + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + page + chapter + direction + text + number-no-superior + number-all-superior + number + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + name + number + number-and-name + plain-number-and-name + plain-number + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + full + path + name + name-and-extension + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text + category-and-value + caption + + + + + + + + + + + + + + + + + + + + + + + + + + + address + annote + author + bibliography-type + booktitle + chapter + custom1 + custom2 + custom3 + custom4 + custom5 + edition + editor + howpublished + identifier + institution + isbn + issn + journal + month + note + number + organizations + pages + publisher + report-type + school + series + title + url + volume + year + + + + + + + + + + + + + + + + + + + + name + number + number-and-name + plain-number + plain-number-and-name + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + right + + + + left + + + + + + + + + + + + + + + + + + + + + + + + + + + document + chapter + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left + right + inner + outer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + footnote + endnote + + + + + + + + + + page + chapter + direction + text + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + document + chapter + page + + + + + + + text + page + section + document + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + previous + next + + + + + + + + + + + + + + + + + + + + + + + + previous + current + next + + + + + + + + + + + + + + + + + text + table + text-box + image + object + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + none + + + + + condition + + + + + + + + + + + + + + + + + + + simple + + + + + + + embed + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + page + chapter + direction + text + category-and-value + caption + value + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + address + annote + author + bibliography-type + booktitle + chapter + custom1 + custom2 + custom3 + custom4 + custom5 + edition + editor + howpublished + identifier + institution + isbn + issn + journal + month + note + number + organizations + pages + publisher + report-type + school + series + title + url + volume + year + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + document + chapter + + + + + + + + + + + + + + + full + path + name + name-and-extension + area + title + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [A-Za-z][A-Za-z0-9._\-]* + + + + + + + + + + + + + + submit + reset + push + url + + + + + float + time + date + percentage + currency + boolean + string + + + + + + + + \([ ]*-?([0-9]+(\.[0-9]*)?|\.[0-9]+)([ ]+-?([0-9]+(\.[0-9]*)?|\.[0-9]+)){2}[ ]*\) + + + + + top + center + bottom + + + + + + + + + + + + + + + + + + + + + + ([0-9]?[0-9](\.[0-9]*)?|100(\.0*)?|\.[0-9]+)% + + + + + 0 + 1 + + + diff --git a/odf-validator b/odf-validator index ecb270c5..1bdc5202 100755 --- a/odf-validator +++ b/odf-validator @@ -78,5 +78,5 @@ fi exec "$JAVACMD" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions \ -Dapp.name="ODF Validator" \ - -jar odf-apps/target/odf-apps-0.18.4-jar-with-dependencies.jar \ + -jar odf-apps/target/odf-apps-0.18.5-SNAPSHOT-jar-with-dependencies.jar \ "$@" diff --git a/odf-validator.bat b/odf-validator.bat index 614e8637..f2152042 100644 --- a/odf-validator.bat +++ b/odf-validator.bat @@ -85,7 +85,7 @@ if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH% @REM Reaching here means variables are defined and arguments have been captured :endInit -"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar .\odf-apps\target\odf-apps-0.18.4-jar-with-dependencies.jar %CMD_LINE_ARGS% +"%JAVACMD%" -Dfile.encoding=UTF8 -XX:+IgnoreUnrecognizedVMOptions -Dapp.name="ODF Validator" -jar .\odf-apps\target\odf-apps-0.18.5-SNAPSHOT-jar-with-dependencies.jar %CMD_LINE_ARGS% if %ERRORLEVEL% NEQ 0 goto error goto end From 44dbcc725a2805b60e9f155620c5d1caccb87a51 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Wed, 22 Oct 2025 14:42:37 +0000 Subject: [PATCH 04/12] FIX: Build date not set properly The build date displayed by the command line app always defaults to the current date. The Maven variables to substitute the date and date format in the build properties files weren't in the parent pom. - added `` and `` Maven properties to parent pom; - made some small improvements to the `BuildVersionProvider` class: - made the properties resource reader static as they only need to be read once; - added convenience method to get the version string alone; and - improved the exception message thrown when the resources couldn't be loaded. --- .../odf/apps/BuildVersionProvider.java | 12 ++++++++---- pom.xml | 2 ++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java index 5c67f452..796ff3c4 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java @@ -11,12 +11,12 @@ public class BuildVersionProvider implements IVersionProvider { private static final String RAW_DATE_FORMAT = "${maven.build.timestamp.format}"; + private static final Properties props = fromResource("org/openpreservation/odf/apps/build.properties"); @Override public String[] getVersion() throws Exception { - Properties props = fromResource("org/openpreservation/odf/apps/build.properties"); String name = props.getProperty("project.name"); //$NON-NLS-1$ - String version = props.getProperty("release.version"); //$NON-NLS-1$ + String version = getVersionString(); String dateFormat = props.getProperty("date.format"); //$NON-NLS-1$ Date date = new Date(); if (!dateFormat.equals(RAW_DATE_FORMAT)) { @@ -30,10 +30,14 @@ public String[] getVersion() throws Exception { */ } } - return new String[] { name + " v" + version, //$NON-NLS-1$ + return new String[] { name + " " + version, //$NON-NLS-1$ "Built: " + new SimpleDateFormat("yyyy-MM-dd").format(date) }; //$NON-NLS-1$ } + public static String getVersionString() { + return "v" + props.getProperty("release.version"); //$NON-NLS-1$ + } + private static Properties fromResource(final String resourceName) { try (InputStream is = BuildVersionProvider.class.getClassLoader().getResourceAsStream(resourceName)) { Properties props = new Properties(); @@ -42,7 +46,7 @@ private static Properties fromResource(final String resourceName) { } return props; } catch (IOException excep) { - throw new IllegalStateException("Couldn't load resource:" + resourceName, excep); //$NON-NLS-1$ + throw new IllegalStateException("Couldn't load build data resource:" + resourceName, excep); //$NON-NLS-1$ } } diff --git a/pom.xml b/pom.xml index a52e866c..d6ef288e 100644 --- a/pom.xml +++ b/pom.xml @@ -106,6 +106,8 @@ 11 4.2 0.10.6 + ${maven.build.timestamp} + yyyy-MM-dd HH:mm:ss From b4d2e3f3b65b5e1bdef3aaa712a133f28a5cb13a Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Fri, 24 Oct 2025 11:43:52 +0100 Subject: [PATCH 05/12] FEAT: Debug information for CLI When users are having issues it's helpful if you can find something about the environment. This PR adds: - a CLI option `-d`/`--debug` that outputs information about the users JVM and OS; - a CLI option `-v` that controls verbosity of reporting in general, currently used to filter the output of the debug information. Also added a primitive exception handler around validation in the top level CLI task. For now this simply outputs the exception details and rethrows it. --- .../odf/apps/CliValidator.java | 37 +++++++++------- .../openpreservation/odf/apps/DebugInfo.java | 42 +++++++++++++++++++ .../odf/validation/ValidationReports.java | 21 +++++++++- 3 files changed, 84 insertions(+), 16 deletions(-) create mode 100644 odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java index e988d0ae..2138096b 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java @@ -41,29 +41,44 @@ class CliValidator implements Callable { @Option(names = { "-p", "--profile" }, description = "Validate using extended Spreadsheet preservation profile.") private boolean profileFlag; + @Option(names = { "-d", "--debug" }, description = "Enable debug output.") + private boolean debugFlag; + @Option(names = { "-v" }, description = { "Specify multiple -v options to increase verbosity.", + "For example, `-v -v -v` or `-vvv`"}) + private boolean[] verbosity; @Parameters(paramLabel = "FILE", arity = "1..*", description = "A list of Open Document Format spreadsheet files to validate.") private File[] toValidateFiles; @Option(names = { "--format" }, description = "Output results as TEXT, JSON or XML.", defaultValue = "TEXT") - private FormatOption format = FormatOption.TEXT; + private ValidationReports.FormatOption format = ValidationReports.FormatOption.TEXT; private final OdfValidator validator = OdfValidators.getOdfValidator(); private MessageLog appMessages = Messages.messageLogInstance(); + private final DebugInfo debugInfo = DebugInfo.create(this.debugFlag, this.verbosity); @Override public Integer call() throws JsonProcessingException { Integer retStatus = 0; + debugInfo.outputDebugInfo(); for (File file : this.toValidateFiles) { Path toValidate = file.toPath(); this.appMessages = Messages.messageLogInstance(); ConsoleFormatter.colourise(FACTORY.getInfo("APP-1", Messages.parameterListInstance().add("file", toValidate.toString()))); - ValidationReport validationResult = (!this.profileFlag) ? validatePath(toValidate) : profilePath(toValidate); - if (validationResult != null) { - retStatus = outputValidationReport(toValidate, validationResult, this.format); + try { + ValidationReport validationResult = (!this.profileFlag) ? validatePath(toValidate) : profilePath(toValidate); + if (validationResult != null) { + retStatus = outputValidationReport(toValidate, validationResult, this.format); + } + } catch (Throwable t) { + ConsoleFormatter.colourise(toValidate, FACTORY.getFatal("SYS-4", Messages.parameterListInstance().add("file", toValidate.toString()))); + ConsoleFormatter.error(String.format("An unexpected error occurred during validation: %s", t.toString())); + debugInfo.outputDebugInfo(); + throw t; } if (this.appMessages.hasErrors()) { retStatus = Math.max(retStatus, processCheckList(this.appMessages.getChecks())); } } + debugInfo.outputDebugInfo(); return retStatus; } @@ -108,7 +123,7 @@ private Integer processCheckList(final List checks) { return status; } - private static Integer outputValidationReport(final Path path, final ValidationReport report, FormatOption format) throws JsonProcessingException { + private static Integer outputValidationReport(final Path path, final ValidationReport report, ValidationReports.FormatOption format) throws JsonProcessingException { ParameterList parameters = Messages.parameterListInstance().add("file", path.toString()).add("format", "bold"); ConsoleFormatter.colourise(FACTORY.getInfo("APP-4", parameters)); if (report.getChecks().isEmpty()) { @@ -120,12 +135,10 @@ private static Integer outputValidationReport(final Path path, final ValidationR for (ValidationResult result : report.getValidationResults()) { profileMessages.add(result.getMessageLog().getMessages()); } - if (format == FormatOption.JSON) - ConsoleFormatter.info(ValidationReports.reportToJson(report)); - else if (format == FormatOption.XML) - ConsoleFormatter.info(ValidationReports.reportToXml(report)); - else + if (format == ValidationReports.FormatOption.TEXT) outputText(report); + else + ConsoleFormatter.info(ValidationReports.getReport(report, format)); outputSummary(report.isEncrypted(), profileMessages); return status; } @@ -166,8 +179,4 @@ private static void outputSummary(final boolean isEncrypted, final MessageLog me private final void logMessage(final Path path, final Message message) { this.appMessages.add(path.toString(), message); } - - static private enum FormatOption { - JSON, XML, TEXT - } } diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java new file mode 100644 index 00000000..78696963 --- /dev/null +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java @@ -0,0 +1,42 @@ +package org.openpreservation.odf.apps; + +public final class DebugInfo { + static final String javaVersion = System.getProperty("java.version"); + static final String javaVendor = System.getProperty("java.vendor"); + static final String javaHome = System.getProperty("java.home"); + static final String osName = System.getProperty("os.name"); + static final String osVersion = System.getProperty("os.version"); + static final String osArch = System.getProperty("os.arch"); + + private final boolean debugFlag; + private final boolean[] verbosity; + + private DebugInfo(boolean debugFlag, boolean[] verbosity) { + this.debugFlag = debugFlag; + this.verbosity = verbosity; + } + + public static final DebugInfo create(boolean debugFlag, boolean[] verbosity) { + return new DebugInfo(debugFlag, verbosity); + } + + void outputDebugInfo() { + if (!this.debugFlag) { + return; + } + ConsoleFormatter.info("Debug information:"); + ConsoleFormatter.info(String.format(" OS name: %s", osName)); + ConsoleFormatter.info(String.format(" OS version: %s", osVersion)); + ConsoleFormatter.info(String.format(" OS architecture: %s", osArch)); + ConsoleFormatter.info(String.format(" Java version: %s", javaVersion)); + ConsoleFormatter.info(String.format(" Java vendor: %s", javaVendor)); + ConsoleFormatter.info(String.format(" Java home: %s", javaHome)); + if (verbosity.length > 0) { + ConsoleFormatter.info(String.format(" JVM Heap Size: %d", Runtime.getRuntime().totalMemory())); + ConsoleFormatter.info(String.format(" JVM Max Heap Size: %d", Runtime.getRuntime().maxMemory())); + ConsoleFormatter.info(String.format(" JVM Free Heap: %d", Runtime.getRuntime().freeMemory())); + ConsoleFormatter.info(String.format(" ODF Tools version: %s", BuildVersionProvider.getVersionString())); + } + } + +} diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java index 4624e510..5df8e076 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java @@ -1,8 +1,10 @@ package org.openpreservation.odf.validation; import java.util.List; +import java.util.Map; import org.openpreservation.odf.document.OpenDocument; +import org.openpreservation.odf.validation.messages.Message; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; @@ -38,7 +40,7 @@ public static ValidationReport reportFromValues(final String filename, * @throws JsonProcessingException * if there is an error during JSON processing */ - public static String reportToJson(final ValidationReport report) throws JsonProcessingException { + public static String getJsonReport(final ValidationReport report) throws JsonProcessingException { var jsonMapper = new ObjectMapper().registerModule(new JavaTimeModule()).enable(SerializationFeature.INDENT_OUTPUT); return jsonMapper.writeValueAsString(report); } @@ -51,8 +53,23 @@ public static String reportToJson(final ValidationReport report) throws JsonProc * @throws JsonProcessingException * if there is an error during to XML processing */ - public static String reportToXml(final ValidationReport report) throws JsonProcessingException { + public static String getXmlReport(final ValidationReport report) throws JsonProcessingException { var xmlMapper = new XmlMapper().registerModule(new JavaTimeModule()).enable(SerializationFeature.INDENT_OUTPUT); return xmlMapper.writeValueAsString(report); } + + public static String getReport(final ValidationReport report, + final FormatOption format) throws JsonProcessingException { + if (format == FormatOption.JSON) { + return getJsonReport(report); + } else if (format == FormatOption.XML) { + return getXmlReport(report); + } else { + return report.toString(); + } + } + + public static enum FormatOption { + JSON, XML, TEXT + } } From 848ed8219e413a4e38294963661fa1f885d3674c Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Fri, 24 Oct 2025 12:27:02 +0100 Subject: [PATCH 06/12] FIX: Debug info output - moved debug info initialisation within `call` method to ensure that it's initialised with the correct object values; - improved the debug information output; and - fixed small compiler warnings about unneccessary imports. --- .../org/openpreservation/odf/apps/CliValidator.java | 3 ++- .../java/org/openpreservation/odf/apps/DebugInfo.java | 10 ++++------ .../odf/validation/ValidationReports.java | 2 -- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java index 2138096b..12e1e3d1 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java @@ -52,11 +52,12 @@ class CliValidator implements Callable { private ValidationReports.FormatOption format = ValidationReports.FormatOption.TEXT; private final OdfValidator validator = OdfValidators.getOdfValidator(); private MessageLog appMessages = Messages.messageLogInstance(); - private final DebugInfo debugInfo = DebugInfo.create(this.debugFlag, this.verbosity); + private DebugInfo debugInfo; @Override public Integer call() throws JsonProcessingException { Integer retStatus = 0; + debugInfo = DebugInfo.create(this.debugFlag, this.verbosity != null ? this.verbosity : new boolean[0]); debugInfo.outputDebugInfo(); for (File file : this.toValidateFiles) { Path toValidate = file.toPath(); diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java index 78696963..0a57d1bd 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java @@ -25,17 +25,15 @@ void outputDebugInfo() { return; } ConsoleFormatter.info("Debug information:"); - ConsoleFormatter.info(String.format(" OS name: %s", osName)); - ConsoleFormatter.info(String.format(" OS version: %s", osVersion)); - ConsoleFormatter.info(String.format(" OS architecture: %s", osArch)); + ConsoleFormatter.info(String.format(" ODF Validator: %s", BuildVersionProvider.getVersionString())); + ConsoleFormatter.info(String.format(" OS name: %s, version: %s, architecture: %s", osName, osVersion, osArch)); ConsoleFormatter.info(String.format(" Java version: %s", javaVersion)); - ConsoleFormatter.info(String.format(" Java vendor: %s", javaVendor)); - ConsoleFormatter.info(String.format(" Java home: %s", javaHome)); if (verbosity.length > 0) { + ConsoleFormatter.info(String.format(" Java vendor: %s", javaVendor)); + ConsoleFormatter.info(String.format(" Java home: %s", javaHome)); ConsoleFormatter.info(String.format(" JVM Heap Size: %d", Runtime.getRuntime().totalMemory())); ConsoleFormatter.info(String.format(" JVM Max Heap Size: %d", Runtime.getRuntime().maxMemory())); ConsoleFormatter.info(String.format(" JVM Free Heap: %d", Runtime.getRuntime().freeMemory())); - ConsoleFormatter.info(String.format(" ODF Tools version: %s", BuildVersionProvider.getVersionString())); } } diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java index 5df8e076..975e4186 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java @@ -1,10 +1,8 @@ package org.openpreservation.odf.validation; import java.util.List; -import java.util.Map; import org.openpreservation.odf.document.OpenDocument; -import org.openpreservation.odf.validation.messages.Message; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; From 3036a2693c46d6d443bbe8d0bde414fc5c97bff2 Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Fri, 24 Oct 2025 15:48:33 +0100 Subject: [PATCH 07/12] FIX: Cache overruns Java heap space The zip archive cache was unlimited and large files could exhaust the heap memory. - added two cache checks: 1. `MAX_CACHE_SIZE` is equal to heap memory divided by 4; and 2. `MAX_ITEM_SIZE` is `MAX_CACHE_SIZE` divide by 20; - items larger than `MAX_ITEM_SIZE` or larger than the remaining cache size aren't cached; - `ZipFileProcessor` now only opens the zip file once, necessary so that delivered `InputStream`s aren't closed; - method to retrieve a stream now uses the cache calculation method; and - removed uneccessary method to list cached file names. --- .../format/zip/ZipArchiveCache.java | 8 --- .../format/zip/ZipFileProcessor.java | 71 +++++++++++-------- .../odf/pkg/PackageParserImpl.java | 15 ++-- .../format/zip/ZipFileProcessorTest.java | 24 +++---- 4 files changed, 61 insertions(+), 57 deletions(-) diff --git a/odf-core/src/main/java/org/openpreservation/format/zip/ZipArchiveCache.java b/odf-core/src/main/java/org/openpreservation/format/zip/ZipArchiveCache.java index 1e52e4bd..08d6fde3 100644 --- a/odf-core/src/main/java/org/openpreservation/format/zip/ZipArchiveCache.java +++ b/odf-core/src/main/java/org/openpreservation/format/zip/ZipArchiveCache.java @@ -2,20 +2,12 @@ import java.io.IOException; import java.io.InputStream; -import java.util.List; /** * An extension of {@link ZipArchive} that caches the contents of the archive * and provides access to the InputStreams. */ public interface ZipArchiveCache extends ZipArchive { - /** - * Get a List of all of the cached entries in the archive - * - * @return - */ - public List getCachedEntryNames(); - /** * Get the InputStream for the entry with the passed name, * equivalent to the path. diff --git a/odf-core/src/main/java/org/openpreservation/format/zip/ZipFileProcessor.java b/odf-core/src/main/java/org/openpreservation/format/zip/ZipFileProcessor.java index e6879843..df05315f 100644 --- a/odf-core/src/main/java/org/openpreservation/format/zip/ZipFileProcessor.java +++ b/odf-core/src/main/java/org/openpreservation/format/zip/ZipFileProcessor.java @@ -11,28 +11,33 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.NoSuchElementException; import java.util.Objects; import java.util.function.Function; import java.util.stream.Collectors; import org.apache.commons.compress.archivers.zip.ZipArchiveEntry; import org.apache.commons.compress.archivers.zip.ZipFile; -import org.apache.commons.compress.archivers.zip.ZipFile.Builder; import org.openpreservation.utils.Checks; /** * An implementation of {@link ZipArchiveCache} that caches the contents of the * archive and provides access to the InputStreams. */ -public final class ZipFileProcessor implements ZipArchiveCache { +public final class ZipFileProcessor implements ZipArchiveCache, AutoCloseable { private final Path path; private final Map entryCache; private final Map byteCache = new HashMap<>(); + private long currentCacheSize = 0; private String firstEntryName = null; + private static final long MAX_CACHE_SIZE = Runtime.getRuntime().maxMemory() / 4; + private static final long MAX_ITEM_SIZE = MAX_CACHE_SIZE / 20; + private final ZipFile zipFile; private ZipFileProcessor(final Path path) throws IOException { super(); this.path = path; + this.zipFile = new ZipFile.Builder().setSeekableByteChannel(Files.newByteChannel(path)).get(); this.entryCache = cache(path); } @@ -51,15 +56,13 @@ static ZipFileProcessor of(final Path path) throws IOException { private final Map cache(final Path path) throws IOException { Map result = new HashMap<>(); - try (ZipFile zipFile = new Builder().setSeekableByteChannel(Files.newByteChannel(path)).get()) { - Enumeration entries = zipFile.getEntriesInPhysicalOrder(); - while (entries.hasMoreElements()) { - ZipArchiveEntry entry = entries.nextElement(); - if (firstEntryName == null) { - firstEntryName = entry.getName(); - } - result.put(entry.getName(), entry); + Enumeration entries = zipFile.getEntriesInPhysicalOrder(); + while (entries.hasMoreElements()) { + ZipArchiveEntry entry = entries.nextElement(); + if (firstEntryName == null) { + firstEntryName = entry.getName(); } + result.put(entry.getName(), entry); } return result; } @@ -103,32 +106,42 @@ public int size() { } @Override - public List getCachedEntryNames() { - return this.byteCache.keySet().stream().collect(Collectors.toList()); - } - - @Override - public InputStream getEntryInputStream(String entryName) throws IOException { + public InputStream getEntryInputStream(String entryName) throws IOException, NoSuchElementException { Objects.requireNonNull(entryName, String.format(Checks.NOT_NULL, "entryName", "String")); if (!this.entryCache.containsKey(entryName)) { - return null; + throw new NoSuchElementException(String.format("Entry %s not found in zip file", entryName)); } + return retrieveEntryInputStream(entryName); + } + + private final InputStream retrieveEntryInputStream(final String entryName) throws IOException, NoSuchElementException { if (!this.byteCache.containsKey(entryName)) { - try (ZipFile zipFile = new ZipFile.Builder().setSeekableByteChannel(Files.newByteChannel(this.path)) - .get()) { - ZipArchiveEntry entry = zipFile.getEntry(entryName); - if (entry == null) { - return null; - } - InputStream is = zipFile.getInputStream(entry); - try (ByteArrayOutputStream bos = new ByteArrayOutputStream()) { - is.transferTo(bos); - this.byteCache.put(entryName, - bos.toByteArray()); - } + ZipArchiveEntry entry = zipFile.getEntry(entryName); + if (entry == null) { + throw new NoSuchElementException(String.format("Entry %s not found in zip file", entryName)); } + return cacheEntryInputStream(entry); } return new ByteArrayInputStream(this.byteCache.get(entryName)); } + private final InputStream cacheEntryInputStream(final ZipArchiveEntry entry) + throws IOException { + InputStream is = zipFile.getInputStream(entry); + if (entry.getSize() > MAX_ITEM_SIZE || (this.currentCacheSize + entry.getSize()) > MAX_CACHE_SIZE) { + return is; + } + try (ByteArrayOutputStream bos = new ByteArrayOutputStream()) { + is.transferTo(bos); + this.byteCache.put(entry.getName(), + bos.toByteArray()); + this.currentCacheSize += bos.size(); + } + return new ByteArrayInputStream(this.byteCache.get(entry.getName())); + } + + @Override + public void close() throws Exception { + this.zipFile.close(); + } } diff --git a/odf-core/src/main/java/org/openpreservation/odf/pkg/PackageParserImpl.java b/odf-core/src/main/java/org/openpreservation/odf/pkg/PackageParserImpl.java index c528526d..7802dc99 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/pkg/PackageParserImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/pkg/PackageParserImpl.java @@ -12,6 +12,7 @@ import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; +import java.util.NoSuchElementException; import java.util.Objects; import javax.xml.parsers.ParserConfigurationException; @@ -145,16 +146,16 @@ final Version detectVersion() throws IOException { Version detectedVersion = Version.UNKNOWN; for (final String versionPath : VERSION_FILE_PATHS) { try (InputStream is = this.cache.getEntryInputStream(versionPath)) { - if (is != null) { - ParseResult result = XmlParsers.getNonValidatingParser().parse(is); - detectedVersion = Version.fromVersion( - result.getRootAttributeValue(String.format("%s:version", result.getRootPrefix()))); - if (!Version.UNKNOWN.equals(detectedVersion)) { - return detectedVersion; - } + ParseResult result = XmlParsers.getNonValidatingParser().parse(is); + detectedVersion = Version.fromVersion( + result.getRootAttributeValue(String.format("%s:version", result.getRootPrefix()))); + if (!Version.UNKNOWN.equals(detectedVersion)) { + return detectedVersion; } } catch (ParserConfigurationException | SAXException e) { throw new IOException(e); + } catch (NoSuchElementException e) { + // Ignore and continue } } return detectedVersion; diff --git a/odf-core/src/test/java/org/openpreservation/format/zip/ZipFileProcessorTest.java b/odf-core/src/test/java/org/openpreservation/format/zip/ZipFileProcessorTest.java index 076a46fd..25047ea3 100644 --- a/odf-core/src/test/java/org/openpreservation/format/zip/ZipFileProcessorTest.java +++ b/odf-core/src/test/java/org/openpreservation/format/zip/ZipFileProcessorTest.java @@ -16,6 +16,7 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.util.List; +import java.util.NoSuchElementException; import org.junit.Test; import org.openpreservation.odf.fmt.TestFiles; @@ -115,17 +116,6 @@ public void testGetZipEntry() throws IOException, URISyntaxException { assertNotNull("Retrieved settings.xml entry should NOT be null", processor.getZipEntry("settings.xml")); } - @Test - public void testGetCachedEntryNames() throws IOException, URISyntaxException { - ZipArchiveCache processor = Zips.zipArchiveCacheInstance(new File(TestFiles.EMPTY_ODS.toURI())); - List entries = processor.getCachedEntryNames(); - assertNotNull("Cached entries should be an empty list", entries); - assertTrue("Cached entries should be an empty list", entries.isEmpty()); - processor.getEntryInputStream("settings.xml"); - entries = processor.getCachedEntryNames(); - assertEquals("Cached entries should have a single entry empty list", 1, entries.size()); - } - @Test public void testGetCachedEntry() throws IOException, URISyntaxException { ZipArchiveCache processor = Zips.zipArchiveCacheInstance(new File(TestFiles.EMPTY_ODS.toURI())); @@ -143,7 +133,15 @@ public void testGetEntryInputStream() throws IOException, URISyntaxException { ZipArchiveCache processor = Zips.zipArchiveCacheInstance(new File(TestFiles.EMPTY_ODS.toURI())); InputStream is = processor.getEntryInputStream("mimetype"); assertNotNull("Cached entry stream should not be null.", is); - InputStream nullStream = processor.getEntryInputStream("notThere"); - assertNull("Cached entry stream should be null.", nullStream); + } + + @Test + public void testGetMisssingEntryInputStream() throws IOException, URISyntaxException { + ZipArchiveCache processor = Zips.zipArchiveCacheInstance(new File(TestFiles.EMPTY_ODS.toURI())); + assertThrows("NoSuchElementException expected", + NoSuchElementException.class, + () -> { + processor.getEntryInputStream("notThere"); + }); } } From a69fef803083ec9e9763f89e348339d212be3f4e Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Fri, 24 Oct 2025 16:04:12 +0100 Subject: [PATCH 08/12] FIX: Minor issues with debug info - made `debugInfo` a local variable for now; - fixed some small typos; and - added JavaDoc comments to public methods. --- .../odf/apps/BuildVersionProvider.java | 7 +++++- .../odf/apps/CliValidator.java | 4 +--- .../openpreservation/odf/apps/DebugInfo.java | 23 ++++++++++++++----- .../odf/validation/ValidationReports.java | 16 +++++++++++++ .../odf/xml/OdfSchemaFactory.java | 2 +- .../org/openpreservation/odf/xml/Version.java | 2 +- 6 files changed, 42 insertions(+), 12 deletions(-) diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java index 796ff3c4..76c7265a 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java @@ -34,6 +34,11 @@ public String[] getVersion() throws Exception { "Built: " + new SimpleDateFormat("yyyy-MM-dd").format(date) }; //$NON-NLS-1$ } + /** + * Get a formatted string representing the application version. + * + * @return the version string + */ public static String getVersionString() { return "v" + props.getProperty("release.version"); //$NON-NLS-1$ } @@ -46,7 +51,7 @@ private static Properties fromResource(final String resourceName) { } return props; } catch (IOException excep) { - throw new IllegalStateException("Couldn't load build data resource:" + resourceName, excep); //$NON-NLS-1$ + throw new IllegalStateException("Couldn't load build data resource: " + resourceName, excep); //$NON-NLS-1$ } } diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java index 12e1e3d1..d29da9f0 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java @@ -52,13 +52,11 @@ class CliValidator implements Callable { private ValidationReports.FormatOption format = ValidationReports.FormatOption.TEXT; private final OdfValidator validator = OdfValidators.getOdfValidator(); private MessageLog appMessages = Messages.messageLogInstance(); - private DebugInfo debugInfo; @Override public Integer call() throws JsonProcessingException { Integer retStatus = 0; - debugInfo = DebugInfo.create(this.debugFlag, this.verbosity != null ? this.verbosity : new boolean[0]); - debugInfo.outputDebugInfo(); + DebugInfo debugInfo = DebugInfo.create(this.debugFlag, this.verbosity != null ? this.verbosity : new boolean[0]); for (File file : this.toValidateFiles) { Path toValidate = file.toPath(); this.appMessages = Messages.messageLogInstance(); diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java index 0a57d1bd..4cdb7da5 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java @@ -16,11 +16,21 @@ private DebugInfo(boolean debugFlag, boolean[] verbosity) { this.verbosity = verbosity; } + /** + * Static factory method to create a DebugInfo instance. + * + * @param debugFlag whether debug output is enabled or not, set true to enable + * @param verbosity a boolean array representing verbosity levels, the greater the length the more verbose + * @return a new DebugInfo instance + */ public static final DebugInfo create(boolean debugFlag, boolean[] verbosity) { return new DebugInfo(debugFlag, verbosity); } - void outputDebugInfo() { + /** + * Output debug information to the console if debugFlag is set. + */ + public void outputDebugInfo() { if (!this.debugFlag) { return; } @@ -28,12 +38,13 @@ void outputDebugInfo() { ConsoleFormatter.info(String.format(" ODF Validator: %s", BuildVersionProvider.getVersionString())); ConsoleFormatter.info(String.format(" OS name: %s, version: %s, architecture: %s", osName, osVersion, osArch)); ConsoleFormatter.info(String.format(" Java version: %s", javaVersion)); + // If the verbosity length is greater than 0, output additional JVM info if (verbosity.length > 0) { - ConsoleFormatter.info(String.format(" Java vendor: %s", javaVendor)); - ConsoleFormatter.info(String.format(" Java home: %s", javaHome)); - ConsoleFormatter.info(String.format(" JVM Heap Size: %d", Runtime.getRuntime().totalMemory())); - ConsoleFormatter.info(String.format(" JVM Max Heap Size: %d", Runtime.getRuntime().maxMemory())); - ConsoleFormatter.info(String.format(" JVM Free Heap: %d", Runtime.getRuntime().freeMemory())); + ConsoleFormatter.info(String.format(" Java vendor: %s", javaVendor)); + ConsoleFormatter.info(String.format(" Java home: %s", javaHome)); + ConsoleFormatter.info(String.format(" JVM Heap Size: %d", Runtime.getRuntime().totalMemory())); + ConsoleFormatter.info(String.format(" JVM Max Heap Size: %d", Runtime.getRuntime().maxMemory())); + ConsoleFormatter.info(String.format(" JVM Free Heap: %d", Runtime.getRuntime().freeMemory())); } } diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java index 975e4186..826e7864 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java @@ -56,6 +56,14 @@ public static String getXmlReport(final ValidationReport report) throws JsonProc return xmlMapper.writeValueAsString(report); } + /** + * Get a string representation of the validation report in the specified format. + * + * @param report the report to fromat, may contain multiple results + * @param format the format for the returned report, may be JSON, XML or TEXT + * @return a string representation of the validation report in the specified format + * @throws JsonProcessingException when there is an error during JSON or XML processing + */ public static String getReport(final ValidationReport report, final FormatOption format) throws JsonProcessingException { if (format == FormatOption.JSON) { @@ -67,6 +75,14 @@ public static String getReport(final ValidationReport report, } } + /** + * Specifies the output format for validation reports. + *
    + *
  • {@link #JSON} - Output the report in JSON format.
  • + *
  • {@link #XML} - Output the report in XML format.
  • + *
  • {@link #TEXT} - Output the report as plain text.
  • + *
+ */ public static enum FormatOption { JSON, XML, TEXT } diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java index 4e77fbaa..dc93c72e 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java @@ -149,7 +149,7 @@ public final Schema getSchemas(final Set namespaces, final Versio private final Source[] getSources(final Set namespaces, final Version version) { final List sources = new ArrayList<>(); for (final OdfNamespaces namespace : namespaces) { - Map schemaMap = SCHEMA_LOCATION_MAP.get(version); + Map schemaMap = SCHEMA_LOCATION_MAP.get(version); if (schemaMap == null) { throw new IllegalArgumentException("No schemas found for ODF version: " + version.version + ", supported versions are: " + Version.supportedVersions()); } diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java b/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java index 96f940a8..e94cc025 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/Version.java @@ -49,7 +49,7 @@ public static final String supportedVersions() { prepend = ", "; } } - return sb.toString().trim(); + return sb.toString(); } /** From 1a804d55476e8b4f7369cfd7c290b5a4d6f3e76c Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Fri, 24 Oct 2025 16:23:42 +0100 Subject: [PATCH 09/12] DOC: Improved documentation --- .../org/openpreservation/odf/apps/BuildVersionProvider.java | 5 +++++ .../main/java/org/openpreservation/odf/apps/DebugInfo.java | 2 +- .../openpreservation/odf/validation/ValidationReports.java | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java index 76c7265a..5565e725 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/BuildVersionProvider.java @@ -9,6 +9,11 @@ import picocli.CommandLine.IVersionProvider; +/** + * A version provider that reads build version information from a properties + * resource. This resource file is generated during the build process. If the + * resource cannot be found or read, an IllegalStateException is thrown. + */ public class BuildVersionProvider implements IVersionProvider { private static final String RAW_DATE_FORMAT = "${maven.build.timestamp.format}"; private static final Properties props = fromResource("org/openpreservation/odf/apps/build.properties"); diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java index 4cdb7da5..e1afd012 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java @@ -26,7 +26,7 @@ private DebugInfo(boolean debugFlag, boolean[] verbosity) { public static final DebugInfo create(boolean debugFlag, boolean[] verbosity) { return new DebugInfo(debugFlag, verbosity); } - + /** * Output debug information to the console if debugFlag is set. */ diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java index 826e7864..6bf37a72 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java @@ -59,7 +59,7 @@ public static String getXmlReport(final ValidationReport report) throws JsonProc /** * Get a string representation of the validation report in the specified format. * - * @param report the report to fromat, may contain multiple results + * @param report the report to format, may contain multiple results * @param format the format for the returned report, may be JSON, XML or TEXT * @return a string representation of the validation report in the specified format * @throws JsonProcessingException when there is an error during JSON or XML processing From 805f5ab1d21613ca674cc0585cf74d70060e442e Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Tue, 11 Nov 2025 10:45:07 +0000 Subject: [PATCH 10/12] MAINT: Debug output - memory stats now shown in MB; and - print stack trace for exceptions. --- .../java/org/openpreservation/odf/apps/CliValidator.java | 4 ++++ .../main/java/org/openpreservation/odf/apps/DebugInfo.java | 6 +++--- .../openpreservation/odf/validation/ValidationReports.java | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java index d29da9f0..33bae641 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java @@ -86,9 +86,11 @@ private ValidationReport validatePath(final Path toValidate) { return validator.validate(toValidate); } catch (IllegalArgumentException | FileNotFoundException e) { this.logMessage(toValidate, Messages.getMessageInstance("APP-2", Severity.ERROR, e.getMessage())); + e.printStackTrace(); } catch (ParseException e) { this.logMessage(toValidate, Messages.getMessageInstance("SYS-1", Severity.ERROR, "Package could not be parsed, due to an exception.", e.getMessage())); + e.printStackTrace(); } return null; } @@ -99,9 +101,11 @@ private ValidationReport profilePath(final Path path) { return validator.profile(path, dnaProfile); } catch (IllegalArgumentException | FileNotFoundException e) { this.logMessage(path, Messages.getMessageInstance("APP-2", Severity.ERROR, e.getMessage())); + e.printStackTrace(); } catch (ParseException | ParserConfigurationException | SAXException e) { this.logMessage(path, Messages.getMessageInstance("SYS-1", Severity.ERROR, "Package could not be parsed, due to an exception.", e.getMessage())); + e.printStackTrace(); } return null; } diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java index e1afd012..9fd78450 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/DebugInfo.java @@ -42,9 +42,9 @@ public void outputDebugInfo() { if (verbosity.length > 0) { ConsoleFormatter.info(String.format(" Java vendor: %s", javaVendor)); ConsoleFormatter.info(String.format(" Java home: %s", javaHome)); - ConsoleFormatter.info(String.format(" JVM Heap Size: %d", Runtime.getRuntime().totalMemory())); - ConsoleFormatter.info(String.format(" JVM Max Heap Size: %d", Runtime.getRuntime().maxMemory())); - ConsoleFormatter.info(String.format(" JVM Free Heap: %d", Runtime.getRuntime().freeMemory())); + ConsoleFormatter.info(String.format(" JVM Heap Size: %d MB", Runtime.getRuntime().totalMemory() / (1024 * 1024))); + ConsoleFormatter.info(String.format(" JVM Max Heap Size: %d MB", Runtime.getRuntime().maxMemory() / (1024 * 1024))); + ConsoleFormatter.info(String.format(" JVM Free Heap: %d MB", Runtime.getRuntime().freeMemory() / (1024 * 1024))); } } diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java index 6bf37a72..3f8697d7 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationReports.java @@ -65,7 +65,7 @@ public static String getXmlReport(final ValidationReport report) throws JsonProc * @throws JsonProcessingException when there is an error during JSON or XML processing */ public static String getReport(final ValidationReport report, - final FormatOption format) throws JsonProcessingException { + final FormatOption format) throws JsonProcessingException { if (format == FormatOption.JSON) { return getJsonReport(report); } else if (format == FormatOption.XML) { From 4ae8c8caa7ee88dc10982a4e6ad25d7658ea152e Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Thu, 23 Oct 2025 14:42:37 +0100 Subject: [PATCH 11/12] FEAT: Extended conformance validation Many real world ODF documents use foreign XML elements and attributes not defined by the ODF XML schema. This is known as an extended document. This PR provides a pre-processing XML filter that either removes foreign elements, or uses their content, following the rules set out in [Section 3.17 of the ODF specification part 3 (Schema)](https://docs.oasis-open.org/office/OpenDocument/v1.3/os/part3-schema/OpenDocument-v1.3-os-part3-schema.html#__RefNumPara__623372_981565270). - created an `ExtendedConformanceFilter`, a pre-processing XML filter that resolves the content of foreign elements/attributes or removes them; - added a second validation method to `XmlValidator` that takes any XML filter, this allows use of the extended conformance filter but may be useful for more complex filtered workflows; - added an `isExtended` member variable to `OdfValidator` and new factory methods to instantiate extended and non-extended versions; - added an `isExtended` member variable to `ValidatingParserImpl` and new factory methods to instantiate extended and non-extended versions; - added an `isExtended` member variable to `ProfileImpl` and new factory methods to instantiate extended and non-extended versions; - created an extended version of `ValidPackageRule` so that it supports both forms of validation; - fixed reporting of foreign namespaces so they are reported as errors during normal validation, but info messages for extended validation; - added `EnumSets` of `OdfNamespaces` for the sets of local namespaces for ODF v1.0/1.1 and ODF v1.2 onwards; - added tests for extended conformance; - added a `-e`/`--extended` option to the CLI to invoke extended document validation; - tidied up creation of SAX `XMLReader` and added to `XmlUtils` class; and - added valid and invalid extended documents for testing. --- .../odf/apps/CliValidator.java | 9 +- .../format/xml/XmlParserImpl.java | 9 +- .../openpreservation/format/xml/XmlUtils.java | 24 +- .../format/xml/XmlValidator.java | 39 ++- .../odf/validation/OdfValidatorImpl.java | 22 +- .../odf/validation/OdfValidators.java | 35 ++- .../odf/validation/ValidatingParserImpl.java | 28 +- .../odf/validation/ValidationResultImpl.java | 1 + .../odf/validation/rules/ProfileImpl.java | 13 +- .../odf/validation/rules/Rules.java | 12 +- .../validation/rules/ValidPackageRule.java | 10 +- .../odf/xml/ExtendedConformanceFilter.java | 142 ++++++++++ .../odf/xml/OdfNamespaces.java | 5 + .../odf/xml/OdfSchemaFactory.java | 4 - .../format/xml/XmlValidatorTest.java | 65 ++++- .../openpreservation/odf/fmt/TestFiles.java | 4 + .../odf/pkg/PackageParserTest.java | 4 +- .../odf/validation/ValidatingParserTest.java | 4 +- .../odf/validation/rules/ProfileImplTest.java | 4 +- .../rules/ValidPackageRuleTest.java | 7 - .../odf/fmt/xml/extended_invalid.xml | 249 ++++++++++++++++++ .../odf/fmt/xml/extended_valid.xml | 2 + 22 files changed, 625 insertions(+), 67 deletions(-) create mode 100644 odf-core/src/main/java/org/openpreservation/odf/xml/ExtendedConformanceFilter.java create mode 100644 odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_invalid.xml create mode 100644 odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_valid.xml diff --git a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java index 33bae641..4b2612ef 100644 --- a/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java +++ b/odf-apps/src/main/java/org/openpreservation/odf/apps/CliValidator.java @@ -39,8 +39,10 @@ class CliValidator implements Callable { private static final MessageFactory FACTORY = Messages .getInstance("org.openpreservation.odf.apps.messages.Messages"); - @Option(names = { "-p", "--profile" }, description = "Validate using extended Spreadsheet preservation profile.") + @Option(names = { "-p", "--profile" }, description = "Validate using additional Spreadsheet preservation profile.") private boolean profileFlag; + @Option(names = { "-e", "--extended" }, description = "Process XML documents to allow for extended document validation.") + private boolean extendedFlag; @Option(names = { "-d", "--debug" }, description = "Enable debug output.") private boolean debugFlag; @Option(names = { "-v" }, description = { "Specify multiple -v options to increase verbosity.", @@ -50,12 +52,13 @@ class CliValidator implements Callable { private File[] toValidateFiles; @Option(names = { "--format" }, description = "Output results as TEXT, JSON or XML.", defaultValue = "TEXT") private ValidationReports.FormatOption format = ValidationReports.FormatOption.TEXT; - private final OdfValidator validator = OdfValidators.getOdfValidator(); + private OdfValidator validator; private MessageLog appMessages = Messages.messageLogInstance(); @Override public Integer call() throws JsonProcessingException { Integer retStatus = 0; + this.validator = OdfValidators.getOdfValidator(this.extendedFlag); DebugInfo debugInfo = DebugInfo.create(this.debugFlag, this.verbosity != null ? this.verbosity : new boolean[0]); for (File file : this.toValidateFiles) { Path toValidate = file.toPath(); @@ -97,7 +100,7 @@ private ValidationReport validatePath(final Path toValidate) { private ValidationReport profilePath(final Path path) { try { - final Profile dnaProfile = Rules.getDnaProfile(); + final Profile dnaProfile = Rules.getDnaProfile(this.extendedFlag); return validator.profile(path, dnaProfile); } catch (IllegalArgumentException | FileNotFoundException e) { this.logMessage(path, Messages.getMessageInstance("APP-2", Severity.ERROR, e.getMessage())); diff --git a/odf-core/src/main/java/org/openpreservation/format/xml/XmlParserImpl.java b/odf-core/src/main/java/org/openpreservation/format/xml/XmlParserImpl.java index 6ff2adf7..c797d2f8 100644 --- a/odf-core/src/main/java/org/openpreservation/format/xml/XmlParserImpl.java +++ b/odf-core/src/main/java/org/openpreservation/format/xml/XmlParserImpl.java @@ -9,10 +9,7 @@ import java.util.List; import java.util.Objects; -import javax.xml.XMLConstants; import javax.xml.parsers.ParserConfigurationException; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; import org.openpreservation.odf.validation.messages.Message; import org.openpreservation.odf.validation.messages.MessageFactory; @@ -40,11 +37,7 @@ final class XmlParserImpl implements XmlParser { * @throws SAXException if the parser can not be created */ XmlParserImpl() throws ParserConfigurationException, SAXException { - final SAXParserFactory nonValidatingFactory = XmlUtils.getNonValidatingFactory(); - final SAXParser parser = nonValidatingFactory.newSAXParser(); - parser.setProperty(XMLConstants.ACCESS_EXTERNAL_DTD, "false"); - parser.setProperty(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "false"); - this.reader = parser.getXMLReader(); + this.reader = XmlUtils.getSAXReader(); this.reader.setEntityResolver(new DummyEntityResolver()); } diff --git a/odf-core/src/main/java/org/openpreservation/format/xml/XmlUtils.java b/odf-core/src/main/java/org/openpreservation/format/xml/XmlUtils.java index c83370b3..ce3f5795 100644 --- a/odf-core/src/main/java/org/openpreservation/format/xml/XmlUtils.java +++ b/odf-core/src/main/java/org/openpreservation/format/xml/XmlUtils.java @@ -2,13 +2,17 @@ import javax.xml.XMLConstants; import javax.xml.parsers.ParserConfigurationException; +import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParserFactory; import org.openpreservation.odf.validation.messages.Messages; import org.openpreservation.odf.validation.messages.Parameter.ParameterList; +import org.xml.sax.SAXException; import org.xml.sax.SAXNotRecognizedException; import org.xml.sax.SAXNotSupportedException; import org.xml.sax.SAXParseException; +import org.xml.sax.XMLFilter; +import org.xml.sax.XMLReader; final class XmlUtils { private static final String SAX_FEATURE_PREFIX = "http://xml.org/sax/features/"; @@ -32,8 +36,26 @@ static final SAXParserFactory getNonValidatingFactory() return factory; } + static final XMLReader getSAXReader() + throws SAXNotRecognizedException, SAXNotSupportedException, ParserConfigurationException, SAXException { + final SAXParser parser = XmlUtils.getNonValidatingFactory().newSAXParser(); + parser.setProperty(XMLConstants.ACCESS_EXTERNAL_DTD, "false"); + parser.setProperty(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "false"); + return parser.getXMLReader(); + } + + static final XMLReader getFilteredSAXReader(XMLFilter filter) + throws SAXNotRecognizedException, SAXNotSupportedException, ParserConfigurationException, SAXException { + final SAXParser parser = XmlUtils.getNonValidatingFactory().newSAXParser(); + parser.setProperty(XMLConstants.ACCESS_EXTERNAL_DTD, "false"); + parser.setProperty(XMLConstants.ACCESS_EXTERNAL_SCHEMA, "false"); + filter.setParent(parser.getXMLReader()); + return filter; + } + static ParameterList excepToParameterList(SAXParseException e) { - return Messages.parameterListInstance().clear().add("line", Integer.toString(e.getLineNumber())).add("column", Integer.toString(e.getColumnNumber())) + return Messages.parameterListInstance().clear().add("line", Integer.toString(e.getLineNumber())) + .add("column", Integer.toString(e.getColumnNumber())) .add("message", e.getMessage()); } } diff --git a/odf-core/src/main/java/org/openpreservation/format/xml/XmlValidator.java b/odf-core/src/main/java/org/openpreservation/format/xml/XmlValidator.java index 6bc4595a..61cee494 100644 --- a/odf-core/src/main/java/org/openpreservation/format/xml/XmlValidator.java +++ b/odf-core/src/main/java/org/openpreservation/format/xml/XmlValidator.java @@ -5,18 +5,22 @@ import java.util.ArrayList; import java.util.List; -import javax.xml.transform.stream.StreamSource; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.transform.Source; +import javax.xml.transform.sax.SAXSource; import javax.xml.validation.Schema; import javax.xml.validation.Validator; import org.openpreservation.odf.validation.messages.Message; import org.openpreservation.odf.validation.messages.MessageFactory; import org.openpreservation.odf.validation.messages.Messages; +import org.xml.sax.InputSource; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; +import org.xml.sax.XMLFilter; /** - * Simple class to wrap XML schema vaidaton. + * Simple class to wrap XML schema validation. */ public final class XmlValidator { private static final MessageFactory FACTORY = Messages.getInstance(); @@ -47,14 +51,41 @@ public XmlValidationResult validate(final ParseResult parseResult, final InputSt if (!parseResult.isWellFormed()) { return XmlValidationResultImpl.of(parseResult, false, new ArrayList<>()); } - final List messages = validateSource(new StreamSource(toValidate), schema); + final List messages = validateSource(new SAXSource(new InputSource(toValidate)), schema); if (!this.isWellFormed) { return XmlValidationResultImpl.of(ParseResultImpl.invertWellFormed(parseResult), false, messages); } return XmlValidationResultImpl.of(parseResult, isValid(messages), messages); } - private List validateSource(final StreamSource toValidate, final Schema schema) throws IOException { + /** + * Validate the supplied InputStream against the supplied schema. + * + * @param parseResult the {@link ParseResult} obtained form parsign the file + * using {@link XmlParserImpl} + * @param toValidate an InputStream to validate + * @param schema the {@link Schema} to validate against + * @return a {@link XmlValidationResult} containing the result of the validation + * @throws IOException if there is an error reading supplied + * InputStream. + * @throws SAXException + * @throws ParserConfigurationException + */ + public XmlValidationResult validate(final ParseResult parseResult, final InputStream toValidate, final Schema schema, final XMLFilter filter) + throws IOException, SAXException, ParserConfigurationException { + if (!parseResult.isWellFormed()) { + return XmlValidationResultImpl.of(parseResult, false, new ArrayList<>()); + } + final List messages = validateSource(new SAXSource(XmlUtils.getFilteredSAXReader(filter), + new InputSource(toValidate)), + schema); + if (!this.isWellFormed) { + return XmlValidationResultImpl.of(ParseResultImpl.invertWellFormed(parseResult), false, messages); + } + return XmlValidationResultImpl.of(parseResult, isValid(messages), messages); + } + + private List validateSource(final Source toValidate, final Schema schema) throws IOException { final List messages = new ArrayList<>(); final Validator validator = schema.newValidator(); final MessageHandler handler = new MessageHandler("XML-4"); diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidatorImpl.java b/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidatorImpl.java index ef2a0718..2020bf45 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidatorImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidatorImpl.java @@ -21,8 +21,10 @@ import org.openpreservation.odf.pkg.OdfPackage; import org.openpreservation.odf.pkg.OdfPackages; import org.openpreservation.odf.pkg.PackageParser.ParseException; +import org.openpreservation.odf.validation.messages.Message.Severity; import org.openpreservation.odf.validation.messages.MessageFactory; import org.openpreservation.odf.validation.messages.Messages; +import org.openpreservation.odf.validation.messages.Parameter.ParameterList; import org.openpreservation.odf.xml.OdfNamespaces; import org.openpreservation.odf.xml.OdfSchemaFactory; import org.openpreservation.odf.xml.OdfXmlDocument; @@ -42,12 +44,15 @@ private static final ValidationResult notOdf(final Path toValidate) { return result; } - static final OdfValidator getInstance() { - return new OdfValidatorImpl(); + static final OdfValidator getInstance(final boolean isExtended) { + return new OdfValidatorImpl(isExtended); } - private OdfValidatorImpl() { + private final boolean isExtended; + + private OdfValidatorImpl(final boolean isExtended) { super(); + this.isExtended = isExtended; } @Override @@ -117,7 +122,7 @@ public ValidationResult validate(final OpenDocument toValidate) private ValidationReport validatePackage(final Path toValidate) throws ParserConfigurationException, SAXException, ParseException, FileNotFoundException { final OdfPackage pckg = OdfPackages.getPackageParser().parsePackage(toValidate); - return ValidationReportImpl.of(toValidate.toString(), pckg, Collections.singletonList(OdfValidators.getValidatingParser().validatePackage(pckg))); + return ValidationReportImpl.of(toValidate.toString(), pckg, Collections.singletonList(OdfValidators.getValidatingParser(this.isExtended).validatePackage(pckg))); } private ValidationReport validateOpenDocumentXml(final Path toValidate) @@ -143,10 +148,11 @@ private ValidationResult validateParseResult(final Path toValidate, ParseResult } } if (doc.isExtended()) { - result.getMessageLog().add(toValidate.toString(), - FACTORY.getError("DOC-8", Messages.parameterListInstance().add("namespaces", Utils.collectNsPrefixes( - OdfXmlDocuments.odfXmlDocumentOf(parseResult).getForeignNamespaces())))); - } else { + ParameterList params = Messages.parameterListInstance().add("namespaces", Utils.collectNsPrefixes(OdfXmlDocuments.odfXmlDocumentOf(parseResult) + .getForeignNamespaces())); + result.getMessageLog().add(toValidate.toString(), FACTORY.getMessage("DOC-8", this.isExtended ? Severity.INFO : Severity.ERROR, params)); + } + if (this.isExtended || !doc.isExtended()) { final Schema schema = new OdfSchemaFactory().getSchema(OdfNamespaces.OFFICE, version); parseResult = validator.validate(parseResult, Files.newInputStream(toValidate), schema); } diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidators.java b/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidators.java index eabfbbde..eeaa21ad 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidators.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/OdfValidators.java @@ -7,16 +7,39 @@ import org.xml.sax.SAXException; public class OdfValidators { - + /** - * Get a validating parser instance. + * Get a non-extended validating parser instance. * * @return a validating parser instance * @throws ParserConfigurationException * @throws SAXException */ public static final ValidatingParser getValidatingParser() throws ParserConfigurationException, SAXException { - return ValidatingParserImpl.getInstance(); + return ValidatingParserImpl.getInstance(false); + } + + /** + * Get either an extended or non-extended validating parser instance. + * + * @return a validating parser instance + * @param isExtended whether to enable extended validation/conformance + * @throws ParserConfigurationException + * @throws SAXException + */ + public static final ValidatingParser getValidatingParser(final boolean isExtended) throws ParserConfigurationException, SAXException { + return ValidatingParserImpl.getInstance(isExtended); + } + + /** + * Get a validating parser instance that implements extended validation/conformance. + * + * @return a validating parser instance + * @throws ParserConfigurationException + * @throws SAXException + */ + public static final ValidatingParser getExtendedValidatingParser() throws ParserConfigurationException, SAXException { + return ValidatingParserImpl.getInstance(true); } /** @@ -40,7 +63,11 @@ public static final ValidationResult resultOf(final String name, final MessageLo } public static final OdfValidator getOdfValidator() { - return OdfValidatorImpl.getInstance(); + return OdfValidatorImpl.getInstance(false); + } + + public static final OdfValidator getOdfValidator(final boolean isExtended) { + return OdfValidatorImpl.getInstance(isExtended); } private OdfValidators() { diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java index 2f1fa76a..2db5dfbd 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidatingParserImpl.java @@ -28,6 +28,9 @@ import org.openpreservation.odf.validation.messages.Message; import org.openpreservation.odf.validation.messages.MessageFactory; import org.openpreservation.odf.validation.messages.Messages; +import org.openpreservation.odf.validation.messages.Message.Severity; +import org.openpreservation.odf.validation.messages.Parameter.ParameterList; +import org.openpreservation.odf.xml.ExtendedConformanceFilter; import org.openpreservation.odf.xml.OdfNamespaces; import org.openpreservation.odf.xml.OdfSchemaFactory; import org.openpreservation.odf.xml.OdfXmlDocuments; @@ -40,18 +43,20 @@ final class ValidatingParserImpl implements ValidatingParser { private static final MessageFactory FACTORY = Messages.getInstance(); private static final OdfSchemaFactory SCHEMA_FACTORY = new OdfSchemaFactory(); + private final boolean isExtended; private final XmlValidator validator; private final PackageParser packageParser; private final Map results = new HashMap<>(); - static final ValidatingParserImpl getInstance() + static final ValidatingParserImpl getInstance(final boolean isExtended) throws ParserConfigurationException, SAXException { - return new ValidatingParserImpl(); + return new ValidatingParserImpl(isExtended); } - private ValidatingParserImpl() + private ValidatingParserImpl(final boolean isExtended) throws ParserConfigurationException, SAXException { super(); + this.isExtended = isExtended; this.packageParser = OdfPackages.getPackageParser(); this.validator = new XmlValidator(); } @@ -132,10 +137,12 @@ private final List validateOdfXmlDocument(final OdfPackage odfPackage, List messageList = new ArrayList<>(); OdfNamespaces ns = OdfNamespaces.fromId(parseResult.getRootNamespace().getId()); if (OdfXmlDocuments.odfXmlDocumentOf(parseResult).isExtended()) { - messageList - .add(FACTORY.getError("DOC-8", Messages.parameterListInstance().add("namespaces", Utils.collectNsPrefixes(OdfXmlDocuments.odfXmlDocumentOf(parseResult) - .getForeignNamespaces())))); - return messageList; + ParameterList params = Messages.parameterListInstance().add("namespaces", Utils.collectNsPrefixes(OdfXmlDocuments.odfXmlDocumentOf(parseResult) + .getForeignNamespaces())); + messageList.add(FACTORY.getMessage("DOC-8", this.isExtended ? Severity.INFO : Severity.ERROR, params)); + if (!this.isExtended) { + return messageList; + } } Version version = getVersionFromPath(odfPackage, xmlPath); if (version == Version.UNKNOWN) { @@ -146,11 +153,14 @@ private final List validateOdfXmlDocument(final OdfPackage odfPackage, version); if (schema != null) { try { - XmlValidationResult validationResult = this.validator.validate(parseResult, - odfPackage.getEntryXmlStream(xmlPath), schema); + XmlValidationResult validationResult = (this.isExtended) ? + this.validator.validate(parseResult, odfPackage.getEntryXmlStream(xmlPath), schema, new ExtendedConformanceFilter(version)) : + this.validator.validate(parseResult, odfPackage.getEntryXmlStream(xmlPath), schema); this.results.put(xmlPath, validationResult); } catch (IOException e) { messageList.add(FACTORY.getError("CORE-3", Messages.parameterListInstance().add("message", e.getMessage()).add("xmlPath", xmlPath))); + } catch (SAXException |ParserConfigurationException e) { + messageList.add(FACTORY.getError("CORE-4", Messages.parameterListInstance().add("message", e.getMessage()).add("xmlPath", xmlPath))); } } return messageList; diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationResultImpl.java b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationResultImpl.java index ac777bec..b5527711 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationResultImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/ValidationResultImpl.java @@ -19,6 +19,7 @@ public final class ValidationResultImpl implements ValidationResult { static final ValidationResult of(final String name) { return ValidationResultImpl.of(name, Messages.messageLogInstance()); } + static final ValidationResult of(final String name, final MessageLog documentMessages) { return new ValidationResultImpl(name, documentMessages); } diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ProfileImpl.java b/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ProfileImpl.java index 761c0ffc..9905f8c5 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ProfileImpl.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ProfileImpl.java @@ -27,16 +27,19 @@ import org.xml.sax.SAXException; final class ProfileImpl extends AbstractProfile { - private final ValidatingParser validatingParser = OdfValidators.getValidatingParser(); + private final ValidatingParser validatingParser; + private final boolean isExtended; - static final ProfileImpl of(final String id, final String name, final String description, final Set rules) + static final ProfileImpl of(final String id, final String name, final String description, final Set rules, final boolean isExtended) throws ParserConfigurationException, SAXException { - return new ProfileImpl(id, name, description, rules); + return new ProfileImpl(id, name, description, rules, isExtended); } - private ProfileImpl(final String id, final String name, final String description, final Set rules) + private ProfileImpl(final String id, final String name, final String description, final Set rules, final boolean isExtended) throws ParserConfigurationException, SAXException { super(id, name, description, rules); + this.isExtended = isExtended; + this.validatingParser = OdfValidators.getValidatingParser(isExtended); } @Override @@ -46,7 +49,7 @@ public ValidationReport check(final OpenDocument document) throws ParseException final MessageLog messages = Messages.messageLogInstance(); ValidationResult result = document.isPackage() ? this.validatingParser.validatePackage(document.getPackage()) - : OdfValidators.getOdfValidator().validate(document); + : OdfValidators.getOdfValidator(this.isExtended).validate(document); messages.add(getRulesetMessages(document, this.rules.stream().filter(Rule::isPrerequisite).collect(Collectors.toList()))); if (!messages.hasErrors()) { diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/rules/Rules.java b/odf-core/src/main/java/org/openpreservation/odf/validation/rules/Rules.java index 678c1831..b1a28299 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/rules/Rules.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/rules/Rules.java @@ -16,14 +16,20 @@ public class Rules { static final String ODF5_SCHEMATRON = "org/openpreservation/odf/core/odf/validation/rules/odf-5.sch"; static final String ODF7_SCHEMATRON = "org/openpreservation/odf/core/odf/validation/rules/odf-7.sch"; static final List SET_RULES = Arrays.asList(odf1(), odf2(), odf3(), odf4(), odf5(), odf6(), odf7(), odf8(), odf9()); + static final List EXTENDED_RULES = Arrays.asList(odf1(), extendedOdf2(), odf3(), odf4(), odf5(), odf6(), odf7(), odf8(), odf9()); static final Set DNA_RULES = new LinkedHashSet<>(SET_RULES); + static final Set EXTENDED_DNA_RULES = new LinkedHashSet<>(EXTENDED_RULES); public static final Rule odf1() { return EncryptionRule.getInstance(Severity.ERROR); } public static final Rule odf2() { - return ValidPackageRule.getInstance(Severity.ERROR); + return ValidPackageRule.getInstance(Severity.ERROR, false); + } + + public static final Rule extendedOdf2() { + return ValidPackageRule.getInstance(Severity.ERROR, true); } public static final Rule odf3() { @@ -62,9 +68,9 @@ public static final Rule odf10() { return SubDocumentRule.getInstance(Severity.WARNING); } - public static final Profile getDnaProfile() throws ParserConfigurationException, SAXException { + public static final Profile getDnaProfile(final boolean isExtended) throws ParserConfigurationException, SAXException { return ProfileImpl.of("DNA", "DNA ODF Spreadsheets Preservation Specification", - "Extended validation for OpenDocument spreadsheets.", DNA_RULES); + "Extended validation for OpenDocument spreadsheets.", isExtended ? EXTENDED_DNA_RULES : DNA_RULES, isExtended); } private Rules() { diff --git a/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ValidPackageRule.java b/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ValidPackageRule.java index ce722401..32f1310c 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ValidPackageRule.java +++ b/odf-core/src/main/java/org/openpreservation/odf/validation/rules/ValidPackageRule.java @@ -20,15 +20,17 @@ class ValidPackageRule extends AbstractRule { private static final String VER_MESS = "Package version: %s detected. "; private static final String INV_MESS = "Package does not comply with specification. "; - static final ValidPackageRule getInstance(final Severity severity) { + static final ValidPackageRule getInstance(final Severity severity, final boolean isExtended) { return new ValidPackageRule("POL-2", "Standard Compliance", "The file MUST comply with the standard 'OASIS Open Document Format for Office Applications (OpenDocument) v1.3'.", - severity, false); + severity, false, isExtended); } + private final boolean isExtended; private ValidPackageRule(final String id, final String name, final String description, final Severity severity, - final boolean isPrerequisite) { + final boolean isPrerequisite, final boolean isExtended) { super(id, name, description, severity, isPrerequisite); + this.isExtended = isExtended; } @Override @@ -36,7 +38,7 @@ public MessageLog check(final OpenDocument document) throws ParseException { Objects.requireNonNull(document, "document must not be null"); try { final MessageLog messageLog = Messages.messageLogInstance(); - OdfValidator validator = OdfValidators.getOdfValidator(); + OdfValidator validator = OdfValidators.getOdfValidator(this.isExtended); ValidationReport report = validator.validate(document.getPath()); ParameterList parameters = Messages.parameterListInstance(); if (!report.getValidationResults().get(0).isValid() || !document.getVersion().equals(Version.ODF_13) || !document.isPackage()) { diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/ExtendedConformanceFilter.java b/odf-core/src/main/java/org/openpreservation/odf/xml/ExtendedConformanceFilter.java new file mode 100644 index 00000000..7e09ff43 --- /dev/null +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/ExtendedConformanceFilter.java @@ -0,0 +1,142 @@ +package org.openpreservation.odf.xml; + +import java.util.Map; +import java.util.Set; +import java.util.Stack; + +import org.xml.sax.Attributes; +import org.xml.sax.SAXException; +import org.xml.sax.helpers.AttributesImpl; +import org.xml.sax.helpers.XMLFilterImpl; + +public class ExtendedConformanceFilter extends XMLFilterImpl { + private static final String TRUE = "true"; + + private Set odfNamespaces; + private Stack foreignProcContElements = new Stack<>(); + private Stack paraAncestorElements = new Stack<>(); + + private final Version version; + + /** Creates a new instance of NamespaceFilter */ + public ExtendedConformanceFilter(final Version version) { + super(); + this.version = version; + this.odfNamespaces = (this.version.compareTo(Version.ODF_12) >= 0) ? OdfNamespaces.ODF_NAMESPACES_1_2 + : OdfNamespaces.ODF_NAMESPACES_1_1; + } + + @Override + public void endElement(final String uri, final String localName, final String qName) throws SAXException { + OdfNamespaces namespace = OdfNamespaces.fromId(uri); + if (isForeignNamespace(namespace)) { + this.foreignProcContElements.pop(); + } else { + if (isProcessContent()) { + this.paraAncestorElements.pop(); + super.endElement(uri, localName, qName); + } + } + } + + @Override + public void startElement(final String uri, final String localName, final String qName, final Attributes atts) + throws SAXException { + boolean processContent = isProcessContent(); + OdfNamespaces namespace = OdfNamespaces.fromId(uri); + if (isForeignNamespace(namespace)) { + processForeignNamespace(processContent, atts); + } else if (processContent) { + super.startElement(uri, localName, qName, processContent(namespace, localName, atts)); + } + } + + private boolean isForeignNamespace(final OdfNamespaces namespace) { + return !this.odfNamespaces.contains(namespace); + } + + private final void processForeignNamespace(final boolean processContent, final Attributes atts) { + boolean processContentLocal = processContent; + if (processContent) { + String procContAttVal = atts.getValue(OdfNamespaces.OFFICE.getId().toString(), "process-content"); + if (this.version.compareTo(Version.ODF_12) >= 0) { + processContentLocal = procContAttVal != null + ? procContAttVal.equals(TRUE) + : hasParagraphAncestorElement(); + } else { + processContentLocal = procContAttVal == null || procContAttVal.equals(TRUE); + } + } + this.foreignProcContElements.push(processContentLocal); + } + + private final Attributes processContent(final OdfNamespaces namespace, + final String localName, final Attributes atts) { + AttributesImpl localAttributes = new AttributesImpl(atts); + int i = localAttributes.getLength(); + while (i-- > 0) { + String aAttrUri = localAttributes.getURI(i); + if (isForeignNamespace(OdfNamespaces.fromId(aAttrUri))) { + localAttributes.removeAttribute(i); + } + } + + boolean paraAncestor = hasParagraphAncestorElement(); + if (isParagraphAncestor(namespace, localName)) + paraAncestor = true; + else if (isParagraphAncestorException(namespace, localName)) { + paraAncestor = false; + } + paraAncestorElements.push(paraAncestor); + return localAttributes; + } + + private boolean isProcessContent() { + return this.foreignProcContElements.empty() + ? true + : this.foreignProcContElements.peek(); + } + + private boolean hasParagraphAncestorElement() { + return this.paraAncestorElements.empty() + ? false + : this.paraAncestorElements.peek(); + } + + private final boolean isParagraphAncestor(final OdfNamespaces namespace, final String localName) { + return ((localName.equals("p") || localName.equals("h")) && namespace == OdfNamespaces.TEXT); + } + + @Override + public void characters(final char[] chars, final int start, final int length) throws SAXException { + if (isProcessContent()) + super.characters(chars, start, length); + } + + // elements that do not contain character data - by ODF 1.2 + // part 1 3.17, the character data in foreign elements + // below these should be ignored by default + private static final Map> PARAGRAPH_ANCESTOR_EXCEPTIONS = Map.of( + // Text namespace elements that do not contain character data + OdfNamespaces.TEXT, Set.of("s", "tab", "line-break", "soft-page-break", "bookmark", + "bookmark-start", "bookmark-end", "reference-mark", "reference-mark-start", + "reference-mark-end", "note", "change", "change-start", "change-end", + "toc-mark", "toc-mark-start", "toc-mark-end", "alphabetical-index-mark", + "alphabetical-index-mark-start", "alphabetical-index-mark-end", + "user-index-mark", "user-index-mark-start", "user-index-mark-end"), + // Office namespace elements that do not contain character data + OdfNamespaces.OFFICE, Set.of("annotation", "annotation-end"), + // Draw namespace elements that do not contain character data + OdfNamespaces.DRAW, Set.of("a", "rect", "line", "polyline", "polygon", "regular-polygon", + "path", "circle", "g", "page-thumbnail", "frame", "measure", "caption", + "connector", "control", "custom-shape"), + // 3D namespace elements that do not contain character data + OdfNamespaces.DR3D, Set.of("scene"), + // Presentation namespace elements that do not contain character data + OdfNamespaces.PRESENTATION, Set.of("header", "footer", "date-time")); + + private boolean isParagraphAncestorException(final OdfNamespaces namespace, final String localName) { + return PARAGRAPH_ANCESTOR_EXCEPTIONS.containsKey(namespace) + && PARAGRAPH_ANCESTOR_EXCEPTIONS.get(namespace).contains(localName); + } +} diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfNamespaces.java b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfNamespaces.java index 6d7973ba..314ac310 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfNamespaces.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfNamespaces.java @@ -2,7 +2,9 @@ import java.net.URI; import java.net.URL; +import java.util.EnumSet; import java.util.Objects; +import java.util.Set; import org.openpreservation.format.xml.Namespace; import org.openpreservation.utils.Checks; @@ -105,6 +107,9 @@ public static final OdfNamespaces fromId(final String id) { return fromId(uri); } + public static final Set ODF_NAMESPACES_1_1 = EnumSet.of(OFFICE, STYLE, TEXT, TABLE, DRAW, FO, DC, META, NUMBER, SVG, CHART, DR3D, FORM, PRESENTATION, SMIL, CONFIG, SCRIPT, XLINK, XFORMS); + public static final Set ODF_NAMESPACES_1_2 = EnumSet.of(OFFICE, STYLE, TEXT, TABLE, DRAW, FO, DC, META, NUMBER, SVG, CHART, DR3D, FORM, PRESENTATION, SMIL, CONFIG, SCRIPT, XLINK, XFORMS, XHTML, GRDDL, DB, XMLNS); + /** * Get an instance of OdfNamespaces from a namespace ID URI. * diff --git a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java index dc93c72e..1c9f9b8d 100644 --- a/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java +++ b/odf-core/src/main/java/org/openpreservation/odf/xml/OdfSchemaFactory.java @@ -119,10 +119,6 @@ private static final SchemaFactory getSchemaFactory() { private final SchemaFactory rngSchemaFactory = getSchemaFactory(); - public final Schema getSchema(final OdfNamespaces namespace) { - return getSchemas(EnumSet.of(namespace), Version.ODF_13); - } - public final Schema getSchema(final OdfNamespaces namespace, final Version version) { Objects.requireNonNull(namespace, String.format(Checks.NOT_NULL, "namespace", "Namspaces")); Objects.requireNonNull(version, String.format(Checks.NOT_NULL, "version", "Version")); diff --git a/odf-core/src/test/java/org/openpreservation/format/xml/XmlValidatorTest.java b/odf-core/src/test/java/org/openpreservation/format/xml/XmlValidatorTest.java index fc07cdf6..a6ad609d 100644 --- a/odf-core/src/test/java/org/openpreservation/format/xml/XmlValidatorTest.java +++ b/odf-core/src/test/java/org/openpreservation/format/xml/XmlValidatorTest.java @@ -13,13 +13,15 @@ import org.openpreservation.odf.fmt.TestFiles; import org.openpreservation.odf.xml.OdfNamespaces; import org.openpreservation.odf.xml.OdfSchemaFactory; +import org.openpreservation.odf.xml.Version; +import org.openpreservation.odf.xml.ExtendedConformanceFilter; import org.xml.sax.SAXException; public class XmlValidatorTest { private XmlParserImpl xmlParser = new XmlParserImpl(); private XmlValidator xmlValidator = new XmlValidator(); private OdfSchemaFactory odfSchemaFactory = new OdfSchemaFactory(); - private Schema schema = odfSchemaFactory.getSchema(OdfNamespaces.OFFICE); + private Schema schema = odfSchemaFactory.getSchema(OdfNamespaces.OFFICE, Version.ODF_13); public XmlValidatorTest() throws ParserConfigurationException, SAXException { } @@ -77,6 +79,67 @@ public void testValidateNotValid() assertFalse("Validation result should NOT be valid", validationResult.isValid()); } + @Test + public void testExtendedConformanceValidation() + throws IOException, SAXException, ParserConfigurationException { + ParseResult parseResult = xmlParser.parse(TestFiles.LOEXT_EXTENDED_CONFORMANCE.openStream()); + assertNotNull("Parse result is not null", parseResult); + assertTrue("Parse result should be well formed", parseResult.isWellFormed()); + XmlValidationResult validationResult = xmlValidator.validate(parseResult, + TestFiles.LOEXT_EXTENDED_CONFORMANCE.openStream(), + schema); + assertNotNull("Validation result is not null", validationResult); + assertTrue("Validation result should be well formed", validationResult.isWellFormed()); + assertFalse("Validation result should NOT be valid", validationResult.isValid()); + validationResult = xmlValidator.validate(parseResult, + TestFiles.LOEXT_EXTENDED_CONFORMANCE.openStream(), + schema, new ExtendedConformanceFilter(Version.ODF_13)); + assertNotNull("Validation result is not null", validationResult); + assertTrue("Validation result should be well formed", validationResult.isWellFormed()); + assertTrue("Validation result should be valid", validationResult.isValid()); + } + + @Test + public void testExtendedConformanceValid() + throws IOException, SAXException, ParserConfigurationException { + + ParseResult parseResult = xmlParser.parse(TestFiles.EXTENDED_CONFORMANCE_VALID.openStream()); + assertNotNull("Parse result is not null", parseResult); + assertTrue("Parse result should be well formed", parseResult.isWellFormed()); + XmlValidationResult validationResult = xmlValidator.validate(parseResult, + TestFiles.EXTENDED_CONFORMANCE_VALID.openStream(), + schema); + assertNotNull("Validation result is not null", validationResult); + assertTrue("Validation result should be well formed", validationResult.isWellFormed()); + assertFalse("Validation result should NOT be valid", validationResult.isValid()); + validationResult = xmlValidator.validate(parseResult, + TestFiles.EXTENDED_CONFORMANCE_VALID.openStream(), + schema, new ExtendedConformanceFilter(Version.ODF_13)); + assertNotNull("Validation result is not null", validationResult); + assertTrue("Validation result should be well formed", validationResult.isWellFormed()); + assertTrue("Validation result should be valid", validationResult.isValid()); + } + + @Test + public void testExtendedConformanceInvalid() + throws IOException, SAXException, ParserConfigurationException { + ParseResult parseResult = xmlParser.parse(TestFiles.EXTENDED_CONFORMANCE_INVALID.openStream()); + assertNotNull("Parse result is not null", parseResult); + assertTrue("Parse result should be well formed", parseResult.isWellFormed()); + XmlValidationResult validationResult = xmlValidator.validate(parseResult, + TestFiles.EXTENDED_CONFORMANCE_INVALID.openStream(), + schema); + assertNotNull("Validation result is not null", validationResult); + assertTrue("Validation result should be well formed", validationResult.isWellFormed()); + assertFalse("Validation result should NOT be valid", validationResult.isValid()); + validationResult = xmlValidator.validate(parseResult, + TestFiles.EXTENDED_CONFORMANCE_INVALID.openStream(), + schema, new ExtendedConformanceFilter(Version.ODF_13)); + assertNotNull("Validation result is not null", validationResult); + assertTrue("Validation result should be well formed", validationResult.isWellFormed()); + assertFalse("Validation result should NOT be valid", validationResult.isValid()); + } + @Test public void testValidateNoVersion() throws IOException { diff --git a/odf-core/src/test/java/org/openpreservation/odf/fmt/TestFiles.java b/odf-core/src/test/java/org/openpreservation/odf/fmt/TestFiles.java index 6d0f7d57..dd58b694 100644 --- a/odf-core/src/test/java/org/openpreservation/odf/fmt/TestFiles.java +++ b/odf-core/src/test/java/org/openpreservation/odf/fmt/TestFiles.java @@ -75,6 +75,10 @@ public class TestFiles { public static final URL CONTENT_SVG = ClassLoader.getSystemResource(XML_TEST_ROOT + "content_svg.xml"); public static final URL LOEXT_EXTENDED_CONFORMANCE = ClassLoader .getSystemResource(XML_TEST_ROOT + "loext_ext_cnfrm.xml"); + public static final URL EXTENDED_CONFORMANCE_INVALID = ClassLoader + .getSystemResource(XML_TEST_ROOT + "extended_invalid.xml"); + public static final URL EXTENDED_CONFORMANCE_VALID = ClassLoader + .getSystemResource(XML_TEST_ROOT + "extended_valid.xml"); public static final URL EMPTY = ClassLoader.getSystemResource(FILE_TEST_ROOT + "empty.file"); public static final URL STYLES_ONLY_DOC = ClassLoader.getSystemResource(DOCUMENT_TEST_ROOT + "styles_only_doc.ods"); diff --git a/odf-core/src/test/java/org/openpreservation/odf/pkg/PackageParserTest.java b/odf-core/src/test/java/org/openpreservation/odf/pkg/PackageParserTest.java index 53e8343f..6faf3250 100644 --- a/odf-core/src/test/java/org/openpreservation/odf/pkg/PackageParserTest.java +++ b/odf-core/src/test/java/org/openpreservation/odf/pkg/PackageParserTest.java @@ -33,11 +33,11 @@ public void testInstantiation() throws ParserConfigurationException, SAXExceptio @Test public void testParseNullFile() throws ParserConfigurationException, SAXException { PackageParser parser = OdfPackages.getPackageParser(); - File file = null; + Path path = null; assertThrows("NullPointerException expected", NullPointerException.class, () -> { - parser.parsePackage(file.toPath()); + parser.parsePackage(path); }); } diff --git a/odf-core/src/test/java/org/openpreservation/odf/validation/ValidatingParserTest.java b/odf-core/src/test/java/org/openpreservation/odf/validation/ValidatingParserTest.java index 218a1a5c..2a68dc70 100644 --- a/odf-core/src/test/java/org/openpreservation/odf/validation/ValidatingParserTest.java +++ b/odf-core/src/test/java/org/openpreservation/odf/validation/ValidatingParserTest.java @@ -50,11 +50,11 @@ public void testParsePath() @Test public void testParseNullFile() throws ParserConfigurationException, SAXException { ValidatingParser parser = OdfValidators.getValidatingParser(); - File file = null; + Path path = null; assertThrows("NullPointerException expected", NullPointerException.class, () -> { - parser.parsePackage(file.toPath()); + parser.parsePackage(path); }); } diff --git a/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ProfileImplTest.java b/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ProfileImplTest.java index 551d151b..399ad101 100644 --- a/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ProfileImplTest.java +++ b/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ProfileImplTest.java @@ -19,7 +19,7 @@ public class ProfileImplTest { @Test public void testCheck() throws URISyntaxException, ParseException, ParserConfigurationException, SAXException , FileNotFoundException { - Profile profile = Rules.getDnaProfile(); + Profile profile = Rules.getDnaProfile(false); OpenDocument doc = Utils.getDocument(TestFiles.EMPTY_ODS); ValidationReport report = profile.check(doc); assertNotNull(report); @@ -28,7 +28,7 @@ public void testCheck() throws URISyntaxException, ParseException, ParserConfigu @Test public void testOf() throws ParserConfigurationException, SAXException { - Profile profile = Rules.getDnaProfile(); + Profile profile = Rules.getDnaProfile(false); assertNotNull(profile); } } diff --git a/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ValidPackageRuleTest.java b/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ValidPackageRuleTest.java index 56dd1a45..6f078913 100644 --- a/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ValidPackageRuleTest.java +++ b/odf-core/src/test/java/org/openpreservation/odf/validation/rules/ValidPackageRuleTest.java @@ -19,16 +19,9 @@ import org.openpreservation.odf.validation.messages.MessageLog; import org.xml.sax.SAXException; -import nl.jqno.equalsverifier.EqualsVerifier; - public class ValidPackageRuleTest { private final Rule rule = Rules.odf2(); - @Test - public void testEqualsContract() { - EqualsVerifier.forClass(ValidPackageRule.class).verify(); - } - @Test public void testGetInstance() throws ParserConfigurationException, SAXException { assertNotNull("Returned Rule should not be null", rule); diff --git a/odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_invalid.xml b/odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_invalid.xml new file mode 100644 index 00000000..f481332c --- /dev/null +++ b/odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_invalid.xml @@ -0,0 +1,249 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 1 + + + 2 + + + 3 + + + + + + Original + + + ods + + + + + + External cell references + + + + + + 1 + + + 2 + + + 3 + + + + + + RTD function + + + + + + + =RTD("TradingPlatform";"";"GetSymbolInfo";"AUD_USD";"SymbolType";"Emulator") + + + + + + + hyperlink + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Embedded object + + + + + + + + Embeded object as icon + + + + + + + + Embedded object as link + + + + + + + + + 1 + + + 2 + + + 3 + + + + + + + \ No newline at end of file diff --git a/odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_valid.xml b/odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_valid.xml new file mode 100644 index 00000000..67dace8e --- /dev/null +++ b/odf-core/src/test/resources/org/openpreservation/odf/fmt/xml/extended_valid.xml @@ -0,0 +1,2 @@ + +123OriginalodsExternal cell references123RTD function=RTD("TradingPlatform";"";"GetSymbolInfo";"AUD_USD";"SymbolType";"Emulator")hyperlinkEmbedded objectEmbeded object as iconEmbedded object as link123 \ No newline at end of file From 97012f9268938a288cca63f1a8be67befc29058f Mon Sep 17 00:00:00 2001 From: Carl Wilson Date: Thu, 23 Oct 2025 14:42:37 +0100 Subject: [PATCH 12/12] REL: Version 0.18.5 - bumped Maven version -> 0.18.5; - generated new documentation site, README and batch files; and - added new message constant file left out in error. --- README.md | 2 +- docs/developer/index.md | 2 +- docs/site/apidocs/allclasses-index.html | 99 ++++---- docs/site/apidocs/allpackages-index.html | 6 +- docs/site/apidocs/constant-values.html | 6 +- docs/site/apidocs/help-doc.html | 6 +- docs/site/apidocs/index-all.html | 125 +++++++-- docs/site/apidocs/index.html | 8 +- docs/site/apidocs/member-search-index.js | 2 +- .../format/xml/Attribute.html | 6 +- .../format/xml/Encodings.html | 6 +- .../format/xml/MessageHandler.html | 6 +- .../format/xml/Namespace.html | 6 +- .../format/xml/ParseResult.html | 6 +- .../format/xml/ParsingHandler.html | 6 +- .../format/xml/XmlParser.html | 6 +- .../format/xml/XmlParsers.html | 6 +- .../format/xml/XmlValidationResult.html | 6 +- .../format/xml/XmlValidationResults.html | 6 +- .../format/xml/XmlValidator.html | 43 +++- .../format/xml/class-use/Attribute.html | 6 +- .../format/xml/class-use/Encodings.html | 6 +- .../format/xml/class-use/MessageHandler.html | 6 +- .../format/xml/class-use/Namespace.html | 6 +- .../format/xml/class-use/ParseResult.html | 14 +- .../format/xml/class-use/ParsingHandler.html | 6 +- .../format/xml/class-use/XmlParser.html | 6 +- .../format/xml/class-use/XmlParsers.html | 6 +- .../xml/class-use/XmlValidationResult.html | 14 +- .../xml/class-use/XmlValidationResults.html | 6 +- .../format/xml/class-use/XmlValidator.html | 6 +- .../format/xml/package-summary.html | 8 +- .../format/xml/package-tree.html | 6 +- .../format/xml/package-use.html | 6 +- .../format/zip/ZipArchive.html | 6 +- .../format/zip/ZipArchiveCache.html | 25 +- .../openpreservation/format/zip/ZipEntry.html | 6 +- .../format/zip/ZipEntryImpl.html | 6 +- .../format/zip/ZipEntryProcessor.html | 6 +- .../format/zip/ZipFileProcessor.html | 48 ++-- .../format/zip/ZipProcessor.Factory.html | 6 +- .../format/zip/ZipProcessor.html | 6 +- .../org/openpreservation/format/zip/Zips.html | 6 +- .../format/zip/class-use/ZipArchive.html | 6 +- .../format/zip/class-use/ZipArchiveCache.html | 6 +- .../format/zip/class-use/ZipEntry.html | 6 +- .../format/zip/class-use/ZipEntryImpl.html | 6 +- .../zip/class-use/ZipEntryProcessor.html | 6 +- .../zip/class-use/ZipFileProcessor.html | 6 +- .../zip/class-use/ZipProcessor.Factory.html | 6 +- .../format/zip/class-use/ZipProcessor.html | 6 +- .../format/zip/class-use/Zips.html | 6 +- .../format/zip/package-summary.html | 6 +- .../format/zip/package-tree.html | 8 +- .../format/zip/package-use.html | 6 +- .../org/openpreservation/odf/Source.html | 6 +- .../odf/apps/BuildVersionProvider.html | 27 +- .../odf/apps/ConsoleFormatter.html | 6 +- .../openpreservation/odf/apps/DebugInfo.html | 160 ++++++++++++ .../apps/class-use/BuildVersionProvider.html | 6 +- .../odf/apps/class-use/ConsoleFormatter.html | 6 +- .../odf/apps/class-use/DebugInfo.html | 90 +++++++ .../odf/apps/package-summary.html | 13 +- .../odf/apps/package-tree.html | 7 +- .../odf/apps/package-use.html | 8 +- .../odf/apps/pkg/package-summary.html | 6 +- .../odf/apps/pkg/package-tree.html | 6 +- .../odf/apps/pkg/package-use.html | 6 +- .../odf/class-use/Source.html | 6 +- .../odf/document/Documents.html | 6 +- .../odf/document/FileType.html | 6 +- .../odf/document/OdfDocument.html | 6 +- .../odf/document/OpenDocument.html | 6 +- .../odf/document/class-use/Documents.html | 6 +- .../odf/document/class-use/FileType.html | 6 +- .../odf/document/class-use/OdfDocument.html | 6 +- .../odf/document/class-use/OpenDocument.html | 6 +- .../odf/document/package-summary.html | 6 +- .../odf/document/package-tree.html | 6 +- .../odf/document/package-use.html | 6 +- .../openpreservation/odf/fmt/Constants.html | 6 +- .../odf/fmt/FormatSniffer.html | 6 +- .../org/openpreservation/odf/fmt/Formats.html | 6 +- .../openpreservation/odf/fmt/OdfFormats.html | 6 +- .../openpreservation/odf/fmt/Signatures.html | 6 +- .../org/openpreservation/odf/fmt/Utils.html | 6 +- .../odf/fmt/class-use/Constants.html | 6 +- .../odf/fmt/class-use/FormatSniffer.html | 6 +- .../odf/fmt/class-use/Formats.html | 6 +- .../odf/fmt/class-use/OdfFormats.html | 6 +- .../odf/fmt/class-use/Signatures.html | 6 +- .../odf/fmt/class-use/Utils.html | 6 +- .../odf/fmt/package-summary.html | 6 +- .../odf/fmt/package-tree.html | 6 +- .../openpreservation/odf/fmt/package-use.html | 6 +- .../openpreservation/odf/package-summary.html | 6 +- .../openpreservation/odf/package-tree.html | 6 +- .../org/openpreservation/odf/package-use.html | 6 +- .../openpreservation/odf/pkg/Constants.html | 6 +- .../openpreservation/odf/pkg/FileEntry.html | 6 +- .../openpreservation/odf/pkg/Manifest.html | 6 +- .../openpreservation/odf/pkg/OdfPackage.html | 6 +- .../odf/pkg/OdfPackageDocument.html | 6 +- .../openpreservation/odf/pkg/OdfPackages.html | 6 +- .../odf/pkg/PackageParser.ParseException.html | 6 +- .../odf/pkg/PackageParser.html | 6 +- .../odf/pkg/class-use/Constants.html | 6 +- .../odf/pkg/class-use/FileEntry.html | 6 +- .../odf/pkg/class-use/Manifest.html | 6 +- .../odf/pkg/class-use/OdfPackage.html | 6 +- .../odf/pkg/class-use/OdfPackageDocument.html | 6 +- .../odf/pkg/class-use/OdfPackages.html | 6 +- .../PackageParser.ParseException.html | 6 +- .../odf/pkg/class-use/PackageParser.html | 6 +- .../odf/pkg/package-summary.html | 6 +- .../odf/pkg/package-tree.html | 6 +- .../openpreservation/odf/pkg/package-use.html | 6 +- .../odf/validation/Check.html | 6 +- .../odf/validation/CheckImpl.html | 6 +- .../odf/validation/OdfValidator.html | 6 +- .../odf/validation/OdfValidators.html | 75 +++++- .../odf/validation/Profile.html | 6 +- .../openpreservation/odf/validation/Rule.html | 6 +- .../odf/validation/ValidatingParser.html | 6 +- .../odf/validation/ValidationReport.html | 6 +- .../ValidationReports.FormatOption.html | 240 ++++++++++++++++++ .../odf/validation/ValidationReports.html | 81 ++++-- .../odf/validation/ValidationResult.html | 6 +- .../odf/validation/ValidationResultImpl.html | 6 +- .../odf/validation/class-use/Check.html | 6 +- .../odf/validation/class-use/CheckImpl.html | 6 +- .../validation/class-use/OdfValidator.html | 9 +- .../validation/class-use/OdfValidators.html | 6 +- .../odf/validation/class-use/Profile.html | 8 +- .../odf/validation/class-use/Rule.html | 29 ++- .../class-use/ValidatingParser.html | 20 +- .../class-use/ValidationReport.html | 16 +- .../ValidationReports.FormatOption.html | 107 ++++++++ .../class-use/ValidationReports.html | 6 +- .../class-use/ValidationResult.html | 6 +- .../class-use/ValidationResultImpl.html | 6 +- .../validation/messages/Message.Severity.html | 6 +- .../odf/validation/messages/Message.html | 6 +- .../validation/messages/MessageFactory.html | 6 +- .../odf/validation/messages/MessageLog.html | 6 +- .../odf/validation/messages/Messages.html | 6 +- .../messages/Parameter.ParameterList.html | 6 +- .../odf/validation/messages/Parameter.html | 6 +- .../messages/class-use/Message.Severity.html | 6 +- .../messages/class-use/Message.html | 6 +- .../messages/class-use/MessageFactory.html | 6 +- .../messages/class-use/MessageLog.html | 6 +- .../messages/class-use/Messages.html | 6 +- .../class-use/Parameter.ParameterList.html | 6 +- .../messages/class-use/Parameter.html | 6 +- .../validation/messages/package-summary.html | 6 +- .../odf/validation/messages/package-tree.html | 6 +- .../odf/validation/messages/package-use.html | 6 +- .../odf/validation/package-summary.html | 20 +- .../odf/validation/package-tree.html | 20 +- .../odf/validation/package-use.html | 14 +- .../validation/rules/EmbeddedObjectsRule.html | 6 +- .../odf/validation/rules/Rules.html | 45 ++-- .../rules/class-use/EmbeddedObjectsRule.html | 6 +- .../odf/validation/rules/class-use/Rules.html | 6 +- .../odf/validation/rules/package-summary.html | 6 +- .../odf/validation/rules/package-tree.html | 6 +- .../odf/validation/rules/package-use.html | 6 +- .../openpreservation/odf/xml/Constants.html | 6 +- .../odf/xml/DocumentType.html | 6 +- .../odf/xml/ExtendedConformanceFilter.html | 237 +++++++++++++++++ .../odf/xml/Metadata.UserDefinedField.html | 6 +- .../openpreservation/odf/xml/Metadata.html | 6 +- .../odf/xml/OdfNamespaces.html | 48 +++- .../odf/xml/OdfSchemaFactory.html | 21 +- .../odf/xml/OdfXmlDocument.html | 6 +- .../odf/xml/OdfXmlDocuments.html | 6 +- .../org/openpreservation/odf/xml/Version.html | 40 ++- .../odf/xml/class-use/Constants.html | 6 +- .../odf/xml/class-use/DocumentType.html | 6 +- .../class-use/ExtendedConformanceFilter.html | 62 +++++ .../class-use/Metadata.UserDefinedField.html | 6 +- .../odf/xml/class-use/Metadata.html | 6 +- .../odf/xml/class-use/OdfNamespaces.html | 25 +- .../odf/xml/class-use/OdfSchemaFactory.html | 6 +- .../odf/xml/class-use/OdfXmlDocument.html | 6 +- .../odf/xml/class-use/OdfXmlDocuments.html | 6 +- .../odf/xml/class-use/Version.html | 17 +- .../odf/xml/package-summary.html | 36 +-- .../odf/xml/package-tree.html | 11 +- .../openpreservation/odf/xml/package-use.html | 6 +- .../org/openpreservation/utils/Checks.html | 6 +- .../utils/class-use/Checks.html | 6 +- .../utils/package-summary.html | 6 +- .../openpreservation/utils/package-tree.html | 6 +- .../openpreservation/utils/package-use.html | 6 +- docs/site/apidocs/overview-summary.html | 6 +- docs/site/apidocs/overview-tree.html | 15 +- docs/site/apidocs/serialized-form.html | 6 +- docs/site/apidocs/type-search-index.js | 2 +- docs/site/dependency-convergence.html | 42 +-- docs/site/dependency-info.html | 18 +- docs/site/dependency-management.html | 6 +- docs/site/distribution-management.html | 6 +- docs/site/index.html | 6 +- docs/site/issue-management.html | 6 +- docs/site/licenses.html | 136 +++++----- docs/site/modules.html | 6 +- docs/site/plugin-management.html | 6 +- docs/site/plugins.html | 6 +- docs/site/project-info.html | 6 +- docs/site/project-reports.html | 6 +- docs/site/scm.html | 6 +- docs/site/summary.html | 8 +- docs/site/team.html | 6 +- docs/site/testapidocs/allclasses-index.html | 6 +- docs/site/testapidocs/allpackages-index.html | 6 +- docs/site/testapidocs/help-doc.html | 6 +- docs/site/testapidocs/index-all.html | 22 +- docs/site/testapidocs/index.html | 8 +- docs/site/testapidocs/member-search-index.js | 2 +- .../format/xml/AtrtributeTest.html | 6 +- .../format/xml/EncodingsTest.html | 6 +- .../format/xml/NamespaceTest.html | 6 +- .../format/xml/ParseResultTest.html | 6 +- .../format/xml/ValidationResultTest.html | 6 +- .../format/xml/XmlParserTest.html | 6 +- .../format/xml/XmlTestFiles.html | 6 +- .../format/xml/XmlTestUtils.html | 6 +- .../format/xml/XmlValidatorTest.html | 72 +++++- .../format/xml/class-use/AtrtributeTest.html | 6 +- .../format/xml/class-use/EncodingsTest.html | 6 +- .../format/xml/class-use/NamespaceTest.html | 6 +- .../format/xml/class-use/ParseResultTest.html | 6 +- .../xml/class-use/ValidationResultTest.html | 6 +- .../format/xml/class-use/XmlParserTest.html | 6 +- .../format/xml/class-use/XmlTestFiles.html | 6 +- .../format/xml/class-use/XmlTestUtils.html | 6 +- .../xml/class-use/XmlValidatorTest.html | 6 +- .../format/xml/package-summary.html | 6 +- .../format/xml/package-tree.html | 6 +- .../format/xml/package-use.html | 6 +- .../format/zip/TestFiles.html | 6 +- .../format/zip/ZipArchiveTest.html | 6 +- .../format/zip/ZipEntryTest.html | 6 +- .../format/zip/ZipFileProcessorTest.html | 34 +-- .../openpreservation/format/zip/ZipsTest.html | 6 +- .../format/zip/class-use/TestFiles.html | 6 +- .../format/zip/class-use/ZipArchiveTest.html | 6 +- .../format/zip/class-use/ZipEntryTest.html | 6 +- .../zip/class-use/ZipFileProcessorTest.html | 6 +- .../format/zip/class-use/ZipsTest.html | 6 +- .../format/zip/package-summary.html | 6 +- .../format/zip/package-tree.html | 6 +- .../format/zip/package-use.html | 6 +- .../odf/document/DocumentsTest.html | 6 +- .../odf/document/OdfDocumentTest.html | 6 +- .../odf/document/OpenDocumentImplTest.html | 6 +- .../odf/document/class-use/DocumentsTest.html | 6 +- .../document/class-use/OdfDocumentTest.html | 6 +- .../class-use/OpenDocumentImplTest.html | 6 +- .../odf/document/package-summary.html | 6 +- .../odf/document/package-tree.html | 6 +- .../odf/document/package-use.html | 6 +- .../odf/fmt/FormatSnifferTest.html | 6 +- .../openpreservation/odf/fmt/FormatsTest.html | 6 +- .../odf/fmt/OdfFormatsTest.html | 6 +- .../openpreservation/odf/fmt/TestFiles.html | 24 +- .../openpreservation/odf/fmt/UtilsTest.html | 6 +- .../odf/fmt/class-use/FormatSnifferTest.html | 6 +- .../odf/fmt/class-use/FormatsTest.html | 6 +- .../odf/fmt/class-use/OdfFormatsTest.html | 6 +- .../odf/fmt/class-use/TestFiles.html | 6 +- .../odf/fmt/class-use/UtilsTest.html | 6 +- .../odf/fmt/package-summary.html | 6 +- .../odf/fmt/package-tree.html | 6 +- .../openpreservation/odf/fmt/package-use.html | 6 +- .../odf/pkg/FileEntryTest.html | 6 +- .../odf/pkg/ManifestTest.html | 6 +- .../odf/pkg/OdfPackageDocumentTest.html | 6 +- .../odf/pkg/OdfPackageTest.html | 6 +- .../odf/pkg/PackageParserTest.html | 6 +- .../odf/pkg/PackagesTest.html | 6 +- .../odf/pkg/class-use/FileEntryTest.html | 6 +- .../odf/pkg/class-use/ManifestTest.html | 6 +- .../pkg/class-use/OdfPackageDocumentTest.html | 6 +- .../odf/pkg/class-use/OdfPackageTest.html | 6 +- .../odf/pkg/class-use/PackageParserTest.html | 6 +- .../odf/pkg/class-use/PackagesTest.html | 6 +- .../odf/pkg/package-summary.html | 6 +- .../odf/pkg/package-tree.html | 6 +- .../openpreservation/odf/pkg/package-use.html | 6 +- .../odf/validation/Utilities.html | 6 +- .../odf/validation/ValidatingParserTest.html | 6 +- .../odf/validation/ValidationReportTest.html | 6 +- .../odf/validation/ValidatorTest.html | 6 +- .../odf/validation/ValidatorsTest.html | 6 +- .../odf/validation/class-use/Utilities.html | 6 +- .../class-use/ValidatingParserTest.html | 6 +- .../class-use/ValidationReportTest.html | 6 +- .../validation/class-use/ValidatorTest.html | 6 +- .../validation/class-use/ValidatorsTest.html | 6 +- .../validation/messages/MessageImplTest.html | 6 +- .../messages/class-use/MessageImplTest.html | 6 +- .../validation/messages/package-summary.html | 6 +- .../odf/validation/messages/package-tree.html | 6 +- .../odf/validation/messages/package-use.html | 6 +- .../odf/validation/package-summary.html | 6 +- .../odf/validation/package-tree.html | 6 +- .../odf/validation/package-use.html | 6 +- .../validation/rules/AbstractRuleTest.html | 6 +- .../odf/validation/rules/ContentTest.html | 6 +- .../rules/DigitalSignaturesRuleTest.html | 6 +- .../rules/EmbeddedObjectsRuleTest.html | 6 +- .../validation/rules/EncryptionRuleTest.html | 6 +- .../rules/ExtensionMimeTypeRuleTest.html | 6 +- .../validation/rules/ExternalDataTest.html | 6 +- .../odf/validation/rules/MacrosTest.html | 6 +- .../rules/PackageMimeTypeRuleTest.html | 6 +- .../odf/validation/rules/ProfileImplTest.html | 6 +- .../validation/rules/SubDocumentRuleTest.html | 6 +- .../odf/validation/rules/Utils.html | 6 +- .../rules/ValidPackageRuleTest.html | 17 +- .../rules/class-use/AbstractRuleTest.html | 6 +- .../rules/class-use/ContentTest.html | 6 +- .../class-use/DigitalSignaturesRuleTest.html | 6 +- .../class-use/EmbeddedObjectsRuleTest.html | 6 +- .../rules/class-use/EncryptionRuleTest.html | 6 +- .../class-use/ExtensionMimeTypeRuleTest.html | 6 +- .../rules/class-use/ExternalDataTest.html | 6 +- .../rules/class-use/MacrosTest.html | 6 +- .../class-use/PackageMimeTypeRuleTest.html | 6 +- .../rules/class-use/ProfileImplTest.html | 6 +- .../rules/class-use/SubDocumentRuleTest.html | 6 +- .../odf/validation/rules/class-use/Utils.html | 6 +- .../rules/class-use/ValidPackageRuleTest.html | 6 +- .../odf/validation/rules/package-summary.html | 6 +- .../odf/validation/rules/package-tree.html | 6 +- .../odf/validation/rules/package-use.html | 6 +- .../odf/xml/DocumentTypeTest.html | 6 +- ...MetadataImpl_UserDefinedFieldImplTest.html | 6 +- .../odf/xml/MetadataTest.html | 6 +- .../odf/xml/NamespacesTest.html | 6 +- .../odf/xml/OdfSchemaFactoryTest.html | 6 +- .../odf/xml/OdfXmlDocumentTest.html | 6 +- .../openpreservation/odf/xml/VersionTest.html | 6 +- .../odf/xml/class-use/DocumentTypeTest.html | 6 +- ...MetadataImpl_UserDefinedFieldImplTest.html | 6 +- .../odf/xml/class-use/MetadataTest.html | 6 +- .../odf/xml/class-use/NamespacesTest.html | 6 +- .../xml/class-use/OdfSchemaFactoryTest.html | 6 +- .../odf/xml/class-use/OdfXmlDocumentTest.html | 6 +- .../odf/xml/class-use/VersionTest.html | 6 +- .../odf/xml/package-summary.html | 6 +- .../odf/xml/package-tree.html | 6 +- .../openpreservation/odf/xml/package-use.html | 6 +- docs/site/testapidocs/overview-summary.html | 6 +- docs/site/testapidocs/overview-tree.html | 6 +- odf-apps/pom.xml | 2 +- odf-core/pom.xml | 2 +- .../odf/messages/Messages.properties | 1 + odf-reporting/pom.xml | 2 +- odf-validator | 2 +- odf-validator.bat | 2 +- pom.xml | 2 +- 365 files changed, 2741 insertions(+), 1380 deletions(-) create mode 100644 docs/site/apidocs/org/openpreservation/odf/apps/DebugInfo.html create mode 100644 docs/site/apidocs/org/openpreservation/odf/apps/class-use/DebugInfo.html create mode 100644 docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.FormatOption.html create mode 100644 docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.FormatOption.html create mode 100644 docs/site/apidocs/org/openpreservation/odf/xml/ExtendedConformanceFilter.html create mode 100644 docs/site/apidocs/org/openpreservation/odf/xml/class-use/ExtendedConformanceFilter.html diff --git a/README.md b/README.md index 035bdea2..870a9f56 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # ODF Validator -Latest version is 0.18.4. +Latest version is 0.18.5. ## About diff --git a/docs/developer/index.md b/docs/developer/index.md index 75811f85..5581162b 100644 --- a/docs/developer/index.md +++ b/docs/developer/index.md @@ -10,7 +10,7 @@ To include the core validation library in your project, add the following depend org.openpreservation.odf odf-core - 0.18.4 + 0.18.5 ``` diff --git a/docs/site/apidocs/allclasses-index.html b/docs/site/apidocs/allclasses-index.html index 2d887d34..20807a48 100644 --- a/docs/site/apidocs/allclasses-index.html +++ b/docs/site/apidocs/allclasses-index.html @@ -1,11 +1,11 @@ - -All Classes and Interfaces (ODF spreadsheet validator. 0.18.4 API) + +All Classes and Interfaces (ODF spreadsheet validator. 0.18.5 API) - + @@ -66,7 +66,10 @@

All Classes and Interfaces<
An interface defining the behaviour of XML attributes.
-
 
+
+
A version provider that reads build version information from a properties + resource.
+
Interface for a check, the application of a validation rule and message to an ODF document.
@@ -83,18 +86,22 @@

All Classes and Interfaces<
 
 
- +
 
- -
+ +
 
+ +
Enum representing the type of ODF document.
- -
 
- -
+ +
 
+ +
An enum defining the Byte Order Marks for UTF-8, UTF-16 and UTF-32.
+ +
 
 
@@ -210,68 +217,72 @@

All Classes and Interfaces<
 
 
- -
 
- -
 
- +
-
The Version enum represents the different versions of the ODF specification.
+
Specifies the output format for validation reports.
- +
 
- +
 
- -
+ +
+
The Version enum represents the different versions of the ODF specification.
+
+ +
 
+ +
 
+ +
Simple extension of ParseResult to indicate whether the result of XML validation is valid or not.
- -
+ +
A factory for creating ParseResult and XmlValidationResult objects.
- -
-
Simple class to wrap XML schema vaidaton.
+ +
+
Simple class to wrap XML schema validation.
- -
+ +
An interface for accessing the contents of a Zip archive.
- -
+ +
An extension of ZipArchive that caches the contents of the archive and provides access to the InputStreams.
- -
+ +
An interface for recording and accessing the properties of an entry from a ZipArchive.
- -
 
- -
+ +
 
+ +
Interface for processing ZipEntry objects from a ZipArchive
- -
+ +
An implementation of ZipArchiveCache that caches the contents of the archive and provides access to the InputStreams.
- -
+ +
Interface for a processor that processes an InputStream and a factory for the processor.
- -
+ +
Factory for creating a ZipProcessor.
- -
+ +
Utility class for working with ZipArchives.
diff --git a/docs/site/apidocs/allpackages-index.html b/docs/site/apidocs/allpackages-index.html index c2779240..3d6d4495 100644 --- a/docs/site/apidocs/allpackages-index.html +++ b/docs/site/apidocs/allpackages-index.html @@ -1,11 +1,11 @@ - -All Packages (ODF spreadsheet validator. 0.18.4 API) + +All Packages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/constant-values.html b/docs/site/apidocs/constant-values.html index bb4751d6..535a6de3 100644 --- a/docs/site/apidocs/constant-values.html +++ b/docs/site/apidocs/constant-values.html @@ -1,11 +1,11 @@ - -Constant Field Values (ODF spreadsheet validator. 0.18.4 API) + +Constant Field Values (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/help-doc.html b/docs/site/apidocs/help-doc.html index 6b6cc412..3a85fe17 100644 --- a/docs/site/apidocs/help-doc.html +++ b/docs/site/apidocs/help-doc.html @@ -1,11 +1,11 @@ - -API Help (ODF spreadsheet validator. 0.18.4 API) + +API Help (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/index-all.html b/docs/site/apidocs/index-all.html index afe23190..8542fac9 100644 --- a/docs/site/apidocs/index-all.html +++ b/docs/site/apidocs/index-all.html @@ -1,11 +1,11 @@ - -Index (ODF spreadsheet validator. 0.18.4 API) + +Index (ODF spreadsheet validator. 0.18.5 API) - + @@ -51,7 +51,7 @@

Index

-A B C D E F G H I L M N O P R S T U V W X Z 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form +A B C D E F G H I J L M N O P R S T U V W X Z 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form

A

accepts(ZipEntry) - Method in interface org.openpreservation.format.zip.ZipEntryProcessor
@@ -89,12 +89,17 @@

A

B

BuildVersionProvider - Class in org.openpreservation.odf.apps
-
 
+
+
A version provider that reads build version information from a properties + resource.
+
BuildVersionProvider() - Constructor for class org.openpreservation.odf.apps.BuildVersionProvider
 

C

+
characters(char[], int, int) - Method in class org.openpreservation.odf.xml.ExtendedConformanceFilter
+
 
CHART - Enum constant in enum class org.openpreservation.odf.xml.DocumentType
Chart document type, e.g.
@@ -119,6 +124,8 @@

C

 
clear() - Method in interface org.openpreservation.odf.validation.messages.Parameter.ParameterList
 
+
close() - Method in class org.openpreservation.format.zip.ZipFileProcessor
+
 
COL_ERR - Static variable in enum class org.openpreservation.odf.apps.ConsoleFormatter
 
COL_GREEN - Static variable in enum class org.openpreservation.odf.apps.ConsoleFormatter
@@ -151,6 +158,10 @@

C

 
Constants - Class in org.openpreservation.odf.xml
 
+
create(boolean, boolean[]) - Static method in class org.openpreservation.odf.apps.DebugInfo
+
+
Static factory method to create a DebugInfo instance.
+

D

@@ -162,6 +173,8 @@

D

 
DC - Enum constant in enum class org.openpreservation.odf.xml.OdfNamespaces
 
+
DebugInfo - Class in org.openpreservation.odf.apps
+
 
DEFAULT_MESSAGE - Static variable in enum class org.openpreservation.odf.validation.messages.Messages
 
detectedFormat - Variable in class org.openpreservation.odf.Source
@@ -199,6 +212,8 @@

E

An enum defining the Byte Order Marks for UTF-8, UTF-16 and UTF-32.
+
endElement(String, String, String) - Method in class org.openpreservation.odf.xml.ExtendedConformanceFilter
+
 
equals(Object) - Method in class org.openpreservation.format.zip.ZipEntryImpl
 
equals(Object) - Method in class org.openpreservation.odf.validation.rules.EmbeddedObjectsRule
@@ -217,6 +232,14 @@

E

existingFileCheck(Path) - Static method in class org.openpreservation.utils.Checks
 
+
ExtendedConformanceFilter - Class in org.openpreservation.odf.xml
+
 
+
ExtendedConformanceFilter(Version) - Constructor for class org.openpreservation.odf.xml.ExtendedConformanceFilter
+
+
Creates a new instance of NamespaceFilter
+
+
extendedOdf2() - Static method in class org.openpreservation.odf.validation.rules.Rules
+
 
extension - Variable in enum class org.openpreservation.odf.fmt.Formats
The String extension associated with the MIME type
@@ -315,12 +338,6 @@

G

Get the MIME type as an ASCII encoded byte array.
-
getCachedEntryNames() - Method in interface org.openpreservation.format.zip.ZipArchiveCache
-
-
Get a List of all of the cached entries in the archive
-
-
getCachedEntryNames() - Method in class org.openpreservation.format.zip.ZipFileProcessor
-
 
getChecks() - Method in interface org.openpreservation.odf.validation.messages.MessageLog
Get all messages in the log.
@@ -387,7 +404,7 @@

G

Get the detected Version of the package.
-
getDnaProfile() - Static method in class org.openpreservation.odf.validation.rules.Rules
+
getDnaProfile(boolean) - Static method in class org.openpreservation.odf.validation.rules.Rules
 
getDocument() - Method in interface org.openpreservation.odf.document.OpenDocument
@@ -478,6 +495,10 @@

G

Get all error messages in the log.
+
getExtendedValidatingParser() - Static method in class org.openpreservation.odf.validation.OdfValidators
+
+
Get a validating parser instance that implements extended validation/conformance.
+
getExtra() - Method in interface org.openpreservation.format.zip.ZipEntry
Get the extra field data for the entry
@@ -596,6 +617,10 @@

G

Get a MessageFactory instance with the requested property based bundle name and a specific locale
+
getJsonReport(ValidationReport) - Static method in class org.openpreservation.odf.validation.ValidationReports
+
+
Convert a ValidationReport to a JSON string.
+
getLength() - Method in enum class org.openpreservation.format.xml.Encodings
Returns the length of the Byte Order Mark in bytes
@@ -748,6 +773,8 @@

G

getOdfValidator() - Static method in class org.openpreservation.odf.validation.OdfValidators
 
+
getOdfValidator(boolean) - Static method in class org.openpreservation.odf.validation.OdfValidators
+
 
getOpenDocument() - Method in class org.openpreservation.odf.Source
 
getPackage() - Method in interface org.openpreservation.odf.document.OpenDocument
@@ -797,6 +824,10 @@

G

Get the qualified name of the Attribute.
+
getReport(ValidationReport, ValidationReports.FormatOption) - Static method in class org.openpreservation.odf.validation.ValidationReports
+
+
Get a string representation of the validation report in the specified format.
+
getResult(boolean, List<Message>) - Method in class org.openpreservation.format.xml.ParsingHandler
 
getRootAttributes() - Method in interface org.openpreservation.format.xml.ParseResult
@@ -839,8 +870,6 @@

G

Get the set of rules that comprise the profile.
-
getSchema(OdfNamespaces) - Method in class org.openpreservation.odf.xml.OdfSchemaFactory
-
 
getSchema(OdfNamespaces, Version) - Method in class org.openpreservation.odf.xml.OdfSchemaFactory
 
getSchemalocation() - Method in interface org.openpreservation.format.xml.Namespace
@@ -940,7 +969,11 @@

G

getValidatingParser() - Static method in class org.openpreservation.odf.validation.OdfValidators
-
Get a validating parser instance.
+
Get a non-extended validating parser instance.
+
+
getValidatingParser(boolean) - Static method in class org.openpreservation.odf.validation.OdfValidators
+
+
Get either an extended or non-extended validating parser instance.
getValidationResults() - Method in interface org.openpreservation.odf.validation.ValidationReport
@@ -990,6 +1023,10 @@

G

Get the ODF version of the XML document, parsed from a root element attribute
+
getVersionString() - Static method in class org.openpreservation.odf.apps.BuildVersionProvider
+
+
Get a formatted string representing the application version.
+
getVersionString() - Method in interface org.openpreservation.odf.validation.ValidationReport
Get the detected format of the OpenDocument.
@@ -1034,6 +1071,10 @@

G

Get a List paths of the package's identified ODF XML documents.
+
getXmlReport(ValidationReport) - Static method in class org.openpreservation.odf.validation.ValidationReports
+
+
Convert a ValidationReport to an XML string.
+
getZipArchive() - Method in interface org.openpreservation.odf.pkg.OdfPackage
Returns the details of the underlying ZipArchive for the package.
@@ -1297,6 +1338,11 @@

I

instance.
+

J

+
+
JSON - Enum constant in enum class org.openpreservation.odf.validation.ValidationReports.FormatOption
+
 
+

L

label - Variable in enum class org.openpreservation.odf.validation.messages.Message.Severity
@@ -1494,10 +1540,18 @@

O

ODF version 1.3.
+
ODF_14 - Enum constant in enum class org.openpreservation.odf.xml.Version
+
+
ODF version 1.4.
+
ODF_MIME - Enum constant in enum class org.openpreservation.odf.fmt.Signatures
Base match of ODF `mimetype` file.
+
ODF_NAMESPACES_1_1 - Static variable in enum class org.openpreservation.odf.xml.OdfNamespaces
+
 
+
ODF_NAMESPACES_1_2 - Static variable in enum class org.openpreservation.odf.xml.OdfNamespaces
+
 
ODF_XML - Static variable in class org.openpreservation.odf.pkg.Constants
 
odf1() - Static method in class org.openpreservation.odf.validation.rules.Rules
@@ -1728,6 +1782,10 @@

O

ODF Text Template signature.
+
outputDebugInfo() - Method in class org.openpreservation.odf.apps.DebugInfo
+
+
Output debug information to the console if debugFlag is set.
+

P

@@ -1828,14 +1886,6 @@

R

Create a new ValidationReport instance.
-
reportToJson(ValidationReport) - Static method in class org.openpreservation.odf.validation.ValidationReports
-
-
Convert a ValidationReport to a JSON string.
-
-
reportToXml(ValidationReport) - Static method in class org.openpreservation.odf.validation.ValidationReports
-
-
Convert a ValidationReport to an XML string.
-
resultOf(String, MessageLog) - Static method in class org.openpreservation.odf.validation.OdfValidators
Create a mimimal validation report.
@@ -1901,10 +1951,14 @@

S

startElement(String, String, String, Attributes) - Method in class org.openpreservation.format.xml.ParsingHandler
 
+
startElement(String, String, String, Attributes) - Method in class org.openpreservation.odf.xml.ExtendedConformanceFilter
+
 
startPrefixMapping(String, String) - Method in class org.openpreservation.format.xml.ParsingHandler
 
STYLE - Enum constant in enum class org.openpreservation.odf.xml.OdfNamespaces
 
+
supportedVersions() - Static method in enum class org.openpreservation.odf.xml.Version
+
 
SVG - Enum constant in enum class org.openpreservation.odf.xml.OdfNamespaces
 
@@ -1914,6 +1968,8 @@

T

 
TAG_MANIFEST - Static variable in class org.openpreservation.odf.pkg.Constants
 
+
TEXT - Enum constant in enum class org.openpreservation.odf.validation.ValidationReports.FormatOption
+
 
TEXT - Enum constant in enum class org.openpreservation.odf.xml.DocumentType
Text document type, e.g.
@@ -1976,6 +2032,10 @@

V

Validate the supplied InputStream against the supplied schema.
+
validate(ParseResult, InputStream, Schema, XMLFilter) - Method in class org.openpreservation.format.xml.XmlValidator
+
+
Validate the supplied InputStream against the supplied schema.
+
validate(OpenDocument) - Method in interface org.openpreservation.odf.validation.OdfValidator
Validate an OpenDocument.
@@ -1990,6 +2050,10 @@

V

 
ValidationReports - Class in org.openpreservation.odf.validation
 
+
ValidationReports.FormatOption - Enum Class in org.openpreservation.odf.validation
+
+
Specifies the output format for validation reports.
+
ValidationResult - Interface in org.openpreservation.odf.validation
 
ValidationResultImpl - Class in org.openpreservation.odf.validation
@@ -2022,6 +2086,10 @@

V

Returns the enum constant of this class with the specified name.
+
valueOf(String) - Static method in enum class org.openpreservation.odf.validation.ValidationReports.FormatOption
+
+
Returns the enum constant of this class with the specified name.
+
valueOf(String) - Static method in enum class org.openpreservation.odf.xml.DocumentType
Returns the enum constant of this class with the specified name.
@@ -2069,6 +2137,11 @@

V

Returns an array containing the constants of this enum class, in the order they are declared.
+
values() - Static method in enum class org.openpreservation.odf.validation.ValidationReports.FormatOption
+
+
Returns an array containing the constants of this enum class, in +the order they are declared.
+
values() - Static method in enum class org.openpreservation.odf.xml.DocumentType
Returns an array containing the constants of this enum class, in @@ -2116,6 +2189,8 @@

X

The XML format, used for ODF documents and metadata.
+
XML - Enum constant in enum class org.openpreservation.odf.validation.ValidationReports.FormatOption
+
 
XML_UTF_16_BE - Enum constant in enum class org.openpreservation.odf.fmt.Signatures
XML UTF-16 Big Endian signature.
@@ -2158,7 +2233,7 @@

X

XmlValidator - Class in org.openpreservation.format.xml
-
Simple class to wrap XML schema vaidaton.
+
Simple class to wrap XML schema validation.
XmlValidator() - Constructor for class org.openpreservation.format.xml.XmlValidator
 
@@ -2232,7 +2307,7 @@

Z

Utility class for working with ZipArchives.
-A B C D E F G H I L M N O P R S T U V W X Z 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form +A B C D E F G H I J L M N O P R S T U V W X Z 
All Classes and Interfaces|All Packages|Constant Field Values|Serialized Form

diff --git a/docs/site/apidocs/index.html b/docs/site/apidocs/index.html index 853ab9ac..23b6f4b7 100644 --- a/docs/site/apidocs/index.html +++ b/docs/site/apidocs/index.html @@ -1,11 +1,11 @@ - -Overview (ODF spreadsheet validator. 0.18.4 API) + +Overview (ODF spreadsheet validator. 0.18.5 API) - + @@ -49,7 +49,7 @@
-

ODF spreadsheet validator. 0.18.4 API

+

ODF spreadsheet validator. 0.18.5 API

Packages
diff --git a/docs/site/apidocs/member-search-index.js b/docs/site/apidocs/member-search-index.js index 6f920c1e..4e4cde70 100644 --- a/docs/site/apidocs/member-search-index.js +++ b/docs/site/apidocs/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"org.openpreservation.format.zip","c":"ZipEntryProcessor","l":"accepts(ZipEntry)","u":"accepts(java.util.zip.ZipEntry)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"add(Map>)","u":"add(java.util.Map)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"add(String, Collection)","u":"add(java.lang.String,java.util.Collection)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"add(String, Collection)","u":"add(java.lang.String,java.util.Collection)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"add(String, Message)","u":"add(java.lang.String,org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"add(String, Message)","u":"add(java.lang.String,org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"add(String, String)","u":"add(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"addAll(Map>)","u":"addAll(java.util.Map)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"ANIM"},{"p":"org.openpreservation.odf.apps","c":"BuildVersionProvider","l":"BuildVersionProvider()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"CHART"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"CHART"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"check(OpenDocument)","u":"check(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"check(OpenDocument)","u":"check(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"check(OpenDocument)","u":"check(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"clear()"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_ERR"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_GREEN"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_INFO"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_RED"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_WARN"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_YELLOW"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Message)","u":"colourise(org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Message, String)","u":"colourise(org.openpreservation.odf.validation.messages.Message,java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Path, Message)","u":"colourise(java.nio.file.Path,org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Path, Message, String)","u":"colourise(java.nio.file.Path,org.openpreservation.odf.validation.messages.Message,java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(String, String)","u":"colourise(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"CONFIG"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"DATABASE"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DB"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DC"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"DEFAULT_MESSAGE"},{"p":"org.openpreservation.odf","c":"Source","l":"detectedFormat"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DR3D"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DRAW"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"DRAWING"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DS"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DSIG"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"EMPTY_MESSAGE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"encoding"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"org.openpreservation.utils","c":"Checks","l":"errMessage(String, String)","u":"errMessage(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"ERROR"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"error(SAXParseException)","u":"error(org.xml.sax.SAXParseException)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"error(String)","u":"error(java.lang.String)"},{"p":"org.openpreservation.utils","c":"Checks","l":"existingFileCheck(Path)","u":"existingFileCheck(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"extension"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"extractorInstance(Path, boolean)","u":"extractorInstance(java.nio.file.Path,boolean)"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"factoryInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"FATAL"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"fatalError(SAXParseException)","u":"fatalError(org.xml.sax.SAXParseException)"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"FLAT_XML"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"FO"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"FORM"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"FORMULA"},{"p":"org.openpreservation.odf","c":"Source","l":"from(Path)","u":"from(java.nio.file.Path)"},{"p":"org.openpreservation.format.zip","c":"ZipProcessor.Factory","l":"from(ZipEntryProcessor)","u":"from(org.openpreservation.format.zip.ZipEntryProcessor)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"fromEncoding(String)","u":"fromEncoding(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"fromExtension(String)","u":"fromExtension(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"fromId(String)","u":"fromId(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"fromId(URI)","u":"fromId(java.net.URI)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"fromMime(String)","u":"fromMime(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"fromPrefix(String)","u":"fromPrefix(java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"fromRepresentation(byte[])"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"fromVersion(String)","u":"fromVersion(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getBodyElementName()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"getBytes()"},{"p":"org.openpreservation.format.zip","c":"ZipArchiveCache","l":"getCachedEntryNames()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getCachedEntryNames()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecks()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getChecks()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"getChecks()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"getChecks()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecksById(String)","u":"getChecksById(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecksBySeverity(Message.Severity)","u":"getChecksBySeverity(org.openpreservation.odf.validation.messages.Message.Severity)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecksForPath(String)","u":"getChecksForPath(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getCompressedSize()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getCompressedSize()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getCrc()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getCrc()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getDeclaredNamespaces()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getDescription()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getDescription()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getDescription()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getDescription()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDetectedFormat()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getDetectedFormat()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDetectedVersion()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"getDnaProfile()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getDocument()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDocument()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getDocumentEntries()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDocumentMap()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getDocumentType()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEncryptedEntries()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntries()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntriesByMediaType(String)","u":"getEntriesByMediaType(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntry(String)","u":"getEntry(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntryCount()"},{"p":"org.openpreservation.format.zip","c":"ZipArchiveCache","l":"getEntryInputStream(String)","u":"getEntryInputStream(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getEntryInputStream(String)","u":"getEntryInputStream(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntryMediaType(String)","u":"getEntryMediaType(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getEntryStream(FileEntry)","u":"getEntryStream(org.openpreservation.odf.pkg.FileEntry)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getEntryXmlParseResult(String)","u":"getEntryXmlParseResult(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getEntryXmlStream(String)","u":"getEntryXmlStream(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getError(String)","u":"getError(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getError(String, Parameter.ParameterList)","u":"getError(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getErrorCount()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getErrors()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getExtra()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getExtra()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getFatal(String)","u":"getFatal(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getFatal(String, Parameter.ParameterList)","u":"getFatal(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackageDocument","l":"getFileEntry()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getFilename()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getFileType()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getFirstEntry()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getFirstEntry()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getForeignNamespaces()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getFormat()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getFormat()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getFormat()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getFormats()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getFullPath()"},{"p":"org.openpreservation.format.xml","c":"Namespace","l":"getId()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getId()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getId()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getId()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getId()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getId()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getIndex()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getInfo(String)","u":"getInfo(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getInfo(String, Parameter.ParameterList)","u":"getInfo(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getInfoCount()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getInfos()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getInstance(String)","u":"getInstance(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getInstance(String, Locale)","u":"getInstance(java.lang.String,java.util.Locale)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"getLength()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"getLength()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getLocalName()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getLocalRootName()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getManifest()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getManifest()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"getMaxSignatureLength()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getMediaType()"},{"p":"org.openpreservation.odf.validation","c":"Check","l":"getMessage()"},{"p":"org.openpreservation.odf.validation","c":"CheckImpl","l":"getMessage()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getMessage(String, Message.Severity)","u":"getMessage(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getMessage(String, Message.Severity, Parameter.ParameterList)","u":"getMessage(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String)","u":"getMessageInstance(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String, Parameter.ParameterList)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String, String)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String, String, Parameter.ParameterList)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String,java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"getMessageLog()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"getMessageLog()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getMessages()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getMessages()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getMetadata()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getMetadata()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getMetaInfMap()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getMethod()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getMethod()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getMimeType()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getName()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getName()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getName()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getName()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"getName()"},{"p":"org.openpreservation.odf.xml","c":"Metadata.UserDefinedField","l":"getName()"},{"p":"org.openpreservation.format.xml","c":"XmlParsers","l":"getNonValidatingFactory()"},{"p":"org.openpreservation.format.xml","c":"XmlParsers","l":"getNonValidatingParser()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getOdfValidator()"},{"p":"org.openpreservation.odf","c":"Source","l":"getOpenDocument()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getPackage()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"getPackageParser()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getParameters()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getParseResult()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getPath()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getPath()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getPath()"},{"p":"org.openpreservation.odf.validation","c":"Check","l":"getPath()"},{"p":"org.openpreservation.odf.validation","c":"CheckImpl","l":"getPath()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getPrefix()"},{"p":"org.openpreservation.format.xml","c":"Namespace","l":"getPrefix()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getPrefix()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getQualifiedName()"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"getResult(boolean, List)","u":"getResult(boolean,java.util.List)"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootAttributes()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootAttributeValue(String)","u":"getRootAttributeValue(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getRootMediaType()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootName()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getRootName()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootNamespace()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getRootNamespace()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootPrefix()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getRootVersion()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getRules()"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"getSchema(OdfNamespaces)","u":"getSchema(org.openpreservation.odf.xml.OdfNamespaces)"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"getSchema(OdfNamespaces, Version)","u":"getSchema(org.openpreservation.odf.xml.OdfNamespaces,org.openpreservation.odf.xml.Version)"},{"p":"org.openpreservation.format.xml","c":"Namespace","l":"getSchemalocation()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getSchemalocation()"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"getSchemas(Set, Version)","u":"getSchemas(java.util.Set,org.openpreservation.odf.xml.Version)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getSeverity()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getSeverity()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getSeverity()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"getSignature()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"getSignatureCount()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getSize()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getSize()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getSize()"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getStringValue(String)","u":"getStringValue(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getStringValue(String, String)","u":"getStringValue(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getStringValueMap()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getSubDocument(String)","u":"getSubDocument(java.lang.String)"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getSubDocuments()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getText()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getTimestamp()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getTitle()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getType()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getTypeByBodyElement(String)","u":"getTypeByBodyElement(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getTypeByFormat(Formats)","u":"getTypeByFormat(org.openpreservation.odf.fmt.Formats)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getTypeByMimeString(String)","u":"getTypeByMimeString(java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getURI()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getUsedNamespaces()"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getUserDefinedFields()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getValidatingParser()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getValidationResults()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getValue()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter","l":"getValue()"},{"p":"org.openpreservation.odf.xml","c":"Metadata.UserDefinedField","l":"getValue()"},{"p":"org.openpreservation.odf.xml","c":"Metadata.UserDefinedField","l":"getValueType()"},{"p":"org.openpreservation.odf.apps","c":"BuildVersionProvider","l":"getVersion()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getVersion()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getVersion()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getVersion()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getVersion()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getVersion()"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getVersion()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getVersion()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getVersionString()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getWarning(String)","u":"getWarning(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getWarning(String, Parameter.ParameterList)","u":"getWarning(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getWarningCount()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getWarnings()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getXmlDocument()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackageDocument","l":"getXmlDocument(String)","u":"getXmlDocument(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackageDocument","l":"getXmlDocumentMap()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getXmlEntries()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getXmlEntryPaths()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getZipArchive()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getZipEntries()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getZipEntries()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getZipEntry(String)","u":"getZipEntry(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getZipEntry(String)","u":"getZipEntry(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"GRDDL"},{"p":"org.openpreservation.utils","c":"Checks","l":"GREATER_THAN_OR_EQUAL_TO"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasDsigEntries()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasErrors()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasFatals()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"hasFormat()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"hashCode()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"hashCode()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"hashCode()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasInfos()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasManifest()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasMimeEntry()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"hasRootMediaType()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"hasSeverity(Message.Severity)","u":"hasSeverity(org.openpreservation.odf.validation.messages.Message.Severity)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"hasText()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasThumbnail()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"hasVersion()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasWarnings()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"identify(byte[])"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"IMAGE"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"INFO"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"info(String)","u":"info(java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"INSTANCE"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"INSTANCE"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"isCompressionValid(ZipEntry)","u":"isCompressionValid(org.openpreservation.format.zip.ZipEntry)"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"isDirectory()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"isDirectory()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"isDocument()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"isDsig(String)","u":"isDsig(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"isEmpty()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"isEncrypted()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isEncrypted()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"isEncrypted()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isError()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isExtended()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"isExtended()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isFatal()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isInfo()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"isMatch(byte[])"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"isMatch(byte[], int)","u":"isMatch(byte[],int)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isMimeFirst()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"isOdf()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"isOdfXml(String)","u":"isOdfXml(java.lang.String)"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"isPackage()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"isPackage()"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(File)","u":"isPackage(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(InputStream)","u":"isPackage(java.io.InputStream)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(Path)","u":"isPackage(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(String)","u":"isPackage(java.lang.String)"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"isPrerequisite()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"isPrerequisite()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"isRootName(String)","u":"isRootName(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"isStored()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"isStored()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"isText()"},{"p":"org.openpreservation.format.xml","c":"XmlValidationResult","l":"isValid()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"isValid()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"isValid()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"isValid()"},{"p":"org.openpreservation.odf","c":"Source","l":"isValidZip(Path)","u":"isValidZip(java.nio.file.Path)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isWarning()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"isWellFormed()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isWellFormedZip()"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(File)","u":"isXml(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(InputStream)","u":"isXml(java.io.InputStream)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(Path)","u":"isXml(java.nio.file.Path)"},{"p":"org.openpreservation.odf","c":"Source","l":"isXml(Path)","u":"isXml(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(String)","u":"isXml(java.lang.String)"},{"p":"org.openpreservation.odf","c":"Source","l":"isZip(Path)","u":"isZip(java.nio.file.Path)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"label"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"MANIFEST"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"match(byte[])"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"match(byte[], int)","u":"match(byte[],int)"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"match(byte[], int, Collection)","u":"match(byte[],int,java.util.Collection)"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"matchAll(byte[])"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"matchAll(byte[], int)","u":"matchAll(byte[],int)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"MATH"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"MAX_LENGTH"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"MessageHandler()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"MessageHandler(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"messageLogInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"messageLogInstance(String, List)","u":"messageLogInstance(java.lang.String,java.util.List)"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"messages"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"META"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"metadataFrom(InputStream)","u":"metadataFrom(java.io.InputStream)"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"metadataOf(String, Map, List)","u":"metadataOf(java.lang.String,java.util.Map,java.util.List)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"mime"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"MIME_UKNOWN"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"MIMETYPE"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"MIMETYPE"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_CONTENT"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_MANIFEST"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_MANIFEST_RDF"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_META"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_META_INF"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"NAME_META_INF"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_SETTINGS"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_STYLES"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_THUMBNAIL"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"newline()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"NO_ID"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"NOMATCH"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"NONE"},{"p":"org.openpreservation.utils","c":"Checks","l":"NOT_EMPTY"},{"p":"org.openpreservation.utils","c":"Checks","l":"NOT_NULL"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"NUMBER"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODB"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODB"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODC"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODC"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODF"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODF"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"ODF"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_10"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_11"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_12"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_13"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODF_MIME"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"ODF_XML"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf1()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf10()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf2()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf3()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf4()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf5()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf6()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf7()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf8()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf9()"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentFrom(InputStream)","u":"odfDocumentFrom(java.io.InputStream)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentFrom(Path)","u":"odfDocumentFrom(java.nio.file.Path)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentOf(OdfXmlDocument, Metadata)","u":"odfDocumentOf(org.openpreservation.odf.xml.OdfXmlDocument,org.openpreservation.odf.xml.Metadata)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentOf(ParseResult)","u":"odfDocumentOf(org.openpreservation.format.xml.ParseResult)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentOf(ParseResult, Metadata)","u":"odfDocumentOf(org.openpreservation.format.xml.ParseResult,org.openpreservation.odf.xml.Metadata)"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"OdfSchemaFactory()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"odfXmlDocumentOf(ParseResult)","u":"odfXmlDocumentOf(org.openpreservation.format.xml.ParseResult)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODG"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODG"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODI"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODI"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODM"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODM"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODP"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODS"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODS"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODT"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODT"},{"p":"org.openpreservation.odf.validation","c":"CheckImpl","l":"of(Message, String)","u":"of(org.openpreservation.odf.validation.messages.Message,java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"XmlValidationResults","l":"of(ParseResult, boolean, List)","u":"of(org.openpreservation.format.xml.ParseResult,boolean,java.util.List)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"OFFICE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"offset"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"openDocumentFrom(Path)","u":"openDocumentFrom(java.nio.file.Path)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"openDocumentOf(Path, OdfDocument)","u":"openDocumentOf(java.nio.file.Path,org.openpreservation.odf.document.OdfDocument)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"openDocumentOf(Path, OdfPackage)","u":"openDocumentOf(java.nio.file.Path,org.openpreservation.odf.pkg.OdfPackage)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTC"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTC"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTF"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTF"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTG"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTG"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTH"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTH"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTI"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTI"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTM"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTM"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTP"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTS"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTS"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTT"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTT"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"PACKAGE"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"parameterListInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"parameterOf(String, String)","u":"parameterOf(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"XmlParser","l":"parse(InputStream)","u":"parse(java.io.InputStream)"},{"p":"org.openpreservation.format.xml","c":"XmlParser","l":"parse(Path)","u":"parse(java.nio.file.Path)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser.ParseException","l":"ParseException(Map)","u":"%3Cinit%3E(java.util.Map)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser.ParseException","l":"ParseException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser.ParseException","l":"ParseException(String, Throwable)","u":"%3Cinit%3E(java.lang.String,java.lang.Throwable)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser","l":"parsePackage(InputStream, String)","u":"parsePackage(java.io.InputStream,java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser","l":"parsePackage(Path)","u":"parsePackage(java.nio.file.Path)"},{"p":"org.openpreservation.format.xml","c":"XmlValidationResults","l":"parseResultOf(boolean, Namespace, List, List, String, String, List, List)","u":"parseResultOf(boolean,org.openpreservation.format.xml.Namespace,java.util.List,java.util.List,java.lang.String,java.lang.String,java.util.List,java.util.List)"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"ParsingHandler()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf","c":"Source","l":"path"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"PATH_MANIFEST"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"PATH_MANIFEST"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"PATH_THUMBNAIL"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"PATH_THUMBNAIL"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"PKG"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"PRESENTATION"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"PRESENTATION"},{"p":"org.openpreservation.format.zip","c":"ZipProcessor","l":"process(InputStream)","u":"process(java.io.InputStream)"},{"p":"org.openpreservation.format.zip","c":"ZipEntryProcessor","l":"process(ZipEntry, InputStream)","u":"process(java.util.zip.ZipEntry,java.io.InputStream)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"profile(Path, Profile)","u":"profile(java.nio.file.Path,org.openpreservation.odf.validation.Profile)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"reportFromValues(String, OpenDocument, List)","u":"reportFromValues(java.lang.String,org.openpreservation.odf.document.OpenDocument,java.util.List)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"reportToJson(ValidationReport)","u":"reportToJson(org.openpreservation.odf.validation.ValidationReport)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"reportToXml(ValidationReport)","u":"reportToXml(org.openpreservation.odf.validation.ValidationReport)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"resultOf(String, MessageLog)","u":"resultOf(java.lang.String,org.openpreservation.odf.validation.messages.MessageLog)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"SCRIPT"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"SIG_TERM"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"size()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"size()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"size()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"size()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"SMIL"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(BufferedInputStream)","u":"sniff(java.io.BufferedInputStream)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(BufferedInputStream, int)","u":"sniff(java.io.BufferedInputStream,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(File)","u":"sniff(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(File, int)","u":"sniff(java.io.File,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(Path)","u":"sniff(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(Path, int)","u":"sniff(java.nio.file.Path,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(String)","u":"sniff(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(String, int)","u":"sniff(java.lang.String,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(File)","u":"sniffEncoding(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(InputStream)","u":"sniffEncoding(java.io.InputStream)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(Path)","u":"sniffEncoding(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(String)","u":"sniffEncoding(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"SPREADSHEET"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"startElement(String, String, String, Attributes)","u":"startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"startPrefixMapping(String, String)","u":"startPrefixMapping(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"STYLE"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"SVG"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"TABLE"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"TAG_MANIFEST"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"TEXT"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"TEXT"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"toArray()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"toList()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"toString()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"toString()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"UNKNOWN"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"UNKNOWN"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_16_BE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_16_LE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_32_BE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_32_LE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_8"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"validate(OpenDocument)","u":"validate(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.format.xml","c":"XmlValidator","l":"validate(ParseResult, InputStream, Schema)","u":"validate(org.openpreservation.format.xml.ParseResult,java.io.InputStream,javax.xml.validation.Schema)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"validate(Path)","u":"validate(java.nio.file.Path)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"validate(Path, Formats)","u":"validate(java.nio.file.Path,org.openpreservation.odf.fmt.Formats)"},{"p":"org.openpreservation.odf.validation","c":"ValidatingParser","l":"validatePackage(OdfPackage)","u":"validatePackage(org.openpreservation.odf.pkg.OdfPackage)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"values()"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"values()"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"values()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"values()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"values()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"values()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"version"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"warn(String)","u":"warn(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"WARNING"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"warning(SAXParseException)","u":"warning(org.xml.sax.SAXParseException)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XFORMS"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XHTML"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XLINK"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"XML"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_16_BE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_16_LE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_32_BE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_32_LE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_8"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"xmlDocumentFrom(InputStream)","u":"xmlDocumentFrom(java.io.InputStream)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XMLNS"},{"p":"org.openpreservation.format.xml","c":"XmlValidator","l":"XmlValidator()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ZIP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ZIP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ZIP_EMPTY"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ZIP_SPANNED"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"zipArchiveCacheInstance(File)","u":"zipArchiveCacheInstance(java.io.File)"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"zipArchiveCacheInstance(Path)","u":"zipArchiveCacheInstance(java.nio.file.Path)"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"zipEntryInstance(String, int, int, int, int, boolean, byte[])","u":"zipEntryInstance(java.lang.String,int,int,int,int,boolean,byte[])"}];updateSearchResults(); \ No newline at end of file +memberSearchIndex = [{"p":"org.openpreservation.format.zip","c":"ZipEntryProcessor","l":"accepts(ZipEntry)","u":"accepts(java.util.zip.ZipEntry)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"add(Map>)","u":"add(java.util.Map)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"add(String, Collection)","u":"add(java.lang.String,java.util.Collection)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"add(String, Collection)","u":"add(java.lang.String,java.util.Collection)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"add(String, Message)","u":"add(java.lang.String,org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"add(String, Message)","u":"add(java.lang.String,org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"add(String, String)","u":"add(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"addAll(Map>)","u":"addAll(java.util.Map)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"ANIM"},{"p":"org.openpreservation.odf.apps","c":"BuildVersionProvider","l":"BuildVersionProvider()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf.xml","c":"ExtendedConformanceFilter","l":"characters(char[], int, int)","u":"characters(char[],int,int)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"CHART"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"CHART"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"check(OpenDocument)","u":"check(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"check(OpenDocument)","u":"check(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"check(OpenDocument)","u":"check(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"clear()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"close()"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_ERR"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_GREEN"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_INFO"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_RED"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_WARN"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"COL_YELLOW"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Message)","u":"colourise(org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Message, String)","u":"colourise(org.openpreservation.odf.validation.messages.Message,java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Path, Message)","u":"colourise(java.nio.file.Path,org.openpreservation.odf.validation.messages.Message)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(Path, Message, String)","u":"colourise(java.nio.file.Path,org.openpreservation.odf.validation.messages.Message,java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"colourise(String, String)","u":"colourise(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"CONFIG"},{"p":"org.openpreservation.odf.apps","c":"DebugInfo","l":"create(boolean, boolean[])","u":"create(boolean,boolean[])"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"DATABASE"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DB"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DC"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"DEFAULT_MESSAGE"},{"p":"org.openpreservation.odf","c":"Source","l":"detectedFormat"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DR3D"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DRAW"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"DRAWING"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DS"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"DSIG"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"EMPTY_MESSAGE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"encoding"},{"p":"org.openpreservation.odf.xml","c":"ExtendedConformanceFilter","l":"endElement(String, String, String)","u":"endElement(java.lang.String,java.lang.String,java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"equals(Object)","u":"equals(java.lang.Object)"},{"p":"org.openpreservation.utils","c":"Checks","l":"errMessage(String, String)","u":"errMessage(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"ERROR"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"error(SAXParseException)","u":"error(org.xml.sax.SAXParseException)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"error(String)","u":"error(java.lang.String)"},{"p":"org.openpreservation.utils","c":"Checks","l":"existingFileCheck(Path)","u":"existingFileCheck(java.nio.file.Path)"},{"p":"org.openpreservation.odf.xml","c":"ExtendedConformanceFilter","l":"ExtendedConformanceFilter(Version)","u":"%3Cinit%3E(org.openpreservation.odf.xml.Version)"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"extendedOdf2()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"extension"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"extractorInstance(Path, boolean)","u":"extractorInstance(java.nio.file.Path,boolean)"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"factoryInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"FATAL"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"fatalError(SAXParseException)","u":"fatalError(org.xml.sax.SAXParseException)"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"FLAT_XML"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"FO"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"FORM"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"FORMULA"},{"p":"org.openpreservation.odf","c":"Source","l":"from(Path)","u":"from(java.nio.file.Path)"},{"p":"org.openpreservation.format.zip","c":"ZipProcessor.Factory","l":"from(ZipEntryProcessor)","u":"from(org.openpreservation.format.zip.ZipEntryProcessor)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"fromEncoding(String)","u":"fromEncoding(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"fromExtension(String)","u":"fromExtension(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"fromId(String)","u":"fromId(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"fromId(URI)","u":"fromId(java.net.URI)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"fromMime(String)","u":"fromMime(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"fromPrefix(String)","u":"fromPrefix(java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"fromRepresentation(byte[])"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"fromVersion(String)","u":"fromVersion(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getBodyElementName()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"getBytes()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecks()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getChecks()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"getChecks()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"getChecks()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecksById(String)","u":"getChecksById(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecksBySeverity(Message.Severity)","u":"getChecksBySeverity(org.openpreservation.odf.validation.messages.Message.Severity)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getChecksForPath(String)","u":"getChecksForPath(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getCompressedSize()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getCompressedSize()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getCrc()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getCrc()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getDeclaredNamespaces()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getDescription()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getDescription()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getDescription()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getDescription()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDetectedFormat()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getDetectedFormat()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDetectedVersion()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"getDnaProfile(boolean)"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getDocument()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDocument()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getDocumentEntries()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getDocumentMap()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getDocumentType()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEncryptedEntries()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntries()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntriesByMediaType(String)","u":"getEntriesByMediaType(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntry(String)","u":"getEntry(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntryCount()"},{"p":"org.openpreservation.format.zip","c":"ZipArchiveCache","l":"getEntryInputStream(String)","u":"getEntryInputStream(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getEntryInputStream(String)","u":"getEntryInputStream(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getEntryMediaType(String)","u":"getEntryMediaType(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getEntryStream(FileEntry)","u":"getEntryStream(org.openpreservation.odf.pkg.FileEntry)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getEntryXmlParseResult(String)","u":"getEntryXmlParseResult(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getEntryXmlStream(String)","u":"getEntryXmlStream(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getError(String)","u":"getError(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getError(String, Parameter.ParameterList)","u":"getError(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getErrorCount()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getErrors()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getExtendedValidatingParser()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getExtra()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getExtra()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getFatal(String)","u":"getFatal(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getFatal(String, Parameter.ParameterList)","u":"getFatal(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackageDocument","l":"getFileEntry()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getFilename()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getFileType()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getFirstEntry()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getFirstEntry()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getForeignNamespaces()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getFormat()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getFormat()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getFormat()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getFormats()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getFullPath()"},{"p":"org.openpreservation.format.xml","c":"Namespace","l":"getId()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getId()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getId()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getId()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getId()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getId()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getIndex()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getInfo(String)","u":"getInfo(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getInfo(String, Parameter.ParameterList)","u":"getInfo(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getInfoCount()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getInfos()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getInstance(String)","u":"getInstance(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getInstance(String, Locale)","u":"getInstance(java.lang.String,java.util.Locale)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"getJsonReport(ValidationReport)","u":"getJsonReport(org.openpreservation.odf.validation.ValidationReport)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"getLength()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"getLength()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getLocalName()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getLocalRootName()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getManifest()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getManifest()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"getMaxSignatureLength()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getMediaType()"},{"p":"org.openpreservation.odf.validation","c":"Check","l":"getMessage()"},{"p":"org.openpreservation.odf.validation","c":"CheckImpl","l":"getMessage()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getMessage(String, Message.Severity)","u":"getMessage(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getMessage(String, Message.Severity, Parameter.ParameterList)","u":"getMessage(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String)","u":"getMessageInstance(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String, Parameter.ParameterList)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String, String)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"getMessageInstance(String, Message.Severity, String, String, Parameter.ParameterList)","u":"getMessageInstance(java.lang.String,org.openpreservation.odf.validation.messages.Message.Severity,java.lang.String,java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"getMessageLog()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"getMessageLog()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getMessages()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getMessages()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getMetadata()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getMetadata()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getMetaInfMap()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getMethod()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getMethod()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getMimeType()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getName()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getName()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getName()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getName()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"getName()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"getName()"},{"p":"org.openpreservation.odf.xml","c":"Metadata.UserDefinedField","l":"getName()"},{"p":"org.openpreservation.format.xml","c":"XmlParsers","l":"getNonValidatingFactory()"},{"p":"org.openpreservation.format.xml","c":"XmlParsers","l":"getNonValidatingParser()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getOdfValidator()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getOdfValidator(boolean)"},{"p":"org.openpreservation.odf","c":"Source","l":"getOpenDocument()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getPackage()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"getPackageParser()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getParameters()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getParseResult()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getPath()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getPath()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getPath()"},{"p":"org.openpreservation.odf.validation","c":"Check","l":"getPath()"},{"p":"org.openpreservation.odf.validation","c":"CheckImpl","l":"getPath()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getPrefix()"},{"p":"org.openpreservation.format.xml","c":"Namespace","l":"getPrefix()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getPrefix()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getQualifiedName()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"getReport(ValidationReport, ValidationReports.FormatOption)","u":"getReport(org.openpreservation.odf.validation.ValidationReport,org.openpreservation.odf.validation.ValidationReports.FormatOption)"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"getResult(boolean, List)","u":"getResult(boolean,java.util.List)"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootAttributes()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootAttributeValue(String)","u":"getRootAttributeValue(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getRootMediaType()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootName()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getRootName()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootNamespace()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getRootNamespace()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getRootPrefix()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getRootVersion()"},{"p":"org.openpreservation.odf.validation","c":"Profile","l":"getRules()"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"getSchema(OdfNamespaces, Version)","u":"getSchema(org.openpreservation.odf.xml.OdfNamespaces,org.openpreservation.odf.xml.Version)"},{"p":"org.openpreservation.format.xml","c":"Namespace","l":"getSchemalocation()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"getSchemalocation()"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"getSchemas(Set, Version)","u":"getSchemas(java.util.Set,org.openpreservation.odf.xml.Version)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getSeverity()"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"getSeverity()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"getSeverity()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"getSignature()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"getSignatureCount()"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"getSize()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"getSize()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getSize()"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getStringValue(String)","u":"getStringValue(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getStringValue(String, String)","u":"getStringValue(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getStringValueMap()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getSubDocument(String)","u":"getSubDocument(java.lang.String)"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getSubDocuments()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getText()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getTimestamp()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"getTitle()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getType()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getTypeByBodyElement(String)","u":"getTypeByBodyElement(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getTypeByFormat(Formats)","u":"getTypeByFormat(org.openpreservation.odf.fmt.Formats)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"getTypeByMimeString(String)","u":"getTypeByMimeString(java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getURI()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"getUsedNamespaces()"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getUserDefinedFields()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getValidatingParser()"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"getValidatingParser(boolean)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getValidationResults()"},{"p":"org.openpreservation.format.xml","c":"Attribute","l":"getValue()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter","l":"getValue()"},{"p":"org.openpreservation.odf.xml","c":"Metadata.UserDefinedField","l":"getValue()"},{"p":"org.openpreservation.odf.xml","c":"Metadata.UserDefinedField","l":"getValueType()"},{"p":"org.openpreservation.odf.apps","c":"BuildVersionProvider","l":"getVersion()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getVersion()"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"getVersion()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"getVersion()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"getVersion()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getVersion()"},{"p":"org.openpreservation.odf.xml","c":"Metadata","l":"getVersion()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"getVersion()"},{"p":"org.openpreservation.odf.apps","c":"BuildVersionProvider","l":"getVersionString()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"getVersionString()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getWarning(String)","u":"getWarning(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageFactory","l":"getWarning(String, Parameter.ParameterList)","u":"getWarning(java.lang.String,org.openpreservation.odf.validation.messages.Parameter.ParameterList)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getWarningCount()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"getWarnings()"},{"p":"org.openpreservation.odf.document","c":"OdfDocument","l":"getXmlDocument()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackageDocument","l":"getXmlDocument(String)","u":"getXmlDocument(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackageDocument","l":"getXmlDocumentMap()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getXmlEntries()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getXmlEntryPaths()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"getXmlReport(ValidationReport)","u":"getXmlReport(org.openpreservation.odf.validation.ValidationReport)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"getZipArchive()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getZipEntries()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getZipEntries()"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"getZipEntry(String)","u":"getZipEntry(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"getZipEntry(String)","u":"getZipEntry(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"GRDDL"},{"p":"org.openpreservation.utils","c":"Checks","l":"GREATER_THAN_OR_EQUAL_TO"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasDsigEntries()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasErrors()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasFatals()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"hasFormat()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"hashCode()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"hashCode()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"hashCode()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasInfos()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasManifest()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasMimeEntry()"},{"p":"org.openpreservation.odf.pkg","c":"Manifest","l":"hasRootMediaType()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"hasSeverity(Message.Severity)","u":"hasSeverity(org.openpreservation.odf.validation.messages.Message.Severity)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"hasText()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"hasThumbnail()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"hasVersion()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"hasWarnings()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"identify(byte[])"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"IMAGE"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"INFO"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"info(String)","u":"info(java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"INSTANCE"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"INSTANCE"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"isCompressionValid(ZipEntry)","u":"isCompressionValid(org.openpreservation.format.zip.ZipEntry)"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"isDirectory()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"isDirectory()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"isDocument()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"isDsig(String)","u":"isDsig(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"isEmpty()"},{"p":"org.openpreservation.odf.pkg","c":"FileEntry","l":"isEncrypted()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isEncrypted()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"isEncrypted()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isError()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isExtended()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocument","l":"isExtended()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isFatal()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isInfo()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"isMatch(byte[])"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"isMatch(byte[], int)","u":"isMatch(byte[],int)"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isMimeFirst()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"isOdf()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"isOdfXml(String)","u":"isOdfXml(java.lang.String)"},{"p":"org.openpreservation.odf.document","c":"OpenDocument","l":"isPackage()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"isPackage()"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(File)","u":"isPackage(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(InputStream)","u":"isPackage(java.io.InputStream)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(Path)","u":"isPackage(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isPackage(String)","u":"isPackage(java.lang.String)"},{"p":"org.openpreservation.odf.validation","c":"Rule","l":"isPrerequisite()"},{"p":"org.openpreservation.odf.validation.rules","c":"EmbeddedObjectsRule","l":"isPrerequisite()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"isRootName(String)","u":"isRootName(java.lang.String)"},{"p":"org.openpreservation.format.zip","c":"ZipEntry","l":"isStored()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"isStored()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"isText()"},{"p":"org.openpreservation.format.xml","c":"XmlValidationResult","l":"isValid()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReport","l":"isValid()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResult","l":"isValid()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"isValid()"},{"p":"org.openpreservation.odf","c":"Source","l":"isValidZip(Path)","u":"isValidZip(java.nio.file.Path)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message","l":"isWarning()"},{"p":"org.openpreservation.format.xml","c":"ParseResult","l":"isWellFormed()"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackage","l":"isWellFormedZip()"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(File)","u":"isXml(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(InputStream)","u":"isXml(java.io.InputStream)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(Path)","u":"isXml(java.nio.file.Path)"},{"p":"org.openpreservation.odf","c":"Source","l":"isXml(Path)","u":"isXml(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"isXml(String)","u":"isXml(java.lang.String)"},{"p":"org.openpreservation.odf","c":"Source","l":"isZip(Path)","u":"isZip(java.nio.file.Path)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports.FormatOption","l":"JSON"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"label"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"MANIFEST"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"match(byte[])"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"match(byte[], int)","u":"match(byte[],int)"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"match(byte[], int, Collection)","u":"match(byte[],int,java.util.Collection)"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"matchAll(byte[])"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"matchAll(byte[], int)","u":"matchAll(byte[],int)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"MATH"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"MAX_LENGTH"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"MessageHandler()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"MessageHandler(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"messageLogInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"messageLogInstance(String, List)","u":"messageLogInstance(java.lang.String,java.util.List)"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"messages"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"META"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"metadataFrom(InputStream)","u":"metadataFrom(java.io.InputStream)"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"metadataOf(String, Map, List)","u":"metadataOf(java.lang.String,java.util.Map,java.util.List)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"mime"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"MIME_UKNOWN"},{"p":"org.openpreservation.odf.fmt","c":"OdfFormats","l":"MIMETYPE"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"MIMETYPE"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_CONTENT"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_MANIFEST"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_MANIFEST_RDF"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_META"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_META_INF"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"NAME_META_INF"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_SETTINGS"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_STYLES"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"NAME_THUMBNAIL"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"newline()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"NO_ID"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"NOMATCH"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"NONE"},{"p":"org.openpreservation.utils","c":"Checks","l":"NOT_EMPTY"},{"p":"org.openpreservation.utils","c":"Checks","l":"NOT_NULL"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"NUMBER"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODB"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODB"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODC"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODC"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODF"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODF"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"ODF"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_10"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_11"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_12"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_13"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"ODF_14"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODF_MIME"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"ODF_NAMESPACES_1_1"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"ODF_NAMESPACES_1_2"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"ODF_XML"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf1()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf10()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf2()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf3()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf4()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf5()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf6()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf7()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf8()"},{"p":"org.openpreservation.odf.validation.rules","c":"Rules","l":"odf9()"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentFrom(InputStream)","u":"odfDocumentFrom(java.io.InputStream)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentFrom(Path)","u":"odfDocumentFrom(java.nio.file.Path)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentOf(OdfXmlDocument, Metadata)","u":"odfDocumentOf(org.openpreservation.odf.xml.OdfXmlDocument,org.openpreservation.odf.xml.Metadata)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentOf(ParseResult)","u":"odfDocumentOf(org.openpreservation.format.xml.ParseResult)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"odfDocumentOf(ParseResult, Metadata)","u":"odfDocumentOf(org.openpreservation.format.xml.ParseResult,org.openpreservation.odf.xml.Metadata)"},{"p":"org.openpreservation.odf.xml","c":"OdfSchemaFactory","l":"OdfSchemaFactory()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"odfXmlDocumentOf(ParseResult)","u":"odfXmlDocumentOf(org.openpreservation.format.xml.ParseResult)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODG"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODG"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODI"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODI"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODM"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODM"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODP"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODS"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODS"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ODT"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ODT"},{"p":"org.openpreservation.odf.validation","c":"CheckImpl","l":"of(Message, String)","u":"of(org.openpreservation.odf.validation.messages.Message,java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"XmlValidationResults","l":"of(ParseResult, boolean, List)","u":"of(org.openpreservation.format.xml.ParseResult,boolean,java.util.List)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"OFFICE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"offset"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"openDocumentFrom(Path)","u":"openDocumentFrom(java.nio.file.Path)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"openDocumentOf(Path, OdfDocument)","u":"openDocumentOf(java.nio.file.Path,org.openpreservation.odf.document.OdfDocument)"},{"p":"org.openpreservation.odf.document","c":"Documents","l":"openDocumentOf(Path, OdfPackage)","u":"openDocumentOf(java.nio.file.Path,org.openpreservation.odf.pkg.OdfPackage)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTC"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTC"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTF"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTF"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTG"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTG"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTH"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTH"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTI"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTI"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTM"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTM"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTP"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTS"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTS"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"OTT"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"OTT"},{"p":"org.openpreservation.odf.apps","c":"DebugInfo","l":"outputDebugInfo()"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"PACKAGE"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"parameterListInstance()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"parameterOf(String, String)","u":"parameterOf(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"XmlParser","l":"parse(InputStream)","u":"parse(java.io.InputStream)"},{"p":"org.openpreservation.format.xml","c":"XmlParser","l":"parse(Path)","u":"parse(java.nio.file.Path)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser.ParseException","l":"ParseException(Map)","u":"%3Cinit%3E(java.util.Map)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser.ParseException","l":"ParseException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser.ParseException","l":"ParseException(String, Throwable)","u":"%3Cinit%3E(java.lang.String,java.lang.Throwable)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser","l":"parsePackage(InputStream, String)","u":"parsePackage(java.io.InputStream,java.lang.String)"},{"p":"org.openpreservation.odf.pkg","c":"PackageParser","l":"parsePackage(Path)","u":"parsePackage(java.nio.file.Path)"},{"p":"org.openpreservation.format.xml","c":"XmlValidationResults","l":"parseResultOf(boolean, Namespace, List, List, String, String, List, List)","u":"parseResultOf(boolean,org.openpreservation.format.xml.Namespace,java.util.List,java.util.List,java.lang.String,java.lang.String,java.util.List,java.util.List)"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"ParsingHandler()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf","c":"Source","l":"path"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"PATH_MANIFEST"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"PATH_MANIFEST"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"PATH_THUMBNAIL"},{"p":"org.openpreservation.odf.pkg","c":"OdfPackages","l":"PATH_THUMBNAIL"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"PKG"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"PRESENTATION"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"PRESENTATION"},{"p":"org.openpreservation.format.zip","c":"ZipProcessor","l":"process(InputStream)","u":"process(java.io.InputStream)"},{"p":"org.openpreservation.format.zip","c":"ZipEntryProcessor","l":"process(ZipEntry, InputStream)","u":"process(java.util.zip.ZipEntry,java.io.InputStream)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"profile(Path, Profile)","u":"profile(java.nio.file.Path,org.openpreservation.odf.validation.Profile)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports","l":"reportFromValues(String, OpenDocument, List)","u":"reportFromValues(java.lang.String,org.openpreservation.odf.document.OpenDocument,java.util.List)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidators","l":"resultOf(String, MessageLog)","u":"resultOf(java.lang.String,org.openpreservation.odf.validation.messages.MessageLog)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"SCRIPT"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"SIG_TERM"},{"p":"org.openpreservation.format.zip","c":"ZipArchive","l":"size()"},{"p":"org.openpreservation.format.zip","c":"ZipFileProcessor","l":"size()"},{"p":"org.openpreservation.odf.validation.messages","c":"MessageLog","l":"size()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"size()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"SMIL"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(BufferedInputStream)","u":"sniff(java.io.BufferedInputStream)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(BufferedInputStream, int)","u":"sniff(java.io.BufferedInputStream,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(File)","u":"sniff(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(File, int)","u":"sniff(java.io.File,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(Path)","u":"sniff(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(Path, int)","u":"sniff(java.nio.file.Path,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(String)","u":"sniff(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniff(String, int)","u":"sniff(java.lang.String,int)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(File)","u":"sniffEncoding(java.io.File)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(InputStream)","u":"sniffEncoding(java.io.InputStream)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(Path)","u":"sniffEncoding(java.nio.file.Path)"},{"p":"org.openpreservation.odf.fmt","c":"FormatSniffer","l":"sniffEncoding(String)","u":"sniffEncoding(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"SPREADSHEET"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"startElement(String, String, String, Attributes)","u":"startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"},{"p":"org.openpreservation.odf.xml","c":"ExtendedConformanceFilter","l":"startElement(String, String, String, Attributes)","u":"startElement(java.lang.String,java.lang.String,java.lang.String,org.xml.sax.Attributes)"},{"p":"org.openpreservation.format.xml","c":"ParsingHandler","l":"startPrefixMapping(String, String)","u":"startPrefixMapping(java.lang.String,java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"STYLE"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"supportedVersions()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"SVG"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"TABLE"},{"p":"org.openpreservation.odf.pkg","c":"Constants","l":"TAG_MANIFEST"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports.FormatOption","l":"TEXT"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"TEXT"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"TEXT"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"toArray()"},{"p":"org.openpreservation.odf.validation.messages","c":"Parameter.ParameterList","l":"toList()"},{"p":"org.openpreservation.format.zip","c":"ZipEntryImpl","l":"toString()"},{"p":"org.openpreservation.odf.validation","c":"ValidationResultImpl","l":"toString()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"UNKNOWN"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"UNKNOWN"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_16_BE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_16_LE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_32_BE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_32_LE"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"UTF_8"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"validate(OpenDocument)","u":"validate(org.openpreservation.odf.document.OpenDocument)"},{"p":"org.openpreservation.format.xml","c":"XmlValidator","l":"validate(ParseResult, InputStream, Schema)","u":"validate(org.openpreservation.format.xml.ParseResult,java.io.InputStream,javax.xml.validation.Schema)"},{"p":"org.openpreservation.format.xml","c":"XmlValidator","l":"validate(ParseResult, InputStream, Schema, XMLFilter)","u":"validate(org.openpreservation.format.xml.ParseResult,java.io.InputStream,javax.xml.validation.Schema,org.xml.sax.XMLFilter)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"validate(Path)","u":"validate(java.nio.file.Path)"},{"p":"org.openpreservation.odf.validation","c":"OdfValidator","l":"validate(Path, Formats)","u":"validate(java.nio.file.Path,org.openpreservation.odf.fmt.Formats)"},{"p":"org.openpreservation.odf.validation","c":"ValidatingParser","l":"validatePackage(OdfPackage)","u":"validatePackage(org.openpreservation.odf.pkg.OdfPackage)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports.FormatOption","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"org.openpreservation.format.xml","c":"Encodings","l":"values()"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"values()"},{"p":"org.openpreservation.odf.document","c":"FileType","l":"values()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"values()"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"values()"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"values()"},{"p":"org.openpreservation.odf.validation.messages","c":"Messages","l":"values()"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports.FormatOption","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"DocumentType","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"values()"},{"p":"org.openpreservation.odf.xml","c":"Version","l":"version"},{"p":"org.openpreservation.odf.apps","c":"ConsoleFormatter","l":"warn(String)","u":"warn(java.lang.String)"},{"p":"org.openpreservation.odf.validation.messages","c":"Message.Severity","l":"WARNING"},{"p":"org.openpreservation.format.xml","c":"MessageHandler","l":"warning(SAXParseException)","u":"warning(org.xml.sax.SAXParseException)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XFORMS"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XHTML"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XLINK"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"XML"},{"p":"org.openpreservation.odf.validation","c":"ValidationReports.FormatOption","l":"XML"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_16_BE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_16_LE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_32_BE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_32_LE"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"XML_UTF_8"},{"p":"org.openpreservation.odf.xml","c":"OdfXmlDocuments","l":"xmlDocumentFrom(InputStream)","u":"xmlDocumentFrom(java.io.InputStream)"},{"p":"org.openpreservation.odf.xml","c":"OdfNamespaces","l":"XMLNS"},{"p":"org.openpreservation.format.xml","c":"XmlValidator","l":"XmlValidator()","u":"%3Cinit%3E()"},{"p":"org.openpreservation.odf.fmt","c":"Formats","l":"ZIP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ZIP"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ZIP_EMPTY"},{"p":"org.openpreservation.odf.fmt","c":"Signatures","l":"ZIP_SPANNED"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"zipArchiveCacheInstance(File)","u":"zipArchiveCacheInstance(java.io.File)"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"zipArchiveCacheInstance(Path)","u":"zipArchiveCacheInstance(java.nio.file.Path)"},{"p":"org.openpreservation.format.zip","c":"Zips","l":"zipEntryInstance(String, int, int, int, int, boolean, byte[])","u":"zipEntryInstance(java.lang.String,int,int,int,int,boolean,byte[])"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/site/apidocs/org/openpreservation/format/xml/Attribute.html b/docs/site/apidocs/org/openpreservation/format/xml/Attribute.html index c6c91514..4a16447d 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/Attribute.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/Attribute.html @@ -1,11 +1,11 @@ - -Attribute (ODF spreadsheet validator. 0.18.4 API) + +Attribute (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/Encodings.html b/docs/site/apidocs/org/openpreservation/format/xml/Encodings.html index 290d70e1..a911d1cc 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/Encodings.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/Encodings.html @@ -1,11 +1,11 @@ - -Encodings (ODF spreadsheet validator. 0.18.4 API) + +Encodings (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/MessageHandler.html b/docs/site/apidocs/org/openpreservation/format/xml/MessageHandler.html index 024ed726..86e1f029 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/MessageHandler.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/MessageHandler.html @@ -1,11 +1,11 @@ - -MessageHandler (ODF spreadsheet validator. 0.18.4 API) + +MessageHandler (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/Namespace.html b/docs/site/apidocs/org/openpreservation/format/xml/Namespace.html index b6a523d0..376e9987 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/Namespace.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/Namespace.html @@ -1,11 +1,11 @@ - -Namespace (ODF spreadsheet validator. 0.18.4 API) + +Namespace (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/ParseResult.html b/docs/site/apidocs/org/openpreservation/format/xml/ParseResult.html index 6c692f84..747cab36 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/ParseResult.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/ParseResult.html @@ -1,11 +1,11 @@ - -ParseResult (ODF spreadsheet validator. 0.18.4 API) + +ParseResult (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/ParsingHandler.html b/docs/site/apidocs/org/openpreservation/format/xml/ParsingHandler.html index ab1a2353..b13ac8e6 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/ParsingHandler.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/ParsingHandler.html @@ -1,11 +1,11 @@ - -ParsingHandler (ODF spreadsheet validator. 0.18.4 API) + +ParsingHandler (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/XmlParser.html b/docs/site/apidocs/org/openpreservation/format/xml/XmlParser.html index 13f1e086..487db0a8 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/XmlParser.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/XmlParser.html @@ -1,11 +1,11 @@ - -XmlParser (ODF spreadsheet validator. 0.18.4 API) + +XmlParser (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/XmlParsers.html b/docs/site/apidocs/org/openpreservation/format/xml/XmlParsers.html index 641a48b9..72dc6920 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/XmlParsers.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/XmlParsers.html @@ -1,11 +1,11 @@ - -XmlParsers (ODF spreadsheet validator. 0.18.4 API) + +XmlParsers (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResult.html b/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResult.html index 68d0a680..eb1e2b74 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResult.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResult.html @@ -1,11 +1,11 @@ - -XmlValidationResult (ODF spreadsheet validator. 0.18.4 API) + +XmlValidationResult (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResults.html b/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResults.html index 63575d17..16ce7b0f 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResults.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/XmlValidationResults.html @@ -1,11 +1,11 @@ - -XmlValidationResults (ODF spreadsheet validator. 0.18.4 API) + +XmlValidationResults (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/XmlValidator.html b/docs/site/apidocs/org/openpreservation/format/xml/XmlValidator.html index 77779219..5e6e8605 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/XmlValidator.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/XmlValidator.html @@ -1,11 +1,11 @@ - -XmlValidator (ODF spreadsheet validator. 0.18.4 API) + +XmlValidator (ODF spreadsheet validator. 0.18.5 API) - + @@ -79,7 +79,7 @@

Class XmlValidator


public final class XmlValidator extends Object
-
Simple class to wrap XML schema vaidaton.
+
Simple class to wrap XML schema validation.
@@ -167,6 +175,33 @@

validate

+
  • +
    +

    validate

    +
    public XmlValidationResult validate(ParseResult parseResult, + InputStream toValidate, + Schema schema, + XMLFilter filter) + throws IOException, +SAXException, +ParserConfigurationException
    +
    Validate the supplied InputStream against the supplied schema.
    +
    +
    Parameters:
    +
    parseResult - the ParseResult obtained form parsign the file + using XmlParserImpl
    +
    toValidate - an InputStream to validate
    +
    schema - the Schema to validate against
    +
    Returns:
    +
    a XmlValidationResult containing the result of the validation
    +
    Throws:
    +
    IOException - if there is an error reading supplied + InputStream.
    +
    SAXException
    +
    ParserConfigurationException
    +
    +
    +
  • diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/Attribute.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/Attribute.html index cba72fca..411e7899 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/Attribute.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/Attribute.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.xml.Attribute (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.xml.Attribute (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/Encodings.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/Encodings.html index ec276be4..81c73562 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/Encodings.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/Encodings.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.format.xml.Encodings (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.format.xml.Encodings (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/MessageHandler.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/MessageHandler.html index 30bd6268..14b9ab2a 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/MessageHandler.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/MessageHandler.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.xml.MessageHandler (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.xml.MessageHandler (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/Namespace.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/Namespace.html index 293808ac..8e716516 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/Namespace.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/Namespace.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.xml.Namespace (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.xml.Namespace (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParseResult.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParseResult.html index 791aecf3..b089923d 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParseResult.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParseResult.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.xml.ParseResult (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.xml.ParseResult (ODF spreadsheet validator. 0.18.5 API) - + @@ -128,6 +128,14 @@

    Uses of
    Validate the supplied InputStream against the supplied schema.

    + +
    XmlValidator.validate(ParseResult parseResult, + InputStream toValidate, + Schema schema, + XMLFilter filter)
    +
    +
    Validate the supplied InputStream against the supplied schema.
    +
    diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParsingHandler.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParsingHandler.html index 1eea6ef2..944dff95 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParsingHandler.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/ParsingHandler.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.xml.ParsingHandler (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.xml.ParsingHandler (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParser.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParser.html index e471de66..2f6766b1 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParser.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParser.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.xml.XmlParser (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.xml.XmlParser (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParsers.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParsers.html index 630a69c7..8c4aee81 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParsers.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlParsers.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.xml.XmlParsers (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.xml.XmlParsers (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResult.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResult.html index 7500589d..bc474b62 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResult.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResult.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.xml.XmlValidationResult (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.xml.XmlValidationResult (ODF spreadsheet validator. 0.18.5 API) - + @@ -82,6 +82,14 @@

    Uses of
    Validate the supplied InputStream against the supplied schema.

    + +
    XmlValidator.validate(ParseResult parseResult, + InputStream toValidate, + Schema schema, + XMLFilter filter)
    +
    +
    Validate the supplied InputStream against the supplied schema.
    +
    diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResults.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResults.html index d9ddce1d..5a143113 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResults.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidationResults.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.xml.XmlValidationResults (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.xml.XmlValidationResults (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidator.html b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidator.html index 68bfc8c0..ec48408a 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidator.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/class-use/XmlValidator.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.xml.XmlValidator (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.xml.XmlValidator (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/package-summary.html b/docs/site/apidocs/org/openpreservation/format/xml/package-summary.html index 62babc16..cadbfe12 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.format.xml (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.format.xml (ODF spreadsheet validator. 0.18.5 API) - + @@ -110,7 +110,7 @@

    Package org.op

    -
    Simple class to wrap XML schema vaidaton.
    +
    Simple class to wrap XML schema validation.
    diff --git a/docs/site/apidocs/org/openpreservation/format/xml/package-tree.html b/docs/site/apidocs/org/openpreservation/format/xml/package-tree.html index affe9f8c..712fcc22 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.format.xml Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.format.xml Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/xml/package-use.html b/docs/site/apidocs/org/openpreservation/format/xml/package-use.html index 9f6de8c1..437b8012 100644 --- a/docs/site/apidocs/org/openpreservation/format/xml/package-use.html +++ b/docs/site/apidocs/org/openpreservation/format/xml/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.format.xml (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.format.xml (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipArchive.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipArchive.html index 4e50d787..833981af 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipArchive.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipArchive.html @@ -1,11 +1,11 @@ - -ZipArchive (ODF spreadsheet validator. 0.18.4 API) + +ZipArchive (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipArchiveCache.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipArchiveCache.html index c621435a..24bf6b6b 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipArchiveCache.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipArchiveCache.html @@ -1,11 +1,11 @@ - -ZipArchiveCache (ODF spreadsheet validator. 0.18.4 API) + +ZipArchiveCache (ODF spreadsheet validator. 0.18.5 API) - + @@ -100,14 +100,9 @@

    Method Summary

    Modifier and Type
    Method
    Description
    - - + +
    -
    Get a List of all of the cached entries in the archive
    -
    - - -
    Get the InputStream for the entry with the passed name, equivalent to the path.
    @@ -129,16 +124,6 @@

    Method Details

    • -
      -

      getCachedEntryNames

      -
      List<String> getCachedEntryNames()
      -
      Get a List of all of the cached entries in the archive
      -
      -
      Returns:
      -
      -
      -
    • -
    • getEntryInputStream

      InputStream getEntryInputStream(String entryName) diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipEntry.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipEntry.html index d167d0fa..da5558ac 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipEntry.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipEntry.html @@ -1,11 +1,11 @@ - -ZipEntry (ODF spreadsheet validator. 0.18.4 API) + +ZipEntry (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryImpl.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryImpl.html index 888a8b20..fb843cf7 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryImpl.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryImpl.html @@ -1,11 +1,11 @@ - -ZipEntryImpl (ODF spreadsheet validator. 0.18.4 API) + +ZipEntryImpl (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryProcessor.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryProcessor.html index 66eea608..806d486a 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryProcessor.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipEntryProcessor.html @@ -1,11 +1,11 @@ - -ZipEntryProcessor (ODF spreadsheet validator. 0.18.4 API) + +ZipEntryProcessor (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipFileProcessor.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipFileProcessor.html index e4138c52..0e4fa637 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipFileProcessor.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipFileProcessor.html @@ -1,11 +1,11 @@ - -ZipFileProcessor (ODF spreadsheet validator. 0.18.4 API) + +ZipFileProcessor (ODF spreadsheet validator. 0.18.5 API) - + @@ -78,12 +78,12 @@

      Class ZipFileProcessor

      All Implemented Interfaces:
      -
      ZipArchive, ZipArchiveCache
      +
      AutoCloseable, ZipArchive, ZipArchiveCache

      public final class ZipFileProcessor extends Object -implements ZipArchiveCache
      +implements ZipArchiveCache, AutoCloseable
      An implementation of ZipArchiveCache that caches the contents of the archive and provides access to the InputStreams.
      @@ -100,11 +100,9 @@

      Method Summary

      Modifier and Type
      Method
      Description
      - - -
      -
      Get a List of all of the cached entries in the archive
      -
      +
      void
      + +
       
      @@ -227,23 +225,11 @@

      size

    • -
      -

      getCachedEntryNames

      -
      public List<String> getCachedEntryNames()
      -
      Description copied from interface: ZipArchiveCache
      -
      Get a List of all of the cached entries in the archive
      -
      -
      Specified by:
      -
      getCachedEntryNames in interface ZipArchiveCache
      -
      Returns:
      -
      -
      -
    • -
    • getEntryInputStream

      public InputStream getEntryInputStream(String entryName) - throws IOException
      + throws IOException, +NoSuchElementException
    Description copied from interface: ZipArchiveCache
    Get the InputStream for the entry with the passed name, equivalent to the path.
    @@ -255,6 +241,20 @@

    getEntryInputStream

    name, or null if no match
    Throws:
    IOException
    +
    NoSuchElementException
    + + + +
  • +
    +

    close

    +
    public void close() + throws Exception
    +
    +
    Specified by:
    +
    close in interface AutoCloseable
    +
    Throws:
    +
    Exception
  • diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.Factory.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.Factory.html index ea352d37..5e49346e 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.Factory.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.Factory.html @@ -1,11 +1,11 @@ - -ZipProcessor.Factory (ODF spreadsheet validator. 0.18.4 API) + +ZipProcessor.Factory (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.html b/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.html index 015e3a0e..76e4a3df 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/ZipProcessor.html @@ -1,11 +1,11 @@ - -ZipProcessor (ODF spreadsheet validator. 0.18.4 API) + +ZipProcessor (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/Zips.html b/docs/site/apidocs/org/openpreservation/format/zip/Zips.html index db020828..3f500481 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/Zips.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/Zips.html @@ -1,11 +1,11 @@ - -Zips (ODF spreadsheet validator. 0.18.4 API) + +Zips (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchive.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchive.html index 4efcc5cd..5144b54c 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchive.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchive.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.zip.ZipArchive (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.zip.ZipArchive (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchiveCache.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchiveCache.html index f05437c5..227bde89 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchiveCache.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipArchiveCache.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.zip.ZipArchiveCache (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.zip.ZipArchiveCache (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntry.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntry.html index 245548c3..50518849 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntry.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntry.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.zip.ZipEntry (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.zip.ZipEntry (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryImpl.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryImpl.html index 5dd1805f..24710775 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryImpl.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryImpl.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.zip.ZipEntryImpl (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.zip.ZipEntryImpl (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryProcessor.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryProcessor.html index 805e09c5..0394c9c3 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryProcessor.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipEntryProcessor.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.zip.ZipEntryProcessor (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.zip.ZipEntryProcessor (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipFileProcessor.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipFileProcessor.html index 8e25f2f6..c018de48 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipFileProcessor.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipFileProcessor.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.zip.ZipFileProcessor (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.zip.ZipFileProcessor (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.Factory.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.Factory.html index 3cbe32e2..c4f62da8 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.Factory.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.Factory.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.zip.ZipProcessor.Factory (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.zip.ZipProcessor.Factory (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.html index 848366d5..86aa1c54 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/ZipProcessor.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.format.zip.ZipProcessor (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.format.zip.ZipProcessor (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/class-use/Zips.html b/docs/site/apidocs/org/openpreservation/format/zip/class-use/Zips.html index 0d4953cc..00f81c4b 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/class-use/Zips.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/class-use/Zips.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.format.zip.Zips (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.format.zip.Zips (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/package-summary.html b/docs/site/apidocs/org/openpreservation/format/zip/package-summary.html index d7d3e006..87bf81cc 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.format.zip (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.format.zip (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/format/zip/package-tree.html b/docs/site/apidocs/org/openpreservation/format/zip/package-tree.html index 6667fd83..08530ed9 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.format.zip Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.format.zip Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + @@ -61,7 +61,7 @@

    Class Hierarchy

  • java.lang.Object
  • diff --git a/docs/site/apidocs/org/openpreservation/format/zip/package-use.html b/docs/site/apidocs/org/openpreservation/format/zip/package-use.html index d5adab9f..a8025412 100644 --- a/docs/site/apidocs/org/openpreservation/format/zip/package-use.html +++ b/docs/site/apidocs/org/openpreservation/format/zip/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.format.zip (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.format.zip (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/Source.html b/docs/site/apidocs/org/openpreservation/odf/Source.html index b041ca0e..914654a7 100644 --- a/docs/site/apidocs/org/openpreservation/odf/Source.html +++ b/docs/site/apidocs/org/openpreservation/odf/Source.html @@ -1,11 +1,11 @@ - -Source (ODF spreadsheet validator. 0.18.4 API) + +Source (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/BuildVersionProvider.html b/docs/site/apidocs/org/openpreservation/odf/apps/BuildVersionProvider.html index cfbd602f..99fe5a01 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/BuildVersionProvider.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/BuildVersionProvider.html @@ -1,11 +1,11 @@ - -BuildVersionProvider (ODF spreadsheet validator. 0.18.4 API) + +BuildVersionProvider (ODF spreadsheet validator. 0.18.5 API) - + @@ -84,6 +84,9 @@

    Class BuildVersionProvider<
    public class BuildVersionProvider extends Object implements picocli.CommandLine.IVersionProvider
    +
    A version provider that reads build version information from a properties + resource. This resource file is generated during the build process. If the + resource cannot be found or read, an IllegalStateException is thrown.
      @@ -105,7 +108,7 @@

      Constructor Summary

      Method Summary

      -
      +
      Modifier and Type
      @@ -114,6 +117,11 @@

      Method Summary

       
      +
      static String
      + +
      +
      Get a formatted string representing the application version.
      +
      @@ -158,6 +166,17 @@

      getVersion

      +
    • +
      +

      getVersionString

      +
      public static String getVersionString()
      +
      Get a formatted string representing the application version.
      +
      +
      Returns:
      +
      the version string
      +
      +
      +
    diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/ConsoleFormatter.html b/docs/site/apidocs/org/openpreservation/odf/apps/ConsoleFormatter.html index 784b8a0b..f6a34352 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/ConsoleFormatter.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/ConsoleFormatter.html @@ -1,11 +1,11 @@ - -ConsoleFormatter (ODF spreadsheet validator. 0.18.4 API) + +ConsoleFormatter (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/DebugInfo.html b/docs/site/apidocs/org/openpreservation/odf/apps/DebugInfo.html new file mode 100644 index 00000000..10f8b815 --- /dev/null +++ b/docs/site/apidocs/org/openpreservation/odf/apps/DebugInfo.html @@ -0,0 +1,160 @@ + + + + +DebugInfo (ODF spreadsheet validator. 0.18.5 API) + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Class DebugInfo

    +
    +
    java.lang.Object +
    org.openpreservation.odf.apps.DebugInfo
    +
    +
    +
    +
    public final class DebugInfo +extends Object
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        create

        +
        public static final DebugInfo create(boolean debugFlag, + boolean[] verbosity)
        +
        Static factory method to create a DebugInfo instance.
        +
        +
        Parameters:
        +
        debugFlag - whether debug output is enabled or not, set true to enable
        +
        verbosity - a boolean array representing verbosity levels, the greater the length the more verbose
        +
        Returns:
        +
        a new DebugInfo instance
        +
        +
        +
      • +
      • +
        +

        outputDebugInfo

        +
        public void outputDebugInfo()
        +
        Output debug information to the console if debugFlag is set.
        +
        +
      • +
      +
      +
    • +
    +
    + +
    + +
    +
    + + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/class-use/BuildVersionProvider.html b/docs/site/apidocs/org/openpreservation/odf/apps/class-use/BuildVersionProvider.html index 51604c4c..5af80498 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/class-use/BuildVersionProvider.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/class-use/BuildVersionProvider.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.apps.BuildVersionProvider (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.apps.BuildVersionProvider (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/class-use/ConsoleFormatter.html b/docs/site/apidocs/org/openpreservation/odf/apps/class-use/ConsoleFormatter.html index a071078d..c88f8065 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/class-use/ConsoleFormatter.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/class-use/ConsoleFormatter.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.odf.apps.ConsoleFormatter (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.odf.apps.ConsoleFormatter (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/class-use/DebugInfo.html b/docs/site/apidocs/org/openpreservation/odf/apps/class-use/DebugInfo.html new file mode 100644 index 00000000..7e9606ee --- /dev/null +++ b/docs/site/apidocs/org/openpreservation/odf/apps/class-use/DebugInfo.html @@ -0,0 +1,90 @@ + + + + +Uses of Class org.openpreservation.odf.apps.DebugInfo (ODF spreadsheet validator. 0.18.5 API) + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Uses of Class
    org.openpreservation.odf.apps.DebugInfo

    +
    +
    Packages that use DebugInfo
    +
    +
    Package
    +
    Description
    + +
     
    +
    +
    + +
    +
    + +
    +
    + + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/apps/package-summary.html index 672a0257..146cdf90 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.apps (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.apps (ODF spreadsheet validator. 0.18.5 API) - + @@ -98,9 +98,14 @@

    Package org.open
    Class
    Description
    -
     
    +
    +
    A version provider that reads build version information from a properties + resource.
    +
     
    + +
     

    diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/apps/package-tree.html index c8c36e9e..157cd20d 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.apps Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.apps Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + @@ -61,6 +61,7 @@

    Class Hierarchy

  • java.lang.Object
  • diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/package-use.html b/docs/site/apidocs/org/openpreservation/odf/apps/package-use.html index 57743fd5..94314959 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf.apps (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf.apps (ODF spreadsheet validator. 0.18.5 API) - + @@ -68,6 +68,8 @@

    Uses of
    Description
     
    + +
     
    diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-summary.html index 2ee93545..3d2ba54c 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.apps.pkg (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.apps.pkg (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-tree.html index f251464d..1ce9ecaf 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.apps.pkg Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.apps.pkg Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-use.html b/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-use.html index 8fc98673..fa6925c6 100644 --- a/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/apps/pkg/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf.apps.pkg (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf.apps.pkg (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/class-use/Source.html b/docs/site/apidocs/org/openpreservation/odf/class-use/Source.html index 1a4b7e98..4b8baf3f 100644 --- a/docs/site/apidocs/org/openpreservation/odf/class-use/Source.html +++ b/docs/site/apidocs/org/openpreservation/odf/class-use/Source.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.Source (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.Source (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/Documents.html b/docs/site/apidocs/org/openpreservation/odf/document/Documents.html index 93869fe2..48fb054b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/Documents.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/Documents.html @@ -1,11 +1,11 @@ - -Documents (ODF spreadsheet validator. 0.18.4 API) + +Documents (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/FileType.html b/docs/site/apidocs/org/openpreservation/odf/document/FileType.html index 47991a5b..c6aa0fb9 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/FileType.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/FileType.html @@ -1,11 +1,11 @@ - -FileType (ODF spreadsheet validator. 0.18.4 API) + +FileType (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/OdfDocument.html b/docs/site/apidocs/org/openpreservation/odf/document/OdfDocument.html index 4ec6f173..a285f561 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/OdfDocument.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/OdfDocument.html @@ -1,11 +1,11 @@ - -OdfDocument (ODF spreadsheet validator. 0.18.4 API) + +OdfDocument (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/OpenDocument.html b/docs/site/apidocs/org/openpreservation/odf/document/OpenDocument.html index 719c6185..61d211bd 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/OpenDocument.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/OpenDocument.html @@ -1,11 +1,11 @@ - -OpenDocument (ODF spreadsheet validator. 0.18.4 API) + +OpenDocument (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/class-use/Documents.html b/docs/site/apidocs/org/openpreservation/odf/document/class-use/Documents.html index 4b164aa1..d1bc515b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/class-use/Documents.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/class-use/Documents.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.document.Documents (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.document.Documents (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/class-use/FileType.html b/docs/site/apidocs/org/openpreservation/odf/document/class-use/FileType.html index 95cbfa6e..29d1fb91 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/class-use/FileType.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/class-use/FileType.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.odf.document.FileType (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.odf.document.FileType (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/class-use/OdfDocument.html b/docs/site/apidocs/org/openpreservation/odf/document/class-use/OdfDocument.html index 06a0527c..598edb38 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/class-use/OdfDocument.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/class-use/OdfDocument.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.document.OdfDocument (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.document.OdfDocument (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/class-use/OpenDocument.html b/docs/site/apidocs/org/openpreservation/odf/document/class-use/OpenDocument.html index 850a5ad9..4ff522a9 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/class-use/OpenDocument.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/class-use/OpenDocument.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.document.OpenDocument (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.document.OpenDocument (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/document/package-summary.html index b0dd42d3..4b736c1f 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.document (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.document (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/document/package-tree.html index 0861389c..8fadf6b7 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.document Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.document Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/document/package-use.html b/docs/site/apidocs/org/openpreservation/odf/document/package-use.html index f0be9ef0..269a9232 100644 --- a/docs/site/apidocs/org/openpreservation/odf/document/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/document/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf.document (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf.document (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/Constants.html b/docs/site/apidocs/org/openpreservation/odf/fmt/Constants.html index 3ab21fc9..e5e85a52 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/Constants.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/Constants.html @@ -1,11 +1,11 @@ - -Constants (ODF spreadsheet validator. 0.18.4 API) + +Constants (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/FormatSniffer.html b/docs/site/apidocs/org/openpreservation/odf/fmt/FormatSniffer.html index 6725a11e..97cdb9c4 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/FormatSniffer.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/FormatSniffer.html @@ -1,11 +1,11 @@ - -FormatSniffer (ODF spreadsheet validator. 0.18.4 API) + +FormatSniffer (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/Formats.html b/docs/site/apidocs/org/openpreservation/odf/fmt/Formats.html index 76c12716..cf69fac2 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/Formats.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/Formats.html @@ -1,11 +1,11 @@ - -Formats (ODF spreadsheet validator. 0.18.4 API) + +Formats (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/OdfFormats.html b/docs/site/apidocs/org/openpreservation/odf/fmt/OdfFormats.html index 920c94c3..4da469e8 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/OdfFormats.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/OdfFormats.html @@ -1,11 +1,11 @@ - -OdfFormats (ODF spreadsheet validator. 0.18.4 API) + +OdfFormats (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/Signatures.html b/docs/site/apidocs/org/openpreservation/odf/fmt/Signatures.html index f6658d7c..2007805f 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/Signatures.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/Signatures.html @@ -1,11 +1,11 @@ - -Signatures (ODF spreadsheet validator. 0.18.4 API) + +Signatures (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/Utils.html b/docs/site/apidocs/org/openpreservation/odf/fmt/Utils.html index b0b9dc2c..9fe7244f 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/Utils.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/Utils.html @@ -1,11 +1,11 @@ - -Utils (ODF spreadsheet validator. 0.18.4 API) + +Utils (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Constants.html b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Constants.html index f95f28ca..7433a124 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Constants.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Constants.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.fmt.Constants (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.fmt.Constants (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/FormatSniffer.html b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/FormatSniffer.html index d830bcf4..0e991c71 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/FormatSniffer.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/FormatSniffer.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.fmt.FormatSniffer (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.fmt.FormatSniffer (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Formats.html b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Formats.html index b6fd9f07..a755f3cd 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Formats.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Formats.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.odf.fmt.Formats (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.odf.fmt.Formats (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/OdfFormats.html b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/OdfFormats.html index d43d03d1..168c7f94 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/OdfFormats.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/OdfFormats.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.fmt.OdfFormats (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.fmt.OdfFormats (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Signatures.html b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Signatures.html index 9b9e3aef..64380191 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Signatures.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Signatures.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.odf.fmt.Signatures (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.odf.fmt.Signatures (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Utils.html b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Utils.html index 8b329204..fa21ba1f 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Utils.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/class-use/Utils.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.fmt.Utils (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.fmt.Utils (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/fmt/package-summary.html index 0111de34..ea3ed37a 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.fmt (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.fmt (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/fmt/package-tree.html index a41dfdac..8fce7ba4 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.fmt Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.fmt Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/fmt/package-use.html b/docs/site/apidocs/org/openpreservation/odf/fmt/package-use.html index d5d2c604..53fc66f0 100644 --- a/docs/site/apidocs/org/openpreservation/odf/fmt/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/fmt/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf.fmt (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf.fmt (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/package-summary.html index b8f8cd30..fef6b660 100644 --- a/docs/site/apidocs/org/openpreservation/odf/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/package-tree.html index b518b4d8..c692b7a6 100644 --- a/docs/site/apidocs/org/openpreservation/odf/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/package-use.html b/docs/site/apidocs/org/openpreservation/odf/package-use.html index 63be151c..dbbfa26e 100644 --- a/docs/site/apidocs/org/openpreservation/odf/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/Constants.html b/docs/site/apidocs/org/openpreservation/odf/pkg/Constants.html index 9386a3b7..461192fa 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/Constants.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/Constants.html @@ -1,11 +1,11 @@ - -Constants (ODF spreadsheet validator. 0.18.4 API) + +Constants (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/FileEntry.html b/docs/site/apidocs/org/openpreservation/odf/pkg/FileEntry.html index 5f0fff49..e9a2c03c 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/FileEntry.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/FileEntry.html @@ -1,11 +1,11 @@ - -FileEntry (ODF spreadsheet validator. 0.18.4 API) + +FileEntry (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/Manifest.html b/docs/site/apidocs/org/openpreservation/odf/pkg/Manifest.html index db91a2c2..2b56565e 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/Manifest.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/Manifest.html @@ -1,11 +1,11 @@ - -Manifest (ODF spreadsheet validator. 0.18.4 API) + +Manifest (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackage.html b/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackage.html index c53c34e1..78be96ad 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackage.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackage.html @@ -1,11 +1,11 @@ - -OdfPackage (ODF spreadsheet validator. 0.18.4 API) + +OdfPackage (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackageDocument.html b/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackageDocument.html index d2e86971..7e31e557 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackageDocument.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackageDocument.html @@ -1,11 +1,11 @@ - -OdfPackageDocument (ODF spreadsheet validator. 0.18.4 API) + +OdfPackageDocument (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackages.html b/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackages.html index 986b4ec0..683b0b59 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackages.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/OdfPackages.html @@ -1,11 +1,11 @@ - -OdfPackages (ODF spreadsheet validator. 0.18.4 API) + +OdfPackages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.ParseException.html b/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.ParseException.html index 2a5a59ee..79eb8b5b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.ParseException.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.ParseException.html @@ -1,11 +1,11 @@ - -PackageParser.ParseException (ODF spreadsheet validator. 0.18.4 API) + +PackageParser.ParseException (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.html b/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.html index d52445b1..80937f06 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/PackageParser.html @@ -1,11 +1,11 @@ - -PackageParser (ODF spreadsheet validator. 0.18.4 API) + +PackageParser (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Constants.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Constants.html index 9eee949c..4e6e2365 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Constants.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Constants.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.pkg.Constants (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.pkg.Constants (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/FileEntry.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/FileEntry.html index 2ad384e6..ee482eb0 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/FileEntry.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/FileEntry.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.pkg.FileEntry (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.pkg.FileEntry (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Manifest.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Manifest.html index 6dc8f9ad..bc16975d 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Manifest.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/Manifest.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.pkg.Manifest (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.pkg.Manifest (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackage.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackage.html index 3379e97d..e152aa8d 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackage.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackage.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.pkg.OdfPackage (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.pkg.OdfPackage (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackageDocument.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackageDocument.html index c7669df8..05f60a07 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackageDocument.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackageDocument.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.pkg.OdfPackageDocument (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.pkg.OdfPackageDocument (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackages.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackages.html index 409dc51e..89b58f39 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackages.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/OdfPackages.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.pkg.OdfPackages (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.pkg.OdfPackages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.ParseException.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.ParseException.html index bcbe6c72..1d6edc6b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.ParseException.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.ParseException.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.pkg.PackageParser.ParseException (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.pkg.PackageParser.ParseException (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.html b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.html index aa428376..fc757602 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/class-use/PackageParser.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.pkg.PackageParser (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.pkg.PackageParser (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/pkg/package-summary.html index 07116d5d..d633ea0a 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.pkg (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.pkg (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/pkg/package-tree.html index 92e9cef9..472a6d07 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.pkg Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.pkg Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/pkg/package-use.html b/docs/site/apidocs/org/openpreservation/odf/pkg/package-use.html index 6248bdbd..1251cbd5 100644 --- a/docs/site/apidocs/org/openpreservation/odf/pkg/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/pkg/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf.pkg (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf.pkg (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/Check.html b/docs/site/apidocs/org/openpreservation/odf/validation/Check.html index 02baa23b..3f2c5eae 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/Check.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/Check.html @@ -1,11 +1,11 @@ - -Check (ODF spreadsheet validator. 0.18.4 API) + +Check (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/CheckImpl.html b/docs/site/apidocs/org/openpreservation/odf/validation/CheckImpl.html index 475c38d5..0ac8e218 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/CheckImpl.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/CheckImpl.html @@ -1,11 +1,11 @@ - -CheckImpl (ODF spreadsheet validator. 0.18.4 API) + +CheckImpl (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidator.html b/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidator.html index bb6368e9..c14a6622 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidator.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidator.html @@ -1,11 +1,11 @@ - -OdfValidator (ODF spreadsheet validator. 0.18.4 API) + +OdfValidator (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidators.html b/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidators.html index 854b5a83..20913b06 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidators.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/OdfValidators.html @@ -1,11 +1,11 @@ - -OdfValidators (ODF spreadsheet validator. 0.18.4 API) + +OdfValidators (ODF spreadsheet validator. 0.18.5 API) - + @@ -93,23 +93,36 @@

    Method Summary

    Modifier and Type
    Method
    Description
    +
    static final ValidatingParser
    + +
    +
    Get a validating parser instance that implements extended validation/conformance.
    +
    +
    static final OdfValidator
    + +
     
    static final OdfValidator
    - +
    getOdfValidator(boolean isExtended)
     
    static final ValidatingParser
    -
    Get a validating parser instance.
    +
    Get a non-extended validating parser instance.
    -
    static boolean
    - +
    static final ValidatingParser
    +
    getValidatingParser(boolean isExtended)
    +
    Get either an extended or non-extended validating parser instance.
    +
    +
    static boolean
    + +
    Check if a zip entry has a valid compression method.
    -
    static final ValidationResult
    -
    resultOf(String name, +
    static final ValidationResult
    +
    resultOf(String name, MessageLog messages)
    -
    +
    Create a mimimal validation report.
    @@ -135,7 +148,41 @@

    getValidatingParser

    public static final ValidatingParser getValidatingParser() throws ParserConfigurationException, SAXException
    -
    Get a validating parser instance.
    +
    Get a non-extended validating parser instance.
    +
    +
    Returns:
    +
    a validating parser instance
    +
    Throws:
    +
    ParserConfigurationException
    +
    SAXException
    +
    + + +
  • +
    +

    getValidatingParser

    +
    public static final ValidatingParser getValidatingParser(boolean isExtended) + throws ParserConfigurationException, +SAXException
    +
    Get either an extended or non-extended validating parser instance.
    +
    +
    Parameters:
    +
    isExtended - whether to enable extended validation/conformance
    +
    Returns:
    +
    a validating parser instance
    +
    Throws:
    +
    ParserConfigurationException
    +
    SAXException
    +
    +
    +
  • +
  • +
    +

    getExtendedValidatingParser

    +
    public static final ValidatingParser getExtendedValidatingParser() + throws ParserConfigurationException, +SAXException
    +
    Get a validating parser instance that implements extended validation/conformance.
    Returns:
    a validating parser instance
    @@ -178,6 +225,12 @@

    getOdfValidator

    public static final OdfValidator getOdfValidator()
  • +
  • +
    +

    getOdfValidator

    +
    public static final OdfValidator getOdfValidator(boolean isExtended)
    +
    +
  • diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/Profile.html b/docs/site/apidocs/org/openpreservation/odf/validation/Profile.html index 246b0e1a..39b66c89 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/Profile.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/Profile.html @@ -1,11 +1,11 @@ - -Profile (ODF spreadsheet validator. 0.18.4 API) + +Profile (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/Rule.html b/docs/site/apidocs/org/openpreservation/odf/validation/Rule.html index 702fb8ed..53e1189d 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/Rule.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/Rule.html @@ -1,11 +1,11 @@ - -Rule (ODF spreadsheet validator. 0.18.4 API) + +Rule (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/ValidatingParser.html b/docs/site/apidocs/org/openpreservation/odf/validation/ValidatingParser.html index ef6b0efa..b8d1f547 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/ValidatingParser.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/ValidatingParser.html @@ -1,11 +1,11 @@ - -ValidatingParser (ODF spreadsheet validator. 0.18.4 API) + +ValidatingParser (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReport.html b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReport.html index 58d6e202..a8005397 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReport.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReport.html @@ -1,11 +1,11 @@ - -ValidationReport (ODF spreadsheet validator. 0.18.4 API) + +ValidationReport (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.FormatOption.html b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.FormatOption.html new file mode 100644 index 00000000..132d87d0 --- /dev/null +++ b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.FormatOption.html @@ -0,0 +1,240 @@ + + + + +ValidationReports.FormatOption (ODF spreadsheet validator. 0.18.5 API) + + + + + + + + + + + + + + + +
    + +
    +
    + +
    + +

    Enum Class ValidationReports.FormatOption

    +
    +
    java.lang.Object +
    java.lang.Enum<ValidationReports.FormatOption> +
    org.openpreservation.odf.validation.ValidationReports.FormatOption
    +
    +
    +
    +
    +
    All Implemented Interfaces:
    +
    Serializable, Comparable<ValidationReports.FormatOption>, java.lang.constant.Constable
    +
    +
    +
    Enclosing class:
    +
    ValidationReports
    +
    +
    +
    public static enum ValidationReports.FormatOption +extends Enum<ValidationReports.FormatOption>
    +
    Specifies the output format for validation reports. +
      +
    • JSON - Output the report in JSON format.
    • +
    • XML - Output the report in XML format.
    • +
    • TEXT - Output the report as plain text.
    • +
    +
    +
    + +
    +
    +
      + +
    • +
      +

      Enum Constant Details

      + +
      +
    • + +
    • +
      +

      Method Details

      +
        +
      • +
        +

        values

        +
        public static ValidationReports.FormatOption[] values()
        +
        Returns an array containing the constants of this enum class, in +the order they are declared.
        +
        +
        Returns:
        +
        an array containing the constants of this enum class, in the order they are declared
        +
        +
        +
      • +
      • +
        +

        valueOf

        +
        public static ValidationReports.FormatOption valueOf(String name)
        +
        Returns the enum constant of this class with the specified name. +The string must match exactly an identifier used to declare an +enum constant in this class. (Extraneous whitespace characters are +not permitted.)
        +
        +
        Parameters:
        +
        name - the name of the enum constant to be returned.
        +
        Returns:
        +
        the enum constant with the specified name
        +
        Throws:
        +
        IllegalArgumentException - if this enum class has no constant with the specified name
        +
        NullPointerException - if the argument is null
        +
        +
        +
      • +
      +
      +
    • +
    +
    + +
    + +
    +
    + + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.html b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.html index 12be7935..0538f6bd 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationReports.html @@ -1,11 +1,11 @@ - -ValidationReports (ODF spreadsheet validator. 0.18.4 API) + +ValidationReports (ODF spreadsheet validator. 0.18.5 API) - + @@ -45,7 +45,7 @@
    @@ -145,10 +168,10 @@

    reportFromValues

  • -
    -

    reportToJson

    -
    public static String reportToJson(ValidationReport report) - throws com.fasterxml.jackson.core.JsonProcessingException
    +
    +

    getJsonReport

    +
    public static String getJsonReport(ValidationReport report) + throws com.fasterxml.jackson.core.JsonProcessingException
    Convert a ValidationReport to a JSON string.
    Parameters:
    @@ -161,10 +184,10 @@

    reportToJson

  • -
    -

    reportToXml

    -
    public static String reportToXml(ValidationReport report) - throws com.fasterxml.jackson.core.JsonProcessingException
    +
    +

    getXmlReport

    +
    public static String getXmlReport(ValidationReport report) + throws com.fasterxml.jackson.core.JsonProcessingException
    Convert a ValidationReport to an XML string.
    Parameters:
    @@ -176,6 +199,24 @@

    reportToXml

  • +
  • +
    +

    getReport

    +
    public static String getReport(ValidationReport report, + ValidationReports.FormatOption format) + throws com.fasterxml.jackson.core.JsonProcessingException
    +
    Get a string representation of the validation report in the specified format.
    +
    +
    Parameters:
    +
    report - the report to format, may contain multiple results
    +
    format - the format for the returned report, may be JSON, XML or TEXT
    +
    Returns:
    +
    a string representation of the validation report in the specified format
    +
    Throws:
    +
    com.fasterxml.jackson.core.JsonProcessingException - when there is an error during JSON or XML processing
    +
    +
    +
  • diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResult.html b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResult.html index 50f0c3c8..18899eb7 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResult.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResult.html @@ -1,11 +1,11 @@ - -ValidationResult (ODF spreadsheet validator. 0.18.4 API) + +ValidationResult (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResultImpl.html b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResultImpl.html index 7f035626..d0d25de5 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResultImpl.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/ValidationResultImpl.html @@ -1,11 +1,11 @@ - -ValidationResultImpl (ODF spreadsheet validator. 0.18.4 API) + +ValidationResultImpl (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Check.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Check.html index b08d7e67..87ee3347 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Check.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Check.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.Check (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.Check (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/CheckImpl.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/CheckImpl.html index 0880f356..1378dc43 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/CheckImpl.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/CheckImpl.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.validation.CheckImpl (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.validation.CheckImpl (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidator.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidator.html index a1b355d6..170e2a01 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidator.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidator.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.OdfValidator (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.OdfValidator (ODF spreadsheet validator. 0.18.5 API) - + @@ -71,6 +71,9 @@

    Uses of static final OdfValidator
    OdfValidators.getOdfValidator()
     
    +
    static final OdfValidator
    +
    OdfValidators.getOdfValidator(boolean isExtended)
    +
     
    diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidators.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidators.html index d9b21551..86bb92a8 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidators.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/OdfValidators.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.validation.OdfValidators (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.validation.OdfValidators (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Profile.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Profile.html index a9f8e6d7..e4de4691 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Profile.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Profile.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.Profile (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.Profile (ODF spreadsheet validator. 0.18.5 API) - + @@ -88,7 +88,7 @@

    Uses of Method
    Description
    - +
    Rules.getDnaProfile(boolean isExtended)
     
    diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Rule.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Rule.html index 7cd3cb5e..26cb24c0 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Rule.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/Rule.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.Rule (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.Rule (ODF spreadsheet validator. 0.18.5 API) - + @@ -96,35 +96,38 @@

    Uses of Method
    Description
    -
    Rules.odf1()
    +
    Rules.extendedOdf2()
     
    static final Rule
    -
    Rules.odf10()
    +
    Rules.odf1()
     
    static final Rule
    -
    Rules.odf2()
    +
    Rules.odf10()
     
    static final Rule
    -
    Rules.odf3()
    +
    Rules.odf2()
     
    static final Rule
    -
    Rules.odf4()
    +
    Rules.odf3()
     
    static final Rule
    -
    Rules.odf5()
    +
    Rules.odf4()
     
    static final Rule
    -
    Rules.odf6()
    +
    Rules.odf5()
     
    static final Rule
    -
    Rules.odf7()
    +
    Rules.odf6()
     
    static final Rule
    -
    Rules.odf8()
    +
    Rules.odf7()
     
    static final Rule
    -
    Rules.odf9()
    +
    Rules.odf8()
     
    +
    static final Rule
    +
    Rules.odf9()
    +
     
    diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidatingParser.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidatingParser.html index e367bc3a..069835ef 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidatingParser.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidatingParser.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.ValidatingParser (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.ValidatingParser (ODF spreadsheet validator. 0.18.5 API) - + @@ -69,9 +69,19 @@

    Uses of Method
    Description
    -
    OdfValidators.getValidatingParser()
    +
    -
    Get a validating parser instance.
    +
    Get a validating parser instance that implements extended validation/conformance.
    +
    +
    static final ValidatingParser
    +
    OdfValidators.getValidatingParser()
    +
    +
    Get a non-extended validating parser instance.
    +
    +
    static final ValidatingParser
    +
    OdfValidators.getValidatingParser(boolean isExtended)
    +
    +
    Get either an extended or non-extended validating parser instance.
    diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReport.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReport.html index dc5bb852..20d69ba5 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReport.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReport.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.ValidationReport (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.ValidationReport (ODF spreadsheet validator. 0.18.5 API) - + @@ -104,13 +104,19 @@

    Uses of Method
    Description
    -
    ValidationReports.reportToJson(ValidationReport report)
    +
    ValidationReports.getJsonReport(ValidationReport report)
    Convert a ValidationReport to a JSON string.
    static String
    -
    ValidationReports.reportToXml(ValidationReport report)
    +
    ValidationReports.getReport(ValidationReport report, + ValidationReports.FormatOption format)
    +
    Get a string representation of the validation report in the specified format.
    +
    +
    static String
    +
    ValidationReports.getXmlReport(ValidationReport report)
    +
    Convert a ValidationReport to an XML string.
    diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.FormatOption.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.FormatOption.html new file mode 100644 index 00000000..f66c2a6f --- /dev/null +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.FormatOption.html @@ -0,0 +1,107 @@ + + + + +Uses of Enum Class org.openpreservation.odf.validation.ValidationReports.FormatOption (ODF spreadsheet validator. 0.18.5 API) + + + + + + + + + + + + + + + +
    + +
    +
    +
    +

    Uses of Enum Class
    org.openpreservation.odf.validation.ValidationReports.FormatOption

    +
    + +
    +
    Package
    +
    Description
    + +
     
    +
    +
    + +
    +
    + +
    +
    + + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.html index f11e8352..776a0451 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationReports.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.validation.ValidationReports (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.validation.ValidationReports (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResult.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResult.html index 41a3cfd7..64ae16bd 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResult.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResult.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.ValidationResult (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.ValidationResult (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResultImpl.html b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResultImpl.html index 00684f5a..d38a6aa5 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResultImpl.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/class-use/ValidationResultImpl.html @@ -1,11 +1,11 @@ - -Uses of Class org.openpreservation.odf.validation.ValidationResultImpl (ODF spreadsheet validator. 0.18.4 API) + +Uses of Class org.openpreservation.odf.validation.ValidationResultImpl (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.Severity.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.Severity.html index 422101f7..f90a99db 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.Severity.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.Severity.html @@ -1,11 +1,11 @@ - -Message.Severity (ODF spreadsheet validator. 0.18.4 API) + +Message.Severity (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.html index d838712b..e012f10e 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Message.html @@ -1,11 +1,11 @@ - -Message (ODF spreadsheet validator. 0.18.4 API) + +Message (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageFactory.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageFactory.html index ae495928..97edff10 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageFactory.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageFactory.html @@ -1,11 +1,11 @@ - -MessageFactory (ODF spreadsheet validator. 0.18.4 API) + +MessageFactory (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageLog.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageLog.html index 69d4a142..b4025349 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageLog.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/MessageLog.html @@ -1,11 +1,11 @@ - -MessageLog (ODF spreadsheet validator. 0.18.4 API) + +MessageLog (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Messages.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Messages.html index af2cb872..f3f3fccc 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Messages.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Messages.html @@ -1,11 +1,11 @@ - -Messages (ODF spreadsheet validator. 0.18.4 API) + +Messages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.ParameterList.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.ParameterList.html index f5c8d1c4..f3cbb40b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.ParameterList.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.ParameterList.html @@ -1,11 +1,11 @@ - -Parameter.ParameterList (ODF spreadsheet validator. 0.18.4 API) + +Parameter.ParameterList (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.html index 607b791f..763c754c 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/Parameter.html @@ -1,11 +1,11 @@ - -Parameter (ODF spreadsheet validator. 0.18.4 API) + +Parameter (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.Severity.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.Severity.html index 352e06d0..a368463b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.Severity.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.Severity.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.odf.validation.messages.Message.Severity (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.odf.validation.messages.Message.Severity (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.html index 8b7f7e67..01e2d70f 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Message.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.messages.Message (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.messages.Message (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageFactory.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageFactory.html index f421f708..69d94c81 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageFactory.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageFactory.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.messages.MessageFactory (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.messages.MessageFactory (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageLog.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageLog.html index 57024bd7..45bc79ed 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageLog.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/MessageLog.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.messages.MessageLog (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.messages.MessageLog (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Messages.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Messages.html index c980b1ef..30927096 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Messages.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Messages.html @@ -1,11 +1,11 @@ - -Uses of Enum Class org.openpreservation.odf.validation.messages.Messages (ODF spreadsheet validator. 0.18.4 API) + +Uses of Enum Class org.openpreservation.odf.validation.messages.Messages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.ParameterList.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.ParameterList.html index 3302b7c9..129ef71a 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.ParameterList.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.ParameterList.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.messages.Parameter.ParameterList (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.messages.Parameter.ParameterList (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.html index 07fcc568..cfd3b574 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/class-use/Parameter.html @@ -1,11 +1,11 @@ - -Uses of Interface org.openpreservation.odf.validation.messages.Parameter (ODF spreadsheet validator. 0.18.4 API) + +Uses of Interface org.openpreservation.odf.validation.messages.Parameter (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-summary.html index aa0c26e8..b73aab55 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.validation.messages (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.validation.messages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-tree.html index 7b16e0e1..9b578ea3 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.validation.messages Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.validation.messages Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-use.html b/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-use.html index c42db8c2..8e9b0d7b 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-use.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/messages/package-use.html @@ -1,11 +1,11 @@ - -Uses of Package org.openpreservation.odf.validation.messages (ODF spreadsheet validator. 0.18.4 API) + +Uses of Package org.openpreservation.odf.validation.messages (ODF spreadsheet validator. 0.18.5 API) - + diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/package-summary.html b/docs/site/apidocs/org/openpreservation/odf/validation/package-summary.html index 5b6b3184..4c7aeba0 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/package-summary.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/package-summary.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.validation (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.validation (ODF spreadsheet validator. 0.18.5 API) - + @@ -94,7 +94,7 @@

    Package or
  • -
    +
    Class
    @@ -119,10 +119,14 @@

    Package or
     
     
    - -
     
    - -
     
    + +
    +
    Specifies the output format for validation reports.
    +
    + +
     
    + +
     

    diff --git a/docs/site/apidocs/org/openpreservation/odf/validation/package-tree.html b/docs/site/apidocs/org/openpreservation/odf/validation/package-tree.html index c8c3e783..f6c7e5ff 100644 --- a/docs/site/apidocs/org/openpreservation/odf/validation/package-tree.html +++ b/docs/site/apidocs/org/openpreservation/odf/validation/package-tree.html @@ -1,11 +1,11 @@ - -org.openpreservation.odf.validation Class Hierarchy (ODF spreadsheet validator. 0.18.4 API) + +org.openpreservation.odf.validation Class Hierarchy (ODF spreadsheet validator. 0.18.5 API) - + @@ -84,6 +84,20 @@

    Interface Hierarchy

  • org.openpreservation.odf.validation.ValidationResult
  • +
    +

    Enum Class Hierarchy

    + +