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 2022/11/22 10:04:50 UTC

[sis] 01/01: Merge branch 'geoapi-3.1'. Contains mostly minor documentation fixes, but repeated in a lot of files.

This is an automated email from the ASF dual-hosted git repository.

desruisseaux pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sis.git

commit f77cfeed912d47649036690f8d483771c5aaf54f
Merge: 884973020b 29bfa755d5
Author: Martin Desruisseaux <ma...@geomatys.com>
AuthorDate: Tue Nov 22 11:02:57 2022 +0100

    Merge branch 'geoapi-3.1'.
    Contains mostly minor documentation fixes, but repeated in a lot of files.

 .../src/main/artifact/conf/logging.properties      |  2 +-
 .../main/java/org/apache/sis/console/Command.java  |  2 +-
 .../org/apache/sis/console/CRSCommandTest.java     |  2 +-
 .../main/java/org/apache/sis/gui/DataViewer.java   |  2 +-
 .../apache/sis/gui/coverage/CoverageExplorer.java  |  2 +-
 .../org/apache/sis/gui/coverage/GridRowSkin.java   |  4 +-
 .../sis/gui/coverage/ImagePropertyExplorer.java    |  6 +-
 .../org/apache/sis/gui/dataset/ExpandableList.java |  2 +-
 .../org/apache/sis/gui/dataset/FeatureLoader.java  |  2 +-
 .../org/apache/sis/gui/dataset/ResourceCell.java   |  2 +-
 .../org/apache/sis/gui/dataset/ResourceTree.java   |  2 +-
 .../org/apache/sis/gui/dataset/WindowHandler.java  |  2 +-
 .../org/apache/sis/gui/map/OperationFinder.java    |  2 +-
 .../java/org/apache/sis/gui/map/StatusBar.java     |  8 +--
 .../org/apache/sis/gui/map/ValuesFormatter.java    |  2 +-
 .../org/apache/sis/gui/map/ValuesUnderCursor.java  |  2 +-
 .../java/org/apache/sis/gui/referencing/Utils.java |  2 +-
 .../apache/sis/internal/gui/DataStoreOpener.java   |  6 +-
 .../org/apache/sis/internal/setup/Inflater.java    |  2 +-
 .../java/org/apache/sis/openoffice/CalcAddins.java |  2 +-
 .../src/main/unopkg/build-instruction.html         |  2 +-
 .../apache/sis/cloud/aws/s3/CachedByteChannel.java |  2 +-
 .../org/apache/sis/cloud/aws/s3/DerivedList.java   |  2 +-
 .../java/org/apache/sis/cloud/aws/s3/KeyPath.java  |  8 +--
 .../apache/sis/internal/maven/JarCollector.java    |  2 +-
 .../util/resources/IndexedResourceCompiler.java    |  6 +-
 .../org/apache/sis/coverage/BandedCoverage.java    |  6 +-
 .../java/org/apache/sis/coverage/CategoryList.java |  2 +-
 .../org/apache/sis/coverage/SampleDimension.java   |  6 +-
 .../sis/coverage/grid/BufferedGridCoverage.java    |  2 +-
 .../coverage/grid/CoordinateOperationFinder.java   |  2 +-
 .../apache/sis/coverage/grid/DefaultEvaluator.java |  2 +-
 .../coverage/grid/FractionalGridCoordinates.java   |  2 +-
 .../org/apache/sis/coverage/grid/GridCoverage.java |  2 +-
 .../apache/sis/coverage/grid/GridCoverage2D.java   |  6 +-
 .../sis/coverage/grid/GridCoverageBuilder.java     |  8 +--
 .../sis/coverage/grid/GridCoverageProcessor.java   |  2 +-
 .../apache/sis/coverage/grid/GridDerivation.java   | 14 ++--
 .../org/apache/sis/coverage/grid/GridExtent.java   |  8 +--
 .../org/apache/sis/coverage/grid/GridGeometry.java |  8 +--
 .../apache/sis/coverage/grid/GridOrientation.java  | 10 +--
 .../apache/sis/coverage/grid/GridRoundingMode.java |  2 +-
 .../apache/sis/coverage/grid/ImageRenderer.java    |  2 +-
 .../grid/IncompleteGridGeometryException.java      |  2 +-
 .../sis/coverage/grid/ResampledGridCoverage.java   |  6 +-
 .../apache/sis/coverage/grid/ReshapedImage.java    |  2 +-
 .../apache/sis/feature/AbstractAssociation.java    |  4 +-
 .../org/apache/sis/feature/AbstractAttribute.java  |  8 +--
 .../apache/sis/feature/AbstractIdentifiedType.java |  2 +-
 .../apache/sis/feature/CharacteristicTypeMap.java  |  2 +-
 .../apache/sis/feature/DefaultAssociationRole.java |  2 +-
 .../apache/sis/feature/DefaultAttributeType.java   |  6 +-
 .../org/apache/sis/feature/DefaultFeatureType.java | 10 +--
 .../java/org/apache/sis/feature/DenseFeature.java  | 10 +--
 .../org/apache/sis/feature/EnvelopeOperation.java  |  2 +-
 .../java/org/apache/sis/feature/FeatureFormat.java |  4 +-
 .../org/apache/sis/feature/FeatureOperations.java  |  2 +-
 .../main/java/org/apache/sis/feature/Features.java |  2 +-
 .../java/org/apache/sis/feature/SparseFeature.java | 10 +--
 .../java/org/apache/sis/feature/Validator.java     |  6 +-
 .../java/org/apache/sis/feature/benchmarks.html    |  2 +-
 .../sis/feature/builder/AttributeTypeBuilder.java  |  2 +-
 .../feature/builder/CharacteristicTypeBuilder.java |  2 +-
 .../sis/feature/builder/FeatureTypeBuilder.java    |  6 +-
 .../apache/sis/feature/builder/TypeBuilder.java    |  2 +-
 .../java/org/apache/sis/feature/package-info.java  |  2 +-
 .../org/apache/sis/filter/ComparisonFilter.java    |  2 +-
 .../java/org/apache/sis/filter/Optimization.java   |  2 +-
 .../src/main/java/org/apache/sis/filter/XPath.java |  2 +-
 .../java/org/apache/sis/image/AnnotatedImage.java  |  6 +-
 .../java/org/apache/sis/image/BandSelectImage.java |  2 +-
 .../java/org/apache/sis/image/ComputedImage.java   |  6 +-
 .../java/org/apache/sis/image/ComputedTiles.java   |  4 +-
 .../java/org/apache/sis/image/ErrorHandler.java    |  4 +-
 .../java/org/apache/sis/image/ImageCombiner.java   |  2 +-
 .../java/org/apache/sis/image/ImageProcessor.java  | 16 ++---
 .../java/org/apache/sis/image/Interpolation.java   |  2 +-
 .../java/org/apache/sis/image/PixelIterator.java   | 12 ++--
 .../java/org/apache/sis/image/PlanarImage.java     |  4 +-
 .../java/org/apache/sis/image/ResampledImage.java  |  6 +-
 .../java/org/apache/sis/image/ResamplingGrid.java  |  4 +-
 .../main/java/org/apache/sis/image/TileCache.java  |  4 +-
 .../java/org/apache/sis/image/Visualization.java   |  2 +-
 .../apache/sis/image/WritablePixelIterator.java    |  2 +-
 .../java/org/apache/sis/image/package-info.java    |  2 +-
 .../org/apache/sis/index/tree/NodeIterator.java    |  2 +-
 .../java/org/apache/sis/index/tree/PointTree.java  |  4 +-
 .../internal/coverage/j2d/BatchComputedImage.java  |  2 +-
 .../internal/coverage/j2d/ColorModelFactory.java   |  4 +-
 .../sis/internal/coverage/j2d/ColorModelPatch.java |  2 +-
 .../sis/internal/coverage/j2d/Colorizer.java       |  2 +-
 .../sis/internal/coverage/j2d/ImageUtilities.java  |  4 +-
 .../sis/internal/coverage/j2d/RasterFactory.java   |  4 +-
 .../internal/coverage/j2d/SampleModelFactory.java  |  2 +-
 .../internal/coverage/j2d/ScaledColorModel.java    |  2 +-
 .../apache/sis/internal/feature/Geometries.java    |  2 +-
 .../sis/internal/feature/MovingFeatures.java       |  2 +-
 .../internal/feature/SpatialOperationContext.java  |  2 +-
 .../apache/sis/internal/feature/j2d/FlatShape.java |  2 +-
 .../sis/internal/feature/j2d/PathBuilder.java      |  4 +-
 .../apache/sis/internal/feature/j2d/Polyline.java  |  2 +-
 .../org/apache/sis/internal/feature/jts/JTS.java   |  4 +-
 .../org/apache/sis/internal/filter/Visitor.java    |  6 +-
 .../internal/processing/image/TiledProcess.java    |  2 +-
 .../sis/internal/processing/isoline/Isolines.java  |  2 +-
 .../processing/isoline/PolylineBuffer.java         |  2 +-
 .../sis/internal/processing/isoline/Tracer.java    |  4 +-
 .../sis/coverage/grid/GridCoverage2DTest.java      |  2 +-
 .../coverage/grid/ResampledGridCoverageTest.java   |  2 +-
 .../apache/sis/feature/AbstractFeatureTest.java    |  2 +-
 .../apache/sis/feature/FeatureOperationsTest.java  |  2 +-
 .../org/apache/sis/image/InterpolationTest.java    |  2 +-
 .../org/apache/sis/image/LinearIteratorTest.java   |  2 +-
 .../org/apache/sis/image/PixelIteratorTest.java    |  2 +-
 .../sis/internal/jaxb/AdapterReplacement.java      |  2 +-
 .../sis/internal/jaxb/IdentifierMapAdapter.java    |  4 +-
 .../sis/internal/jaxb/PrimitiveTypeProperties.java |  2 +-
 .../sis/internal/jaxb/cat/CodeListAdapter.java     |  4 +-
 .../apache/sis/internal/jaxb/cat/CodeListUID.java  |  4 +-
 .../apache/sis/internal/jaxb/cat/EnumAdapter.java  |  2 +-
 .../apache/sis/internal/jaxb/code/CI_RoleCode.java |  4 +-
 .../internal/jaxb/code/CI_TelephoneTypeCode.java   |  4 +-
 .../internal/jaxb/code/DS_AssociationTypeCode.java |  4 +-
 .../internal/jaxb/code/DS_InitiativeTypeCode.java  |  4 +-
 .../sis/internal/jaxb/gco/GO_CharacterString.java  |  4 +-
 .../internal/jaxb/gco/ObjectIdentification.html    |  4 +-
 .../sis/internal/jaxb/gco/ObjectReference.java     |  2 +-
 .../apache/sis/internal/jaxb/gco/package-info.java |  2 +-
 .../sis/internal/jaxb/geometry/ObjectFactory.java  |  4 +-
 .../sis/internal/jaxb/geometry/package-info.java   |  2 +-
 .../apache/sis/internal/jaxb/gml/package-info.java |  2 +-
 .../sis/internal/jaxb/gts/TM_PeriodDuration.java   |  6 +-
 .../sis/internal/jaxb/lan/LocaleAndCharset.java    |  2 +-
 .../apache/sis/internal/jaxb/lan/OtherLocales.java |  2 +-
 .../apache/sis/internal/jaxb/lan/PT_FreeText.java  |  2 +-
 .../apache/sis/internal/jaxb/lan/PT_Locale.java    |  2 +-
 .../apache/sis/internal/jaxb/lan/TextGroup.java    |  6 +-
 .../sis/internal/jaxb/metadata/CI_Citation.java    |  4 +-
 .../internal/jaxb/metadata/CI_OnlineResource.java  |  4 +-
 .../sis/internal/jaxb/metadata/MD_Identifier.java  |  4 +-
 .../internal/jaxb/metadata/MD_KeywordClass.java    |  4 +-
 .../sis/internal/jaxb/metadata/MD_Medium.java      |  4 +-
 .../internal/jaxb/metadata/MD_Releasability.java   |  4 +-
 .../sis/internal/jaxb/metadata/MD_Resolution.java  |  4 +-
 .../sis/internal/jaxb/metadata/MD_Scope.java       |  4 +-
 .../internal/jaxb/metadata/RS_ReferenceSystem.java |  6 +-
 .../jaxb/metadata/SV_OperationMetadata.java        |  4 +-
 .../jaxb/metadata/replace/QualityParameter.java    |  2 +-
 .../jaxb/metadata/replace/ServiceParameter.java    |  2 +-
 .../jaxb/metadata/replace/package-info.java        |  4 +-
 .../internal/metadata/ImplementationHelper.java    |  5 ++
 .../org/apache/sis/internal/metadata/Merger.java   |  2 +-
 .../sis/internal/metadata/MetadataTypes.java       |  2 +-
 .../apache/sis/internal/metadata/NameMeaning.java  |  2 +-
 .../sis/internal/metadata/sql/Initializer.java     |  2 +-
 .../apache/sis/internal/xml/LegacyNamespaces.java  |  4 +-
 .../org/apache/sis/metadata/AbstractMetadata.java  |  6 +-
 .../org/apache/sis/metadata/MetadataFormat.java    |  2 +-
 .../org/apache/sis/metadata/MetadataStandard.java  | 26 ++++----
 .../org/apache/sis/metadata/MetadataVisitor.java   |  4 +-
 .../apache/sis/metadata/ModifiableMetadata.java    |  6 +-
 .../org/apache/sis/metadata/PropertyAccessor.java  | 22 +++---
 .../apache/sis/metadata/PropertyComparator.java    |  4 +-
 .../org/apache/sis/metadata/TitleProperty.java     |  4 +-
 .../java/org/apache/sis/metadata/TreeNode.java     |  6 +-
 .../org/apache/sis/metadata/TreeNodeChildren.java  |  4 +-
 .../iso/DefaultApplicationSchemaInformation.java   |  4 +-
 .../iso/DefaultExtendedElementInformation.java     |  4 +-
 .../apache/sis/metadata/iso/DefaultIdentifier.java |  4 +-
 .../apache/sis/metadata/iso/DefaultMetadata.java   | 10 +--
 .../iso/DefaultMetadataExtensionInformation.java   |  4 +-
 .../sis/metadata/iso/DefaultMetadataScope.java     |  2 +-
 .../iso/DefaultPortrayalCatalogueReference.java    |  4 +-
 .../acquisition/DefaultAcquisitionInformation.java |  4 +-
 .../acquisition/DefaultEnvironmentalRecord.java    |  4 +-
 .../sis/metadata/iso/acquisition/DefaultEvent.java |  4 +-
 .../iso/acquisition/DefaultInstrument.java         |  4 +-
 .../metadata/iso/acquisition/DefaultObjective.java |  4 +-
 .../metadata/iso/acquisition/DefaultOperation.java |  4 +-
 .../sis/metadata/iso/acquisition/DefaultPlan.java  |  4 +-
 .../metadata/iso/acquisition/DefaultPlatform.java  |  4 +-
 .../iso/acquisition/DefaultPlatformPass.java       |  4 +-
 .../iso/acquisition/DefaultRequestedDate.java      |  4 +-
 .../iso/acquisition/DefaultRequirement.java        |  4 +-
 .../sis/metadata/iso/citation/AbstractParty.java   |  2 +-
 .../sis/metadata/iso/citation/Citations.java       |  8 +--
 .../sis/metadata/iso/citation/DefaultAddress.java  |  4 +-
 .../sis/metadata/iso/citation/DefaultCitation.java |  8 +--
 .../metadata/iso/citation/DefaultCitationDate.java |  4 +-
 .../sis/metadata/iso/citation/DefaultContact.java  |  4 +-
 .../metadata/iso/citation/DefaultIndividual.java   |  2 +-
 .../iso/citation/DefaultOnlineResource.java        |  4 +-
 .../metadata/iso/citation/DefaultOrganisation.java |  2 +-
 .../iso/citation/DefaultResponsibility.java        |  2 +-
 .../iso/citation/DefaultResponsibleParty.java      |  6 +-
 .../sis/metadata/iso/citation/DefaultSeries.java   |  4 +-
 .../metadata/iso/citation/DefaultTelephone.java    |  4 +-
 .../iso/constraint/DefaultConstraints.java         |  4 +-
 .../iso/constraint/DefaultLegalConstraints.java    |  4 +-
 .../iso/constraint/DefaultReleasability.java       |  2 +-
 .../iso/constraint/DefaultSecurityConstraints.java |  4 +-
 .../iso/content/AbstractContentInformation.java    |  4 +-
 .../iso/content/DefaultAttributeGroup.java         |  2 +-
 .../sis/metadata/iso/content/DefaultBand.java      |  4 +-
 .../iso/content/DefaultCoverageDescription.java    |  4 +-
 .../DefaultFeatureCatalogueDescription.java        |  4 +-
 .../iso/content/DefaultFeatureTypeInfo.java        |  2 +-
 .../iso/content/DefaultImageDescription.java       |  4 +-
 .../iso/content/DefaultRangeDimension.java         |  4 +-
 .../content/DefaultRangeElementDescription.java    |  4 +-
 .../iso/content/DefaultSampleDimension.java        |  6 +-
 .../metadata/iso/distribution/DefaultDataFile.java |  4 +-
 .../DefaultDigitalTransferOptions.java             |  4 +-
 .../iso/distribution/DefaultDistribution.java      |  4 +-
 .../iso/distribution/DefaultDistributor.java       |  4 +-
 .../metadata/iso/distribution/DefaultFormat.java   |  4 +-
 .../metadata/iso/distribution/DefaultMedium.java   |  4 +-
 .../distribution/DefaultStandardOrderProcess.java  |  4 +-
 .../iso/extent/AbstractGeographicExtent.java       |  4 +-
 .../iso/extent/DefaultBoundingPolygon.java         |  4 +-
 .../sis/metadata/iso/extent/DefaultExtent.java     |  4 +-
 .../iso/extent/DefaultGeographicBoundingBox.java   | 10 +--
 .../iso/extent/DefaultGeographicDescription.java   |  4 +-
 .../iso/extent/DefaultSpatialTemporalExtent.java   |  4 +-
 .../metadata/iso/extent/DefaultTemporalExtent.java |  4 +-
 .../metadata/iso/extent/DefaultVerticalExtent.java |  6 +-
 .../apache/sis/metadata/iso/extent/Extents.java    |  4 +-
 .../iso/identification/AbstractIdentification.java |  4 +-
 .../DefaultAggregateInformation.java               |  6 +-
 .../identification/DefaultAssociatedResource.java  |  2 +-
 .../iso/identification/DefaultBrowseGraphic.java   |  4 +-
 .../iso/identification/DefaultCoupledResource.java |  2 +-
 .../identification/DefaultDataIdentification.java  |  4 +-
 .../iso/identification/DefaultKeywordClass.java    |  2 +-
 .../iso/identification/DefaultKeywords.java        |  4 +-
 .../DefaultOperationChainMetadata.java             |  2 +-
 .../identification/DefaultOperationMetadata.java   |  2 +-
 .../DefaultRepresentativeFraction.java             |  2 +-
 .../iso/identification/DefaultResolution.java      |  4 +-
 .../DefaultServiceIdentification.java              |  4 +-
 .../metadata/iso/identification/DefaultUsage.java  |  4 +-
 .../sis/metadata/iso/lineage/DefaultAlgorithm.java |  4 +-
 .../sis/metadata/iso/lineage/DefaultLineage.java   |  4 +-
 .../iso/lineage/DefaultNominalResolution.java      |  4 +-
 .../metadata/iso/lineage/DefaultProcessStep.java   |  4 +-
 .../iso/lineage/DefaultProcessStepReport.java      |  4 +-
 .../metadata/iso/lineage/DefaultProcessing.java    |  4 +-
 .../sis/metadata/iso/lineage/DefaultSource.java    |  4 +-
 .../maintenance/DefaultMaintenanceInformation.java |  4 +-
 .../sis/metadata/iso/maintenance/DefaultScope.java |  4 +-
 .../iso/maintenance/DefaultScopeDescription.java   |  4 +-
 .../metadata/iso/quality/AbstractCompleteness.java |  4 +-
 .../iso/quality/AbstractDataEvaluation.java        |  2 +-
 .../sis/metadata/iso/quality/AbstractElement.java  | 35 +++++++---
 .../iso/quality/AbstractLogicalConsistency.java    |  4 +-
 .../metadata/iso/quality/AbstractMetaquality.java  |  2 +-
 .../iso/quality/AbstractPositionalAccuracy.java    |  4 +-
 .../sis/metadata/iso/quality/AbstractResult.java   |  4 +-
 .../iso/quality/AbstractTemporalAccuracy.java      |  6 +-
 .../iso/quality/AbstractTemporalQuality.java       |  4 +-
 .../iso/quality/AbstractThematicAccuracy.java      |  4 +-
 .../DefaultAbsoluteExternalPositionalAccuracy.java |  4 +-
 .../quality/DefaultAccuracyOfATimeMeasurement.java |  4 +-
 .../iso/quality/DefaultAggregationDerivation.java  |  2 +-
 .../metadata/iso/quality/DefaultBasicMeasure.java  |  2 +-
 .../iso/quality/DefaultCompletenessCommission.java |  4 +-
 .../iso/quality/DefaultCompletenessOmission.java   |  4 +-
 .../iso/quality/DefaultConceptualConsistency.java  |  4 +-
 .../metadata/iso/quality/DefaultConfidence.java    |  2 +-
 .../iso/quality/DefaultConformanceResult.java      |  4 +-
 .../iso/quality/DefaultCoverageResult.java         |  7 +-
 .../metadata/iso/quality/DefaultDataQuality.java   |  4 +-
 .../metadata/iso/quality/DefaultDescription.java   |  2 +-
 .../iso/quality/DefaultDescriptiveResult.java      |  2 +-
 .../iso/quality/DefaultDomainConsistency.java      |  4 +-
 .../iso/quality/DefaultEvaluationMethod.java       |  2 +-
 .../iso/quality/DefaultFormatConsistency.java      |  4 +-
 .../iso/quality/DefaultFullInspection.java         |  2 +-
 .../DefaultGriddedDataPositionalAccuracy.java      |  4 +-
 .../metadata/iso/quality/DefaultHomogeneity.java   |  2 +-
 .../iso/quality/DefaultIndirectEvaluation.java     |  2 +-
 .../sis/metadata/iso/quality/DefaultMeasure.java   |  2 +-
 .../iso/quality/DefaultMeasureReference.java       |  2 +-
 .../DefaultNonQuantitativeAttributeAccuracy.java   |  4 +-
 ...DefaultNonQuantitativeAttributeCorrectness.java |  4 +-
 .../DefaultQuantitativeAttributeAccuracy.java      |  4 +-
 .../iso/quality/DefaultQuantitativeResult.java     |  4 +-
 .../DefaultRelativeInternalPositionalAccuracy.java |  4 +-
 .../iso/quality/DefaultRepresentativity.java       |  2 +-
 .../iso/quality/DefaultSampleBasedInspection.java  |  2 +-
 .../sis/metadata/iso/quality/DefaultScope.java     |  4 +-
 .../iso/quality/DefaultSourceReference.java        |  2 +-
 .../DefaultStandaloneQualityReportInformation.java |  2 +-
 .../iso/quality/DefaultTemporalConsistency.java    |  4 +-
 .../iso/quality/DefaultTemporalValidity.java       |  4 +-
 .../DefaultThematicClassificationCorrectness.java  |  4 +-
 .../iso/quality/DefaultTopologicalConsistency.java |  4 +-
 .../sis/metadata/iso/quality/DefaultUsability.java |  4 +-
 .../iso/quality/DefaultUsabilityElement.java       |  4 +-
 .../spatial/AbstractGeolocationInformation.java    |  4 +-
 .../iso/spatial/AbstractSpatialRepresentation.java |  4 +-
 .../sis/metadata/iso/spatial/DefaultDimension.java |  4 +-
 .../sis/metadata/iso/spatial/DefaultGCP.java       |  4 +-
 .../metadata/iso/spatial/DefaultGCPCollection.java |  4 +-
 .../iso/spatial/DefaultGeometricObjects.java       |  4 +-
 .../metadata/iso/spatial/DefaultGeorectified.java  |  4 +-
 .../iso/spatial/DefaultGeoreferenceable.java       |  4 +-
 .../spatial/DefaultGridSpatialRepresentation.java  |  4 +-
 .../DefaultVectorSpatialRepresentation.java        |  4 +-
 .../java/org/apache/sis/metadata/package-info.java |  6 +-
 .../apache/sis/metadata/sql/CachedStatement.java   |  2 +-
 .../org/apache/sis/metadata/sql/Dispatcher.java    |  2 +-
 .../sis/metadata/sql/IdentifierGenerator.java      |  2 +-
 .../org/apache/sis/metadata/sql/LookupInfo.java    |  2 +-
 .../apache/sis/metadata/sql/MetadataWriter.java    | 12 ++--
 .../apache/sis/metadata/sql/TableHierarchy.java    |  4 +-
 .../java/org/apache/sis/util/iso/AbstractName.java |  6 +-
 .../org/apache/sis/util/iso/DefaultLocalName.java  |  2 +-
 .../org/apache/sis/util/iso/DefaultNameSpace.java  |  8 +--
 .../apache/sis/util/iso/DefaultRecordSchema.java   |  2 +-
 .../org/apache/sis/util/iso/RecordDefinition.java  |  2 +-
 .../main/java/org/apache/sis/util/iso/Types.java   |  6 +-
 .../java/org/apache/sis/xml/IdentifiedObject.java  |  6 +-
 .../java/org/apache/sis/xml/IdentifierSpace.java   | 10 +--
 .../main/java/org/apache/sis/xml/Namespaces.java   | 78 +++++++++++-----------
 .../main/java/org/apache/sis/xml/NilObject.java    |  2 +-
 .../java/org/apache/sis/xml/PooledTemplate.java    |  2 +-
 .../java/org/apache/sis/xml/TransformVersion.java  |  4 +-
 .../main/java/org/apache/sis/xml/Transformer.java  | 12 ++--
 .../org/apache/sis/xml/TransformingNamespaces.java |  6 +-
 .../org/apache/sis/xml/TransformingReader.java     |  8 +--
 .../org/apache/sis/xml/TransformingWriter.java     |  8 +--
 .../java/org/apache/sis/xml/ValueConverter.java    |  6 +-
 .../src/main/java/org/apache/sis/xml/XML.java      | 10 +--
 .../src/main/java/org/apache/sis/xml/XPointer.java |  2 +-
 .../main/java/org/apache/sis/xml/package-info.java |  6 +-
 .../src/main/java/org/apache/sis/xml/readme.html   |  2 +-
 .../sis/internal/metadata/IdentifiersTest.java     |  2 +-
 .../apache/sis/metadata/MetadataStandardTest.java  |  2 +-
 .../sis/metadata/PropertyConsistencyCheck.java     |  2 +-
 .../apache/sis/metadata/TreeNodeChildrenTest.java  |  4 +-
 .../org/apache/sis/metadata/iso/APIVerifier.java   |  2 +-
 .../constraint/DefaultLegalConstraintsTest.java    |  7 +-
 .../sis/metadata/iso/content/DefaultBandTest.java  |  7 +-
 .../sis/metadata/iso/extent/ExtentsTest.java       |  4 +-
 .../metadata/iso/lineage/DefaultLineageTest.java   |  8 +--
 .../iso/quality/DefaultQuantitativeResultTest.java |  2 +-
 .../java/org/apache/sis/test/MetadataAssert.java   |  4 +-
 .../sis/test/xml/AnnotationConsistencyCheck.java   |  6 +-
 .../apache/sis/test/xml/DocumentComparator.java    |  6 +-
 .../java/org/apache/sis/test/xml/TestCase.java     |  6 +-
 .../sis/xml/CharSequenceSubstitutionTest.java      |  3 +-
 .../java/org/apache/sis/xml/NamespacesTest.java    |  8 ++-
 .../coverage/MultiResolutionCoverageLoader.java    |  2 +-
 .../sis/internal/map/coverage/RenderingData.java   |  2 +-
 .../main/java/org/apache/sis/portrayal/Canvas.java | 10 +--
 .../org/apache/sis/portrayal/CanvasFollower.java   |  2 +-
 .../org/apache/sis/portrayal/PlanarCanvas.java     |  4 +-
 .../referencing/gazetteer/FinalLocationType.java   |  2 +-
 .../gazetteer/MilitaryGridReferenceSystem.java     | 12 ++--
 .../gazetteer/ModifiableLocationType.java          |  4 +-
 .../gazetteer/ReferenceVerifyException.java        |  2 +-
 .../sis/referencing/gazetteer/SimpleLocation.java  |  2 +-
 .../gazetteer/GeohashReferenceSystemTest.java      |  2 +-
 .../sis/geometry/AbstractDirectPosition.java       |  2 +-
 .../org/apache/sis/geometry/AbstractEnvelope.java  | 12 ++--
 .../org/apache/sis/geometry/ArrayEnvelope.java     |  2 +-
 .../org/apache/sis/geometry/CoordinateFormat.java  |  6 +-
 .../org/apache/sis/geometry/DirectPosition2D.java  |  2 +-
 .../java/org/apache/sis/geometry/Envelopes.java    | 20 +++---
 .../apache/sis/geometry/GeneralDirectPosition.java |  6 +-
 .../org/apache/sis/geometry/GeneralEnvelope.java   | 12 ++--
 .../org/apache/sis/geometry/ImmutableEnvelope.java |  2 +-
 .../java/org/apache/sis/geometry/Shapes2D.java     |  6 +-
 .../apache/sis/geometry/WraparoundAdjustment.java  |  4 +-
 .../apache/sis/geometry/WraparoundInEnvelope.java  |  2 +-
 .../org/apache/sis/geometry/WraparoundMethod.java  |  2 +-
 .../java/org/apache/sis/geometry/package-info.java |  2 +-
 .../internal/jaxb/referencing/CC_Conversion.java   |  2 +-
 .../referencing/CC_GeneralOperationParameter.java  |  4 +-
 .../jaxb/referencing/CC_OperationMethod.java       |  2 +-
 .../referencing/CC_OperationParameterGroup.java    |  2 +-
 .../apache/sis/internal/jaxb/referencing/Code.java |  4 +-
 .../sis/internal/referencing/AxisDirections.java   |  4 +-
 .../internal/referencing/CoordinateOperations.java |  6 +-
 .../sis/internal/referencing/DatabaseListener.java |  2 +-
 .../apache/sis/internal/referencing/Formulas.java  |  4 +-
 .../referencing/GeodeticObjectBuilder.java         |  2 +-
 .../apache/sis/internal/referencing/LazySet.java   |  2 +-
 .../internal/referencing/PositionTransformer.java  |  2 +-
 .../apache/sis/internal/referencing/RTreeNode.java |  2 +-
 .../apache/sis/internal/referencing/Resources.java |  2 +-
 .../sis/internal/referencing/Resources.properties  |  2 +-
 .../referencing/j2d/AffineTransform2D.java         |  8 ++-
 .../sis/internal/referencing/j2d/Bezier.java       |  8 +--
 .../referencing/j2d/IntervalRectangle.java         |  2 +-
 .../referencing/j2d/ParameterizedAffine.java       |  7 +-
 .../apache/sis/internal/referencing/j2d/Tile.java  |  8 +--
 .../referencing/provider/DatumShiftGridFile.java   |  2 +-
 .../referencing/provider/DatumShiftGridGroup.java  |  2 +-
 .../internal/referencing/provider/EPSGName.java    |  4 +-
 .../referencing/provider/Equirectangular.java      |  2 +-
 .../provider/FranceGeocentricInterpolation.java    |  6 +-
 .../referencing/provider/GeodeticOperation.java    |  2 +-
 .../provider/Geographic3DtoVertical.txt            |  2 +-
 .../referencing/provider/LambertConformalWest.java |  2 +-
 .../internal/referencing/provider/Mercator2SP.java |  2 +-
 .../referencing/provider/MillerCylindrical.java    |  2 +-
 .../provider/ModifiedAzimuthalEquidistant.java     |  2 +-
 .../provider/MolodenskyInterpolation.java          |  2 +-
 .../sis/internal/referencing/provider/NADCON.java  |  2 +-
 .../referencing/provider/PolarStereographicB.java  |  2 +-
 .../referencing/provider/VerticalOffset.java       |  4 +-
 .../java/org/apache/sis/io/wkt/Convention.java     |  6 +-
 .../org/apache/sis/io/wkt/FormattableObject.java   |  2 +-
 .../main/java/org/apache/sis/io/wkt/Formatter.java |  4 +-
 .../apache/sis/io/wkt/GeodeticObjectParser.java    | 12 ++--
 .../java/org/apache/sis/io/wkt/KeywordCase.java    |  2 +-
 .../org/apache/sis/io/wkt/MathTransformParser.java |  6 +-
 .../main/java/org/apache/sis/io/wkt/Parser.java    |  2 +-
 .../java/org/apache/sis/io/wkt/StoredTree.java     | 10 +--
 .../main/java/org/apache/sis/io/wkt/Symbols.java   |  2 +-
 .../java/org/apache/sis/io/wkt/Transliterator.java |  6 +-
 .../sis/io/wkt/UnformattableObjectException.java   |  2 +-
 .../java/org/apache/sis/io/wkt/VerticalInfo.java   |  2 +-
 .../java/org/apache/sis/io/wkt/WKTDictionary.java  | 10 +--
 .../main/java/org/apache/sis/io/wkt/WKTFormat.java |  4 +-
 .../main/java/org/apache/sis/io/wkt/Warnings.java  |  2 +-
 .../java/org/apache/sis/io/wkt/package-info.java   | 12 ++--
 .../sis/parameter/DefaultParameterDescriptor.java  |  2 +-
 .../sis/parameter/DefaultParameterValue.java       |  2 +-
 .../sis/parameter/DefaultParameterValueGroup.java  |  2 +-
 .../org/apache/sis/parameter/MatrixParameters.java |  2 +-
 .../org/apache/sis/parameter/ParameterBuilder.java |  4 +-
 .../org/apache/sis/parameter/ParameterFormat.java  |  2 +-
 .../apache/sis/parameter/ParameterValueList.java   |  2 +-
 .../java/org/apache/sis/parameter/Parameters.java  |  6 +-
 .../org/apache/sis/parameter/TensorParameters.java |  2 +-
 .../sis/parameter/UnmodifiableParameterValue.java  |  2 +-
 .../java/org/apache/sis/parameter/Verifier.java    |  2 +-
 .../sis/referencing/AbstractIdentifiedObject.java  | 24 +++----
 .../sis/referencing/AbstractReferenceSystem.java   |  2 +-
 .../java/org/apache/sis/referencing/Builder.java   |  6 +-
 .../main/java/org/apache/sis/referencing/CRS.java  | 16 ++---
 .../java/org/apache/sis/referencing/CommonCRS.java |  2 +-
 .../sis/referencing/EPSGFactoryFallback.java       |  2 +-
 .../sis/referencing/GeodesicsOnEllipsoid.java      | 10 +--
 .../apache/sis/referencing/GeodeticCalculator.java | 12 ++--
 .../apache/sis/referencing/IdentifiedObjects.java  |  8 +--
 .../sis/referencing/ImmutableIdentifier.java       |  4 +-
 .../org/apache/sis/referencing/NameIterator.java   |  2 +-
 .../apache/sis/referencing/NamedIdentifier.java    |  4 +-
 .../apache/sis/referencing/crs/AbstractCRS.java    |  6 +-
 .../sis/referencing/crs/AbstractDerivedCRS.java    |  4 +-
 .../sis/referencing/crs/DefaultCompoundCRS.java    |  4 +-
 .../sis/referencing/crs/DefaultDerivedCRS.java     |  6 +-
 .../sis/referencing/crs/DefaultEngineeringCRS.java |  2 +-
 .../sis/referencing/crs/DefaultGeodeticCRS.java    |  4 +-
 .../sis/referencing/crs/DefaultImageCRS.java       |  2 +-
 .../org/apache/sis/referencing/crs/SubTypes.java   |  2 +-
 .../org/apache/sis/referencing/cs/AbstractCS.java  |  8 +--
 .../apache/sis/referencing/cs/AxesConvention.java  | 10 +--
 .../org/apache/sis/referencing/cs/AxisFilter.java  |  2 +-
 .../sis/referencing/cs/CoordinateSystems.java      |  2 +-
 .../cs/DefaultCoordinateSystemAxis.java            |  8 +--
 .../org/apache/sis/referencing/cs/Normalizer.java  |  2 +-
 .../sis/referencing/datum/AbstractDatum.java       |  6 +-
 .../sis/referencing/datum/BursaWolfParameters.java |  2 +-
 .../sis/referencing/datum/DatumShiftGrid.java      | 10 +--
 .../referencing/datum/DefaultGeodeticDatum.java    |  4 +-
 .../referencing/datum/DefaultPrimeMeridian.java    |  6 +-
 .../referencing/datum/DefaultVerticalDatum.java    |  2 +-
 .../referencing/factory/AuthorityFactoryProxy.java |  2 +-
 .../factory/CommonAuthorityFactory.java            |  4 +-
 .../factory/ConcurrentAuthorityFactory.java        |  8 +--
 .../referencing/factory/GeodeticObjectFactory.java |  6 +-
 .../factory/IdentifiedObjectFinder.java            |  4 +-
 .../referencing/factory/IdentifiedObjectSet.java   |  6 +-
 .../factory/LazySynchronizedIterator.java          |  2 +-
 .../factory/MissingFactoryResourceException.java   |  2 +-
 .../factory/MultiAuthoritiesFactory.java           | 12 ++--
 .../sis/referencing/factory/ReferenceKeeper.java   |  2 +-
 .../referencing/factory/sql/AuthorityCodes.java    |  2 +-
 .../sis/referencing/factory/sql/BursaWolfInfo.java |  2 +-
 .../referencing/factory/sql/EPSGCodeFinder.java    |  2 +-
 .../referencing/factory/sql/EPSGDataAccess.java    | 20 +++---
 .../sis/referencing/factory/sql/SQLTranslator.java |  6 +-
 .../sis/referencing/factory/sql/TableInfo.java     |  4 +-
 .../sis/referencing/factory/sql/package-info.java  |  4 +-
 .../operation/AbstractCoordinateOperation.java     |  6 +-
 .../operation/AbstractSingleOperation.java         | 10 +--
 .../operation/CoordinateOperationContext.java      |  2 +-
 .../operation/CoordinateOperationFinder.java       |  8 +--
 .../operation/CoordinateOperationRegistry.java     |  8 +--
 .../operation/DefaultConcatenatedOperation.java    | 10 +--
 .../referencing/operation/DefaultConversion.java   | 12 ++--
 .../operation/DefaultOperationMethod.java          | 14 ++--
 .../operation/DefaultPassThroughOperation.java     |  6 +-
 .../operation/DefaultTransformation.java           |  4 +-
 .../operation/InverseOperationMethod.java          |  4 +-
 .../operation/LooselyDefinedMethod.java            |  4 +-
 .../operation/MismatchedDatumException.java        |  2 +-
 .../referencing/operation/SubOperationInfo.java    |  8 +--
 .../operation/builder/LinearTransformBuilder.java  | 12 ++--
 .../operation/builder/LocalizationGridBuilder.java |  4 +-
 .../builder/LocalizationGridException.java         |  2 +-
 .../operation/builder/ProjectedTransformTry.java   |  2 +-
 .../operation/builder/ResidualGrid.java            |  4 +-
 .../sis/referencing/operation/builder/readme.html  |  2 +-
 .../operation/matrix/GeneralMatrix.java            |  2 +-
 .../sis/referencing/operation/matrix/Matrices.java |  8 +--
 .../operation/matrix/NonSquareMatrix.java          |  2 +-
 .../referencing/operation/matrix/package-info.java |  2 +-
 .../sis/referencing/operation/package-info.java    |  4 +-
 .../operation/projection/AlbersEqualArea.java      |  4 +-
 .../operation/projection/AuthalicConversion.java   | 10 +--
 .../operation/projection/ConformalProjection.java  | 12 ++--
 .../operation/projection/CylindricalEqualArea.java |  6 +-
 .../operation/projection/Initializer.java          |  2 +-
 .../projection/LambertAzimuthalEqualArea.java      |  2 +-
 .../projection/LambertConicConformal.java          |  6 +-
 .../operation/projection/LongitudeWraparound.java  |  2 +-
 .../referencing/operation/projection/Mercator.java | 10 +--
 .../operation/projection/MeridianArcBased.java     |  6 +-
 .../projection/ModifiedAzimuthalEquidistant.java   |  2 +-
 .../operation/projection/Mollweide.java            |  2 +-
 .../operation/projection/NormalizedProjection.java |  8 +--
 .../operation/projection/ObliqueStereographic.java |  6 +-
 .../operation/projection/SatelliteTracking.java    |  2 +-
 .../operation/projection/Sinusoidal.java           |  4 +-
 .../operation/projection/TransverseMercator.java   |  8 +--
 .../operation/projection/package-info.java         |  4 +-
 .../transform/AbstractLinearTransform.java         |  4 +-
 .../operation/transform/AbstractMathTransform.java | 10 +--
 .../transform/AbstractMathTransform2D.java         |  2 +-
 .../operation/transform/ConcatenatedTransform.java | 10 +--
 .../operation/transform/ContextualParameter.java   |  2 +-
 .../operation/transform/ContextualParameters.java  | 14 ++--
 .../operation/transform/DatumShiftTransform.java   |  2 +-
 .../transform/DefaultMathTransformFactory.java     | 18 ++---
 .../operation/transform/DomainDefinition.java      |  2 +-
 .../transform/ExponentialTransform1D.java          |  4 +-
 .../operation/transform/InterpolatedTransform.java | 10 +--
 .../operation/transform/LinearTransform.java       |  4 +-
 .../transform/LogarithmicTransform1D.java          |  4 +-
 .../operation/transform/MathTransforms.java        |  4 +-
 .../operation/transform/MolodenskyFormula.java     |  2 +-
 .../operation/transform/OperationMethodSet.java    |  6 +-
 .../operation/transform/PassThroughTransform.java  |  4 +-
 .../operation/transform/PoleRotation.java          |  2 +-
 .../operation/transform/TransformSeparator.java    |  4 +-
 .../operation/transform/WraparoundTransform.java   | 12 ++--
 .../operation/transform/package-info.java          |  4 +-
 .../org/apache/sis/referencing/package-info.java   |  2 +-
 .../org/apache/sis/geometry/TransformTestCase.java |  4 +-
 .../provider/GeographicOffsetsTest.java            |  2 +-
 .../internal/referencing/provider/NTv2Test.java    |  2 +-
 .../sis/io/wkt/GeodeticObjectParserTest.java       |  4 +-
 .../apache/sis/referencing/ClenshawSummation.java  |  4 +-
 .../sis/referencing/EPSGFactoryFallbackTest.java   |  2 +-
 .../sis/referencing/GeodeticCalculatorTest.java    |  2 +-
 .../apache/sis/referencing/cs/HardCodedAxes.java   |  2 +-
 .../apache/sis/referencing/cs/NormalizerTest.java  |  2 +-
 .../datum/DefaultGeodeticDatumTest.java            |  2 +-
 .../factory/ConcurrentAuthorityFactoryTest.java    |  2 +-
 .../referencing/factory/sql/EPSGFactoryTest.java   |  4 +-
 .../factory/sql/epsg/DataScriptFormatter.java      |  2 +-
 .../sis/referencing/factory/sql/epsg/package.html  |  2 +-
 .../operation/CoordinateOperationFinderTest.java   |  4 +-
 .../operation/CoordinateOperationRegistryTest.java |  2 +-
 .../operation/DefaultConversionTest.java           |  2 +-
 .../operation/builder/ResidualGridTest.java        |  2 +-
 .../referencing/operation/matrix/MatricesTest.java |  2 +-
 .../operation/matrix/MatrixTestCase.java           | 12 ++--
 .../operation/matrix/NonSquareMatrixTest.java      |  2 +-
 .../operation/projection/AlbersEqualAreaTest.java  |  2 +-
 .../projection/ConformalProjectionTest.java        |  4 +-
 .../operation/projection/InitializerTest.java      |  2 +-
 .../projection/LambertConicConformalTest.java      |  2 +-
 .../projection/MapProjectionTestCase.java          |  2 +-
 .../projection/MercatorMethodComparison.java       |  2 +-
 .../projection/ObliqueStereographicTest.java       |  2 +-
 .../projection/TransverseMercatorTest.java         |  2 +-
 .../transform/DefaultMathTransformFactoryTest.java |  2 +-
 .../transform/ProjectiveTransformTest.java         |  2 +-
 .../sis/test/integration/ConsistencyTest.java      |  4 +-
 .../apache/sis/test/integration/MetadataTest.java  |  2 +-
 .../referencing/datum/VerticalDatum (GML 3.1).xml  |  2 +-
 .../sis/internal/converter/ArrayConverter.java     |  2 +-
 .../apache/sis/internal/converter/ClassPair.java   |  2 +-
 .../sis/internal/converter/ConverterRegistry.java  | 12 ++--
 .../sis/internal/converter/FallbackConverter.java  |  6 +-
 .../sis/internal/converter/NumberConverter.java    |  4 +-
 .../sis/internal/converter/StringConverter.java    |  2 +-
 .../internal/converter/SurjectiveConverter.java    |  2 +-
 .../sis/internal/converter/SystemRegistry.java     |  2 +-
 .../apache/sis/internal/system/CommonExecutor.java |  2 +-
 .../sis/internal/system/DelayedExecutor.java       |  2 +-
 .../sis/internal/system/LocalizedStaticObject.java |  2 +-
 .../org/apache/sis/internal/system/Loggers.java    |  2 +-
 .../internal/system/ReferenceQueueConsumer.java    |  2 +-
 .../org/apache/sis/internal/system/Threads.java    |  2 +-
 .../apache/sis/internal/util/CollectionsExt.java   | 10 +--
 .../org/apache/sis/internal/util/Constants.java    |  4 +-
 .../apache/sis/internal/util/DefinitionURI.java    |  4 +-
 .../org/apache/sis/internal/util/DoubleDouble.java |  4 +-
 .../apache/sis/internal/util/SetOfUnknownSize.java |  4 +-
 .../sis/internal/util/StandardDateFormat.java      |  2 +-
 .../java/org/apache/sis/internal/util/Strings.java |  2 +-
 .../sis/internal/util/UnmodifiableArrayList.java   |  6 +-
 .../java/org/apache/sis/internal/util/X364.java    |  2 +-
 .../java/org/apache/sis/io/CompoundFormat.java     | 10 +--
 .../main/java/org/apache/sis/io/package-info.java  |  2 +-
 .../main/java/org/apache/sis/math/ArrayVector.java |  4 +-
 .../apache/sis/math/CompoundDirectPositions.java   |  2 +-
 .../java/org/apache/sis/math/DecimalFunctions.java | 34 +++++-----
 .../main/java/org/apache/sis/math/Fraction.java    |  6 +-
 .../java/org/apache/sis/math/FunctionProperty.java |  4 +-
 .../java/org/apache/sis/math/MathFunctions.java    |  6 +-
 .../src/main/java/org/apache/sis/math/Vector.java  | 14 ++--
 .../java/org/apache/sis/math/package-info.java     |  2 +-
 .../java/org/apache/sis/measure/AbstractUnit.java  | 18 ++---
 .../java/org/apache/sis/measure/AngleFormat.java   | 14 ++--
 .../org/apache/sis/measure/ConventionalUnit.java   |  8 +--
 .../java/org/apache/sis/measure/DerivedScalar.java |  4 +-
 .../org/apache/sis/measure/LinearConverter.java    |  2 +-
 .../java/org/apache/sis/measure/NumberRange.java   |  2 +-
 .../java/org/apache/sis/measure/Quantities.java    |  4 +-
 .../main/java/org/apache/sis/measure/Range.java    | 10 +--
 .../java/org/apache/sis/measure/RangeFormat.java   |  2 +-
 .../main/java/org/apache/sis/measure/Salinity.java |  2 +-
 .../main/java/org/apache/sis/measure/Scalar.java   |  2 +-
 .../java/org/apache/sis/measure/UnitFormat.java    | 22 +++---
 .../main/java/org/apache/sis/measure/Units.java    |  6 +-
 .../java/org/apache/sis/measure/package-info.java  |  2 +-
 .../src/main/java/org/apache/sis/setup/About.java  |  2 +-
 .../apache/sis/setup/InstallationResources.java    |  2 +-
 .../main/java/org/apache/sis/setup/OptionKey.java  | 10 +--
 .../sis/util/AbstractInternationalString.java      |  2 +-
 .../java/org/apache/sis/util/CharSequences.java    | 22 +++---
 .../src/main/java/org/apache/sis/util/Classes.java |  6 +-
 .../java/org/apache/sis/util/ComparisonMode.java   |  2 +-
 .../apache/sis/util/CorruptedObjectException.java  |  4 +-
 .../sis/util/DefaultInternationalString.java       |  2 +-
 .../main/java/org/apache/sis/util/Disposable.java  |  2 +-
 .../main/java/org/apache/sis/util/Emptiable.java   |  2 +-
 .../main/java/org/apache/sis/util/Exceptions.java  |  4 +-
 .../org/apache/sis/util/LenientComparable.java     |  4 +-
 .../src/main/java/org/apache/sis/util/Locales.java |  4 +-
 .../main/java/org/apache/sis/util/Localized.java   |  2 +-
 .../org/apache/sis/util/LocalizedException.java    |  4 +-
 .../org/apache/sis/util/NullArgumentException.java |  2 +-
 .../sis/util/ResourceInternationalString.java      |  2 +-
 .../java/org/apache/sis/util/StringBuilders.java   |  4 +-
 .../util/UnsupportedImplementationException.java   |  2 +-
 .../main/java/org/apache/sis/util/Utilities.java   |  2 +-
 .../src/main/java/org/apache/sis/util/Version.java |  4 +-
 .../java/org/apache/sis/util/collection/Cache.java |  6 +-
 .../apache/sis/util/collection/CodeListSet.java    |  2 +-
 .../org/apache/sis/util/collection/Containers.java |  8 +--
 .../sis/util/collection/DefaultTreeTable.java      |  4 +-
 .../sis/util/collection/DerivedIterator.java       |  2 +-
 .../org/apache/sis/util/collection/TreeTable.java  |  6 +-
 .../sis/util/collection/TreeTableFormat.java       |  2 +-
 .../org/apache/sis/util/collection/TreeTables.java |  2 +-
 .../sis/util/collection/WeakValueHashMap.java      |  2 +-
 .../java/org/apache/sis/util/logging/Logging.java  |  2 +-
 .../apache/sis/util/logging/MonolineFormatter.java |  4 +-
 .../apache/sis/util/logging/PerformanceLevel.java  |  8 +--
 .../org/apache/sis/util/logging/package-info.java  |  2 +-
 .../sis/util/resources/IndexedResourceBundle.java  |  2 +-
 .../apache/sis/util/resources/package-info.java    |  2 +-
 core/sis-utility/src/main/javadoc/overview.html    |  4 +-
 .../java/org/apache/sis/measure/DateRangeTest.java |  2 +-
 .../apache/sis/measure/LinearConverterTest.java    |  2 +-
 .../org/apache/sis/measure/UnitFormatTest.java     |  2 +-
 .../java/org/apache/sis/setup/OptionKeyTest.java   |  2 +-
 .../test/java/org/apache/sis/test/TestStep.java    |  2 +-
 .../test/java/org/apache/sis/test/TestSuite.java   |  2 +-
 .../java/org/apache/sis/test/TestUtilities.java    |  6 +-
 .../java/org/apache/sis/test/package-info.java     |  2 +-
 .../sis/util/collection/WeakHashSetTest.java       |  2 +-
 .../sis/util/collection/WeakValueHashMapTest.java  |  2 +-
 ide-project/README.txt                             |  2 +-
 .../apache/sis/internal/earth/netcdf/GCOM_C.java   |  6 +-
 .../sis/storage/landsat/LandsatStoreProvider.java  |  2 +-
 .../apache/sis/storage/landsat/MetadataReader.java |  4 +-
 .../storage/landsat/doc-files/MetadataMapping.html |  2 +-
 .../sis/internal/geotiff/SchemaModifier.java       |  2 +-
 .../sis/internal/storage/inflater/CCITTRLE.java    |  4 +-
 .../sis/internal/storage/inflater/Inflater.java    |  2 +-
 .../apache/sis/internal/storage/inflater/LZW.java  |  4 +-
 .../internal/storage/inflater/package-info.java    |  2 +-
 .../org/apache/sis/storage/geotiff/CRSBuilder.java |  2 +-
 .../org/apache/sis/storage/geotiff/DataCube.java   |  2 +-
 .../org/apache/sis/storage/geotiff/DataSubset.java |  2 +-
 .../sis/storage/geotiff/GeoTiffStoreProvider.java  |  2 +-
 .../sis/storage/geotiff/ImageFileDirectory.java    |  6 +-
 .../apache/sis/storage/geotiff/Localization.java   |  2 +-
 .../apache/sis/storage/geotiff/NativeMetadata.java |  2 +-
 .../sis/storage/geotiff/ReversedBitsChannel.java   |  2 +-
 .../apache/sis/storage/geotiff/GeoIdentifiers.java |  2 +-
 .../apache/sis/storage/geotiff/GeoKeysTest.java    |  2 +-
 .../sis/storage/geotiff/XMLMetadataTest.java       |  4 +-
 .../java/org/apache/sis/internal/netcdf/Axis.java  | 14 ++--
 .../org/apache/sis/internal/netcdf/CRSBuilder.java |  2 +-
 .../org/apache/sis/internal/netcdf/Convention.java |  6 +-
 .../org/apache/sis/internal/netcdf/DataType.java   |  8 +--
 .../org/apache/sis/internal/netcdf/Decoder.java    |  4 +-
 .../java/org/apache/sis/internal/netcdf/Grid.java  |  2 +-
 .../apache/sis/internal/netcdf/GridAdjustment.java |  4 +-
 .../apache/sis/internal/netcdf/GridCacheKey.java   |  2 +-
 .../apache/sis/internal/netcdf/GridMapping.java    |  2 +-
 .../org/apache/sis/internal/netcdf/Linearizer.java |  8 +--
 .../apache/sis/internal/netcdf/RasterResource.java |  8 +--
 .../org/apache/sis/internal/netcdf/Variable.java   | 14 ++--
 .../apache/sis/internal/netcdf/VariableRole.java   |  2 +-
 .../sis/internal/netcdf/impl/ChannelDecoder.java   |  2 +-
 .../apache/sis/internal/netcdf/impl/GridInfo.java  |  2 +-
 .../sis/internal/netcdf/impl/VariableInfo.java     |  6 +-
 .../apache/sis/internal/netcdf/package-info.java   |  4 +-
 .../sis/internal/netcdf/ucar/DecoderWrapper.java   |  2 +-
 .../sis/internal/netcdf/ucar/DimensionWrapper.java |  4 +-
 .../sis/internal/netcdf/ucar/GridWrapper.java      |  4 +-
 .../sis/internal/netcdf/ucar/LogAdapter.java       |  2 +-
 .../sis/internal/netcdf/ucar/VariableWrapper.java  |  2 +-
 .../apache/sis/storage/netcdf/AttributeNames.java  | 12 ++--
 .../apache/sis/storage/netcdf/MetadataReader.java  |  6 +-
 .../sis/storage/netcdf/NetcdfStoreProvider.java    |  2 +-
 .../apache/sis/internal/netcdf/DecoderTest.java    |  2 +-
 .../org/apache/sis/internal/netcdf/GridTest.java   |  2 +-
 .../apache/sis/internal/netcdf/VariableTest.java   |  2 +-
 .../apache/sis/internal/sql/feature/Column.java    |  2 +-
 .../apache/sis/internal/sql/feature/Database.java  |  6 +-
 .../sis/internal/sql/feature/FeatureAnalyzer.java  |  2 +-
 .../sis/internal/sql/feature/FeatureIterator.java  |  2 +-
 .../sis/internal/sql/feature/FeatureStream.java    |  2 +-
 .../sis/internal/sql/feature/InfoStatements.java   |  2 +-
 .../apache/sis/internal/sql/feature/Relation.java  |  4 +-
 .../org/apache/sis/internal/sql/feature/Table.java |  2 +-
 .../sis/internal/sql/postgis/RasterFormat.java     |  2 +-
 .../sis/internal/sql/postgis/RasterReader.java     |  2 +-
 .../sis/internal/sql/postgis/RasterWriter.java     |  2 +-
 .../apache/sis/internal/stream/DeferredStream.java |  2 +-
 .../sis/internal/storage/MetadataBuilder.java      |  4 +-
 .../apache/sis/internal/storage/PRJDataStore.java  |  4 +-
 .../apache/sis/internal/storage/StoreMetadata.java |  4 +-
 .../sis/internal/storage/StoreUtilities.java       |  2 +-
 .../sis/internal/storage/TiledGridCoverage.java    |  6 +-
 .../sis/internal/storage/TiledGridResource.java    |  4 +-
 .../sis/internal/storage/csv/FeatureIterator.java  |  4 +-
 .../storage/csv/MovingFeatureIterator.java         |  2 +-
 .../sis/internal/storage/csv/StoreProvider.java    |  2 +-
 .../storage/esri/AsciiGridStoreProvider.java       |  2 +-
 .../sis/internal/storage/esri/RawRasterStore.java  |  2 +-
 .../storage/esri/RawRasterStoreProvider.java       |  2 +-
 .../sis/internal/storage/image/FormatFilter.java   |  2 +-
 .../sis/internal/storage/image/WorldFileStore.java |  2 +-
 .../storage/image/WorldFileStoreProvider.java      |  2 +-
 .../sis/internal/storage/image/WritableStore.java  |  2 +-
 .../sis/internal/storage/io/ChannelData.java       |  2 +-
 .../sis/internal/storage/io/ChannelDataInput.java  |  2 +-
 .../sis/internal/storage/io/ChannelDataOutput.java |  2 +-
 .../storage/io/ChannelImageInputStream.java        |  2 +-
 .../internal/storage/io/HyperRectangleReader.java  |  2 +-
 .../sis/internal/storage/io/IOUtilities.java       |  2 +-
 .../sis/internal/storage/wkt/StoreFormat.java      |  2 +-
 .../sis/internal/storage/xml/package-info.java     |  2 +-
 .../java/org/apache/sis/storage/Aggregate.java     |  2 +-
 .../java/org/apache/sis/storage/CoverageQuery.java |  2 +-
 .../java/org/apache/sis/storage/DataOptionKey.java |  2 +-
 .../java/org/apache/sis/storage/DataStore.java     |  6 +-
 .../org/apache/sis/storage/DataStoreException.java |  2 +-
 .../org/apache/sis/storage/DataStoreProvider.java  |  6 +-
 .../java/org/apache/sis/storage/FeatureNaming.java |  4 +-
 .../java/org/apache/sis/storage/FeatureSet.java    |  2 +-
 .../sis/storage/ForwardOnlyStorageException.java   |  2 +-
 .../apache/sis/storage/GridCoverageResource.java   |  8 +--
 .../java/org/apache/sis/storage/ProbeResult.java   |  4 +-
 .../main/java/org/apache/sis/storage/Resource.java |  2 +-
 .../org/apache/sis/storage/StorageConnector.java   | 12 ++--
 .../sis/storage/UnsupportedEncodingException.java  |  2 +-
 .../aggregate/ConcatenatedGridCoverage.java        |  2 +-
 .../sis/storage/aggregate/CoverageAggregator.java  |  4 +-
 .../sis/storage/aggregate/JoinFeatureSet.java      |  4 +-
 .../sis/storage/event/CascadedStoreEvent.java      |  6 +-
 .../apache/sis/storage/event/StoreListeners.java   |  2 +-
 .../java/org/apache/sis/storage/tiling/Tile.java   |  2 +-
 .../apache/sis/storage/tiling/TileMatrixSet.java   |  4 +-
 .../org/apache/sis/storage/tiling/TileStatus.java  |  4 +-
 .../apache/sis/storage/tiling/TiledResource.java   |  2 +-
 .../sis/storage/tiling/WritableTileMatrixSet.java  |  2 +-
 .../internal/storage/io/ChannelDataOutputTest.java |  2 +-
 .../storage/io/HyperRectangleReaderTest.java       |  4 +-
 .../storage/io/ImageInputStreamComparator.java     |  2 +-
 .../storage/io/RewindableLineReaderTest.java       |  2 +-
 .../apache/sis/storage/StorageConnectorTest.java   |  2 +-
 .../sis/test/storage/CoverageReadConsistency.java  |  2 +-
 .../apache/sis/test/storage/SubsampledImage.java   |  4 +-
 .../apache/sis/internal/storage/gpx/Metadata.java  |  2 +-
 .../apache/sis/internal/storage/gpx/Person.java    |  2 +-
 .../apache/sis/internal/storage/gpx/Reader.java    |  4 +-
 .../storage/xml/stream/FormattedWriter.java        |  2 +-
 .../internal/storage/xml/stream/StaxDataStore.java |  2 +-
 .../storage/xml/stream/StaxStreamWriter.java       |  2 +-
 805 files changed, 1729 insertions(+), 1692 deletions(-)

