Author: desruisseaux
Date: Sat Jan 27 14:07:17 2018
New Revision: 1822408

URL: http://svn.apache.org/viewvc?rev=1822408&view=rev
Log:
Fix a few namespaces with the help of SchemaVerifier.

Modified:
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultApplicationSchemaInformation.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultPortrayalCatalogueReference.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDataFile.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/package-info.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/SchemaVerifier.java
    
sis/branches/ISO-19115-3/core/sis-metadata/src/test/resources/org/apache/sis/metadata/iso/lineage/ProcessStep.xml
    
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/LegacyNamespaces.java
    
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/Schemas.java
    
sis/branches/ISO-19115-3/core/sis-utility/src/main/resources/org/apache/sis/xml/NamespaceContent.txt

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultApplicationSchemaInformation.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultApplicationSchemaInformation.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultApplicationSchemaInformation.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultApplicationSchemaInformation.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -23,6 +23,7 @@ import javax.xml.bind.annotation.adapter
 import org.opengis.metadata.ApplicationSchemaInformation;
 import org.opengis.metadata.citation.Citation;
 import org.opengis.metadata.citation.OnlineResource;
+import org.apache.sis.xml.Namespaces;
 import org.apache.sis.internal.jaxb.gco.CharSequenceAdapter;
 import org.apache.sis.internal.jaxb.metadata.CI_OnlineResource;
 
@@ -56,7 +57,7 @@ import org.apache.sis.internal.jaxb.meta
  * @module
  */
 @SuppressWarnings("CloneableClassWithoutClone")                 // 
