Interface Measure


@UML(identifier="DQM_Measure", specification=ISO_19157) public interface Measure
Data quality measure.

Where measures are stored

Measures may be verbose and may not be of interest when only the result of data quality measures is desired. For allowing more compact Elements, ISO 19157 does not store Measure instance directly into Element, but instead stores MeasureReference which can be used for fetching full Measure description from a measure register or catalogue if desired.

GeoAPI extends the ISO 19157 model by allowing Element to provide directly a Measure instance. This optional feature gives access to full measure description without forcing users to connect to a catalogue or measure registry. Implementers can fetch the measure description only when first requested, for example by connecting themselves to a catalogue when Element.getMeasure() is first invoked.

Since:
3.1
See Also:
TODO:
Renamed in 19157:2022: QualityMeasure.
  • Method Details

    • getMeasureIdentifier

      @UML(identifier="measureIdentifier", obligation=MANDATORY, specification=ISO_19157) Identifier getMeasureIdentifier()
      Value uniquely identifying the measure within a namespace. This identifier enables references to the data quality measure within the data quality elements.
      Returns:
      value uniquely identifying the measure within a namespace.
      See Also:
    • getName

      Name of the data quality measure applied to the data. If the measure already has a commonly used name, this name should be used. If no name exists, a name should be chosen that reflects the nature of the measure.
      Returns:
      name of the data quality measure applied to the data.
      See Also:
    • getAliases

      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. More than one alias may be provided.
      Returns:
      others recognized names, abbreviations or short names.
    • getElementNames

      @UML(identifier="elementName", obligation=MANDATORY, specification=ISO_19157) Collection<? extends TypeName> getElementNames()
      Names of the data quality element to which a measure applies. More than one element name may be provided.
      Returns:
      names of the data quality element for which quality is reported.
    • getBasicMeasure

      @UML(identifier="basicMeasure", obligation=CONDITIONAL, specification=ISO_19157) default BasicMeasure getBasicMeasure()
      Predefined basic measure on which this measure is based. If a measure is based on one of the basic measures, it shall be described by its name, definition and value type.

      A variety of measures are based on counting of erroneous items. There are also several measures dealing with the uncertainty of numerical values. In order to avoid repetition, the most common methods of constructing count-related measures, as well as general statistical measures, for one- and two-dimensional random variables should be defined in terms of basic measures.

      Returns:
      predefined basic measure on which this measure is based, or null if none.
      Condition:
      mandatory if this measure is derived from basic measures.
    • getDefinition

      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.
      See Also:
    • 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.

      If the measure uses the concept of errors, it should be stated how an item is classified as incorrect. This is the case when the quality only can be reported as correct or incorrect.

      Returns:
      description of data quality measure, or null if none.
      See Also:
      Condition:
      mandatory if the definition is not sufficient for the understanding of the data quality measure concept.
    • getSourceReferences

      @UML(identifier="sourceReference", obligation=CONDITIONAL, specification=ISO_19157) default Collection<? extends SourceReference> getSourceReferences()
      References to the source of an item that has been adopted from an external source.
      Returns:
      references to the source.
      Condition:
      mandatory is an external source exists.
    • getValueType

      Value type for reporting a data quality result. If a value structure is used, then this method returns the type of components in the value structure. For example if the value structure is matrix, then the value type is typically "Real".
      Returns:
      value type for reporting a data quality result.
      See Also:
    • getValueStructure

      @UML(identifier="valueStructure", obligation=OPTIONAL, specification=ISO_19157) default ValueStructure getValueStructure()
      Structure for reporting a complex data quality result. A result may consist of multiple values. In such cases, the result shall be structured using the value structure. Common value structures are listed below.
      Mapping from ValueStructure to Java type
      Code list value Java or GeoAPI type Description
      bag Collection Finite, unordered collection of related items that may be repeated.
      set Set Unordered collection of related items with no repetition.
      sequence List Finite, ordered collection of related items that may be repeated.
      table Map An arrangement of data in which each item is identified by means of keys.
      matrix Matrix Rectangular array of numbers.
      coverage Coverage Function to return values for any direct position within its domain.
      Returns:
      structure for reporting a complex data quality result, or null if none.
    • getParameters

      @UML(identifier="parameter", obligation=CONDITIONAL, specification=ISO_19157) default Collection<? extends ParameterDescriptor<?>> getParameters()
      Auxiliary variable(s) used by the data quality measure. It shall include its name, definition and value type. More than one measure parameter may be provided.

      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). The mapping from ISO 19115 to GeoAPI is defined as bellow:
      Quality metadata properties mapped to GeoAPI
      DQM_Parameter property ParameterDescriptor property Remarks
      name name.code Value retrofitted in an Identifier object.
      definition name.description Value retrofitted in an Identifier object.
      description.textDescription description
      description.extendedDescription (none)
      valueType valueType
      valueStructure valueClass See ValueStructure.valueOf(Class) for the mapping.
      Returns:
      auxiliary variable(s) used by data quality measure, or an empty collection if none.
      See Also:
      Departure from OGC/ISO abstract specification:
      Departure for harmonization between different specifications Usage of the ISO 19157 DQM_Parameter type has been replaced by usage of the ISO 19111 CC_OperationParameter type, completed with some new DQM_Parameter properties, in order to provide a unified parameter API. Note that CC_OperationParameter is named ParameterDescriptor in GeoAPI to reflect its extended scope.
    • getExamples

      @UML(identifier="example", obligation=OPTIONAL, specification=ISO_19157) default Collection<? extends Description> getExamples()
      Illustrations of the use of a data quality measure. More than one example may be provided.
      Returns:
      examples of applying the measure or the result obtained for the measure.
      See Also: