# Class DefaultQualityMeasure

Object
AbstractMetadata
ModifiableMetadata
ISOMetadata
DefaultQualityMeasure

All Implemented Interfaces:
  `Serializable, Emptiable, LenientComparable, IdentifiedObject`

@UML(identifier="DQM_Measure", specification=UNSPECIFIED) public class DefaultQualityMeasure extends ISOMetadata
Data quality measure. The following properties are mandatory in a well-formed metadata according ISO 19157:
`DQM_Measure` `├─measureIdentifier……` Value uniquely identifying the measure within a namespace. `├─name………………………………………` Name of the data quality measure applied to the data. `├─elementName……………………` Name of the data quality element for which quality is reported. `├─definition………………………` Definition of the fundamental concept for the data quality measure. `└─valueType…………………………` Value type for reporting a data quality result (shall be one of the data types defined in ISO/19103:2005).

## Limitations

- Instances of this class are not synchronized for multi-threading. Synchronization, if needed, is caller's responsibility.
- Serialized objects of this class are not guaranteed to be compatible with future Apache SIS releases. Serialization support is appropriate for short term storage or RMI between applications running the same version of Apache SIS. For long term storage, use `XML` instead.

Since:
  1.3
See Also:
  - Serialized Form

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from class ModifiableMetadata

  `ModifiableMetadata​.State`

