Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultMaintenanceInformation.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -37,6 +37,8 @@ import org.apache.sis.metadata.iso.ISOMe import org.apache.sis.metadata.iso.citation.DefaultCitationDate; import org.apache.sis.internal.metadata.LegacyPropertyAdapter; import org.apache.sis.internal.metadata.Dependencies; +import org.apache.sis.internal.jaxb.FilterByVersion; +import org.apache.sis.internal.jaxb.LegacyNamespaces; /** @@ -60,17 +62,20 @@ import org.apache.sis.internal.metadata. * @author Cédric Briançon (Geomatys) * @author Guilhem Legal (Geomatys) * @author Rémi Maréchal (Geomatys) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "MD_MaintenanceInformation_Type", propOrder = { "maintenanceAndUpdateFrequency", - "dateOfNextUpdate", + "maintenanceDate", // New in ISO 19115:2014 + "dateOfNextUpdate", // Legacy ISO 19115:2003 "userDefinedMaintenanceFrequency", - "updateScopes", - "updateScopeDescriptions", + "maintenanceScope", // New in ISO 19115:2014 - contains information from the two below + "updateScopes", // Legacy ISO 19115:2003 + "updateScopeDescriptions", // Legacy ISO 19115:2003 "maintenanceNotes", "contacts" }) @@ -182,7 +187,7 @@ public class DefaultMaintenanceInformati * @return frequency with which changes and additions are made to the resource, or {@code null}. */ @Override - @XmlElement(name = "maintenanceAndUpdateFrequency", required = true) + @XmlElement(name = "maintenanceAndUpdateFrequency") public MaintenanceFrequency getMaintenanceAndUpdateFrequency() { return maintenanceAndUpdateFrequency; } @@ -206,7 +211,7 @@ public class DefaultMaintenanceInformati * @since 0.5 */ @Override -/// @XmlElement(name = "maintenanceDate", required = true) + // @XmlElement at the end of this class. public Collection<CitationDate> getMaintenanceDates() { return maintenanceDates = nonNullCollection(maintenanceDates, CitationDate.class); } @@ -234,14 +239,16 @@ public class DefaultMaintenanceInformati */ @Override @Deprecated - @XmlElement(name = "dateOfNextUpdate") @Dependencies("getMaintenanceDates") + @XmlElement(name = "dateOfNextUpdate", namespace = LegacyNamespaces.GMD) public Date getDateOfNextUpdate() { - final Collection<CitationDate> dates = getMaintenanceDates(); - if (dates != null) { // May be null on XML marshalling. - for (final CitationDate date : dates) { - if (DateType.NEXT_UPDATE.equals(date.getDateType())) { - return date.getDate(); + if (FilterByVersion.LEGACY_METADATA.accept()) { + final Collection<CitationDate> dates = getMaintenanceDates(); + if (dates != null) { // May be null on XML marshalling. + for (final CitationDate date : dates) { + if (DateType.NEXT_UPDATE.equals(date.getDateType())) { + return date.getDate(); + } } } } @@ -313,7 +320,7 @@ public class DefaultMaintenanceInformati * @since 0.5 */ @Override -/// @XmlElement(name = "maintenanceScope") + // @XmlElement at the end of this class. public Collection<Scope> getMaintenanceScopes() { return maintenanceScopes = nonNullCollection(maintenanceScopes, Scope.class); } @@ -341,9 +348,10 @@ public class DefaultMaintenanceInformati */ @Override @Deprecated - @XmlElement(name = "updateScope") @Dependencies("getMaintenanceScopes") + @XmlElement(name = "updateScope", namespace = LegacyNamespaces.GMD) public final Collection<ScopeCode> getUpdateScopes() { + if (!FilterByVersion.LEGACY_METADATA.accept()) return null; return new LegacyPropertyAdapter<ScopeCode,Scope>(getMaintenanceScopes()) { /** Stores a legacy value into the new kind of value. */ @Override protected Scope wrap(final ScopeCode value) { @@ -392,9 +400,10 @@ public class DefaultMaintenanceInformati */ @Override @Deprecated - @XmlElement(name = "updateScopeDescription") @Dependencies("getMaintenanceScopes") + @XmlElement(name = "updateScopeDescription", namespace = LegacyNamespaces.GMD) public final Collection<ScopeDescription> getUpdateScopeDescriptions() { + if (!FilterByVersion.LEGACY_METADATA.accept()) return null; return new LegacyPropertyAdapter<ScopeDescription,Scope>(getMaintenanceScopes()) { /** Stores a legacy value into the new kind of value. */ @Override protected Scope wrap(final ScopeDescription value) { @@ -477,4 +486,33 @@ public class DefaultMaintenanceInformati public void setContacts(final Collection<? extends Responsibility> newValues) { contacts = writeCollection(newValues, contacts, Responsibility.class); } + + + + + ////////////////////////////////////////////////////////////////////////////////////////////////// + //////// //////// + //////// XML support with JAXB //////// + //////// //////// + //////// The following methods are invoked by JAXB using reflection (even if //////// + //////// they are private) or are helpers for other methods invoked by JAXB. //////// + //////// Those methods can be safely removed if Geographic Markup Language //////// + //////// (GML) support is not needed. //////// + //////// //////// + ////////////////////////////////////////////////////////////////////////////////////////////////// + + /** + * Invoked by JAXB at both marshalling and unmarshalling time. + * This attribute has been added by ISO 19115:2014 standard. + * If (and only if) marshalling an older standard version, we omit this attribute. + */ + @XmlElement(name = "maintenanceDate") + private Collection<CitationDate> getMaintenanceDate() { + return FilterByVersion.CURRENT_METADATA.accept() ? getMaintenanceDates() : null; + } + + @XmlElement(name = "maintenanceScope") + private Collection<Scope> getMaintenanceScope() { + return FilterByVersion.CURRENT_METADATA.accept() ? getMaintenanceScopes() : null; + } }
Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScope.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScope.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScope.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScope.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -25,6 +25,7 @@ import org.opengis.metadata.maintenance. import org.opengis.metadata.maintenance.ScopeCode; import org.opengis.metadata.maintenance.ScopeDescription; import org.apache.sis.metadata.iso.ISOMetadata; +import org.apache.sis.xml.Namespaces; /** @@ -53,17 +54,18 @@ import org.apache.sis.metadata.iso.ISOMe * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. -@XmlType(name = "DQ_Scope_Type", propOrder = { +@XmlType(name = "MD_Scope_Type", namespace = Namespaces.MCC, propOrder = { "level", "extents", "levelDescription" }) -@XmlRootElement(name = "DQ_Scope") +@XmlRootElement(name = "MD_Scope", namespace = Namespaces.MCC) public class DefaultScope extends ISOMetadata implements Scope { /** * Serial number for inter-operability with different versions. Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScopeDescription.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScopeDescription.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScopeDescription.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/DefaultScopeDescription.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -30,6 +30,7 @@ import org.apache.sis.internal.jaxb.Cont import org.apache.sis.internal.system.Semaphores; import org.apache.sis.util.collection.CheckedContainer; import org.apache.sis.util.resources.Messages; +import org.apache.sis.xml.Namespaces; import static org.apache.sis.util.collection.Containers.isNullOrEmpty; @@ -63,13 +64,14 @@ import static org.apache.sis.util.collec * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. -@XmlType(name = "MD_ScopeDescription_Type") // No need for propOrder since this structure is a union (see javadoc). -@XmlRootElement(name = "MD_ScopeDescription") +@XmlType(name = "MD_ScopeDescription_Type", namespace = Namespaces.MCC) // No need for propOrder since this structure is a union (see javadoc). +@XmlRootElement(name = "MD_ScopeDescription", namespace = Namespaces.MCC) public class DefaultScopeDescription extends ISOMetadata implements ScopeDescription { /** * Serial number for inter-operability with different versions. @@ -149,7 +151,6 @@ public class DefaultScopeDescription ext * * @see #castOrCopy(ScopeDescription) */ - @SuppressWarnings("unchecked") public DefaultScopeDescription(final ScopeDescription object) { super(object); if (object != null) { @@ -319,6 +320,7 @@ public class DefaultScopeDescription ext * @return feature types to which the information applies. */ @Override + @XmlElement(name = "features") public Set<CharSequence> getFeatures() { return getProperty(FEATURES); } @@ -352,6 +354,7 @@ public class DefaultScopeDescription ext * @return attribute types to which the information applies. */ @Override + @XmlElement(name = "attributes") public Set<CharSequence> getAttributes() { return getProperty(ATTRIBUTES); } @@ -385,6 +388,7 @@ public class DefaultScopeDescription ext * @return feature instances to which the information applies. */ @Override + @XmlElement(name = "featureInstances") public Set<CharSequence> getFeatureInstances() { return getProperty(FEATURE_INSTANCES); } @@ -418,6 +422,7 @@ public class DefaultScopeDescription ext * @return attribute instances to which the information applies. */ @Override + @XmlElement(name = "attributeInstances") public Set<CharSequence> getAttributeInstances() { return getProperty(ATTRIBUTE_INSTANCES); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/package-info.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/package-info.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/package-info.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/maintenance/package-info.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -62,28 +62,33 @@ * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ -@XmlSchema(location=Schemas.METADATA_XSD, elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.GMD, xmlns = { - @XmlNs(prefix = "gmd", namespaceURI = Namespaces.GMD), - @XmlNs(prefix = "gco", namespaceURI = Namespaces.GCO), - @XmlNs(prefix = "xsi", namespaceURI = Namespaces.XSI) +@XmlSchema(location="http://standards.iso.org/iso/19115/-3/mmi/1.0/mmi.xsd", + elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.MMI, + xmlns = { + @XmlNs(prefix = "mmi", namespaceURI = Namespaces.MMI), // Metadata for Maintenance Information + @XmlNs(prefix = "mcc", namespaceURI = Namespaces.MCC), // Metadata Common Classes + @XmlNs(prefix = "gmd", namespaceURI = LegacyNamespaces.GMD) }) @XmlAccessorType(XmlAccessType.NONE) @XmlJavaTypeAdapters({ - @XmlJavaTypeAdapter(EX_Extent.class), + @XmlJavaTypeAdapter(CI_Date.class), @XmlJavaTypeAdapter(CI_Responsibility.class), + @XmlJavaTypeAdapter(EX_Extent.class), + @XmlJavaTypeAdapter(GO_DateTime.class), @XmlJavaTypeAdapter(MD_MaintenanceFrequencyCode.class), - @XmlJavaTypeAdapter(MD_MaintenanceInformation.class), + @XmlJavaTypeAdapter(MD_Scope.class), @XmlJavaTypeAdapter(MD_ScopeCode.class), @XmlJavaTypeAdapter(MD_ScopeDescription.class), @XmlJavaTypeAdapter(TM_PeriodDuration.class), // Java types, primitive types and basic OGC types handling - @XmlJavaTypeAdapter(GO_DateTime.class), @XmlJavaTypeAdapter(StringAdapter.class), + @XmlJavaTypeAdapter(CharSequenceAdapter.class), @XmlJavaTypeAdapter(InternationalStringAdapter.class) }) package org.apache.sis.metadata.iso.maintenance; @@ -97,7 +102,7 @@ import javax.xml.bind.annotation.adapter import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters; import org.apache.sis.xml.Namespaces; -import org.apache.sis.internal.jaxb.Schemas; +import org.apache.sis.internal.jaxb.LegacyNamespaces; import org.apache.sis.internal.jaxb.gco.*; import org.apache.sis.internal.jaxb.code.*; import org.apache.sis.internal.jaxb.gts.TM_PeriodDuration; Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -56,7 +56,7 @@ * </td></tr></table> * * <div class="section">Localization</div> - * When a metadata object is marshalled as an ISO 19139 compliant XML document, the marshaller + * When a metadata object is marshalled as an ISO 19115-3 compliant XML document, the marshaller * {@link org.apache.sis.xml.XML#LOCALE} property will be used for the localization of every * {@link org.opengis.util.InternationalString} and {@link org.opengis.util.CodeList} instances, * <strong>except</strong> if the object to be marshalled is an instance of @@ -81,48 +81,55 @@ * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ -@XmlSchema(location=Schemas.METADATA_XSD, elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.GMD, xmlns = { - @XmlNs(prefix = "gmi", namespaceURI = Namespaces.GMI), - @XmlNs(prefix = "gmd", namespaceURI = Namespaces.GMD), - @XmlNs(prefix = "gco", namespaceURI = Namespaces.GCO), - @XmlNs(prefix = "xsi", namespaceURI = Namespaces.XSI) +@XmlSchema(location="http://standards.iso.org/iso/19115/-3/mdb/1.0/mdb.xsd", + elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.MDB, + xmlns = { + @XmlNs(prefix = "mdb", namespaceURI = Namespaces.MDB), // Metadata Base + @XmlNs(prefix = "mpc", namespaceURI = Namespaces.MPC), // Metadata for Portrayal Catalog + @XmlNs(prefix = "mas", namespaceURI = Namespaces.MAS), // Metadata for Application Schema + @XmlNs(prefix = "mex", namespaceURI = Namespaces.MEX), // Metadata with Schema Extensions + @XmlNs(prefix = "lan", namespaceURI = Namespaces.LAN), // Language localization + @XmlNs(prefix = "mcc", namespaceURI = Namespaces.MCC), // Metadata Common Classes + @XmlNs(prefix = "dqc", namespaceURI = Namespaces.DQC), // Data Quality Common Classes + @XmlNs(prefix = "gmd", namespaceURI = LegacyNamespaces.GMD) }) @XmlAccessorType(XmlAccessType.NONE) @XmlJavaTypeAdapters({ @XmlJavaTypeAdapter(CI_Citation.class), + @XmlJavaTypeAdapter(CI_Date.class), @XmlJavaTypeAdapter(CI_OnlineResource.class), @XmlJavaTypeAdapter(CI_Responsibility.class), @XmlJavaTypeAdapter(DQ_DataQuality.class), + @XmlJavaTypeAdapter(GO_DateTime.class), + @XmlJavaTypeAdapter(GO_Integer.class), + @XmlJavaTypeAdapter(LI_Lineage.class), @XmlJavaTypeAdapter(MD_ApplicationSchemaInformation.class), - @XmlJavaTypeAdapter(MD_CharacterSetCode.class), - @XmlJavaTypeAdapter(LegacyCharacterSet.class), @XmlJavaTypeAdapter(MD_Constraints.class), @XmlJavaTypeAdapter(MD_ContentInformation.class), @XmlJavaTypeAdapter(MD_DatatypeCode.class), @XmlJavaTypeAdapter(MD_Distribution.class), @XmlJavaTypeAdapter(MD_ExtendedElementInformation.class), - @XmlJavaTypeAdapter(MD_FeatureTypeList.class), @XmlJavaTypeAdapter(MD_Identification.class), @XmlJavaTypeAdapter(MD_MaintenanceInformation.class), @XmlJavaTypeAdapter(MD_MetadataExtensionInformation.class), + @XmlJavaTypeAdapter(MD_MetadataScope.class), @XmlJavaTypeAdapter(MD_ObligationCode.class), @XmlJavaTypeAdapter(MD_PortrayalCatalogueReference.class), @XmlJavaTypeAdapter(MD_ScopeCode.class), @XmlJavaTypeAdapter(MD_SpatialRepresentation.class), @XmlJavaTypeAdapter(MI_AcquisitionInformation.class), + @XmlJavaTypeAdapter(PT_Locale.class), @XmlJavaTypeAdapter(RS_ReferenceSystem.class), + @XmlJavaTypeAdapter(LegacyCharacterSet.class), // Java types, primitive types and basic OGC types handling - @XmlJavaTypeAdapter(LocaleAdapter.class), @XmlJavaTypeAdapter(StringAdapter.class), - @XmlJavaTypeAdapter(InternationalStringAdapter.class), - @XmlJavaTypeAdapter(GO_DateTime.class), - @XmlJavaTypeAdapter(GO_Boolean.class), @XmlJavaTypeAdapter(type=boolean.class, value=GO_Boolean.class), - @XmlJavaTypeAdapter(GO_Integer.class), @XmlJavaTypeAdapter(type=int.class, value=GO_Integer.class) + @XmlJavaTypeAdapter(InternationalStringAdapter.class) }) package org.apache.sis.metadata.iso; @@ -134,8 +141,7 @@ import javax.xml.bind.annotation.XmlAcce import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters; import org.apache.sis.xml.Namespaces; -import org.apache.sis.internal.jaxb.Schemas; +import org.apache.sis.internal.jaxb.LegacyNamespaces; import org.apache.sis.internal.jaxb.gco.*; -import org.apache.sis.internal.jaxb.gmd.*; import org.apache.sis.internal.jaxb.code.*; import org.apache.sis.internal.jaxb.metadata.*; Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractCompleteness.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractCompleteness.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractCompleteness.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractCompleteness.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -42,13 +42,13 @@ import org.opengis.metadata.quality.Comp * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractDQ_Completeness_Type") -@XmlRootElement(name = "DQ_Completeness") +@XmlRootElement(name = "AbstractDQ_Completeness") @XmlSeeAlso({ DefaultCompletenessCommission.class, DefaultCompletenessOmission.class Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,8 +39,11 @@ import org.opengis.metadata.quality.Eval import org.opengis.util.InternationalString; import org.apache.sis.metadata.iso.ISOMetadata; import org.apache.sis.internal.system.Semaphores; +import org.apache.sis.internal.jaxb.FilterByVersion; +import org.apache.sis.internal.jaxb.LegacyNamespaces; import org.apache.sis.util.collection.CheckedContainer; import org.apache.sis.util.resources.Errors; +import org.apache.sis.xml.Namespaces; import static org.apache.sis.util.collection.Containers.isNullOrEmpty; @@ -64,7 +67,7 @@ import static org.apache.sis.util.collec * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Guilhem Legal (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @@ -79,7 +82,7 @@ import static org.apache.sis.util.collec "dates", "results" }) -@XmlRootElement(name = "DQ_Element") +@XmlRootElement(name = "AbstractDQ_Element") @XmlSeeAlso({ AbstractCompleteness.class, AbstractLogicalConsistency.class, @@ -390,10 +393,13 @@ public class AbstractElement extends ISO * Returns the name of the test applied to the data. * * @return name of the test applied to the data. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "nameOfMeasure") + @XmlElement(name = "nameOfMeasure", namespace = LegacyNamespaces.GMD) public Collection<InternationalString> getNamesOfMeasure() { + if (!FilterByVersion.LEGACY_METADATA.accept()) return null; return namesOfMeasure = nonNullCollection(namesOfMeasure, InternationalString.class); } @@ -410,11 +416,13 @@ public class AbstractElement extends ISO * Returns the code identifying a registered standard procedure, or {@code null} if none. * * @return code identifying a registered standard procedure, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "measureIdentification") + @XmlElement(name = "measureIdentification", namespace = LegacyNamespaces.GMD) public Identifier getMeasureIdentification() { - return measureIdentification; + return FilterByVersion.LEGACY_METADATA.accept() ? measureIdentification : null; } /** @@ -431,11 +439,13 @@ public class AbstractElement extends ISO * Returns the description of the measure being determined. * * @return description of the measure being determined, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "measureDescription") + @XmlElement(name = "measureDescription", namespace = LegacyNamespaces.GMD) public InternationalString getMeasureDescription() { - return measureDescription; + return FilterByVersion.LEGACY_METADATA.accept() ? measureDescription : null; } /** @@ -452,11 +462,13 @@ public class AbstractElement extends ISO * Returns the type of method used to evaluate quality of the dataset. * * @return type of method used to evaluate quality, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "evaluationMethodType") + @XmlElement(name = "evaluationMethodType", namespace = LegacyNamespaces.GMD) public EvaluationMethodType getEvaluationMethodType() { - return evaluationMethodType; + return FilterByVersion.LEGACY_METADATA.accept() ? evaluationMethodType : null; } /** @@ -473,11 +485,13 @@ public class AbstractElement extends ISO * Returns the description of the evaluation method. * * @return description of the evaluation method, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "evaluationMethodDescription") + @XmlElement(name = "evaluationMethodDescription", namespace = LegacyNamespaces.GMD) public InternationalString getEvaluationMethodDescription() { - return evaluationMethodDescription; + return FilterByVersion.LEGACY_METADATA.accept() ? evaluationMethodDescription : null; } /** @@ -494,11 +508,13 @@ public class AbstractElement extends ISO * Returns the reference to the procedure information, or {@code null} if none. * * @return reference to the procedure information, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "evaluationProcedure") + @XmlElement(name = "evaluationProcedure", namespace = LegacyNamespaces.GMD) public Citation getEvaluationProcedure() { - return evaluationProcedure; + return FilterByVersion.LEGACY_METADATA.accept() ? evaluationProcedure : null; } /** @@ -519,7 +535,7 @@ public class AbstractElement extends ISO * @return date or range of dates on which a data quality measure was applied. */ @Override - @XmlElement(name = "dateTime") + @XmlElement(name = "dateTime", namespace = Namespaces.DQC) @SuppressWarnings("ReturnOfCollectionOrArrayField") public Collection<Date> getDates() { if (Semaphores.query(Semaphores.NULL_COLLECTION)) { Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractLogicalConsistency.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractLogicalConsistency.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractLogicalConsistency.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractLogicalConsistency.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -45,13 +45,13 @@ import org.opengis.metadata.quality.Conc * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractDQ_LogicalConsistency_Type") -@XmlRootElement(name = "DQ_LogicalConsistency") +@XmlRootElement(name = "AbstractDQ_LogicalConsistency") @XmlSeeAlso({ DefaultConceptualConsistency.class, DefaultDomainConsistency.class, Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractPositionalAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractPositionalAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractPositionalAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractPositionalAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -44,13 +44,13 @@ import org.opengis.metadata.quality.Rela * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractDQ_PositionalAccuracy_Type") -@XmlRootElement(name = "DQ_PositionalAccuracy") +@XmlRootElement(name = "AbstractDQ_PositionalAccuracy") @XmlSeeAlso({ DefaultAbsoluteExternalPositionalAccuracy.class, DefaultGriddedDataPositionalAccuracy.class, Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractResult.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -40,13 +40,13 @@ import org.apache.sis.metadata.iso.ISOMe * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractDQ_Result_Type") -@XmlRootElement(name = "DQ_Result") +@XmlRootElement(name = "AbstractDQ_Result") @XmlSeeAlso({ DefaultConformanceResult.class, DefaultQuantitativeResult.class, Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -23,6 +23,7 @@ import org.opengis.metadata.quality.Temp import org.opengis.metadata.quality.TemporalValidity; import org.opengis.metadata.quality.TemporalConsistency; import org.opengis.metadata.quality.AccuracyOfATimeMeasurement; +import org.apache.sis.xml.Namespaces; /** @@ -43,13 +44,13 @@ import org.opengis.metadata.quality.Accu * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. -@XmlType(name = "AbstractDQ_TemporalAccuracy_Type") -@XmlRootElement(name = "DQ_TemporalAccuracy") +@XmlType(name = "AbstractDQ_TemporalAccuracy_Type", namespace = Namespaces.GMD) // TODO: renamed TemporalQuality +@XmlRootElement(name = "AbstractDQ_TemporalAccuracy", namespace = Namespaces.GMD) @XmlSeeAlso({ DefaultAccuracyOfATimeMeasurement.class, DefaultTemporalConsistency.class, Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractThematicAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractThematicAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractThematicAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractThematicAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -44,13 +44,13 @@ import org.opengis.metadata.quality.Quan * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractDQ_ThematicAccuracy_Type") -@XmlRootElement(name = "DQ_ThematicAccuracy") +@XmlRootElement(name = "AbstractDQ_ThematicAccuracy") @XmlSeeAlso({ DefaultThematicClassificationCorrectness.class, DefaultNonQuantitativeAttributeAccuracy.class, Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAbsoluteExternalPositionalAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAbsoluteExternalPositionalAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAbsoluteExternalPositionalAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAbsoluteExternalPositionalAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -40,7 +40,7 @@ import org.opengis.metadata.quality.Abso * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAccuracyOfATimeMeasurement.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAccuracyOfATimeMeasurement.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAccuracyOfATimeMeasurement.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultAccuracyOfATimeMeasurement.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Accu * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessCommission.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessCommission.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessCommission.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessCommission.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Comp * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessOmission.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessOmission.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessOmission.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCompletenessOmission.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Comp * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConceptualConsistency.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConceptualConsistency.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConceptualConsistency.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConceptualConsistency.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Conc * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConformanceResult.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConformanceResult.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConformanceResult.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultConformanceResult.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -49,7 +49,7 @@ import org.apache.sis.util.iso.Types; * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Guilhem Legal (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @@ -177,7 +177,7 @@ public class DefaultConformanceResult ex * @return explanation of the meaning of conformance, or {@code null}. */ @Override - @XmlElement(name = "explanation", required = true) + @XmlElement(name = "explanation") public InternationalString getExplanation() { return explanation; } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -25,7 +25,6 @@ import org.opengis.metadata.quality.Cove import org.opengis.metadata.distribution.DataFile; import org.opengis.metadata.spatial.SpatialRepresentation; import org.opengis.metadata.spatial.SpatialRepresentationType; -import org.apache.sis.xml.Namespaces; /** @@ -55,7 +54,7 @@ import org.apache.sis.xml.Namespaces; * * @author Cédric Briançon (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @@ -67,7 +66,7 @@ import org.apache.sis.xml.Namespaces; "resultFormat", "resultFile" }) -@XmlRootElement(name = "QE_CoverageResult", namespace = Namespaces.GMI) +@XmlRootElement(name = "QE_CoverageResult") public class DefaultCoverageResult extends AbstractResult implements CoverageResult { /** * Serial number for inter-operability with different versions. @@ -157,7 +156,7 @@ public class DefaultCoverageResult exten * @return spatial representation of the coverage result, or {@code null}. */ @Override - @XmlElement(name = "spatialRepresentationType", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "spatialRepresentationType", required = true) public SpatialRepresentationType getSpatialRepresentationType() { return spatialRepresentationType; } @@ -178,7 +177,7 @@ public class DefaultCoverageResult exten * @return digital representation of data quality measures composing the coverage result, or {@code null}. */ @Override - @XmlElement(name = "resultSpatialRepresentation", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "resultSpatialRepresentation", required = true) public SpatialRepresentation getResultSpatialRepresentation() { return resultSpatialRepresentation; } @@ -200,7 +199,7 @@ public class DefaultCoverageResult exten * @return description of the content of the result coverage, or {@code null}. */ @Override - @XmlElement(name = "resultContentDescription", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "resultContentDescription", required = true) public CoverageDescription getResultContentDescription() { return resultContentDescription; } @@ -222,7 +221,7 @@ public class DefaultCoverageResult exten * @return format of the result coverage data, or {@code null}. */ @Override - @XmlElement(name = "resultFormat", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "resultFormat", required = true) public Format getResultFormat() { return resultFormat; } @@ -243,7 +242,7 @@ public class DefaultCoverageResult exten * @return data file containing the result coverage data, or {@code null}. */ @Override - @XmlElement(name = "resultFile", namespace = Namespaces.GMX, required = true) + @XmlElement(name = "resultFile", required = true) public DataFile getResultFile() { return resultFile; } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -27,6 +27,8 @@ import org.opengis.metadata.maintenance. import org.opengis.metadata.maintenance.ScopeCode; import org.apache.sis.metadata.iso.ISOMetadata; import org.apache.sis.metadata.iso.maintenance.DefaultScope; +import org.apache.sis.internal.jaxb.FilterByVersion; +import org.apache.sis.internal.jaxb.LegacyNamespaces; /** @@ -52,7 +54,7 @@ import org.apache.sis.metadata.iso.maint * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @@ -187,7 +189,7 @@ public class DefaultDataQuality extends * @return quantitative quality information for the data. */ @Override - @XmlElement(name = "report") + @XmlElement(name = "report", required = true) public Collection<Element> getReports() { return reports = nonNullCollection(reports, Element.class); } @@ -205,11 +207,13 @@ public class DefaultDataQuality extends * Returns non-quantitative quality information about the lineage of the data specified by the scope. * * @return non-quantitative quality information about the lineage of the data specified, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "lineage") + @XmlElement(name = "lineage", namespace = LegacyNamespaces.GMD) public Lineage getLineage() { - return lineage; + return FilterByVersion.LEGACY_METADATA.accept() ? lineage : null; } /** Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Doma * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Form * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Grid * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -19,6 +19,7 @@ package org.apache.sis.metadata.iso.qual import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.XmlRootElement; import org.opengis.metadata.quality.NonQuantitativeAttributeAccuracy; +import org.apache.sis.xml.Namespaces; /** @@ -38,13 +39,13 @@ import org.opengis.metadata.quality.NonQ * </ul> * * @author Martin Desruisseaux (IRD, Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. -@XmlType(name = "DQ_NonQuantitativeAttributeAccuracy_Type") -@XmlRootElement(name = "DQ_NonQuantitativeAttributeAccuracy") +@XmlType(name = "DQ_NonQuantitativeAttributeAccuracy_Type", namespace = Namespaces.GMD) // TODO: renamed NonQuantitativeAttributeCorrectness +@XmlRootElement(name = "DQ_NonQuantitativeAttributeAccuracy", namespace = Namespaces.GMD) public class DefaultNonQuantitativeAttributeAccuracy extends AbstractThematicAccuracy implements NonQuantitativeAttributeAccuracy { Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Quan * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -25,6 +25,8 @@ import org.opengis.metadata.quality.Quan import org.opengis.util.InternationalString; import org.opengis.util.Record; import org.opengis.util.RecordType; +import org.apache.sis.internal.jaxb.FilterByVersion; +import org.apache.sis.internal.jaxb.LegacyNamespaces; /** @@ -46,12 +48,14 @@ import org.opengis.util.RecordType; * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "DQ_QuantitativeResult_Type", propOrder = { + "values", "valueType", "valueUnit", "errorStatistic" @@ -139,7 +143,7 @@ public class DefaultQuantitativeResult e * @return Quantitative value or values. */ @Override -// @XmlElement(name = "value", required = true) // TODO + @XmlElement(name = "value", required = true) public List<Record> getValues() { return values = nonNullList(values, Record.class); } @@ -163,7 +167,7 @@ public class DefaultQuantitativeResult e * @return value type for reporting a data quality result, or {@code null}. */ @Override - @XmlElement(name = "valueType") + @XmlElement(name = "valueRecordType") public RecordType getValueType() { RecordType type = valueType; if (type == null && values != null) { @@ -200,7 +204,7 @@ public class DefaultQuantitativeResult e * @return value unit for reporting a data quality result, or {@code null}. */ @Override - @XmlElement(name = "valueUnit", required = true) + @XmlElement(name = "valueUnit") public Unit<?> getValueUnit() { return valueUnit; } @@ -219,11 +223,13 @@ public class DefaultQuantitativeResult e * Returns the statistical method used to determine the value. * * @return statistical method used to determine the value, or {@code null}. + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">Issue SIS-394</a> */ @Override - @XmlElement(name = "errorStatistic") + @XmlElement(name = "errorStatistic", namespace = LegacyNamespaces.GMD) public InternationalString getErrorStatistic() { - return errorStatistic; + return FilterByVersion.LEGACY_METADATA.accept() ? errorStatistic : null; } /** Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -40,7 +40,7 @@ import org.opengis.metadata.quality.Rela * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.apache.sis.internal.metadata. * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.5 + * @version 1.0 * @since 0.3 * @module * Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Temp * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Temp * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Them * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -39,7 +39,7 @@ import org.opengis.metadata.quality.Topo * * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -19,7 +19,7 @@ package org.apache.sis.metadata.iso.qual import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.XmlRootElement; import org.opengis.metadata.quality.Usability; -import org.apache.sis.xml.Namespaces; +import org.apache.sis.internal.jaxb.LegacyNamespaces; /** @@ -40,13 +40,16 @@ import org.apache.sis.xml.Namespaces; * * @author Cédric Briançon (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module + * + * @deprecated Not found in ISO 19115-3:2016 schemas. */ +@Deprecated @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. -@XmlType(name = "QE_Usability_Type") -@XmlRootElement(name = "QE_Usability", namespace = Namespaces.GMI) +@XmlType(name = "QE_Usability_Type", namespace = LegacyNamespaces.GMI) +@XmlRootElement(name = "QE_Usability", namespace = LegacyNamespaces.GMI) public class DefaultUsability extends AbstractElement implements Usability { /** * Serial number for inter-operability with different versions. Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -109,16 +109,23 @@ * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) * @author Guilhem Legal (Geomatys) - * @version 0.3 - * @since 0.3 + * @author Cullen Rombach (Image Matters) + * @version 1.0 + * + * @see <a href="https://issues.apache.org/jira/browse/SIS-394">SIS-394</a> + * + * @since 0.3 * @module */ -@XmlSchema(location=Schemas.METADATA_XSD, elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.GMD, xmlns = { - @XmlNs(prefix = "gmx", namespaceURI = Namespaces.GMX), - @XmlNs(prefix = "gmi", namespaceURI = Namespaces.GMI), - @XmlNs(prefix = "gmd", namespaceURI = Namespaces.GMD), - @XmlNs(prefix = "gco", namespaceURI = Namespaces.GCO), - @XmlNs(prefix = "xsi", namespaceURI = Namespaces.XSI) +@XmlSchema(location="http://standards.iso.org/iso/19157/-2/mdq/1.0/mdq.xsd", + elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.MDQ, + xmlns = { + @XmlNs(prefix = "mdq", namespaceURI = Namespaces.MDQ), // Metadata for Data Quality + @XmlNs(prefix = "mrd", namespaceURI = Namespaces.MRD), // Metadata for Resource Distribution + @XmlNs(prefix = "dqc", namespaceURI = Namespaces.DQC), // Data Quality Common Classes + @XmlNs(prefix = "mcc", namespaceURI = Namespaces.MCC), // Metadata Common Classes + @XmlNs(prefix = "gmd", namespaceURI = LegacyNamespaces.GMD), + @XmlNs(prefix = "gmi", namespaceURI = LegacyNamespaces.GMI) }) @XmlAccessorType(XmlAccessType.NONE) @XmlJavaTypeAdapters({ @@ -126,25 +133,22 @@ @XmlJavaTypeAdapter(DQ_Element.class), @XmlJavaTypeAdapter(DQ_EvaluationMethodTypeCode.class), @XmlJavaTypeAdapter(DQ_Result.class), - @XmlJavaTypeAdapter(EX_Extent.class), + @XmlJavaTypeAdapter(GO_Boolean.class), + @XmlJavaTypeAdapter(GO_DateTime.class), + @XmlJavaTypeAdapter(GO_Record.class), + @XmlJavaTypeAdapter(GO_RecordType.class), @XmlJavaTypeAdapter(LI_Lineage.class), @XmlJavaTypeAdapter(MD_ContentInformation.class), @XmlJavaTypeAdapter(MD_Format.class), @XmlJavaTypeAdapter(MD_Identifier.class), @XmlJavaTypeAdapter(MD_Scope.class), - @XmlJavaTypeAdapter(MD_ScopeCode.class), - @XmlJavaTypeAdapter(MD_ScopeDescription.class), @XmlJavaTypeAdapter(MD_SpatialRepresentation.class), @XmlJavaTypeAdapter(MD_SpatialRepresentationTypeCode.class), @XmlJavaTypeAdapter(MX_DataFile.class), // Java types, primitive types and basic OGC types handling @XmlJavaTypeAdapter(UnitAdapter.class), - @XmlJavaTypeAdapter(StringAdapter.class), - @XmlJavaTypeAdapter(InternationalStringAdapter.class), - @XmlJavaTypeAdapter(GO_DateTime.class), - @XmlJavaTypeAdapter(GO_RecordType.class), - @XmlJavaTypeAdapter(GO_Boolean.class), @XmlJavaTypeAdapter(type=boolean.class, value=GO_Boolean.class) + @XmlJavaTypeAdapter(InternationalStringAdapter.class) }) package org.apache.sis.metadata.iso.quality; @@ -156,7 +160,7 @@ import javax.xml.bind.annotation.XmlAcce import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters; import org.apache.sis.xml.Namespaces; -import org.apache.sis.internal.jaxb.Schemas; +import org.apache.sis.internal.jaxb.LegacyNamespaces; import org.apache.sis.internal.jaxb.gco.*; import org.apache.sis.internal.jaxb.code.*; import org.apache.sis.internal.jaxb.metadata.*; Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractGeolocationInformation.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractGeolocationInformation.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractGeolocationInformation.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractGeolocationInformation.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -25,7 +25,6 @@ import org.opengis.metadata.quality.Data import org.opengis.metadata.spatial.GCPCollection; import org.opengis.metadata.spatial.GeolocationInformation; import org.apache.sis.metadata.iso.ISOMetadata; -import org.apache.sis.xml.Namespaces; /** @@ -42,13 +41,14 @@ import org.apache.sis.xml.Namespaces; * * @author Cédric Briançon (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 0.3 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractMI_GeolocationInformation_Type") -@XmlRootElement(name = "MI_GeolocationInformation", namespace = Namespaces.GMI) +@XmlRootElement(name = "AbstractMI_GeolocationInformation") @XmlSeeAlso(DefaultGCPCollection.class) public class AbstractGeolocationInformation extends ISOMetadata implements GeolocationInformation { /** @@ -120,7 +120,7 @@ public class AbstractGeolocationInformat * @return an overall assessment of quality of geolocation information. */ @Override - @XmlElement(name = "qualityInfo", namespace = Namespaces.GMI) + @XmlElement(name = "qualityInfo") public Collection<DataQuality> getQualityInfo() { return qualityInfo = nonNullCollection(qualityInfo, DataQuality.class); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractSpatialRepresentation.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractSpatialRepresentation.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractSpatialRepresentation.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/AbstractSpatialRepresentation.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -40,13 +40,13 @@ import org.apache.sis.metadata.iso.ISOMe * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @SuppressWarnings("CloneableClassWithoutClone") // ModifiableMetadata needs shallow clones. @XmlType(name = "AbstractMD_SpatialRepresentation_Type") -@XmlRootElement(name = "MD_SpatialRepresentation") +@XmlRootElement(name = "AbstractMD_SpatialRepresentation") @XmlSeeAlso({ DefaultGridSpatialRepresentation.class, DefaultVectorSpatialRepresentation.class Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultDimension.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -24,6 +24,7 @@ import org.opengis.util.InternationalStr import org.opengis.metadata.spatial.Dimension; import org.opengis.metadata.spatial.DimensionNameType; import org.apache.sis.internal.jaxb.gco.GO_Measure; +import org.apache.sis.internal.jaxb.gco.InternationalStringAdapter; import org.apache.sis.metadata.iso.ISOMetadata; import org.apache.sis.metadata.TitleProperty; import org.apache.sis.measure.ValueRange; @@ -53,7 +54,8 @@ import static org.apache.sis.internal.me * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) * @author Rémi Maréchal (Geomatys) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @@ -63,8 +65,8 @@ import static org.apache.sis.internal.me "dimensionName", "dimensionSize", "resolution", -/// "dimensionTitle", -/// "dimensionDescription" + "dimensionTitle", + "dimensionDescription" }) @XmlRootElement(name = "MD_Dimension") public class DefaultDimension extends ISOMetadata implements Dimension { @@ -254,7 +256,8 @@ public class DefaultDimension extends IS * @since 0.5 */ @Override -/// @XmlElement(name = "dimensionTitle") + @XmlElement(name = "dimensionTitle") + @XmlJavaTypeAdapter(InternationalStringAdapter.Since2014.class) public InternationalString getDimensionTitle() { return dimensionTitle; } @@ -279,7 +282,8 @@ public class DefaultDimension extends IS * @since 0.5 */ @Override -/// @XmlElement(name = "dimensionDescription") + @XmlElement(name = "dimensionDescription") + @XmlJavaTypeAdapter(InternationalStringAdapter.Since2014.class) public InternationalString getDimensionDescription() { return dimensionDescription; } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCP.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCP.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCP.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCP.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -24,7 +24,6 @@ import org.opengis.geometry.DirectPositi import org.opengis.metadata.quality.Element; import org.opengis.metadata.spatial.GCP; import org.apache.sis.metadata.iso.ISOMetadata; -import org.apache.sis.xml.Namespaces; /** @@ -47,7 +46,7 @@ import org.apache.sis.xml.Namespaces; * * @author Cédric Briançon (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 0.3 + * @version 1.0 * * @see DefaultGCPCollection * @@ -59,7 +58,7 @@ import org.apache.sis.xml.Namespaces; //"geographicCoordinates", "accuracyReports" }) -@XmlRootElement(name = "MI_GCP", namespace = Namespaces.GMI) +@XmlRootElement(name = "MI_GCP") public class DefaultGCP extends ISOMetadata implements GCP { /** * Serial number for inter-operability with different versions. @@ -153,7 +152,7 @@ public class DefaultGCP extends ISOMetad * @return accuracy of a ground control point. */ @Override - @XmlElement(name = "accuracyReport", namespace = Namespaces.GMI) + @XmlElement(name = "accuracyReport") public Collection<Element> getAccuracyReports() { return accuracyReports = nonNullCollection(accuracyReports, Element.class); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCPCollection.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCPCollection.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCPCollection.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGCPCollection.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -25,7 +25,6 @@ import org.opengis.metadata.spatial.GCPC import org.opengis.referencing.ReferenceSystem; import org.opengis.util.InternationalString; import org.apache.sis.metadata.TitleProperty; -import org.apache.sis.xml.Namespaces; /** @@ -50,7 +49,7 @@ import org.apache.sis.xml.Namespaces; * * @author Cédric Briançon (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 0.3 + * @version 1.0 * * @see DefaultGCP * @@ -65,7 +64,7 @@ import org.apache.sis.xml.Namespaces; "coordinateReferenceSystem", "GCPs" }) -@XmlRootElement(name = "MI_GCPCollection", namespace = Namespaces.GMI) +@XmlRootElement(name = "MI_GCPCollection") public class DefaultGCPCollection extends AbstractGeolocationInformation implements GCPCollection { /** * Serial number for inter-operability with different versions. @@ -148,7 +147,7 @@ public class DefaultGCPCollection extend * @return the identifier, or {@code null}. */ @Override - @XmlElement(name = "collectionIdentification", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "collectionIdentification", required = true) public Integer getCollectionIdentification() { return collectionIdentification; } @@ -169,7 +168,7 @@ public class DefaultGCPCollection extend * @return name of the GCP collection, or {@code null}. */ @Override - @XmlElement(name = "collectionName", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "collectionName", required = true) public InternationalString getCollectionName() { return collectionName; } @@ -190,7 +189,7 @@ public class DefaultGCPCollection extend * @return coordinate reference system in which the ground control points are defined, or {@code null}. */ @Override - @XmlElement(name = "coordinateReferenceSystem", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "coordinateReferenceSystem", required = true) public ReferenceSystem getCoordinateReferenceSystem() { return coordinateReferenceSystem; } @@ -211,7 +210,7 @@ public class DefaultGCPCollection extend * @return ground control point(s). */ @Override - @XmlElement(name = "gcp", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "gcp", required = true) public Collection<GCP> getGCPs() { return GCPs = nonNullCollection(GCPs, GCP.class); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeometricObjects.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeometricObjects.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeometricObjects.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeometricObjects.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -46,7 +46,7 @@ import static org.apache.sis.internal.me * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.5 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeorectified.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeorectified.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeorectified.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeorectified.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -29,7 +29,6 @@ import org.opengis.geometry.primitive.Po import org.opengis.util.InternationalString; import org.apache.sis.internal.jaxb.Context; import org.apache.sis.util.resources.Messages; -import org.apache.sis.xml.Namespaces; /** @@ -68,7 +67,7 @@ import org.apache.sis.xml.Namespaces; * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ @@ -299,7 +298,7 @@ public class DefaultGeorectified extends * @return the center point, or {@code null}. */ @Override - @XmlElement(name = "centerPoint") + @XmlElement(name = "centrePoint") public Point getCenterPoint() { return centerPoint; } @@ -383,7 +382,7 @@ public class DefaultGeorectified extends * @return geographic references used to validate georectification. */ @Override - @XmlElement(name = "checkPoint", namespace = Namespaces.GMI) + @XmlElement(name = "checkPoint") public Collection<GCP> getCheckPoints() { return checkPoints = nonNullCollection(checkPoints, GCP.class); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeoreferenceable.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeoreferenceable.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeoreferenceable.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGeoreferenceable.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -26,7 +26,6 @@ import org.opengis.util.InternationalStr import org.opengis.metadata.citation.Citation; import org.opengis.metadata.spatial.Georeferenceable; import org.opengis.metadata.spatial.GeolocationInformation; -import org.apache.sis.xml.Namespaces; /** @@ -60,7 +59,8 @@ import org.apache.sis.xml.Namespaces; * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.3 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ @@ -69,6 +69,7 @@ import org.apache.sis.xml.Namespaces; "controlPointAvailable", "orientationParameterAvailable", "orientationParameterDescription", + "georeferencedParameters", "parameterCitations", "geolocationInformation" }) @@ -247,7 +248,7 @@ public class DefaultGeoreferenceable ext * @return terms which support grid data georeferencing, or {@code null}. */ @Override -/// @XmlElement(name = "georeferencedParameters", required = true) + @XmlElement(name = "georeferencedParameters", required = true) public Record getGeoreferencedParameters() { return georeferencedParameters; } @@ -288,7 +289,7 @@ public class DefaultGeoreferenceable ext * @return a geolocalisation of the data. */ @Override - @XmlElement(name = "geolocationInformation", namespace = Namespaces.GMI, required = true) + @XmlElement(name = "geolocationInformation", required = true) public Collection<GeolocationInformation> getGeolocationInformation() { return geolocationInformation = nonNullCollection(geolocationInformation, GeolocationInformation.class); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGridSpatialRepresentation.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGridSpatialRepresentation.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGridSpatialRepresentation.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultGridSpatialRepresentation.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -55,7 +55,7 @@ import static org.apache.sis.internal.me * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.5 + * @version 1.0 * @since 0.3 * @module */ @@ -216,7 +216,7 @@ public class DefaultGridSpatialRepresent * @return information about spatial-temporal axis properties. */ @Override - @XmlElement(name = "axisDimensionProperties", required = true) + @XmlElement(name = "axisDimensionProperties") public List<Dimension> getAxisDimensionProperties() { return axisDimensionProperties = nonNullList(axisDimensionProperties, Dimension.class); } Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultVectorSpatialRepresentation.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultVectorSpatialRepresentation.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultVectorSpatialRepresentation.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/DefaultVectorSpatialRepresentation.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -40,7 +40,7 @@ import org.opengis.metadata.spatial.Vect * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.3 + * @version 1.0 * @since 0.3 * @module */ Modified: sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/package-info.java URL: http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/package-info.java?rev=1825254&r1=1825253&r2=1825254&view=diff ============================================================================== --- sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/package-info.java [UTF-8] (original) +++ sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/spatial/package-info.java [UTF-8] Sat Feb 24 16:13:58 2018 @@ -83,21 +83,25 @@ * @author Martin Desruisseaux (IRD, Geomatys) * @author Touraïvane (IRD) * @author Cédric Briançon (Geomatys) - * @version 0.5 + * @author Cullen Rombach (Image Matters) + * @version 1.0 * @since 0.3 * @module */ -@XmlSchema(location=Schemas.METADATA_XSD, elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.GMD, xmlns = { - @XmlNs(prefix = "gmi", namespaceURI = Namespaces.GMI), - @XmlNs(prefix = "gmd", namespaceURI = Namespaces.GMD), - @XmlNs(prefix = "gco", namespaceURI = Namespaces.GCO), - @XmlNs(prefix = "xsi", namespaceURI = Namespaces.XSI) +@XmlSchema(location="http://standards.iso.org/iso/19115/-3/msr/1.0/msr.xsd", + elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.MSR, + xmlns = { + @XmlNs(prefix = "msr", namespaceURI = Namespaces.MSR), // Metadata for Spatial Representation + @XmlNs(prefix = "mcc", namespaceURI = Namespaces.MCC), // Metadata Common Classes + @XmlNs(prefix = "dqc", namespaceURI = Namespaces.DQC) // Data Quality Common Classes }) @XmlAccessorType(XmlAccessType.NONE) @XmlJavaTypeAdapters({ @XmlJavaTypeAdapter(CI_Citation.class), @XmlJavaTypeAdapter(DQ_DataQuality.class), @XmlJavaTypeAdapter(DQ_Element.class), + @XmlJavaTypeAdapter(GO_Integer.class), + @XmlJavaTypeAdapter(GO_Record.class), @XmlJavaTypeAdapter(GM_Object.class), @XmlJavaTypeAdapter(MD_CellGeometryCode.class), @XmlJavaTypeAdapter(MD_Dimension.class), @@ -112,8 +116,7 @@ // Java types, primitive types and basic OGC types handling @XmlJavaTypeAdapter(InternationalStringAdapter.class), - @XmlJavaTypeAdapter(GO_Integer.class), @XmlJavaTypeAdapter(type=int.class, value=GO_Integer.class), - @XmlJavaTypeAdapter(GO_Boolean.class), @XmlJavaTypeAdapter(type=boolean.class, value=GO_Boolean.class) + @XmlJavaTypeAdapter(value=GO_Boolean.class, type=boolean.class) }) package org.apache.sis.metadata.iso.spatial; @@ -125,7 +128,6 @@ import javax.xml.bind.annotation.XmlAcce import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters; import org.apache.sis.xml.Namespaces; -import org.apache.sis.internal.jaxb.Schemas; import org.apache.sis.internal.jaxb.gco.*; import org.apache.sis.internal.jaxb.code.*; import org.apache.sis.internal.jaxb.metadata.*;
