You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by de...@apache.org on 2013/03/21 22:43:59 UTC

svn commit: r1459543 [2/2] - in /sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis: internal/jaxb/metadata/ metadata/iso/lineage/ metadata/iso/quality/

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,203 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+import org.opengis.metadata.content.CoverageDescription;
+import org.opengis.metadata.distribution.Format;
+import org.opengis.metadata.quality.CoverageResult;
+import org.opengis.metadata.distribution.DataFile;
+import org.opengis.metadata.spatial.SpatialRepresentation;
+import org.opengis.metadata.spatial.SpatialRepresentationType;
+import org.apache.sis.xml.Namespaces;
+
+
+/**
+ * Result of a data quality measure organising the measured values as a coverage.
+ *
+ * @author  Cédric Briançon (Geomatys)
+ * @author  Martin Desruisseaux (Geomatys)
+ * @since   0.3 (derived from geotk-3.03)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "QE_CoverageResult_Type", propOrder = {
+    "spatialRepresentationType",
+    "resultSpatialRepresentation",
+    "resultContentDescription",
+    "resultFormat",
+    "resultFile"
+})
+@XmlRootElement(name = "QE_CoverageResult", namespace = Namespaces.GMI)
+public class DefaultCoverageResult extends AbstractResult implements CoverageResult {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -5014701989643853577L;
+
+    /**
+     * Method used to spatially represent the coverage result.
+     */
+    private SpatialRepresentationType spatialRepresentationType;
+
+    /**
+     * Provides the digital representation of data quality measures composing the coverage result.
+     */
+    private SpatialRepresentation resultSpatialRepresentation;
+
+    /**
+     * Provides the description of the content of the result coverage, i.e. semantic definition
+     * of the data quality measures.
+     */
+    private CoverageDescription resultContentDescription;
+
+    /**
+     * Provides information about the format of the result coverage data.
+     */
+    private Format resultFormat;
+
+    /**
+     * Provides information about the data file containing the result coverage data.
+     */
+    private DataFile resultFile;
+
+    /**
+     * Constructs an initially empty coverage result.
+     */
+    public DefaultCoverageResult() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultCoverageResult castOrCopy(final CoverageResult object) {
+        if (object == null || object instanceof DefaultCoverageResult) {
+            return (DefaultCoverageResult) object;
+        }
+        final DefaultCoverageResult copy = new DefaultCoverageResult();
+        copy.shallowCopy(object);
+        return copy;
+    }
+
+    /**
+     * Returns the method used to spatially represent the coverage result.
+     */
+    @Override
+    @XmlElement(name = "spatialRepresentationType", namespace = Namespaces.GMI, required = true)
+    public synchronized SpatialRepresentationType getSpatialRepresentationType() {
+        return spatialRepresentationType;
+    }
+
+    /**
+     * Sets the method used to spatially represent the coverage result.
+     *
+     * @param newValue The new spatial representation type value.
+     */
+    public synchronized void setSpatialRepresentationType(final SpatialRepresentationType newValue) {
+        checkWritePermission();
+        spatialRepresentationType = newValue;
+    }
+
+    /**
+     * Returns the digital representation of data quality measures composing the coverage result.
+     */
+    @Override
+    @XmlElement(name = "resultSpatialRepresentation", namespace = Namespaces.GMI, required = true)
+    public synchronized SpatialRepresentation getResultSpatialRepresentation() {
+        return resultSpatialRepresentation;
+    }
+
+    /**
+     * Sets the digital representation of data quality measures composing the coverage result.
+     *
+     * @param newValue The new spatial representation value.
+     */
+    public synchronized void setResultSpatialRepresentation(final SpatialRepresentation newValue) {
+        checkWritePermission();
+        resultSpatialRepresentation = newValue;
+    }
+
+    /**
+     * Returns the description of the content of the result coverage, i.e. semantic definition
+     * of the data quality measures.
+     */
+    @Override
+    @XmlElement(name = "resultContentDescription", namespace = Namespaces.GMI, required = true)
+    public synchronized CoverageDescription getResultContentDescription() {
+        return resultContentDescription;
+    }
+
+    /**
+     * Sets the description of the content of the result coverage, i.e. semantic definition
+     * of the data quality measures.
+     *
+     * @param newValue The new content description value.
+     */
+    public synchronized void setResultContentDescription(final CoverageDescription newValue) {
+        checkWritePermission();
+        resultContentDescription = newValue;
+    }
+
+    /**
+     * Returns the information about the format of the result coverage data.
+     */
+    @Override
+    @XmlElement(name = "resultFormat", namespace = Namespaces.GMI, required = true)
+    public synchronized Format getResultFormat() {
+        return resultFormat;
+    }
+
+    /**
+     * Sets the information about the format of the result coverage data.
+     *
+     * @param newValue The new result format value.
+     */
+    public synchronized void setResultFormat(final Format newValue) {
+        checkWritePermission();
+        resultFormat = newValue;
+    }
+
+    /**
+     * Returns the information about the data file containing the result coverage data.
+     */
+    @Override
+    @XmlElement(name = "resultFile", namespace = Namespaces.GMX, required = true)
+    public synchronized DataFile getResultFile() {
+        return resultFile;
+    }
+
+    /**
+     * Sets the information about the data file containing the result coverage data.
+     *
+     * @param newValue The new result file value.
+     */
+    public synchronized void setResultFile(final DataFile newValue) {
+        checkWritePermission();
+        resultFile = newValue;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,169 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import java.util.Collection;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.lineage.Lineage;
+import org.opengis.metadata.quality.DataQuality;
+import org.opengis.metadata.quality.Element;
+import org.opengis.metadata.quality.Scope;
+import org.apache.sis.metadata.iso.ISOMetadata;
+
+
+/**
+ * Quality information for the data specified by a data quality scope.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_DataQuality_Type", propOrder = {
+    "scope",
+    "reports",
+    "lineage"
+})
+@XmlRootElement(name = "DQ_DataQuality")
+public class DefaultDataQuality extends ISOMetadata implements DataQuality {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = 7964896551368382214L;
+
+    /**
+     * The specific data to which the data quality information applies.
+     */
+    private Scope scope;
+
+    /**
+     * Quantitative quality information for the data specified by the scope.
+     * Should be provided only if {@linkplain Scope#getLevel scope level} is
+     * {@linkplain org.opengis.metadata.maintenance.ScopeCode#DATASET dataset}.
+     */
+    private Collection<Element> reports;
+
+    /**
+     * Non-quantitative quality information about the lineage of the data specified by the scope.
+     * Should be provided only if {@linkplain Scope#getLevel scope level} is
+     * {@linkplain org.opengis.metadata.maintenance.ScopeCode#DATASET dataset}.
+     */
+    private Lineage lineage;
+
+    /**
+     * Constructs an initially empty data quality.
+     */
+    public DefaultDataQuality() {
+    }
+
+    /**
+     * Creates a data quality initialized to the given scope.
+     *
+     * @param scope The specific data to which the data quality information applies, or {@code null}.
+     */
+    public DefaultDataQuality(final Scope scope) {
+        this.scope = scope;
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultDataQuality castOrCopy(final DataQuality object) {
+        if (object == null || object instanceof DefaultDataQuality) {
+            return (DefaultDataQuality) object;
+        }
+        final DefaultDataQuality copy = new DefaultDataQuality();
+        copy.shallowCopy(object);
+        return copy;
+    }
+
+    /**
+     * Returns the specific data to which the data quality information applies.
+     */
+    @Override
+    @XmlElement(name = "scope", required = true)
+    public synchronized Scope getScope() {
+        return scope;
+    }
+
+    /**
+     * Sets the specific data to which the data quality information applies.
+     *
+     * @param newValue The new scope.
+     */
+    public synchronized void setScope(final Scope newValue) {
+        checkWritePermission();
+        scope = newValue;
+    }
+
+    /**
+     * Returns the quantitative quality information for the data specified by the
+     * scope. Should be provided only if {@linkplain Scope#getLevel scope level}
+     * is {@linkplain org.opengis.metadata.maintenance.ScopeCode#DATASET dataset}.
+     */
+    @Override
+    @XmlElement(name = "report")
+    public synchronized Collection<Element> getReports() {
+        return reports = nonNullCollection(reports, Element.class);
+    }
+
+    /**
+     * Sets the quantitative quality information for the data specified by the scope.
+     * Should be provided only if {@linkplain Scope#getLevel scope level} is
+     * {@linkplain org.opengis.metadata.maintenance.ScopeCode#DATASET dataset}.
+     *
+     * @param newValues The new reports.
+     */
+    public synchronized void setReports(final Collection<? extends Element> newValues) {
+        reports = copyCollection(newValues, reports, Element.class);
+    }
+
+    /**
+     * Returns non-quantitative quality information about the lineage of the data specified
+     * by the scope. Should be provided only if {@linkplain Scope#getLevel scope level} is
+     * {@linkplain org.opengis.metadata.maintenance.ScopeCode#DATASET dataset}.
+     */
+    @Override
+    @XmlElement(name = "lineage")
+    public synchronized Lineage getLineage() {
+        return lineage;
+    }
+
+    /**
+     * Sets the non-quantitative quality information about the lineage of the data specified
+     * by the scope. Should be provided only if {@linkplain Scope#getLevel scope level} is
+     * {@linkplain org.opengis.metadata.maintenance.ScopeCode#DATASET dataset}.
+     *
+     * @param newValue The new lineage.
+     */
+    public synchronized void setLineage(final Lineage newValue) {
+        checkWritePermission();
+        lineage = newValue;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDataQuality.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.DomainConsistency;
+
+
+/**
+ * Adherence of values to the value domains.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_DomainConsistency_Type")
+@XmlRootElement(name = "DQ_DomainConsistency")
+public class DefaultDomainConsistency extends AbstractLogicalConsistency implements DomainConsistency {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -358082990944183859L;
+
+    /**
+     * Constructs an initially empty domain consistency.
+     */
+    public DefaultDomainConsistency() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultDomainConsistency castOrCopy(final DomainConsistency object) {
+        if (object == null || object instanceof DefaultDomainConsistency) {
+            return (DefaultDomainConsistency) object;
+        }
+        final DefaultDomainConsistency copy = new DefaultDomainConsistency();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultDomainConsistency.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,68 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.FormatConsistency;
+
+
+/**
+ * Degree to which data is stored in accordance with the physical structure of
+ * the dataset, as described by the scope.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.4)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_FormatConsistency_Type")
+@XmlRootElement(name = "DQ_FormatConsistency")
+public class DefaultFormatConsistency extends AbstractLogicalConsistency implements FormatConsistency {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -1204766930140154729L;
+
+    /**
+     * Constructs an initially empty formal consistency.
+     */
+    public DefaultFormatConsistency() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultFormatConsistency castOrCopy(final FormatConsistency object) {
+        if (object == null || object instanceof DefaultFormatConsistency) {
+            return (DefaultFormatConsistency) object;
+        }
+        final DefaultFormatConsistency copy = new DefaultFormatConsistency();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultFormatConsistency.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.GriddedDataPositionalAccuracy;
+
+
+/**
+ * Closeness of gridded data position values to values accepted as or being true.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_GriddedDataPositionalAccuracy_Type")
+@XmlRootElement(name = "DQ_GriddedDataPositionalAccuracy")
+public class DefaultGriddedDataPositionalAccuracy extends AbstractPositionalAccuracy
+        implements GriddedDataPositionalAccuracy
+{
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -3852184823135498458L;
+
+    /**
+     * Constructs an initially empty gridded data positional acccuracy.
+     */
+    public DefaultGriddedDataPositionalAccuracy() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultGriddedDataPositionalAccuracy castOrCopy(final GriddedDataPositionalAccuracy object) {
+        if (object == null || object instanceof DefaultGriddedDataPositionalAccuracy) {
+            return (DefaultGriddedDataPositionalAccuracy) object;
+        }
+        final DefaultGriddedDataPositionalAccuracy copy = new DefaultGriddedDataPositionalAccuracy();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultGriddedDataPositionalAccuracy.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,68 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.NonQuantitativeAttributeAccuracy;
+
+
+/**
+ * Accuracy of non-quantitative attributes.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_NonQuantitativeAttributeAccuracy_Type")
+@XmlRootElement(name = "DQ_NonQuantitativeAttributeAccuracy")
+public class DefaultNonQuantitativeAttributeAccuracy extends AbstractThematicAccuracy
+        implements NonQuantitativeAttributeAccuracy
+{
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = 2659617465862554345L;
+
+    /**
+     * Constructs an initially empty non quantitative attribute accuracy.
+     */
+    public DefaultNonQuantitativeAttributeAccuracy() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultNonQuantitativeAttributeAccuracy castOrCopy(final NonQuantitativeAttributeAccuracy object) {
+        if (object == null || object instanceof DefaultNonQuantitativeAttributeAccuracy) {
+            return (DefaultNonQuantitativeAttributeAccuracy) object;
+        }
+        final DefaultNonQuantitativeAttributeAccuracy copy = new DefaultNonQuantitativeAttributeAccuracy();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeAccuracy.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.QuantitativeAttributeAccuracy;
+
+
+/**
+ * Accuracy of quantitative attributes.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_QuantitativeAttributeAccuracy_Type")
+@XmlRootElement(name = "DQ_QuantitativeAttributeAccuracy")
+public class DefaultQuantitativeAttributeAccuracy extends AbstractThematicAccuracy
+        implements QuantitativeAttributeAccuracy
+{
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = 7030401943270178746L;
+
+    /**
+     * Constructs an initially empty quantitative attribute accuracy.
+     */
+    public DefaultQuantitativeAttributeAccuracy() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultQuantitativeAttributeAccuracy castOrCopy(final QuantitativeAttributeAccuracy object) {
+        if (object == null || object instanceof DefaultQuantitativeAttributeAccuracy) {
+            return (DefaultQuantitativeAttributeAccuracy) object;
+        }
+        final DefaultQuantitativeAttributeAccuracy copy = new DefaultQuantitativeAttributeAccuracy();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeAttributeAccuracy.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Modified: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java?rev=1459543&r1=1459542&r2=1459543&view=diff
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java [UTF-8] (original)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultQuantitativeResult.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -16,41 +16,157 @@
  */
 package org.apache.sis.metadata.iso.quality;
 
-import java.util.Collection;
+import java.util.List;
+import javax.measure.unit.Unit;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
 import org.opengis.metadata.quality.QuantitativeResult;
 import org.opengis.util.InternationalString;
 import org.opengis.util.Record;
 import org.opengis.util.RecordType;
-import javax.measure.unit.Unit;
-import org.apache.sis.metadata.iso.ISOMetadata;
 
-public class DefaultQuantitativeResult extends ISOMetadata implements QuantitativeResult {
-
-    private Collection<Record> values;
 
+/**
+ * Information about the value (or set of values) obtained from applying a data quality measure.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_QuantitativeResult_Type", propOrder = {
+    "valueType",
+    "valueUnit",
+    "errorStatistic"
+})
+@XmlRootElement(name = "DQ_QuantitativeResult")
+public class DefaultQuantitativeResult extends AbstractResult implements QuantitativeResult {
+    /**
+     * Serial number for compatibility with different versions.
+     */
+    private static final long serialVersionUID = 1230713599561236060L;
+
+    /**
+     * Quantitative value or values, content determined by the evaluation procedure used.
+     */
+    private List<Record> values;
+
+    /**
+     * Value type for reporting a data quality result, or {@code null} if none.
+     */
     private RecordType valueType;
 
+    /**
+     * Value unit for reporting a data quality result, or {@code null} if none.
+     */
     private Unit<?> valueUnit;
 
+    /**
+     * Statistical method used to determine the value, or {@code null} if none.
+     */
     private InternationalString errorStatistic;
 
+    /**
+     * Constructs an initially empty quantitative result.
+     */
+    public DefaultQuantitativeResult() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultQuantitativeResult castOrCopy(final QuantitativeResult object) {
+        if (object == null || object instanceof DefaultQuantitativeResult) {
+            return (DefaultQuantitativeResult) object;
+        }
+        final DefaultQuantitativeResult copy = new DefaultQuantitativeResult();
+        copy.shallowCopy(object);
+        return copy;
+    }
+
+    /**
+     * Returns the quantitative value or values, content determined by the evaluation procedure used.
+     */
     @Override
-    public synchronized Collection<Record> getValues() {
-        return values;
+//  @XmlElement(name = "value", required = true) // TODO
+    public synchronized List<Record> getValues() {
+        return values = nonNullList(values, Record.class);
     }
 
+    /**
+     * Sets the quantitative value or values, content determined by the evaluation procedure used.
+     *
+     * @param newValues The new values.
+     */
+    public synchronized void setValues(final List<Record> newValues) {
+        values = copyList(newValues, values, Record.class);
+    }
+
+    /**
+     * Return the value type for reporting a data quality result, or {@code null} if none.
+     */
     @Override
-    public synchronized RecordType getValueType() {
+    @XmlElement(name = "valueType")
+    public synchronized RecordType getValueType()  {
         return valueType;
     }
 
+    /**
+     * Sets the value type for reporting a data quality result, or {@code null} if none.
+     *
+     * @param newValue The new value type.
+     */
+    public synchronized void setValueType(final RecordType newValue) {
+        checkWritePermission();
+        valueType = newValue;
+    }
+
+    /**
+     * Returns the value unit for reporting a data quality result, or {@code null} if none.
+     */
     @Override
-    public synchronized Unit<?> getValueUnit() {
+    @XmlElement(name = "valueUnit", required = true)
+    public synchronized Unit<?> getValueUnit()  {
         return valueUnit;
     }
 
+    /**
+     * Sets the value unit for reporting a data quality result, or {@code null} if none.
+     *
+     * @param newValue The new value unit.
+     */
+    public synchronized void setValueUnit(final Unit<?> newValue) {
+        checkWritePermission();
+        valueUnit = newValue;
+    }
+
+    /**
+     * Returns the statistical method used to determine the value, or {@code null} if none.
+     */
     @Override
-    public synchronized InternationalString getErrorStatistic() {
+    @XmlElement(name = "errorStatistic")
+    public synchronized InternationalString getErrorStatistic()  {
         return errorStatistic;
     }
+
+    /**
+     * Sets the statistical method used to determine the value, or {@code null} if none.
+     *
+     * @param newValue The new error statistic.
+     */
+    public synchronized void setErrorStatistic(final InternationalString newValue) {
+        checkWritePermission();
+        errorStatistic = newValue;
+    }
 }

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,70 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.RelativeInternalPositionalAccuracy;
+
+
+/**
+ * Closeness of the relative positions of features in the scope to their respective
+ * relative positions accepted as or being true.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_RelativeInternalPositionalAccuracy_Type")
+@XmlRootElement(name = "DQ_RelativeInternalPositionalAccuracy")
+public class DefaultRelativeInternalPositionalAccuracy extends AbstractPositionalAccuracy
+        implements RelativeInternalPositionalAccuracy
+{
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -8216355887797408106L;
+
+    /**
+     * Constructs an initially empty relative internal positional accuracy.
+     */
+    public DefaultRelativeInternalPositionalAccuracy() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultRelativeInternalPositionalAccuracy castOrCopy(final RelativeInternalPositionalAccuracy object) {
+        if (object == null || object instanceof DefaultRelativeInternalPositionalAccuracy) {
+            return (DefaultRelativeInternalPositionalAccuracy) object;
+        }
+        final DefaultRelativeInternalPositionalAccuracy copy = new DefaultRelativeInternalPositionalAccuracy();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultRelativeInternalPositionalAccuracy.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Modified: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java?rev=1459543&r1=1459542&r2=1459543&view=diff
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java [UTF-8] (original)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultScope.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -17,32 +17,146 @@
 package org.apache.sis.metadata.iso.quality;
 
 import java.util.Collection;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
 import org.opengis.metadata.extent.Extent;
+import org.opengis.metadata.quality.Scope;
 import org.opengis.metadata.maintenance.ScopeCode;
 import org.opengis.metadata.maintenance.ScopeDescription;
-import org.opengis.metadata.quality.Scope;
 import org.apache.sis.metadata.iso.ISOMetadata;
 
-public class DefaultScope extends ISOMetadata implements Scope {
 
+/**
+ * Description of the data specified by the scope.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_Scope_Type", propOrder = {
+   "level",
+   "extent",
+   "levelDescription"
+})
+@XmlRootElement(name = "DQ_Scope")
+public class DefaultScope extends ISOMetadata implements Scope {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -8021256328527422972L;
+
+    /**
+     * Hierarchical level of the data specified by the scope.
+     */
     private ScopeCode level;
 
+    /**
+     * Information about the spatial, vertical and temporal extent of the data specified by the
+     * scope.
+     */
     private Extent extent;
 
+    /**
+     * Detailed description about the level of the data specified by the scope.
+     */
     private Collection<ScopeDescription> levelDescription;
 
+    /**
+     * Constructs an initially empty scope.
+     */
+    public DefaultScope() {
+    }
+
+    /**
+     * Creates a scope initialized to the given level.
+     *
+     * @param level The hierarchical level of the data specified by the scope.
+     */
+    public DefaultScope(final ScopeCode level) {
+        this.level = level;
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultScope castOrCopy(final Scope object) {
+        if (object == null || object instanceof DefaultScope) {
+            return (DefaultScope) object;
+        }
+        final DefaultScope copy = new DefaultScope();
+        copy.shallowCopy(object);
+        return copy;
+    }
+
+    /**
+     * Returns the hierarchical level of the data specified by the scope.
+     */
     @Override
+    @XmlElement(name = "level", required = true)
     public synchronized ScopeCode getLevel() {
         return level;
     }
 
+    /**
+     * Sets the hierarchical level of the data specified by the scope.
+     *
+     * @param newValue The new level.
+     */
+    public synchronized void setLevel(final ScopeCode newValue) {
+        checkWritePermission();
+        level = newValue;
+    }
+
+    /**
+     * Returns detailed descriptions about the level of the data specified by the scope.
+     * Should be defined only if the {@linkplain #getLevel level} is not equal
+     * to {@link ScopeCode#DATASET DATASET} or {@link ScopeCode#SERIES SERIES}.
+     */
     @Override
+    @XmlElement(name = "levelDescription")
     public synchronized Collection<ScopeDescription> getLevelDescription() {
-        return levelDescription;
+        return levelDescription = nonNullCollection(levelDescription, ScopeDescription.class);
     }
 
+    /**
+     * Sets detailed descriptions about the level of the data specified by the scope.
+     *
+     * @param newValues The new level description.
+     */
+    public synchronized void setLevelDescription(final Collection<? extends ScopeDescription> newValues) {
+        levelDescription = copyCollection(newValues, levelDescription, ScopeDescription.class);
+    }
+
+    /**
+     * Information about the spatial, vertical and temporal extent of the data specified by the
+     * scope.
+     */
     @Override
+    @XmlElement(name = "extent")
     public synchronized Extent getExtent() {
         return extent;
     }
+
+    /**
+     * Sets information about the spatial, vertical and temporal extent of the data specified
+     * by the scope.
+     *
+     * @param newValue The new extent.
+     */
+    public synchronized void setExtent(final Extent newValue) {
+        checkWritePermission();
+        extent = newValue;
+    }
 }

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.TemporalConsistency;
+
+
+/**
+ * Correctness of ordered events or sequences, if reported.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_TemporalConsistency_Type")
+@XmlRootElement(name = "DQ_TemporalConsistency")
+public class DefaultTemporalConsistency extends AbstractTemporalAccuracy implements TemporalConsistency {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -2549290466982699190L;
+
+    /**
+     * Constructs an initially empty temporal consistency.
+     */
+    public DefaultTemporalConsistency() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultTemporalConsistency castOrCopy(final TemporalConsistency object) {
+        if (object == null || object instanceof DefaultTemporalConsistency) {
+            return (DefaultTemporalConsistency) object;
+        }
+        final DefaultTemporalConsistency copy = new DefaultTemporalConsistency();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalConsistency.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,67 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.TemporalValidity;
+
+
+/**
+ * Validity of data specified by the scope with respect to time.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_TemporalValidity_Type")
+@XmlRootElement(name = "DQ_TemporalValidity")
+public class DefaultTemporalValidity extends AbstractTemporalAccuracy implements TemporalValidity {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = 2866684429712027839L;
+
+    /**
+     * Constructs an initially empty temporal validity.
+     */
+    public DefaultTemporalValidity() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultTemporalValidity castOrCopy(final TemporalValidity object) {
+        if (object == null || object instanceof DefaultTemporalValidity) {
+            return (DefaultTemporalValidity) object;
+        }
+        final DefaultTemporalValidity copy = new DefaultTemporalValidity();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTemporalValidity.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,69 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.ThematicClassificationCorrectness;
+
+
+/**
+ * Comparison of the classes assigned to features or their attributes to a universe of discourse.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_ThematicClassificationCorrectness_Type")
+@XmlRootElement(name = "DQ_ThematicClassificationCorrectness")
+public class DefaultThematicClassificationCorrectness extends AbstractThematicAccuracy
+        implements ThematicClassificationCorrectness
+{
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -5484398738783800915L;
+
+    /**
+     * Constructs an initially empty thematic classification correctness.
+     */
+    public DefaultThematicClassificationCorrectness() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultThematicClassificationCorrectness castOrCopy(final ThematicClassificationCorrectness object) {
+        if (object == null || object instanceof DefaultThematicClassificationCorrectness) {
+            return (DefaultThematicClassificationCorrectness) object;
+        }
+        final DefaultThematicClassificationCorrectness copy = new DefaultThematicClassificationCorrectness();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultThematicClassificationCorrectness.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,70 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.TopologicalConsistency;
+
+
+/**
+ * Correctness of the explicitly encoded topological characteristics of the dataset as
+ * described by the scope.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "DQ_TopologicalConsistency_Type")
+@XmlRootElement(name = "DQ_TopologicalConsistency")
+public class DefaultTopologicalConsistency extends AbstractLogicalConsistency
+        implements TopologicalConsistency
+{
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -255014076679068944L;
+
+    /**
+     * Constructs an initially empty topological consistency.
+     */
+    public DefaultTopologicalConsistency() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultTopologicalConsistency castOrCopy(final TopologicalConsistency object) {
+        if (object == null || object instanceof DefaultTopologicalConsistency) {
+            return (DefaultTopologicalConsistency) object;
+        }
+        final DefaultTopologicalConsistency copy = new DefaultTopologicalConsistency();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultTopologicalConsistency.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,68 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlRootElement;
+import org.opengis.metadata.quality.Usability;
+import org.apache.sis.xml.Namespaces;
+
+
+/**
+ * Degree of adherence of a dataset to a specific set of user requirements.
+ *
+ * @author  Cédric Briançon (Geomatys)
+ * @author  Martin Desruisseaux (Geomatys)
+ * @since   0.3 (derived from geotk-3.03)
+ * @version 0.3
+ * @module
+ */
+@XmlType(name = "QE_Usability_Type")
+@XmlRootElement(name = "QE_Usability", namespace = Namespaces.GMI)
+public class DefaultUsability extends AbstractElement implements Usability {
+    /**
+     * Serial number for inter-operability with different versions.
+     */
+    private static final long serialVersionUID = -2834763269479082042L;
+
+    /**
+     * Constructs an initially empty usability.
+     */
+    public DefaultUsability() {
+    }
+
+    /**
+     * Returns a SIS metadata implementation with the same values than the given arbitrary
+     * implementation. If the given object is {@code null}, then this method returns {@code null}.
+     * Otherwise if the given object is already a SIS implementation, then the given object is
+     * returned unchanged. Otherwise a new SIS implementation is created and initialized to the
+     * property values of the given object, using a <cite>shallow</cite> copy operation
+     * (i.e. properties are not cloned).
+     *
+     * @param  object The object to get as a SIS implementation, or {@code null} if none.
+     * @return A SIS implementation containing the values of the given object (may be the
+     *         given object itself), or {@code null} if the argument was null.
+     */
+    public static DefaultUsability castOrCopy(final Usability object) {
+        if (object == null || object instanceof DefaultUsability) {
+            return (DefaultUsability) object;
+        }
+        final DefaultUsability copy = new DefaultUsability();
+        copy.shallowCopy(object);
+        return copy;
+    }
+}

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsability.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8

Added: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java?rev=1459543&view=auto
==============================================================================
--- sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java (added)
+++ sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java [UTF-8] Thu Mar 21 21:43:58 2013
@@ -0,0 +1,76 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * {@linkplain org.apache.sis.metadata.iso.quality.DefaultDataQuality Data quality} implementation.
+ * An explanation for this package is provided in the {@linkplain org.opengis.metadata.content OpenGIS® javadoc}.
+ * The remaining discussion on this page is specific to the SIS implementation.
+ *
+ * @author  Martin Desruisseaux (IRD, Geomatys)
+ * @author  Touraïvane (IRD)
+ * @author  Cédric Briançon (Geomatys)
+ * @author  Guilhem Legal (Geomatys)
+ * @since   0.3 (derived from geotk-2.1)
+ * @version 0.3
+ * @module
+ */
+@XmlSchema(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)
+})
+@XmlAccessorType(XmlAccessType.NONE)
+@XmlJavaTypeAdapters({
+    @XmlJavaTypeAdapter(CI_Citation.class),
+    @XmlJavaTypeAdapter(DQ_Element.class),
+    @XmlJavaTypeAdapter(DQ_EvaluationMethodTypeCode.class),
+    @XmlJavaTypeAdapter(DQ_Result.class),
+    @XmlJavaTypeAdapter(DQ_Scope.class),
+    @XmlJavaTypeAdapter(EX_Extent.class),
+    @XmlJavaTypeAdapter(LI_Lineage.class),
+    @XmlJavaTypeAdapter(MD_ContentInformation.class),
+    @XmlJavaTypeAdapter(MD_Format.class),
+    @XmlJavaTypeAdapter(MD_Identifier.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), // TODO
+    @XmlJavaTypeAdapter(StringAdapter.class),
+    @XmlJavaTypeAdapter(InternationalStringAdapter.class),
+//    @XmlJavaTypeAdapter(GO_DateTime.class), // TODO
+//    @XmlJavaTypeAdapter(GO_RecordType.class), // TODO
+    @XmlJavaTypeAdapter(GO_Boolean.class), @XmlJavaTypeAdapter(type=boolean.class, value=GO_Boolean.class)
+})
+package org.apache.sis.metadata.iso.quality;
+
+import javax.xml.bind.annotation.XmlNs;
+import javax.xml.bind.annotation.XmlNsForm;
+import javax.xml.bind.annotation.XmlSchema;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+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.gco.*;
+import org.apache.sis.internal.jaxb.code.*;
+import org.apache.sis.internal.jaxb.metadata.*;

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: sis/branches/JDK7/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/package-info.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain;charset=UTF-8