- ## Field Summary

  ### Fields inherited from class ISOMetadata

  `identifiers`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DefaultQualityMeasure()`
  Constructs an initially empty element.
  `DefaultQualityMeasure(DefaultQualityMeasure object)`
  Constructs a new instance initialized with the values from the specified metadata object.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Collection<InternationalString>`
  `getAliases()`
  Returns other recognized names, abbreviations or short names for the same data quality measure.
  `DefaultBasicMeasure`
  `getBasicMeasure()`
  Returns predefined basic measure on which this measure is based.
  `InternationalString`
  `getDefinition()`
  Returns the definition of the fundamental concept for the data quality measure.
  `DefaultMeasureDescription`
  `getDescription()`
  Description of the data quality measure.
  `Collection<TypeName>`
  `getElementNames()`
  Returns the names of the data quality element to which a measure applies.
  `Collection<DefaultMeasureDescription>`
  `getExamples()`
  Returns illustrations of the use of a data quality measure.
  `Identifier`
  `getMeasureIdentifier()`
  Returns the value uniquely identifying the measure within a namespace.
  `InternationalString`
  `getName()`
  Returns the name of the data quality measure applied to the data.
  `Collection<ParameterDescriptor<?>>`
  `getParameters()`
  Returns auxiliary variable(s) used by the data quality measure.
  `Collection<DefaultSourceReference>`
  `getSourceReferences()`
  Returns references to the source of an item that has been adopted from an external source.
  `MetadataStandard`
  `getStandard()`
  Returns the metadata standard, which is ISO 19157.
  `TypeName`
  `getValueType()`
  Returns the value type for reporting a data quality result.
  `void`
  `setAliases(Collection<? extends InternationalString> newValues)`
  Sets other recognized names or abbreviations for the same data quality measure.
  `void`
  `setBasicMeasure(DefaultBasicMeasure newValue)`
  Sets the predefined basic measure on which this measure is based.
  `void`
  `setDefinition(InternationalString newValue)`
  Sets the definition of the fundamental concept for the data quality measure.
  `void`
  `setDescription(DefaultMeasureDescription newValue)`
  Sets the description of the data quality measure.
  `void`
  `setElementNames(Collection<? extends TypeName> newValues)`
  Sets the name of the data quality element for which quality is reported.
  `void`
  `setExamples(Collection<? extends DefaultMeasureDescription> newValues)`
  Sets the illustrations of the use of a data quality measure.
  `void`
  `setMeasureIdentifier(Identifier newValue)`
  Sets the value uniquely identifying the measure within a namespace.
  `void`
  `setName(InternationalString newValue)`
  Sets the name of the data quality measure applied to the data.
  `void`
  `setParameters(Collection<? extends ParameterDescriptor<?>> newValues)`
  Sets the auxiliary variable used by the data quality measure.
  `void`
  `setSourceReferences(Collection<? extends DefaultSourceReference> newValues)`
  Sets the reference to the source of an item that has been adopted from an external source.
  `void`
  `setValueType(TypeName newValue)`
  Sets the value type for reporting a data quality result.

  ### Methods inherited from class ISOMetadata

  `getIdentifier, getIdentifierMap, getIdentifiers, setIdentifier`

  ### Methods inherited from class ModifiableMetadata

  `checkWritePermission, copyCollection, copyList, copyMap, copySet, deepCopy, nonNullCollection, nonNullList, nonNullMap, nonNullSet, singleton, state, writeCollection, writeList, writeMap, writeSet`

  ### Methods inherited from class AbstractMetadata

  `asMap, asTreeTable, clone, equals, equals, getInterface, hashCode, isEmpty, nilReasons, prune, toString`

  ### Methods inherited from class Object

  `finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### DefaultQualityMeasure

    public DefaultQualityMeasure()
    Constructs an initially empty element.

  - ### DefaultQualityMeasure

    public DefaultQualityMeasure(DefaultQualityMeasure object)
    Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, because the other metadata contained in the given object are not recursively copied.
    Parameters:
      `object` - the metadata to copy values from, or `null` if none.

- ## Method Details

  - ### getMeasureIdentifier

    @UML(identifier="measureIdentifier", obligation=MANDATORY, specification=UNSPECIFIED) public Identifier getMeasureIdentifier()
    Returns the value uniquely identifying the measure within a namespace.
    Returns:
      value uniquely identifying the measure within a namespace.

  - ### setMeasureIdentifier

    public void setMeasureIdentifier(Identifier newValue)
    Sets the value uniquely identifying the measure within a namespace.
    Parameters:
      `newValue` - the new measure identification.

  - ### getName

    @UML(identifier="name", obligation=MANDATORY, specification=UNSPECIFIED) public InternationalString getName()
    Returns the name of the data quality measure applied to the data.
    Returns:
      name of the data quality measure applied to the data.

  - ### setName

    public void setName(InternationalString newValue)
    Sets the name of the data quality measure applied to the data.
    Parameters:
      `newValue` - the new quality measure name.

  - ### getAliases

    @UML(identifier="alias", obligation=OPTIONAL, specification=UNSPECIFIED) public Collection<InternationalString> getAliases()
    Returns other recognized names, abbreviations or short names for the same data quality measure. It may be a different commonly used name, or an abbreviation, or a short name.
    Returns:
      others recognized names, abbreviations or short names.

  - ### setAliases

    public void setAliases(Collection<? extends InternationalString> newValues)
    Sets other recognized names or abbreviations for the same data quality measure.
    Parameters:
      `newValues` - the new measure aliases.

  - ### getElementNames

    @UML(identifier="elementName", obligation=MANDATORY, specification=UNSPECIFIED) public Collection<TypeName> getElementNames()
    Returns the names of the data quality element to which a measure applies.
    Returns:
      names of the data quality element for which quality is reported.

  - ### setElementNames

    public void setElementNames(Collection<? extends TypeName> newValues)
    Sets the name of the data quality element for which quality is reported.
    Parameters:
      `newValues` - the new measure element names.

  - ### getBasicMeasure

    @UML(identifier="basicMeasure", obligation=CONDITIONAL, specification=UNSPECIFIED) public DefaultBasicMeasure getBasicMeasure()
    Returns predefined basic measure on which this measure is based.
    Returns:
      predefined basic measure on which this measure is based, or `null` if none.

  - ### setBasicMeasure

    public void setBasicMeasure(DefaultBasicMeasure newValue)
    Sets the predefined basic measure on which this measure is based.
    Parameters:
      `newValue` - the new basic measure.

  - ### getDefinition

    @UML(identifier="definition", obligation=MANDATORY, specification=UNSPECIFIED) public InternationalString getDefinition()
    Returns the definition of the fundamental concept for the data quality measure. If the measure is derived from a basic measure, the definition is based on the basic measure definition and specialized for this measure.
    Returns:
      definition of the fundamental concept for the data quality measure.

  - ### setDefinition

    public void setDefinition(InternationalString newValue)
    Sets the definition of the fundamental concept for the data quality measure.
    Parameters:
      `newValue` - the new measure definition.

  - ### getDescription

    @UML(identifier="description", obligation=CONDITIONAL, specification=UNSPECIFIED) public DefaultMeasureDescription getDescription()
    Description of the data quality measure. Includes methods of calculation, with all formulae and/or illustrations needed to establish the result of applying the measure.
    Returns:
      description of data quality measure, or `null` if none.

  - ### setDescription

    public void setDescription(DefaultMeasureDescription newValue)
    Sets the description of the data quality measure.
    Parameters:
      `newValue` - the new measure description.

  - ### getSourceReferences

    @UML(identifier="sourceReference", obligation=CONDITIONAL, specification=UNSPECIFIED) public Collection<DefaultSourceReference> getSourceReferences()
    Returns references to the source of an item that has been adopted from an external source.
    Returns:
      references to the source.

  - ### setSourceReferences

    public void setSourceReferences(Collection<? extends DefaultSourceReference> newValues)
    Sets the reference to the source of an item that has been adopted from an external source.
    Parameters:
      `newValues` - the new source references.

  - ### getValueType

    @UML(identifier="valueType", obligation=MANDATORY, specification=UNSPECIFIED) public TypeName getValueType()
    Returns the value type for reporting a data quality result.
    Returns:
      value type for reporting a data quality result.

  - ### setValueType

    public void setValueType(TypeName newValue)
    Sets the value type for reporting a data quality result.
    Parameters:
      `newValue` - the new measure value type.

  - ### getParameters

    @UML(identifier="parameter", obligation=CONDITIONAL, specification=UNSPECIFIED) public Collection<ParameterDescriptor<?>> getParameters()
    Returns auxiliary variable(s) used by the data quality measure. It shall include its name, definition and value type.

    #### Unified parameter API

    In GeoAPI, the `DQM_Parameter` type defined by ISO 19157 is replaced by `ParameterDescriptor` in order to provide a single parameter API. See `org​.opengis​.parameter` for more information.
    Returns:
      auxiliary variable(s) used by data quality measure.

  - ### setParameters

    public void setParameters(Collection<? extends ParameterDescriptor<?>> newValues)
    Sets the auxiliary variable used by the data quality measure.
    Parameters:
      `newValues` - the new measure parameters.

  - ### getExamples

    @UML(identifier="example", obligation=OPTIONAL, specification=UNSPECIFIED) public Collection<DefaultMeasureDescription> getExamples()
    Returns illustrations of the use of a data quality measure.
    Returns:
      examples of applying the measure or the result obtained for the measure.

  - ### setExamples

    public void setExamples(Collection<? extends DefaultMeasureDescription> newValues)
    Sets the illustrations of the use of a data quality measure.
    Parameters:
      `newValues` - the new examples.

  - ### getStandard

    public MetadataStandard getStandard()
    Returns the metadata standard, which is ISO 19157.
    Overrides:
      `getStandard` in class `ISOMetadata`
    Returns:
      the metadata standard, which is ISO 19157.