# Interface Identification

All Known Subinterfaces:
  `DataIdentification, ServiceIdentification`

All Known Implementing Classes:
  `AbstractIdentification, DefaultDataIdentification, DefaultServiceIdentification`

@UML(identifier="MD_Identification", specification=ISO_19115) public interface Identification
Basic information required to uniquely identify a resource or resources.

Since:
  2.0

- ## Method Summary

  Modifier and Type
  Method
  Description
  `InternationalString`
  `getAbstract()`
  Brief narrative summary of the content of the resource(s).
  `Collection<? extends AggregateInformation>`
  `getAggregationInfo()`
  Provides aggregate dataset information.
  `Citation`
  `getCitation()`
  Citation data for the resource(s).
  `Collection<String>`
  `getCredits()`
  Recognition of those who contributed to the resource(s).
  `Collection<? extends Keywords>`
  `getDescriptiveKeywords()`
  Provides category keywords, their type, and reference source.
  `Collection<? extends BrowseGraphic>`
  `getGraphicOverviews()`
  Provides a graphic that illustrates the resource(s) (should include a legend for the graphic).
  `Collection<? extends ResponsibleParty>`
  `getPointOfContacts()`
  Identification of, and means of communication with, person(s) and organizations(s) associated with the resource(s).
  `InternationalString`
  `getPurpose()`
  Summary of the intentions with which the resource(s) was developed.
  `Collection<? extends Constraints>`
  `getResourceConstraints()`
  Provides information about constraints which apply to the resource(s).
  `Collection<? extends Format>`
  `getResourceFormats()`
  Provides a description of the format of the resource(s).
  `Collection<? extends MaintenanceInformation>`
  `getResourceMaintenances()`
  Provides information about the frequency of resource updates, and the scope of those updates.
  `Collection<? extends Usage>`
  `getResourceSpecificUsages()`
  Provides basic information about specific application(s) for which the resource(s) has/have been or is being used by different users.
  `Collection<Progress>`
  `getStatus()`
  Status of the resource(s).

- ## Method Details

  - ### getCitation

    @Profile(level=CORE) @UML(identifier="citation", obligation=MANDATORY, specification=ISO_19115) Citation getCitation()
    Citation data for the resource(s).
    Returns:
      Citation data for the resource(s).

  - ### getAbstract

    @Profile(level=CORE) @UML(identifier="abstract", obligation=MANDATORY, specification=ISO_19115) InternationalString getAbstract()
    Brief narrative summary of the content of the resource(s).
    Returns:
      Brief narrative summary of the content.

  - ### getPurpose

    @UML(identifier="purpose", obligation=OPTIONAL, specification=ISO_19115) InternationalString getPurpose()
    Summary of the intentions with which the resource(s) was developed.
    Returns:
      The intentions with which the resource(s) was developed, or `null`.

  - ### getCredits

    @UML(identifier="credit", obligation=OPTIONAL, specification=ISO_19115) Collection<String> getCredits()
    Recognition of those who contributed to the resource(s).
    Returns:
      Recognition of those who contributed to the resource(s).

  - ### getStatus

    @UML(identifier="status", obligation=OPTIONAL, specification=ISO_19115) Collection<Progress> getStatus()
    Status of the resource(s).
    Returns:
      Status of the resource(s), or `null`.

  - ### getPointOfContacts

    @Profile(level=CORE) @UML(identifier="pointOfContact", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends ResponsibleParty> getPointOfContacts()
    Identification of, and means of communication with, person(s) and organizations(s) associated with the resource(s).
    Returns:
      Means of communication with person(s) and organizations(s) associated with the resource(s).

  - ### getResourceMaintenances

    @UML(identifier="resourceMaintenance", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends MaintenanceInformation> getResourceMaintenances()
    Provides information about the frequency of resource updates, and the scope of those updates.
    Returns:
      Frequency and scope of resource updates.

  - ### getGraphicOverviews

    @UML(identifier="graphicOverview", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends BrowseGraphic> getGraphicOverviews()
    Provides a graphic that illustrates the resource(s) (should include a legend for the graphic).
    Returns:
      A graphic that illustrates the resource(s).

  - ### getResourceFormats

    @UML(identifier="resourceFormat", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends Format> getResourceFormats()
    Provides a description of the format of the resource(s).
    Returns:
      Description of the format.

  - ### getDescriptiveKeywords

    @UML(identifier="descriptiveKeywords", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends Keywords> getDescriptiveKeywords()
    Provides category keywords, their type, and reference source.
    Returns:
      Category keywords, their type, and reference source.

  - ### getResourceSpecificUsages

    @UML(identifier="resourceSpecificUsage", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends Usage> getResourceSpecificUsages()
    Provides basic information about specific application(s) for which the resource(s) has/have been or is being used by different users.
    Returns:
      Information about specific application(s) for which the resource(s) has/have been or is being used.

  - ### getResourceConstraints

    @UML(identifier="resourceConstraints", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends Constraints> getResourceConstraints()
    Provides information about constraints which apply to the resource(s).
    Returns:
      Constraints which apply to the resource(s).

  - ### getAggregationInfo

    @UML(identifier="aggregationInfo", obligation=OPTIONAL, specification=ISO_19115) Collection<? extends AggregateInformation> getAggregationInfo()
    Provides aggregate dataset information.
    Returns:
      Aggregate dataset information.
    Since:
      2.1