diff --cc core/sis-feature/src/main/java/org/apache/sis/coverage/SampleDimension.java
index dde173c43f,f53b080120..a01ffc31b2
--- a/core/sis-feature/src/main/java/org/apache/sis/coverage/SampleDimension.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/coverage/SampleDimension.java
@@@ -516,8 -519,8 +516,8 @@@ public class SampleDimension implement
       * then it should be declared using {@code setBackground(…)} method instead of {@code addQualitative(…)}.</p>
       *
       * <p>A <cite>quantitative category</cite> is a range of sample values associated to numbers with units of measurement.
-      * For example 10 = 1.0°C, 11 = 1.1°C, 12 = 1.2°C, <i>etc</i>. A quantitative category has a
+      * For example, 10 = 1.0°C, 11 = 1.1°C, 12 = 1.2°C, <i>etc</i>. A quantitative category has a
 -     * {@linkplain org.opengis.metadata.content.SampleDimension#getTransferFunctionType() transfer function}
 +     * transfer function
       * (typically a scale factor and an offset) for converting sample values to values expressed
       * in the unit of measurement.</p>
       *
diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/DefaultAssociationRole.java
index 62d5ccf417,7b3589b78f..415d7b884a
--- a/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultAssociationRole.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultAssociationRole.java
@@@ -338,12 -352,9 +338,12 @@@ public class DefaultAssociationRole ext
       * Returns the type of feature values.
       *
       * <p>This method cannot be invoked if {@link #isResolved()} returns {@code false}.
-      * However it is still possible to {@linkplain Features#getValueTypeName
 -     * However, it is still possible to {@linkplain Features#getValueTypeName(PropertyType)
++     * However, it is still possible to {@linkplain Features#getValueTypeName
       * get the associated feature type name}.</p>
       *
 +     * <div class="warning"><b>Warning:</b> In a future SIS version, the return type may be changed
 +     * to {@code org.opengis.feature.FeatureType}. This change is pending GeoAPI revision.</div>
 +     *
       * @return the type of feature values.
       * @throws IllegalStateException if the feature type has been specified
       *         {@linkplain #DefaultAssociationRole(Map, GenericName, int, int) only by its name}
diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/DefaultFeatureType.java
index 9b3a5bfbec,3ada174a79..fca73023b3
--- a/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultFeatureType.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/feature/DefaultFeatureType.java
@@@ -133,8 -139,8 +133,8 @@@ public class DefaultFeatureType extend
       * {@code true} if we determined that this feature type does not have, directly or indirectly,
       * any unresolved name (i.e. a {@link DefaultAssociationRole#valueType} specified only be the
       * feature type name instead of its actual instance). A value of {@code true} means that all
-      * names have been resolved. However a value of {@code false} only means that we are not sure,
+      * names have been resolved. However, a value of {@code false} only means that we are not sure,
 -     * and that {@link #resolve(FeatureType, Map)} should check again.
 +     * and that {@code resolve(FeatureType, Map)} should check again.
       *
       * <div class="note"><b>Note:</b>
       * Strictly speaking, this field should be declared {@code volatile} since the names could
diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/EnvelopeOperation.java
index bf850e1f90,b6dacc794a..a676adb323
--- a/core/sis-feature/src/main/java/org/apache/sis/feature/EnvelopeOperation.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/feature/EnvelopeOperation.java
@@@ -100,9 -108,9 +100,9 @@@ final class EnvelopeOperation extends A
       * a default CRS.
       *
       * <h4>Performance note</h4>
 -     * If this array is {@code null}, then {@link Feature#getProperty(String)} does not need to be invoked at all.
 -     * A null array is a signal that invoking only the cheaper {@link Feature#getPropertyValue(String)} method is
 +     * If this array is {@code null}, then {@link AbstractFeature#getProperty(String)} does not need to be invoked at all.
 +     * A null array is a signal that invoking only the cheaper {@link AbstractFeature#getPropertyValue(String)} method is
-      * sufficient. However this array become non-null as soon as there is at least one CRS characteristic to check.
+      * sufficient. However, this array become non-null as soon as there is at least one CRS characteristic to check.
       * We do not distinguish which particular property may have a CRS characteristic because as of Apache SIS 1.0,
       * implementations of {@link DenseFeature} and {@link SparseFeature} have a "all of nothing" behavior anyway.
       * So there is no performance gain to expect from a fine-grained knowledge of which properties declare a CRS.
diff --cc core/sis-feature/src/main/java/org/apache/sis/feature/Features.java
index c12479051f,17f2fce254..11b95de01a
--- a/core/sis-feature/src/main/java/org/apache/sis/feature/Features.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/feature/Features.java
@@@ -139,12 -151,12 +139,12 @@@ public final class Features extends Sta
                  }
                  /*
                   * Operation returns another operation. This case should be rare and should never
-                  * contain a cycle. However given that the consequence of an infinite cycle here
+                  * contain a cycle. However, given that the consequence of an infinite cycle here
                   * would be thread freeze, we check as a safety.
                   */
 -                final Map<IdentifiedType,Boolean> done = new IdentityHashMap<>(4);
 -                while (!((type = ((Operation) type).getResult()) instanceof AttributeType<?>)) {
 -                    if (!(type instanceof Operation) || done.put(type, Boolean.TRUE) != null) {
 +                final Map<AbstractIdentifiedType,Boolean> done = new IdentityHashMap<>(4);
 +                while (!((type = ((AbstractOperation) type).getResult()) instanceof DefaultAttributeType<?>)) {
 +                    if (!(type instanceof AbstractOperation) || done.put(type, Boolean.TRUE) != null) {
                          return Optional.empty();
                      }
                  }
diff --cc core/sis-feature/src/main/java/org/apache/sis/internal/feature/MovingFeatures.java
index 511efe4ae8,e2dfdb66e9..46f52afd4f
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/feature/MovingFeatures.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/feature/MovingFeatures.java
@@@ -51,10 -52,10 +51,10 @@@ public class MovingFeatures 
  
      /**
       * An alternative to {@link #TIME_AS_INSTANTS} used when times cannot be mapped to calendar dates.
-      * This characteristic uses the same name than {@code TIME_AS_INSTANTS}. Consequently at most one
+      * This characteristic uses the same name than {@code TIME_AS_INSTANTS}. Consequently, at most one
       * of {@code TIME_AS_INSTANTS} and {@code TIME_AS_NUMBERS} can be used on the same property.
       */
 -    private static final AttributeType<Number> TIME_AS_NUMBERS;
 +    private static final DefaultAttributeType<Number> TIME_AS_NUMBERS;
      static {
          final LocalName scope = Names.createLocalName("OGC", null, "MF");
          final Map<String,Object> properties = Collections.singletonMap(
diff --cc core/sis-feature/src/main/java/org/apache/sis/internal/filter/Visitor.java
index 8d57f2d542,7e08dcf92c..a35cb2dc4e
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/Visitor.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/Visitor.java
@@@ -263,10 -264,10 +263,10 @@@ public abstract class Visitor<R,A> 
       * This method often needs to be invoked with instances of {@code Filter<? super R>},
       * because this is the type of filters returned by GeoAPI methods such as {@link LogicalOperator#getOperands()}.
       * But the parameterized type expected by this method matches the parameterized type of handlers registered by
 -     * {@link #setFilterHandler(CodeList, BiConsumer)} and similar methods, which use the exact {@code <R>} type.
 +     * {@link #setFilterHandler(Enum, BiConsumer)} and similar methods, which use the exact {@code <R>} type.
       * This restriction exists because when doing otherwise, parameterized types become hard to express in Java
       * (we get a cascade of {@code super} keywords, something like {@code <? super ? super R>}).
-      * However doing the {@code (Filter<R>) filter} cast is actually safe if the handlers do not invoke any
+      * However, doing the {@code (Filter<R>) filter} cast is actually safe if the handlers do not invoke any
       * {@code filter} method having a return value (directly or indirectly as list elements) restricted to
       * the exact {@code <R>} type. Such methods do not exist in the GeoAPI interfaces, so the cast is safe
       * if the {@link BiConsumer} handlers do not invoke implementation-specific methods.
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultResponsibleParty.java
index 53ef3ae4e8,5428b27342..3ee470f80a
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultResponsibleParty.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/citation/DefaultResponsibleParty.java
@@@ -125,8 -112,8 +125,8 @@@ public class DefaultResponsibleParty ex
       *   <li>Otherwise if the given object is already an instance of
       *       {@code DefaultResponsibleParty}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code DefaultResponsibleParty} instance is created using the
 -     *       {@linkplain #DefaultResponsibleParty(Responsibility) copy constructor}
 +     *       {@linkplain #DefaultResponsibleParty(ResponsibleParty) copy constructor}
-      *       and returned. Note that this is a <cite>shallow</cite> copy operation, since the other
+      *       and returned. Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
index 0c5314d34d,d7d4c97117..a279870e63
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAggregateInformation.java
@@@ -91,18 -89,9 +91,18 @@@ public class DefaultAggregateInformatio
      public DefaultAggregateInformation() {
      }
  
 +    /**
 +     * Constructs a new instance initialized with the values from the specified metadata object.
 +     *
 +     * @param object The metadata to copy values from.
 +     */
 +    DefaultAggregateInformation(final DefaultAssociatedResource object) {
 +        super(object);
 +    }
 +
      /**
       * Constructs a new instance initialized with the values from the specified metadata object.
-      * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the
+      * This is a <dfn>shallow</dfn> copy constructor, because the other metadata contained in the
       * given object are not recursively copied.
       *
       * @param  object  the metadata to copy values from, or {@code null} if none.
@@@ -124,8 -111,8 +124,8 @@@
       *   <li>Otherwise if the given object is already an instance of
       *       {@code DefaultAggregateInformation}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code DefaultAggregateInformation} instance is created using the
-      *       copy constructor
-      *       and returned. Note that this is a <cite>shallow</cite> copy operation, since the other
 -     *       {@linkplain #DefaultAggregateInformation(AssociatedResource) copy constructor}
++     *       {@linkplain #DefaultAggregateInformation(AggregateInformation) copy constructor}
+      *       and returned. Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java
index 08533071cc,551e2d39e3..8ab487335e
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultAssociatedResource.java
@@@ -121,22 -113,9 +121,22 @@@ public class DefaultAssociatedResource 
          this.associationType = associationType;
      }
  
 +    /**
 +     * Constructs a new instance initialized with the values from the specified metadata object.
 +     * This is a constructor for {@link DefaultAggregateInformation} constructor only.
 +     *
 +     * @param object The metadata to copy values from.
 +     */
 +    DefaultAssociatedResource(final DefaultAssociatedResource object) {
 +        this.associationType   = object.associationType;
 +        this.initiativeType    = object.initiativeType;
 +        this.name              = object.name;
 +        this.metadataReference = object.metadataReference;
 +    }
 +
      /**
       * Constructs a new instance initialized with the values from the specified metadata object.
-      * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the
+      * This is a <dfn>shallow</dfn> copy constructor, because the other metadata contained in the
       * given object are not recursively copied.
       *
       * @param  object  the metadata to copy values from, or {@code null} if none.
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java
index 9f8b3eae59,0ce3e6fbeb..1728155a94
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/identification/DefaultOperationMetadata.java
@@@ -137,9 -121,25 +137,9 @@@ public class DefaultOperationMetadata e
      public DefaultOperationMetadata() {
      }
  
 -    /**
 -     * Constructs a new operation metadata initialized to the specified values.
 -     *
 -     * @param operationName  an unique identifier for this interface.
 -     * @param platform       distributed computing platforms on which the operation has been implemented.
 -     * @param connectPoint   handle for accessing the service interface.
 -     */
 -    public DefaultOperationMetadata(final String operationName,
 -                                    final DistributedComputingPlatform platform,
 -                                    final OnlineResource connectPoint)
 -    {
 -        this.operationName                 = operationName;
 -        this.distributedComputingPlatforms = singleton(platform, DistributedComputingPlatform.class);
 -        this.connectPoints                 = singleton(connectPoint, OnlineResource.class);
 -    }
 -
      /**
       * Constructs a new instance initialized with the values from the specified metadata object.
-      * This is a <cite>shallow</cite> copy constructor, since the other metadata contained in the
+      * This is a <dfn>shallow</dfn> copy constructor, because the other metadata contained in the
       * given object are not recursively copied.
       *
       * @param  object  the metadata to copy values from, or {@code null} if none.
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java
index a3cc791f75,6f67d60fd5..45582a7c17
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractElement.java
@@@ -284,8 -285,8 +285,8 @@@ public class AbstractElement extends IS
       *
       * @see #getEvaluationMethodProperty(Function)
       */
 -    private <V> V getMeasureReferenceProperty(final Function<MeasureReference,V> getter) {
 -        final MeasureReference m = getMeasureReference();
 +    private <V> V getMeasureReferenceProperty(final Function<DefaultMeasureReference,V> getter) {
-         final DefaultMeasureReference m = measureReference;
++        final DefaultMeasureReference m = getMeasureReference();
          return (m != null) && FilterByVersion.LEGACY_METADATA.accept() ? getter.apply(m) : null;
      }
  
@@@ -318,10 -320,17 +320,14 @@@
          if (!FilterByVersion.LEGACY_METADATA.accept()) {
              return null;
          }
-         if (measureReference == null) {
-             measureReference = new DefaultMeasureReference();
 -        MeasureReference m = getMeasureReference();
++        DefaultMeasureReference m = getMeasureReference();
+         if (m == null) {
+             if (state() == State.FINAL) {
+                 return Collections.emptyList();
+             }
+             setMeasureReference(m = new DefaultMeasureReference());
          }
-         return measureReference.getNamesOfMeasure();
 -        if (m instanceof DefaultMeasureReference) {
 -            return ((DefaultMeasureReference) m).getNamesOfMeasure();
 -        }
 -        return Collections.unmodifiableCollection(m.getNamesOfMeasure());
++        return m.getNamesOfMeasure();
      }
  
      /**
@@@ -347,9 -356,10 +353,10 @@@
       */
      @Override
      @Deprecated
+     @Dependencies("getMeasureReference")
      @XmlElement(name = "measureIdentification", namespace = LegacyNamespaces.GMD)
      public Identifier getMeasureIdentification() {
 -        return getMeasureReferenceProperty(MeasureReference::getMeasureIdentification);
 +        return getMeasureReferenceProperty(DefaultMeasureReference::getMeasureIdentification);
      }
  
      /**
@@@ -373,9 -383,10 +380,10 @@@
       */
      @Override
      @Deprecated
+     @Dependencies("getMeasureReference")
      @XmlElement(name = "measureDescription", namespace = LegacyNamespaces.GMD)
      public InternationalString getMeasureDescription() {
 -        return getMeasureReferenceProperty(MeasureReference::getMeasureDescription);
 +        return getMeasureReferenceProperty(DefaultMeasureReference::getMeasureDescription);
      }
  
      /**
@@@ -421,8 -432,8 +429,8 @@@
       *
       * @see #getMeasureReferenceProperty(Function)
       */
 -    private <V> V getEvaluationMethodProperty(final Function<EvaluationMethod,V> getter) {
 -        final EvaluationMethod m = getEvaluationMethod();
 +    private <V> V getEvaluationMethodProperty(final Function<DefaultEvaluationMethod,V> getter) {
-         final DefaultEvaluationMethod m = evaluationMethod;
++        final DefaultEvaluationMethod m = getEvaluationMethod();
          return (m != null) && FilterByVersion.LEGACY_METADATA.accept() ? getter.apply(m) : null;
      }
  
@@@ -450,9 -461,10 +458,10 @@@
       */
      @Override
      @Deprecated
+     @Dependencies("getEvaluationMethod")
      @XmlElement(name = "evaluationMethodType", namespace = LegacyNamespaces.GMD)
      public EvaluationMethodType getEvaluationMethodType() {
 -        return getEvaluationMethodProperty(EvaluationMethod::getEvaluationMethodType);
 +        return getEvaluationMethodProperty(DefaultEvaluationMethod::getEvaluationMethodType);
      }
  
      /**
@@@ -476,9 -488,10 +485,10 @@@
       */
      @Override
      @Deprecated
+     @Dependencies("getEvaluationMethod")
      @XmlElement(name = "evaluationMethodDescription", namespace = LegacyNamespaces.GMD)
      public InternationalString getEvaluationMethodDescription() {
 -        return getEvaluationMethodProperty(EvaluationMethod::getEvaluationMethodDescription);
 +        return getEvaluationMethodProperty(DefaultEvaluationMethod::getEvaluationMethodDescription);
      }
  
      /**
@@@ -502,9 -515,10 +512,10 @@@
       */
      @Override
      @Deprecated
+     @Dependencies("getEvaluationMethod")
      @XmlElement(name = "evaluationProcedure", namespace = LegacyNamespaces.GMD)
      public Citation getEvaluationProcedure() {
 -        return getEvaluationMethodProperty(EvaluationMethod::getEvaluationProcedure);
 +        return getEvaluationMethodProperty(DefaultEvaluationMethod::getEvaluationProcedure);
      }
  
      /**
@@@ -536,10 -550,17 +547,14 @@@
          if (!FilterByVersion.LEGACY_METADATA.accept()) {
              return null;
          }
-         if (evaluationMethod == null) {
-             evaluationMethod = new DefaultEvaluationMethod();
 -        EvaluationMethod m = getEvaluationMethod();
++        DefaultEvaluationMethod m = getEvaluationMethod();
+         if (m == null) {
+             if (state() == State.FINAL) {
+                 return Collections.emptyList();
+             }
+             setEvaluationMethod(m = new DefaultEvaluationMethod());
          }
-         return evaluationMethod.getDates();
 -        if (m instanceof DefaultEvaluationMethod) {
 -            return ((DefaultEvaluationMethod) m).getDates();
 -        }
 -        return Collections.unmodifiableCollection(m.getDates());
++        return m.getDates();
      }
  
      /**
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalQuality.java
index d7df70d3ee,6f10e650c1..4bf707b888
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalQuality.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/AbstractTemporalQuality.java
@@@ -100,8 -95,8 +100,8 @@@ public class AbstractTemporalQuality ex
       *   <li>Otherwise if the given object is already an instance of
       *       {@code AbstractTemporalQuality}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code AbstractTemporalQuality} instance is created using the
 -     *       {@linkplain #AbstractTemporalQuality(TemporalQuality) copy constructor} and returned.
 +     *       {@linkplain #AbstractTemporalQuality(TemporalAccuracy) copy constructor} and returned.
-      *       Note that this is a <cite>shallow</cite> copy operation, since the other
+      *       Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java
index c9f5b61e09,4be6b40559..eac6ba4165
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultCoverageResult.java
@@@ -27,14 -27,9 +27,15 @@@ import org.opengis.metadata.distributio
  import org.opengis.metadata.distribution.DataFile;
  import org.opengis.metadata.spatial.SpatialRepresentation;
  import org.opengis.metadata.spatial.SpatialRepresentationType;
+ import org.apache.sis.internal.jaxb.FilterByVersion;
  import org.apache.sis.internal.xml.LegacyNamespaces;
  
 +// Branch-dependent imports
 +import org.opengis.annotation.UML;
 +
 +import static org.opengis.annotation.Obligation.CONDITIONAL;
 +import static org.opengis.annotation.Specification.UNSPECIFIED;
 +
  
  /**
   * Result of a data quality measure organising the measured values as a coverage.
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeCorrectness.java
index 02d68ee068,fc6de47784..0e9364294d
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeCorrectness.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultNonQuantitativeAttributeCorrectness.java
@@@ -91,8 -87,8 +91,8 @@@ public class DefaultNonQuantitativeAttr
       *   <li>Otherwise if the given object is already an instance of
       *       {@code DefaultNonQuantitativeAttributeCorrectness}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code DefaultNonQuantitativeAttributeCorrectness} instance is created using the
 -     *       {@linkplain #DefaultNonQuantitativeAttributeCorrectness(NonQuantitativeAttributeCorrectness) copy constructor}
 +     *       {@linkplain #DefaultNonQuantitativeAttributeCorrectness(NonQuantitativeAttributeAccuracy) copy constructor}
-      *       and returned. Note that this is a <cite>shallow</cite> copy operation, since the other
+      *       and returned. Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsabilityElement.java
index c2ac2a8366,db280848a7..b93e3fba3d
--- a/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsabilityElement.java
+++ b/core/sis-metadata/src/main/java/org/apache/sis/metadata/iso/quality/DefaultUsabilityElement.java
@@@ -89,8 -84,8 +89,8 @@@ public class DefaultUsabilityElement ex
       *   <li>Otherwise if the given object is already an instance of
       *       {@code DefaultUsabilityElement}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code DefaultUsabilityElement} instance is created using the
 -     *       {@linkplain #DefaultUsabilityElement(UsabilityElement) copy constructor} and returned.
 +     *       {@linkplain #DefaultUsabilityElement(Usability) copy constructor} and returned.
-      *       Note that this is a <cite>shallow</cite> copy operation, since the other
+      *       Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/constraint/DefaultLegalConstraintsTest.java
index b8a86355d5,58012543f8..6bb9b4d7f9
--- a/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/constraint/DefaultLegalConstraintsTest.java
+++ b/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/constraint/DefaultLegalConstraintsTest.java
@@@ -77,8 -78,9 +78,8 @@@ public final strictfp class DefaultLega
                  "<mco:MD_LegalConstraints xmlns:mco=\"" + Namespaces.MCO + "\">\n" +
                  "  <mco:useConstraints>\n" +
                  "    <mco:MD_RestrictionCode"
-                         + " codeList=\"http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#MD_RestrictionCode\""
+                         + " codeList=\"" + ISO_NAMESPACE + "19115/resources/Codelist/cat/codelists.xml#MD_RestrictionCode\""
 -                        + " codeListValue=\"licence\""
 -                        + " codeSpace=\"eng\">Licence</mco:MD_RestrictionCode>\n" +
 +                        + " codeListValue=\"licence\">License</mco:MD_RestrictionCode>\n" +
                  "  </mco:useConstraints>\n" +
                  "</mco:MD_LegalConstraints>\n";
  
diff --cc core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/content/DefaultBandTest.java
index 5bd0cf1319,04ad0f1553..ec8cc4c1f9
--- a/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/content/DefaultBandTest.java
+++ b/core/sis-metadata/src/test/java/org/apache/sis/metadata/iso/content/DefaultBandTest.java
@@@ -47,7 -48,7 +48,7 @@@ public final strictfp class DefaultBand
              + "  </mrc:nominalSpatialResolution>\n"
              + "  <mrc:detectedPolarisation>\n"
              + "    <mrc:MI_PolarisationOrientationCode "    // Spell with "s" in 2014 schema.
-             +       "codeList=\"http://standards.iso.org/iso/19115/resources/Codelist/cat/codelists.xml#MI_PolarizationOrientationCode\" codeListValue=\"vertical\">"
 -            +       "codeList=\"" + ISO_NAMESPACE + "19115/resources/Codelist/cat/codelists.xml#MI_PolarisationOrientationCode\" codeListValue=\"vertical\">"
++            +       "codeList=\"" + ISO_NAMESPACE + "19115/resources/Codelist/cat/codelists.xml#MI_PolarizationOrientationCode\" codeListValue=\"vertical\">"
              +       "Vertical"
              +     "</mrc:MI_PolarisationOrientationCode>\n"
              + "  </mrc:detectedPolarisation>\n"
diff --cc core/sis-metadata/src/test/java/org/apache/sis/xml/CharSequenceSubstitutionTest.java
index bf4d43a339,78ab9b08b2..4dc4213918
--- a/core/sis-metadata/src/test/java/org/apache/sis/xml/CharSequenceSubstitutionTest.java
+++ b/core/sis-metadata/src/test/java/org/apache/sis/xml/CharSequenceSubstitutionTest.java
@@@ -31,10 -31,8 +31,11 @@@ import org.apache.sis.test.xml.TestCase
  import org.junit.Test;
  
  import static org.apache.sis.test.MetadataAssert.*;
+ import static org.apache.sis.internal.metadata.ImplementationHelper.ISO_NAMESPACE;
  
 +// Branch-dependent imports
 +import org.opengis.referencing.ReferenceIdentifier;
 +
  
  /**
   * Tests the XML marshalling of {@code Anchor} and {@code CodeList} as substitution of {@code <gco:CharacterSequence>}.
diff --cc core/sis-referencing/src/main/java/org/apache/sis/referencing/ImmutableIdentifier.java
index 8fb5f68d3b,96a04d970b..812d0ecfbb
--- a/core/sis-referencing/src/main/java/org/apache/sis/referencing/ImmutableIdentifier.java
+++ b/core/sis-referencing/src/main/java/org/apache/sis/referencing/ImmutableIdentifier.java
@@@ -338,8 -327,8 +338,8 @@@ public class ImmutableIdentifier extend
       *   <li>Otherwise if the given object is already an instance of
       *       {@code ImmutableIdentifier}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code ImmutableIdentifier} instance is created using the
 -     *       {@linkplain #ImmutableIdentifier(Identifier) copy constructor} and returned.
 +     *       {@linkplain #ImmutableIdentifier(ReferenceIdentifier) copy constructor} and returned.
-      *       Note that this is a <cite>shallow</cite> copy operation, since the other
+      *       Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-referencing/src/main/java/org/apache/sis/referencing/NamedIdentifier.java
index 8c7cdd82ad,c910419159..02745661c1
--- a/core/sis-referencing/src/main/java/org/apache/sis/referencing/NamedIdentifier.java
+++ b/core/sis-referencing/src/main/java/org/apache/sis/referencing/NamedIdentifier.java
@@@ -340,8 -340,8 +340,8 @@@ public class NamedIdentifier extends Im
       *   <li>Otherwise if the given object is already an instance of
       *       {@code NamedIdentifier}, then it is returned unchanged.</li>
       *   <li>Otherwise a new {@code NamedIdentifier} instance is created using the
 -     *       {@linkplain #NamedIdentifier(Identifier) copy constructor} and returned.
 +     *       {@linkplain #NamedIdentifier(ReferenceIdentifier) copy constructor} and returned.
-      *       Note that this is a <cite>shallow</cite> copy operation, since the other
+      *       Note that this is a <dfn>shallow</dfn> copy operation, because the other
       *       metadata contained in the given object are not recursively copied.</li>
       * </ul>
       *
diff --cc core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java
index 1f6f83a557,6603f81713..3bfd6f8dd1
--- a/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java
+++ b/core/sis-referencing/src/main/java/org/apache/sis/referencing/crs/AbstractCRS.java
@@@ -344,10 -344,10 +344,10 @@@ public class AbstractCRS extends Abstra
                   * Copy properties (scope, domain of validity) except the identifier (e.g. "EPSG:4326")
                   * because the modified CRS is no longer conform to the authoritative definition.
                   * If name contains a namespace (e.g. "EPSG"), remove that namespace for the same reason.
-                  * For example "EPSG:WGS 84" will become simply "WGS 84".
+                  * For example, "EPSG:WGS 84" will become simply "WGS 84".
                   */
                  Map<String,?> properties = IdentifiedObjects.getProperties(this, IDENTIFIERS_KEY);
 -                Identifier name = getName();
 +                ReferenceIdentifier name = getName();
                  if (name.getCodeSpace() != null || name.getAuthority() != null) {
                      name = new NamedIdentifier(null, name.getCode());
                      final Map<String,Object> copy = new HashMap<>(properties);
diff --cc storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/AttributeNames.java
index 8990c75ab2,777156f777..6b9de09d8c
--- a/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/AttributeNames.java
+++ b/storage/sis-netcdf/src/main/java/org/apache/sis/storage/netcdf/AttributeNames.java
@@@ -1158,10 -1158,10 +1158,10 @@@ public class AttributeNames 
  
      /**
       * The {@value} attribute name for a URL that gives the location of more complete metadata.
-      * For example it may be the URL to an ISO 19115 metadata in XML format.
+      * For example, it may be the URL to an ISO 19115 metadata in XML format.
       *
       * <p><b>Path in ISO 19115:</b></p> <ul><li>{@link Metadata} /
 -     * {@link Metadata#getMetadataLinkages() metadataLinkage} /
 +     * {@code metadataLinkage} /
       * {@link OnlineResource#getLinkage() linkage}</li></ul>
       *
       * @see <a href="http://wiki.esipfed.org/index.php/Attribute_Convention_for_Data_Discovery#metadata_link">ESIP reference</a>
diff --cc storage/sis-storage/src/main/java/org/apache/sis/internal/storage/MetadataBuilder.java
index b354269e19,65cceee3ab..18e4d49f20
--- a/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/MetadataBuilder.java
+++ b/storage/sis-storage/src/main/java/org/apache/sis/internal/storage/MetadataBuilder.java
@@@ -1999,12 -1996,12 +1999,12 @@@ parse:      for (int i = 0; i < length;
       *
       * @param  type         the feature type to add, or {@code null} for no-operation.
       * @param  occurrences  number of instances of the given feature type, or a negative value if unknown.
-      *         Note that ISO-19115 considers 0 as an invalid value. Consequently if 0, the feature is not added.
+      *         Note that ISO-19115 considers 0 as an invalid value. Consequently, if 0, the feature is not added.
       * @return the name of the added feature (even if not added to the metadata), or {@code null} if none.
       *
 -     * @see FeatureCatalogBuilder#define(FeatureType)
 +     * @see FeatureCatalogBuilder#define(DefaultFeatureType)
       */
 -    public final GenericName addFeatureType(final FeatureType type, final long occurrences) {
 +    public final GenericName addFeatureType(final DefaultFeatureType type, final long occurrences) {
          if (type == null) {
              return null;
          }
diff --cc storage/sis-storage/src/main/java/org/apache/sis/storage/aggregate/JoinFeatureSet.java
index 590fb9ba69,f4a856dcd5..9d7d340da0
--- a/storage/sis-storage/src/main/java/org/apache/sis/storage/aggregate/JoinFeatureSet.java
+++ b/storage/sis-storage/src/main/java/org/apache/sis/storage/aggregate/JoinFeatureSet.java
@@@ -327,10 -329,10 +327,10 @@@ public class JoinFeatureSet extends Agg
       * Iterator over the features resulting from the inner or outer join operation.
       * The {@link #run()} method disposes the resources.
       */
 -    private final class Iterator implements Spliterator<Feature>, Consumer<Feature>, Runnable {
 +    private final class Iterator implements Spliterator<AbstractFeature>, Consumer<AbstractFeature>, Runnable {
          /**
           * The main stream or a split iterator to close when the {@link #run()} method will be invoked.
-          * This is initially the stream from which {@link #mainIterator} has been created. However if
+          * This is initially the stream from which {@link #mainIterator} has been created. However, if
           * {@link #trySplit()} has been invoked, then this handler may be the other {@code Iterator}
           * instance which itself contains a reference to the stream to close, thus forming a chain.
           */
diff --cc storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java
index 8f16893ddf,49df1d9c4b..b0dd51102d
--- a/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java
+++ b/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/gpx/Person.java
@@@ -46,9 -52,9 +46,9 @@@ import org.opengis.metadata.citation.Re
   * Those properties can be read or modified directly. All methods defined in this class are bridges to
   * the ISO 19115 metadata model and can be ignored if the user only wants to manipulate the GPX model.
   *
 - * <p>Note that {@link Party} is an abstract type in ISO 19115 model. We are supposed to implement a subtype
 - * ({@link org.opengis.metadata.citation.Individual} or {@link org.opengis.metadata.citation.Organisation}).
 + * <p>Note that {@code Party} is an abstract type in ISO 19115 model. We are supposed to implement a subtype
 + * ({@code Individual} or {@code Organisation}).
-  * However the GPX metadata does not specifies whether the "person" is actually an individual or an organization.
+  * However, the GPX metadata does not specifies whether the "person" is actually an individual or an organization.
   * In this situation of doubt, we do not select a subtype for avoiding to provide a wrong information.</p>
   *
   * @author  Johann Sorel (Geomatys)