ModifiableMetadata needs shallow clones.
-@XmlType(name = "MD_ApplicationSchemaInformation_Type", propOrder = {
+@XmlType(name = "MD_ApplicationSchemaInformation_Type", namespace = 
Namespaces.MAS, propOrder = {
     "name",
     "schemaLanguage",
     "constraintLanguage",
@@ -65,7 +66,7 @@ import org.apache.sis.internal.jaxb.meta
     "softwareDevelopmentFile",
     "softwareDevelopmentFileFormat"
 })
-@XmlRootElement(name = "MD_ApplicationSchemaInformation")
+@XmlRootElement(name = "MD_ApplicationSchemaInformation", namespace = 
Namespaces.MAS)
 public class DefaultApplicationSchemaInformation extends ISOMetadata 
implements ApplicationSchemaInformation {
     /**
      * Serial number for inter-operability with different versions.

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultPortrayalCatalogueReference.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultPortrayalCatalogueReference.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultPortrayalCatalogueReference.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/DefaultPortrayalCatalogueReference.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -22,6 +22,7 @@ import javax.xml.bind.annotation.XmlElem
 import javax.xml.bind.annotation.XmlRootElement;
 import org.opengis.metadata.citation.Citation;
 import org.opengis.metadata.PortrayalCatalogueReference;
+import org.apache.sis.xml.Namespaces;
 
 
 /**
@@ -50,8 +51,8 @@ import org.opengis.metadata.PortrayalCat
  * @module
  */
 @SuppressWarnings("CloneableClassWithoutClone")                 // 
ModifiableMetadata needs shallow clones.
-@XmlType(name = "MD_PortrayalCatalogueReference_Type")
-@XmlRootElement(name = "MD_PortrayalCatalogueReference")
+@XmlType(name = "MD_PortrayalCatalogueReference_Type", namespace = 
Namespaces.MPC)
+@XmlRootElement(name = "MD_PortrayalCatalogueReference", namespace = 
Namespaces.MPC)
 public class DefaultPortrayalCatalogueReference extends ISOMetadata implements 
PortrayalCatalogueReference {
     /**
      * Serial number for compatibility with different versions.

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDataFile.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDataFile.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDataFile.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/DefaultDataFile.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -54,11 +54,11 @@ import org.apache.sis.metadata.iso.ISOMe
  * @module
  */
 @SuppressWarnings("CloneableClassWithoutClone")                 // 
ModifiableMetadata needs shallow clones.
-@XmlType(name = "MX_DataFile_Type", namespace = Namespaces.GCX, propOrder = {
+@XmlType(name = "MX_DataFile_Type", namespace = Namespaces.MDT, propOrder = {
     "featureTypes",
     "fileFormat"
 })
-@XmlRootElement(name = "MX_DataFile", namespace = Namespaces.GCX)
+@XmlRootElement(name = "MX_DataFile", namespace = Namespaces.MDT)
 public class DefaultDataFile extends ISOMetadata implements DataFile {
     /**
      * Serial number for inter-operability with different versions.

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/package-info.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/package-info.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/package-info.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/distribution/package-info.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -77,6 +77,7 @@
 @XmlSchema(location=Schemas.METADATA_XSD_DISTRIBUTION, 
elementFormDefault=XmlNsForm.QUALIFIED, namespace=Namespaces.MRD, xmlns = {
     @XmlNs(prefix = "mcc", namespaceURI = Namespaces.MCC),
     @XmlNs(prefix = "mrd", namespaceURI = Namespaces.MRD),
+    @XmlNs(prefix = "mdt", namespaceURI = Namespaces.MDT),
     @XmlNs(prefix = "gco", namespaceURI = Namespaces.GCO),
     @XmlNs(prefix = "gmw", namespaceURI = Namespaces.GMW),
     @XmlNs(prefix = "gcx", namespaceURI = Namespaces.GCX),

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -22,6 +22,7 @@ import java.util.Collection;
 import javax.xml.bind.annotation.XmlType;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlRootElement;
+import org.apache.sis.internal.jaxb.LegacyNamespaces;
 import org.opengis.metadata.Identifier;
 import org.opengis.metadata.citation.Citation;
 import org.opengis.metadata.identification.AggregateInformation;
@@ -65,12 +66,12 @@ import org.apache.sis.internal.metadata.
  */
 @Deprecated
 @SuppressWarnings("CloneableClassWithoutClone")                 // 
ModifiableMetadata needs shallow clones.
-@XmlType(name = "MD_AggregateInformation_Type", propOrder = {
+@XmlType(name = "MD_AggregateInformation_Type", namespace = 
LegacyNamespaces.GMD, propOrder = {
     "aggregateDataSetName",
     "aggregateDataSetIdentifier",
     // "associationType" and "initiativeType" will be written by parent class.
 })
-@XmlRootElement(name = "MD_AggregateInformation")
+@XmlRootElement(name = "MD_AggregateInformation", namespace = 
LegacyNamespaces.GMD)
 public class DefaultAggregateInformation extends DefaultAssociatedResource 
implements AggregateInformation {
     /**
      * Serial number for compatibility with different versions.

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/package-info.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -91,6 +91,7 @@
     @XmlNs(prefix = "cit", namespaceURI = Namespaces.CIT),
     @XmlNs(prefix = "lan", namespaceURI = Namespaces.LAN),
     @XmlNs(prefix = "mcc", namespaceURI = Namespaces.MCC),
+    @XmlNs(prefix = "mas", namespaceURI = Namespaces.MAS),
     @XmlNs(prefix = "mex", namespaceURI = Namespaces.MEX),
     @XmlNs(prefix = "gco", namespaceURI = Namespaces.GCO),
     @XmlNs(prefix = "xsi", namespaceURI = Namespaces.XSI),

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalAccuracy.java
 [UTF-8] Sat Jan 27 14:07:17 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;
 
 
 /**
@@ -48,8 +49,8 @@ import org.opengis.metadata.quality.Accu
  * @module
  */
 @SuppressWarnings("CloneableClassWithoutClone")                 // 
ModifiableMetadata needs shallow clones.
-@XmlType(name = "AbstractDQ_TemporalAccuracy_Type")
-@XmlRootElement(name = "AbstractDQ_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/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
 [UTF-8] Sat Jan 27 14:07:17 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;
 
 
 /**
@@ -43,8 +44,8 @@ import org.opengis.metadata.quality.NonQ
  * @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/ISO-19115-3/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/SchemaVerifier.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/SchemaVerifier.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/SchemaVerifier.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/SchemaVerifier.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -24,9 +24,13 @@ import java.nio.file.Files;
 import java.nio.file.DirectoryStream;
 import java.nio.file.DirectoryIteratorException;
 import java.util.Map;
+import java.util.Set;
 import java.util.Deque;
 import java.util.HashMap;
+import java.util.HashSet;
 import java.util.ArrayDeque;
+import java.util.Arrays;
+import java.util.Collections;
 import javax.xml.XMLConstants;
 import javax.xml.bind.annotation.XmlType;
 import javax.xml.bind.annotation.XmlSchema;
@@ -39,6 +43,7 @@ import org.w3c.dom.Document;
 import org.w3c.dom.NamedNodeMap;
 import org.xml.sax.SAXException;
 import org.apache.sis.util.StringBuilders;
+import org.apache.sis.internal.jaxb.LegacyNamespaces;
 
 
 
@@ -66,6 +71,18 @@ import org.apache.sis.util.StringBuilder
  */
 public final strictfp class SchemaVerifier {
     /**
+     * The root of ISO schemas. May be replaced by {@link 
#schemaRootDirectory} if a local copy
+     * is available for faster tests.
+     */
+    private static final String SCHEMA_ROOT_DIRECTORY = 
"http://standards.iso.org/iso/";;
+
+    /**
+     * Classes or properties having a JAXB annotation in this namespace should 
be deprecated.
+     */
+    private static final Set<String> DEPRECATED_NAMESPACES = 
Collections.unmodifiableSet(new HashSet<>(
+            Arrays.asList(LegacyNamespaces.GMD, LegacyNamespaces.GMI)));
+
+    /**
      * The prefix of XML type names for properties. In ISO/OGC schemas, this 
prefix does not appear
      * in the definition of class types but may appear in the definition of 
property types.
      */
@@ -96,9 +113,16 @@ public final strictfp class SchemaVerifi
     private static final char PREFIX_SEPARATOR = ':';
 
     /**
+     * If the computer contains a local copy of ISO schemas, path to that 
directory. Otherwise {@code null}.
+     * If non-null, the {@code "http://standards.iso.org/iso/"} prefix in URL 
will be replaced by that path.
+     * This field is usually {@code null}, but can be set to a non-null value 
for making tests faster.
+     */
+    private final Path schemaRootDirectory;
+
+    /**
      * Root directory from which to search for classes.
      */
-    private final Path rootDirectory;
+    private final Path classRootDirectory;
 
     /**
      * A temporary buffer for miscellaneous string operations.
@@ -143,10 +167,13 @@ public final strictfp class SchemaVerifi
      * in the {@code "MyProject/target/classes/mypackage/MyClass.class"} file, 
then the root directory
      * shall be {@code "MyProject/target/classes/"}.
      *
-     * @param  rootDirectory  the root of compiled class files.
-     */
-    public SchemaVerifier(final Path rootDirectory) {
-        this.rootDirectory = rootDirectory;
+     * @param  classRootDirectory   the root of compiled class files.
+     * @param  schemaRootDirectory  if the computer contains a local copy of 
ISO schemas, path to that directory.
+     *                              Otherwise {@code null}. This is only for 
making tests faster.
+     */
+    public SchemaVerifier(final Path classRootDirectory, final Path 
schemaRootDirectory) {
+        this.classRootDirectory  = classRootDirectory;
+        this.schemaRootDirectory = schemaRootDirectory;
         factory = DocumentBuilderFactory.newInstance();
         factory.setNamespaceAware(true);
         buffer = new StringBuilder(100);
@@ -173,7 +200,7 @@ public final strictfp class SchemaVerifi
                     if (Files.isDirectory(path)) {
                         verify(path);
                     } else if (filename.endsWith(".class")) {
-                        path = rootDirectory.relativize(path);
+                        path = classRootDirectory.relativize(path);
                         buffer.setLength(0);
                         
buffer.append(path.toString()).setLength(buffer.length() - 6);      // Remove 
".class" suffix.
                         StringBuilders.replace(buffer, '/', '.');
@@ -386,22 +413,49 @@ public final strictfp class SchemaVerifi
         final Package pkg = type.getPackage();
         final XmlSchema schema = pkg.getAnnotation(XmlSchema.class);
         if (schema != null) {
-            final String location = schema.location();
+            String location = schema.location();
             if (XmlSchema.NO_LOCATION.equals(location)) {
                 throw new SchemaException("Package " + pkg.getName() + " does 
not specify XML schema location.");
             }
+            if (location.startsWith(SCHEMA_ROOT_DIRECTORY)) {
+                if (!location.startsWith(schema.namespace())) {
+                    throw new SchemaException("XML schema location 
inconsistent with namespace in " + pkg.getName() + " package.");
+                }
+                if (schemaRootDirectory != null) {
+                    location = 
schemaRootDirectory.resolve(location.substring(SCHEMA_ROOT_DIRECTORY.length())).toUri().toString();
+                }
+            }
             loadSchema(location);
         }
         /*
-         * Verify @XmlType and @XmlRootElement on the class.
+         * Verify @XmlType and @XmlRootElement on the class. First, we verify 
naming convention
+         * (type name should be same as root element name with "_Type" suffix 
appended). Then,
+         * we verify that the name exists in the schema, and finally we check 
its namespace.
          */
+        final String className = type.getSimpleName();
         final XmlType xmlType = type.getDeclaredAnnotation(XmlType.class);
         if (xmlType != null) {
             final XmlRootElement root = 
type.getDeclaredAnnotation(XmlRootElement.class);
             if (root == null) {
-                throw new SchemaException("Missing @XmlRootElement in " + 
type.getSimpleName() + " class.");
+                throw new SchemaException("Missing @XmlRootElement in " + 
className + " class.");
             }
             verifyNamingConvention(type.getName(), root.name(), 
xmlType.name(), TYPE_SUFFIX);
+            final String namespace = xmlType.namespace();
+            if (!namespace.equals(root.namespace())) {
+                throw new SchemaException("Mismatched namespace in @XmlType 
and @XmlRootElement of " + className + " class.");
+            }
+            final boolean isDeprecated = 
DEPRECATED_NAMESPACES.contains(namespace);
+            if (!isDeprecated && type.isAnnotationPresent(Deprecated.class)) {
+                throw new SchemaException("Unexpected deprecation status of " 
+ className + " class.");
+            }
+            final Map<String,String> properties = 
typeDefinitions.get(root.name());
+            if (properties == null) {
+                if (!isDeprecated) {
+                    throw new SchemaException("Unknown name declared in 
@XmlRootElement of " + className + " class.");
+                }
+            } else {
+                // TODO: scan for properties here.
+            }
         }
     }
 }

Modified: 
sis/branches/ISO-19115-3/core/sis-metadata/src/test/resources/org/apache/sis/metadata/iso/lineage/ProcessStep.xml
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-metadata/src/test/resources/org/apache/sis/metadata/iso/lineage/ProcessStep.xml?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-metadata/src/test/resources/org/apache/sis/metadata/iso/lineage/ProcessStep.xml
 (original)
+++ 
sis/branches/ISO-19115-3/core/sis-metadata/src/test/resources/org/apache/sis/metadata/iso/lineage/ProcessStep.xml
 Sat Jan 27 14:07:17 2018
@@ -21,19 +21,23 @@
 <gmi:LE_ProcessStep
     xmlns:gmd = "http://www.isotc211.org/2005/gmd";
     xmlns:gco = "http://www.isotc211.org/2005/gco";
-    xmlns:gmi = "http://www.isotc211.org/2005/gmi";
+    xmlns:gmi = "http://standards.iso.org/iso/19115/-2/gmi/1.0";
     xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance";
-    xsi:schemaLocation = "http://www.isotc211.org/2005/gmd 
http://schemas.opengis.net/iso/19139/20070417/gmd/gmd.xsd";>
+    xsi:schemaLocation = "http://standards.iso.org/iso/19115/-2/gmi/1.0
+                          
http://standards.iso.org/iso/19115/-2/gmi/1.0/gmi.xsd";>
 
-  <!--
-    As of February 2011, there is not yet any XSD schema for the "gmi" 
namespace on the
-    OGC web site. Consequently the validation of this file does not work fully 
yet.
-  -->
   <gmd:description>
     <gco:CharacterString>Some process step.</gco:CharacterString>
   </gmd:description>
   <gmi:processingInformation>
     <gmi:LE_Processing>
+      <gmi:identifier>
+        <gmd:MD_Identifier>
+          <gmd:code>
+            <gco:CharacterString>P4</gco:CharacterString>
+          </gmd:code>
+        </gmd:MD_Identifier>
+      </gmi:identifier>
       <gmi:procedureDescription>
         <gco:CharacterString>Some procedure.</gco:CharacterString>
       </gmi:procedureDescription>

Modified: 
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/LegacyNamespaces.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/LegacyNamespaces.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/LegacyNamespaces.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/LegacyNamespaces.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -69,7 +69,7 @@ public final class LegacyNamespaces {
      * The <code>{@value}</code> URL.
      * The usual prefix for this namespace is {@code "gmi"}.
      */
-    public static final String GMI = "http://www.isotc211.org/2005/gmi";;
+    public static final String GMI = 
"http://standards.iso.org/iso/19115/-2/gmi/1.0";;
 
     /**
      * The <code>{@value}</code> URL, used in ISO 19139:2007.

Modified: 
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/Schemas.java
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/Schemas.java?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/Schemas.java
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-utility/src/main/java/org/apache/sis/internal/jaxb/Schemas.java
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -58,14 +58,14 @@ public final class Schemas {
      */
     public static final String METADATA_XSD_BASE           = 
"http://standards.iso.org/iso/19115/-3/mdb/1.0/mdb.xsd";,
                                METADATA_XSD_SPATIAL        = 
"http://standards.iso.org/iso/19115/-3/msr/1.0/msr.xsd";,
-                               METADATA_XSD_QUALITY        = 
"http://standards.iso.org/iso/19157/-2/dqc/1.0/dqc.xsd";,
+                               METADATA_XSD_QUALITY        = 
"http://standards.iso.org/iso/19157/-2/mdq/1.0/mdq.xsd";,
                                METADATA_XSD_MAINTENANCE    = 
"http://standards.iso.org/iso/19115/-3/mmi/1.0/mmi.xsd";,
                                METADATA_XSD_LINEAGE        = 
"http://standards.iso.org/iso/19115/-3/mrl/1.0/mrl.xsd";,
                                METADATA_XSD_IDENTIFICATION = 
"http://standards.iso.org/iso/19115/-3/mri/1.0/mri.xsd";,
                                METADATA_XSD_EXTENT         = 
"http://standards.iso.org/iso/19115/-3/gex/1.0/gex.xsd";,
                                METADATA_XSD_DISTRIBUTION   = 
"http://standards.iso.org/iso/19115/-3/mrd/1.0/mrd.xsd";,
                                METADATA_XSD_CONTENT        = 
"http://standards.iso.org/iso/19115/-3/mrc/1.0/mrc.xsd";,
-                               METADATA_XSD_CONSTRAINT     = 
"http://standards.iso.org/iso/19115/-3/mrc/1.0/mrc.xsd";,
+                               METADATA_XSD_CONSTRAINT     = 
"http://standards.iso.org/iso/19115/-3/mco/1.0/mco.xsd";,
                                METADATA_XSD_CITATION       = 
"http://standards.iso.org/iso/19115/-3/cit/1.0/cit.xsd";,
                                METADATA_XSD_ACQUISITION    = 
"http://standards.iso.org/iso/19115/-3/mac/1.0/mac.xsd";;
 

Modified: 
sis/branches/ISO-19115-3/core/sis-utility/src/main/resources/org/apache/sis/xml/NamespaceContent.txt
URL: 
http://svn.apache.org/viewvc/sis/branches/ISO-19115-3/core/sis-utility/src/main/resources/org/apache/sis/xml/NamespaceContent.txt?rev=1822408&r1=1822407&r2=1822408&view=diff
==============================================================================
--- 
sis/branches/ISO-19115-3/core/sis-utility/src/main/resources/org/apache/sis/xml/NamespaceContent.txt
 [UTF-8] (original)
+++ 
sis/branches/ISO-19115-3/core/sis-utility/src/main/resources/org/apache/sis/xml/NamespaceContent.txt
 [UTF-8] Sat Jan 27 14:07:17 2018
@@ -1228,7 +1228,7 @@ http://standards.iso.org/iso/19157/-2/md
     measureIdentification
     nameOfMeasure
     result
-http://www.isotc211.org/2005/gmi
+http://standards.iso.org/iso/19115/-2/gmi/1.0
   LE_Algorithm
     <type>
     citation


Reply via email to