# Interface Instrument

All Known Implementing Classes:
  `DefaultInstrument`

@UML(identifier="MI_Instrument", specification=ISO_19115_2) public interface Instrument
Designations for the measuring instruments.

Since:
  2.3

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Collection<? extends Citation>`
  `getCitations()`
  Complete citation of the instrument.
  `InternationalString`
  `getDescription()`
  Textual description of the instrument.
  `Identifier`
  `getIdentifier()`
  Unique identification of the instrument.
  `Platform`
  `getMountedOn()`
  Platform on which the instrument is mounted.
  `InternationalString`
  `getType()`
  Name of the type of instrument.

- ## Method Details

  - ### getCitations

    @UML(identifier="citation", obligation=OPTIONAL, specification=ISO_19115_2) Collection<? extends Citation> getCitations()
    Complete citation of the instrument.
    Returns:
      Complete citation of the instrument.

  - ### getIdentifier

    @UML(identifier="identifier", obligation=MANDATORY, specification=ISO_19115_2) Identifier getIdentifier()
    Unique identification of the instrument.
    Returns:
      Unique identification of the instrument.

  - ### getType

    @UML(identifier="type", obligation=MANDATORY, specification=ISO_19115_2) InternationalString getType()
    Name of the type of instrument. Examples: framing, line-scan, push-broom, pan-frame.
    Returns:
      Type of instrument.

  - ### getDescription

    @UML(identifier="description", obligation=OPTIONAL, specification=ISO_19115_2) InternationalString getDescription()
    Textual description of the instrument.
    Returns:
      Textual description.

  - ### getMountedOn

    @UML(identifier="mountedOn", obligation=OPTIONAL, specification=ISO_19115_2) Platform getMountedOn()
    Platform on which the instrument is mounted.
    Returns:
      Platform on which the instrument is mounted.