Author: desruisseaux
Date: Sat Apr 14 16:24:01 2018
New Revision: 1829150
URL: http://svn.apache.org/viewvc?rev=1829150&view=rev
Log:
Fix the way ExtendedElementInformation.maximumOccurrence and cit:Date are
marshalled.
Add a few nilReason for missing properties in the metadata test file.
Modified:
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/Context.java
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/gco/GO_DateTime.java
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/MetadataUtilities.java
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java
sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/MarshallingTest.java
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2007/Metadata.xml
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2016/Metadata.xml
Modified:
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/Context.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/Context.java?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/Context.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/Context.java
[UTF-8] Sat Apr 14 16:24:01 2018
@@ -33,6 +33,7 @@ import org.apache.sis.util.logging.Warni
import org.apache.sis.util.resources.Errors;
import org.apache.sis.util.resources.Messages;
import org.apache.sis.util.resources.IndexedResourceBundle;
+import org.apache.sis.util.CorruptedObjectException;
import org.apache.sis.internal.jaxb.gco.PropertyType;
import org.apache.sis.internal.system.Semaphores;
import org.apache.sis.internal.system.Loggers;
@@ -508,8 +509,8 @@ public final class Context extends Marsh
/**
* Returns {@code true} if the given identifier is available, or {@code
false} if it is used by another object.
* If this method returns {@code true}, then the given identifier is
associated to the given object for future
- * invocation of {@code Context} method. If this method returns {@code
false}, then the caller is responsible
- * for computing an other identifier candidate.
+ * invocation of {@code Context} methods. If this method returns {@code
false}, then the caller is responsible
+ * for computing another identifier candidate.
*
* @param context the current context, or {@code null} if none.
* @param object the object for which to assign the {@code gml:id}.
@@ -521,12 +522,11 @@ public final class Context extends Marsh
public static boolean setObjectForID(final Context context, final Object
object, final String id) {
if (context != null) {
final Object existing = context.identifiers.putIfAbsent(id,
object);
- if (existing == null) {
- if (context.identifiedObjects.put(object, id) != null) {
- throw new AssertionError(id); // Caller forgot to invoke
getExistingID(context, object).
- }
- } else if (existing != object) {
- return false;
+ if (existing != null) {
+ return existing == object;
+ }
+ if (context.identifiedObjects.put(object, id) != null) {
+ throw new CorruptedObjectException(id); // Should never
happen since all put calls are in this method.
}
}
return true;
Modified:
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/gco/GO_DateTime.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/gco/GO_DateTime.java?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/gco/GO_DateTime.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/jaxb/gco/GO_DateTime.java
[UTF-8] Sat Apr 14 16:24:01 2018
@@ -23,6 +23,7 @@ import javax.xml.bind.annotation.XmlSche
import javax.xml.bind.annotation.adapters.XmlAdapter;
import javax.xml.datatype.DatatypeConfigurationException;
import javax.xml.datatype.XMLGregorianCalendar;
+import javax.xml.datatype.DatatypeConstants;
import org.apache.sis.internal.jaxb.Context;
import org.apache.sis.internal.jaxb.XmlUtilities;
@@ -33,9 +34,21 @@ import org.apache.sis.internal.jaxb.XmlU
* At marshalling time, the choice is performed depending on whatever the
given date contains
* hour, minute or seconds information different than zero.
*
+ * <div class="section">Difference between ISO 19139:2007 and ISO
19115-3:2016</div>
+ * The ISO {@code baseTypes.xsd} files define two kinds of date property:
+ * <ul>
+ * <li>{@code gco:Date_PropertyType} accepts either {@code gco:Date} or
{@code gco:DateTime}.</li>
+ * <li>{@code gco:DateTime_PropertyType} accepts only {@code
gco:DateTime}.</li>
+ * </ul>
+ *
+ * In the legacy standard (ISO 19139:2007), date properties (in particular in
citations) were of type
+ * {@code Date_PropertyType}. But in the new standard (ISO 19115-3:2016), most
date properties are of
+ * type {@code DateTime_PropertyType}, i.e. {@code gco:Date} is not legal
anymore. The only exception
+ * is {@code versionDate} in {@code cat:AbstractCT_Catalogue}.
+ *
* @author Cédric Briançon (Geomatys)
* @author Martin Desruisseaux (Geomatys)
- * @version 0.4
+ * @version 1.0
*
* @see org.apache.sis.internal.jaxb.gml.DateAdapter
* @see org.apache.sis.internal.jaxb.gml.UniversalTimeAdapter
@@ -76,9 +89,16 @@ public final class GO_DateTime extends X
final Context context = Context.current();
try {
final XMLGregorianCalendar gc = XmlUtilities.toXML(context, date);
- if (XmlUtilities.trimTime(gc, false)) {
- this.date = gc;
+ if (Context.isFlagSet(context, Context.LEGACY_METADATA)) {
+ if (XmlUtilities.trimTime(gc, false)) {
+ this.date = gc;
+ } else {
+ dateTime = gc;
+ }
} else {
+ if (gc.getMillisecond() == 0) {
+ gc.setMillisecond(DatatypeConstants.FIELD_UNDEFINED);
+ }
dateTime = gc;
}
} catch (DatatypeConfigurationException e) {
Modified:
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/MetadataUtilities.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/MetadataUtilities.java?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/MetadataUtilities.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/MetadataUtilities.java
[UTF-8] Sat Apr 14 16:24:01 2018
@@ -34,6 +34,9 @@ import org.apache.sis.internal.util.Util
* @version 0.8
* @since 0.3
* @module
+ *
+ * @todo Most methods in this class are related to (un)marshalling. We should
rename as {@code MarshallingUtilities}
+ * and move to a JAXB package after we removed the {@code
toMilliseconds(…)} and {@code toDate(…)} methods.
*/
public final class MetadataUtilities extends Static {
/**
@@ -135,7 +138,7 @@ public final class MetadataUtilities ext
*
* @param classe the caller class, used only in case of warning
message to log.
* @param property the property name. Method name will be inferred by
the usual Java bean convention.
- * @param key a {@code Errors.Keys} value.
+ * @param key an {@code Errors.Keys} value.
* @param arguments the argument to use for formatting the error message.
* @return {@code null} if the message has been logged, or the message to
put in an exception otherwise.
*/
Modified:
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultExtendedElementInformation.java
[UTF-8] Sat Apr 14 16:24:01 2018
@@ -31,6 +31,8 @@ import org.apache.sis.metadata.TitleProp
import org.apache.sis.measure.ValueRange;
import org.apache.sis.util.iso.Types;
import org.apache.sis.xml.Namespaces;
+import org.apache.sis.xml.NilReason;
+import org.apache.sis.internal.jaxb.Context;
import org.apache.sis.internal.jaxb.LegacyNamespaces;
import org.apache.sis.internal.jaxb.FilterByVersion;
import org.apache.sis.internal.metadata.Dependencies;
@@ -87,7 +89,7 @@ import static org.apache.sis.internal.me
"obligation",
"condition",
"dataType",
- "maximumOccurrence",
+ "maxOccurs",
"domainValue",
"parentEntity",
"rule",
@@ -441,7 +443,7 @@ public class DefaultExtendedElementInfor
/**
* Maximum occurrence of the extended element.
- * Returns {@code null} if it doesn't apply, for example if the
+ * Returns {@code null} if it does not apply, for example if the
* {@linkplain #getDataType() data type} is {@linkplain
Datatype#ENUMERATION enumeration},
* {@linkplain Datatype#CODE_LIST code list} or {@linkplain
Datatype#CODE_LIST_ELEMENT
* code list element}.
@@ -450,7 +452,6 @@ public class DefaultExtendedElementInfor
*/
@Override
@ValueRange(minimum = 0)
- @XmlElement(name = "maximumOccurrence")
public Integer getMaximumOccurrence() {
return maximumOccurrence;
}
@@ -624,4 +625,56 @@ public class DefaultExtendedElementInfor
public void setSources(final Collection<? extends Responsibility>
newValues) {
sources = writeCollection(newValues, sources, 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.
////////
+ ////////
////////
+
//////////////////////////////////////////////////////////////////////////////////////////////////
+
+ /**
+ * Returns the maximum occurrence as a string, since it is the way that
ISO 19115 represents
+ * this information. This method is invoked by JAXB at marshalling time.
+ */
+ @XmlElement(name = "maximumOccurrence")
+ private String getMaxOccurs() {
+ final Integer value = getMaximumOccurrence();
+ if (value == null) {
+ return null;
+ }
+ final NilReason nil = NilReason.forObject(value);
+ if (nil != null) {
+ return nil.createNilObject(String.class);
+ }
+ return value.toString();
+ }
+
+ /**
+ * Sets the maximum occurrence from a string.
+ * This method is invoked by JAXB at unmarshalling time.
+ */
+ @SuppressWarnings("unused")
+ private void setMaxOccurs(final String value) {
+ if (value != null) {
+ final Integer n;
+ final NilReason nil = NilReason.forObject(value);
+ if (nil != null) {
+ n = nil.createNilObject(Integer.class);
+ } else try {
+ n = Integer.valueOf(value);
+ } catch (NumberFormatException e) {
+ Context.warningOccured(Context.current(),
DefaultExtendedElementInformation.class, "setMaximumOccurrence", e, true);
+ return;
+ }
+ setMaximumOccurrence(n);
+ }
+ }
}
Modified:
sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/MarshallingTest.java
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/MarshallingTest.java?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/MarshallingTest.java
[UTF-8] (original)
+++
sis/branches/JDK8/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/MarshallingTest.java
[UTF-8] Sat Apr 14 16:24:01 2018
@@ -42,6 +42,7 @@ import org.opengis.metadata.extent.*;
import org.opengis.metadata.identification.*;
import org.opengis.metadata.maintenance.*;
import org.opengis.metadata.spatial.*;
+import org.opengis.geometry.primitive.Point;
import org.apache.sis.metadata.iso.citation.*;
import org.apache.sis.metadata.iso.constraint.*;
import org.apache.sis.metadata.iso.content.*;
@@ -56,6 +57,7 @@ import org.apache.sis.util.iso.DefaultIn
import org.apache.sis.util.logging.WarningListener;
import org.apache.sis.measure.Units;
import org.apache.sis.xml.XML;
+import org.apache.sis.xml.NilReason;
import org.apache.sis.xml.MarshallerPool;
import org.apache.sis.xml.IdentifierSpace;
import org.apache.sis.internal.jaxb.gcx.Anchor;
@@ -270,6 +272,7 @@ public final class MarshallingTest exten
georectified.setAxisDimensionProperties(Arrays.asList(rows, cols));
georectified.setCellGeometry(CellGeometry.AREA);
georectified.setPointInPixel(PixelOrientation.UPPER_RIGHT);
+
georectified.getCornerPoints().add(NilReason.MISSING.createNilObject(Point.class));
md.getSpatialRepresentationInfo().add(georectified);
}
{
@@ -320,6 +323,7 @@ public final class MarshallingTest exten
elementInfo.setParentEntity(Collections.singleton("VirtualObject"));
elementInfo.setRule(new SimpleInternationalString("Element exists
in cited resource."));
elementInfo.setRationale(new SimpleInternationalString("For
testing extended elements."));
+
elementInfo.getSources().add(NilReason.valueOf("other:test").createNilObject(Responsibility.class));
extension.getExtendedElementInformation().add(elementInfo);
md.getMetadataExtensionInfo().add(extension);
}
Modified:
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2007/Metadata.xml
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2007/Metadata.xml?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2007/Metadata.xml
(original)
+++
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2007/Metadata.xml
Sat Apr 14 16:24:01 2018
@@ -89,7 +89,7 @@
<gco:CharacterString>A1A 2C2</gco:CharacterString>
</gmd:postalCode>
<gmd:country>
- <gco:CharacterString>Atgmdtis isgmdd</gco:CharacterString>
+ <gco:CharacterString>Atlantis island</gco:CharacterString>
</gmd:country>
<gmd:electronicMailAddress>
<gco:CharacterString>[email protected]</gco:CharacterString>
@@ -227,7 +227,7 @@
<gmd:authority>
<gmd:CI_Citation>
<gmd:title>
- <gco:CharacterString>Atgmdtis grid</gco:CharacterString>
+ <gco:CharacterString>Atlantis grid</gco:CharacterString>
</gmd:title>
<gmd:date>
<gmd:CI_Date>
@@ -242,7 +242,7 @@
<gmd:citedResponsibleParty>
<gmd:CI_ResponsibleParty>
<gmd:organisationName>
- <gco:CharacterString>Atgmdtis national mapping
agency</gco:CharacterString>
+ <gco:CharacterString>Atlantis national mapping
agency</gco:CharacterString>
</gmd:organisationName>
<gmd:role>
<gmd:CI_RoleCode
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#CI_RoleCode"
codeListValue="publisher" codeSpace="eng">Publisher</gmd:CI_RoleCode>
@@ -291,7 +291,7 @@
<gmd:MD_DatatypeCode
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_DatatypeCode"
codeListValue="metaClass">Meta class</gmd:MD_DatatypeCode>
</gmd:dataType>
<gmd:maximumOccurrence>
- <gco:Integer>3</gco:Integer>
+ <gco:CharacterString>3</gco:CharacterString>
</gmd:maximumOccurrence>
<gmd:domainValue>
<gco:CharacterString>Alpha, beta or gamma.</gco:CharacterString>
@@ -305,6 +305,7 @@
<gmd:rationale>
<gco:CharacterString>For testing extended
elements.</gco:CharacterString>
</gmd:rationale>
+ <gmd:source gco:nilReason="other:test"></gmd:source>
</gmd:MD_ExtendedElementInformation>
</gmd:extendedElementInformation>
</gmd:MD_MetadataExtensionInformation>
@@ -312,12 +313,12 @@
<gmd:identificationInfo>
<gmd:MD_DataIdentification>
<gmd:citation>
- <gmd:CI_Citation id="lost-isgmdd">
+ <gmd:CI_Citation id="lost-island">
<gmd:title>
- <gco:CharacterString>A lost isgmdd</gco:CharacterString>
+ <gco:CharacterString>A lost island</gco:CharacterString>
</gmd:title>
<gmd:alternateTitle>
- <gco:CharacterString>Isgmdd lost again</gco:CharacterString>
+ <gco:CharacterString>Island lost again</gco:CharacterString>
</gmd:alternateTitle>
<gmd:alternateTitle>
<gmx:Anchor xlink:href="http://map-example.com">Map
example</gmx:Anchor>
@@ -377,9 +378,9 @@
<gmd:MD_TopicCategoryCode>society</gmd:MD_TopicCategoryCode>
</gmd:topicCategory>
<gmd:resourceMaintenance>
- <gmd:MD_MaintenanceInformation id="not-pgmdned">
+ <gmd:MD_MaintenanceInformation id="not-planned">
<gmd:maintenanceAndUpdateFrequency>
- <gmd:MD_MaintenanceFrequencyCode
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode"
codeListValue="notPgmdned" codeSpace="eng">Not
pgmdned</gmd:MD_MaintenanceFrequencyCode>
+ <gmd:MD_MaintenanceFrequencyCode
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_MaintenanceFrequencyCode"
codeListValue="notPlanned" codeSpace="eng">Not
planned</gmd:MD_MaintenanceFrequencyCode>
</gmd:maintenanceAndUpdateFrequency>
<gmd:updateScope>
<gmd:MD_ScopeCode
codeList="http://schemas.opengis.net/iso/19139/20070417/resources/Codelist/gmxCodelists.xml#MD_ScopeCode"
codeListValue="model" codeSpace="eng">Model</gmd:MD_ScopeCode>
@@ -510,11 +511,11 @@
</gmd:identificationInfo>
<gmd:identificationInfo>
<srv:SV_ServiceIdentification>
- <gmd:citation xlink:href="#lost-isgmdd"></gmd:citation>
+ <gmd:citation xlink:href="#lost-island"></gmd:citation>
<gmd:abstract>
<gco:CharacterString>An inspiration for story
tellers.</gco:CharacterString>
</gmd:abstract>
- <gmd:resourceMaintenance
xlink:href="#not-pgmdned"></gmd:resourceMaintenance>
+ <gmd:resourceMaintenance
xlink:href="#not-planned"></gmd:resourceMaintenance>
<gmd:descriptiveKeywords
xlink:href="#greek-elements"></gmd:descriptiveKeywords>
<gmd:resourceConstraints xlink:href="#public"></gmd:resourceConstraints>
<gmd:aggregationInfo>
@@ -555,7 +556,7 @@
</srv:containsOperations>
<srv:operatesOn>
<gmd:MD_DataIdentification>
- <gmd:citation xlink:href="#lost-isgmdd"></gmd:citation>
+ <gmd:citation xlink:href="#lost-island"></gmd:citation>
<gmd:abstract xsi:type="gmd:PT_FreeText_PropertyType">
<gco:CharacterString>Metadata for an imaginary
map.</gco:CharacterString>
<gmd:PT_FreeText>
@@ -589,7 +590,7 @@
<gmd:topicCategory>
<gmd:MD_TopicCategoryCode>society</gmd:MD_TopicCategoryCode>
</gmd:topicCategory>
- <gmd:resourceMaintenance
xlink:href="#not-pgmdned"></gmd:resourceMaintenance>
+ <gmd:resourceMaintenance
xlink:href="#not-planned"></gmd:resourceMaintenance>
<gmd:resourceFormat>
<gmd:MD_Format>
<gmd:name>
Modified:
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2016/Metadata.xml
URL:
http://svn.apache.org/viewvc/sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2016/Metadata.xml?rev=1829150&r1=1829149&r2=1829150&view=diff
==============================================================================
---
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2016/Metadata.xml
(original)
+++
sis/branches/JDK8/core/sis-metadata/src/test/resources/org/apache/sis/metadata/xml/2016/Metadata.xml
Sat Apr 14 16:24:01 2018
@@ -367,7 +367,7 @@
<mex:MD_DatatypeCode
codeList="http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#MD_DatatypeCode"
codeListValue="metaClass">Meta class</mex:MD_DatatypeCode>
</mex:dataType>
<mex:maximumOccurrence>
- <gco:Integer>3</gco:Integer>
+ <gco:CharacterString>3</gco:CharacterString>
</mex:maximumOccurrence>
<mex:domainValue>
<gco:CharacterString>Alpha, beta or gamma.</gco:CharacterString>
@@ -381,6 +381,7 @@
<mex:rationale>
<gco:CharacterString>For testing extended
elements.</gco:CharacterString>
</mex:rationale>
+ <mex:source gco:nilReason="other:test"/>
</mex:MD_ExtendedElementInformation>
</mex:extendedElementInformation>
</mex:MD_MetadataExtensionInformation>
@@ -401,7 +402,7 @@
<cit:date>
<cit:CI_Date>
<cit:date>
- <gco:Date>2018-04-09</gco:Date>
+ <gco:DateTime>2018-04-09T00:00:00.000+02:00</gco:DateTime>
</cit:date>
<cit:dateType>
<cit:CI_DateTypeCode
codeList="http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#CI_DateTypeCode"
codeListValue="creation" codeSpace="eng">Creation</cit:CI_DateTypeCode>
@@ -412,7 +413,7 @@
<gco:CharacterString>First edition</gco:CharacterString>
</cit:edition>
<cit:editionDate>
- <gco:Date>2018-04-10</gco:Date>
+ <gco:DateTime>2018-04-10T00:00:00.000+02:00</gco:DateTime>
</cit:editionDate>
</cit:CI_Citation>
</mri:citation>
@@ -486,7 +487,7 @@
<mmi:maintenanceDate>
<cit:CI_Date>
<cit:date>
- <gco:Date>3000-01-01</gco:Date>
+ <gco:DateTime>3000-01-01T00:00:00.000+01:00</gco:DateTime>
</cit:date>
<cit:dateType>
<cit:CI_DateTypeCode
codeList="http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#CI_DateTypeCode"
codeListValue="revision" codeSpace="eng">Revision</cit:CI_DateTypeCode>
@@ -565,7 +566,7 @@
<gco:CharacterString>For testing purpose
only.</gco:CharacterString>
</mri:specificUsage>
<mri:usageDateTime>
- <gco:DateTime>2018-04-10T14:00:00+02:00</gco:DateTime>
+ <gco:DateTime>2018-04-10T14:00:00.000+02:00</gco:DateTime>
</mri:usageDateTime>
<mri:userDeterminedLimitations>
<gco:CharacterString>Not to be used outside MarshallingTest.java
test file.</gco:CharacterString>
@@ -760,7 +761,7 @@
<gco:CharacterString>For testing purpose
only.</gco:CharacterString>
</mri:specificUsage>
<mri:usageDateTime>
- <gco:DateTime>2018-04-10T14:00:00+02:00</gco:DateTime>
+ <gco:DateTime>2018-04-10T14:00:00.000+02:00</gco:DateTime>
</mri:usageDateTime>
<mri:userDeterminedLimitations>
<gco:CharacterString>Not to be used outside
MarshallingTest.java test file.</gco:CharacterString>