Package org.apache.sis.storage.netcdf

## Class AttributeNames

- Object
- - AttributeNames

-     public class AttributeNames
      extends Object

  Name of attributes used in the mapping from/to netCDF metadata to ISO 19115 metadata. The attributes recognized by SIS are listed below:

  > List of all netCDF attributes
  > "acces_constraint" "acknowledgement" "comment" "contributor_email" "contributor_name" "contributor_role" "contributor_url" "creator_email" "creator_name" "creator_type" "creator_url" "cdm_data_type" "date_created" "date_issued" "date_metadata_modified" "date_modified" "flag_masks" "flag_meanings" "flag_names" "flag_values" "full_name" | "geographic_identifier" "geospatial_bounds" "geospatial_bounds_crs" "geospatial_bounds_vertical_crs" "geospatial_lat_max" "geospatial_lat_min" "geospatial_lat_resolution" "geospatial_lat_units" "geospatial_lon_max" "geospatial_lon_min" "geospatial_lon_resolution" "geospatial_lon_units" "geospatial_vertical_max" "geospatial_vertical_min" "geospatial_vertical_positive" "geospatial_vertical_resolution" "geospatial_vertical_units" "history" "id" "institution" | "keywords" "keywords_vocabulary" "license" "metadata_creation" "metadata_link" "name" "processing_level" "product_version" "program" "project" "publisher_email" "publisher_name" "publisher_type" "publisher_url" "purpose" "references" "source" "standard_name" "standard_name_vocabulary" "summary" | "time_coverage_duration" "time_coverage_end" "time_coverage_resolution" "time_coverage_start" "time_coverage_units" "title" "topic_category"

  References:

  - NetCDF Attribute Convention for Dataset Discovery wiki
  - UnidataDD2MI.xsl file
  Since:
    0.3

  Defined in the `sis-netcdf` module

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `AttributeNames.Dimension` | Holds the attribute names describing a simple latitude, longitude, and vertical bounding box.
    `static class` | `AttributeNames.Responsible` | Holds the attribute names describing a responsible party.
    `static class` | `AttributeNames.Term` | Holds the attribute names describing a term together with a vocabulary (or naming authority).

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `ACCESS_CONSTRAINT` | The "acces_constraint" attribute name for the access constraints applied to assure the protection of privacy or intellectual property.
    `static String` | `ACKNOWLEDGEMENT` | The "acknowledgement" attribute name for a place to acknowledge various type of support for the project that produced this data (Recommended).
    `static String` | `COMMENT` | The "comment" attribute name for miscellaneous information about the data (Recommended).
    `static AttributeNames.Responsible` | `CONTRIBUTOR` | The set of attribute names for the contributor (Suggested).
    `static AttributeNames.Responsible` | `CREATOR` | The set of attribute names for the creator (Recommended).
    `static String` | `DATA_TYPE` | The "cdm_data_type" attribute name for the THREDDS data type appropriate for this dataset (Recommended).
    `static String` | `DATE_CREATED` | The "date_created" attribute name for the date on which the data was created (Recommended).
    `static String` | `DATE_ISSUED` | The "date_issued" attribute name for a date on which this data was formally issued (Suggested).
    `static String` | `DATE_MODIFIED` | The "date_modified" attribute name for the date on which this data was last modified (Suggested).
    `static String` | `FLAG_MASKS` | The "flag_masks" attribute name for bitmask to apply on sample values before to compare them to the flag values.
    `static String` | `FLAG_MEANINGS` | The "flag_meanings" attribute name for the meaning of flag values.
    `static String` | `FLAG_NAMES` | The "flag_names" attribute name for the designation associated with a range element.
    `static String` | `FLAG_VALUES` | The "flag_values" attribute name for sample values to be flagged.
    `static String` | `GEOGRAPHIC_IDENTIFIER` | The "geographic_identifier" attribute name for an identifier of the geographic area.
    `static String` | `GEOSPATIAL_BOUNDS` | Data's 2D or 3D geospatial extent in OGC's Well-Known Text (WKT) geometry format.
    `static String` | `HISTORY` | The "history" attribute name for providing an audit trail for modifications to the original data (Recommended).
    `static AttributeNames.Term` | `IDENTIFIER` | The set of attribute names for an identifier (Recommended).
    `static AttributeNames.Term` | `INSTRUMENT` | The set of attribute names for the contributing instrument(s) or sensor(s) used to create the resource(s).
    `static AttributeNames.Term` | `KEYWORDS` | The set of attribute names for a comma separated list of key words and phrases (Highly Recommended).
    `static AttributeNames.Dimension` | `LATITUDE` | The set of attribute names for the minimal and maximal latitudes of the bounding box, resolution and units.
    `static String` | `LICENSE` | The "license" attribute name for a description of the restrictions to data access and distribution (Recommended).
    `static AttributeNames.Dimension` | `LONGITUDE` | The set of attribute names for the minimal and maximal longitudes of the bounding box, resolution and units.
    `static String` | `METADATA_CREATION` | The "metadata_creation" attribute name for the date on which the metadata was created (Suggested).
    `static String` | `METADATA_LINK` | The "metadata_link" attribute name for a URL that gives the location of more complete metadata.
    `static String` | `METADATA_MODIFIED` | The "date_metadata_modified" attribute name for the date on which the metadata has been modified (Suggested).
    `static AttributeNames.Term` | `PLATFORM` | The set of attribute names for the platform(s) that supported the sensors used to create the resource(s).
    `static String` | `PROCESSING_LEVEL` | The "processing_level" attribute name for a textual description of the processing (or quality control) level of the data.
    `static String` | `PRODUCT_VERSION` | The "product_version" attribute for version identifier of the data file or product as assigned by the data creator (Suggested).
    `static AttributeNames.Term` | `PROGRAM` | The set of attribute names for the overarching program(s) of which the dataset is a part (Suggested).
    `static String` | `PROJECT` | The "project" attribute name for the scientific project that produced the data (Recommended).
    `static AttributeNames.Responsible` | `PUBLISHER` | The set of attribute names for the publisher (Suggested).
    `static String` | `PURPOSE` | The "purpose" attribute name for the summary of the intentions with which the resource(s) was developed.
    `static String` | `REFERENCES` | The "references" attribute name for bibliographical references.
    `static String` | `SOURCE` | The "source" attribute name for the method of production of the original data (Recommended).
    `static AttributeNames.Term` | `STANDARD_NAME` | The set of attribute names for a long descriptive name for the variable taken from a controlled vocabulary of variable names.
    `static String` | `SUMMARY` | The "summary" attribute name for a paragraph describing the dataset (Highly Recommended).
    `static AttributeNames.Dimension` | `TIME` | The set of attribute names for the start and end times of the bounding box, resolution and units.
    `static String` | `TITLE` | The "title" attribute name for a short description of the dataset (Highly Recommended).
    `static String` | `TOPIC_CATEGORY` | The "topic_category" attribute name for a high-level geographic data thematic classification.
    `static AttributeNames.Dimension` | `VERTICAL` | The set of attribute names for the minimal and maximal elevations of the bounding box, resolution and units.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `AttributeNames()` | For subclass constructors only.

  - ### Method Summary

    - ### Methods inherited from class Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### TITLE

          public static final String TITLE

      The "title" attribute name for a short description of the dataset (Highly Recommended). If no "title" attribute is provided, then `AttributeNames` will look for "full_name" and "name".

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `title`
      See Also:
        `NetcdfFile​.getTitle()`, ESIP reference, Constant Field Values

    - #### SUMMARY

          public static final String SUMMARY

      The "summary" attribute name for a paragraph describing the dataset (Highly Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `abstract`
      See Also:
        ESIP reference, Constant Field Values

    - #### IDENTIFIER

          public static final AttributeNames.Term IDENTIFIER

      The set of attribute names for an identifier (Recommended). The combination of the `"naming_authority"` and the `"id"` should be a globally unique identifier for the dataset.

      Path in ISO 19115:

      - `Metadata` / `fileIdentifier`
      - `Metadata` / `identificationInfo` / `citation` / `identifier` / `code`
      - `Metadata` / `identificationInfo` / `citation` / `identifier` / `authority` / `title`
      See Also:
        `NetcdfFile​.getId()`, ESIP reference

    - #### STANDARD_NAME

          public static final AttributeNames.Term STANDARD_NAME

      The set of attribute names for a long descriptive name for the variable taken from a controlled vocabulary of variable names. This is actually a variable attribute, but sometime appears also in global attributes.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `descriptiveKeywords` / `keyword` with `KeywordType​.THEME`
      - `Metadata` / `identificationInfo` / `descriptiveKeywords` / `thesaurusName` / `title`
      See Also:
        `KEYWORDS`, ESIP reference

    - #### KEYWORDS

          public static final AttributeNames.Term KEYWORDS

      The set of attribute names for a comma separated list of key words and phrases (Highly Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `descriptiveKeywords` / `keyword` with `KeywordType​.THEME`
      - `Metadata` / `identificationInfo` / `descriptiveKeywords` / `thesaurusName` / `title`
      See Also:
        `STANDARD_NAME`, ESIP reference

    - #### TOPIC_CATEGORY

          public static final String TOPIC_CATEGORY

      The "topic_category" attribute name for a high-level geographic data thematic classification. Typical values are `"farming"`, `"biota"`, `"boundaries"`, `"climatology meteorology atmosphere"`, `"economy"`, `"elevation"`, `"environment"`, `"geoscientific information"`, `"health"`, `"imagery base maps earth cover"`, `"intelligence military"`, `"inland waters"`, `"location"`, `"oceans"`, `"planning cadastre"`, `"society"`, `"structure"`, `"transportation"` and `"utilitiesCommunication"`.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `topicCategory`
      See Also:
        `TopicCategory`, Constant Field Values

    - #### DATA_TYPE

          public static final String DATA_TYPE

      The "cdm_data_type" attribute name for the THREDDS data type appropriate for this dataset (Recommended). Examples: `"Vector"`, `"TextTable"`, `"Grid"`, `"Image"`, `"Video"`, `"Tin"`, `"StereoModel"`, `"Station"`, `"Swath"` or `"Trajectory"`.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `spatialRepresentationType`
      See Also:
        `SpatialRepresentationType`, ESIP reference, Constant Field Values

    - #### HISTORY

          public static final String HISTORY

      The "history" attribute name for providing an audit trail for modifications to the original data (Recommended). This is a character array with a line for each invocation of a program that has modified the dataset.

      Path in ISO 19115:

      - `Metadata` / `resourceLineage` / `statement`
      Note: located in "`dataQualityInfo` / `lineage`" instead of "`resourceLineage`" in `UnidataDD2MI​.xsl` file (retrieved in 2017). See SIS-361.
      See Also:
        ESIP reference, Constant Field Values

    - #### SOURCE

          public static final String SOURCE

      The "source" attribute name for the method of production of the original data (Recommended).

      Path in ISO 19115:

      - `Metadata` / `resourceLineage` / `source` / `description`
      Note: located in "`dataQualityInfo` / `lineage`" instead of "`resourceLineage`" in `UnidataDD2MI​.xsl` file (retrieved in 2017). See SIS-361.
      Since:
        0.8
      See Also:
        ESIP reference, Constant Field Values

    - #### COMMENT

          public static final String COMMENT

      The "comment" attribute name for miscellaneous information about the data (Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `supplementalInformation`
      See Also:
        ESIP reference, Constant Field Values

    - #### METADATA_CREATION

          public static final String METADATA_CREATION

      The "metadata_creation" attribute name for the date on which the metadata was created (Suggested). This is actually defined in the "`NCISOMetadata`" subgroup.

      Path in ISO 19115:

      - `Metadata` / `dateInfo` `date` with `DateType​.CREATION`
      See Also:
        Constant Field Values

    - #### METADATA_MODIFIED

          public static final String METADATA_MODIFIED

      The "date_metadata_modified" attribute name for the date on which the metadata has been modified (Suggested).

      Path in ISO 19115:

      - `Metadata` / `dateInfo` `date` with `DateType​.REVISION`
      Since:
        0.8
      See Also:
        Constant Field Values

    - #### DATE_CREATED

          public static final String DATE_CREATED

      The "date_created" attribute name for the date on which the data was created (Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `date` / `date` with `DateType​.CREATION`
      See Also:
        ESIP reference, Constant Field Values

    - #### DATE_MODIFIED

          public static final String DATE_MODIFIED

      The "date_modified" attribute name for the date on which this data was last modified (Suggested).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `date` / `date` with `DateType​.REVISION`
      See Also:
        ESIP reference, Constant Field Values

    - #### DATE_ISSUED

          public static final String DATE_ISSUED

      The "date_issued" attribute name for a date on which this data was formally issued (Suggested).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `date` / `date` with `DateType​.PUBLICATION`
      See Also:
        ESIP reference, Constant Field Values

    - #### PRODUCT_VERSION

          public static final String PRODUCT_VERSION

      The "product_version" attribute for version identifier of the data file or product as assigned by the data creator (Suggested).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `edition`
      See Also:
        ESIP reference, Constant Field Values

    - #### PROGRAM

          public static final AttributeNames.Term PROGRAM

      The set of attribute names for the overarching program(s) of which the dataset is a part (Suggested). Examples: "GHRSST", "NOAA CDR", "NASA EOS", "JPSS", "GOES-R".

      Path in ISO 19115:

      - `Metadata` / `acquisitionInformation` / `operation` / `identifier` / `code`

      This attribute is not yet read by `NetcdfStore`, because we are not sure what would be the most appropriate ISO 19115 location. The above-cited location is experimental and may change in any future Apache SIS version.

      Since:
        0.8
      See Also:
        `PROJECT`, ESIP reference

    - #### PLATFORM

          public static final AttributeNames.Term PLATFORM

      The set of attribute names for the platform(s) that supported the sensors used to create the resource(s).

      Path in ISO 19115:

      - `Metadata` / `acquisitionInformation` / `platform` / `identifier` / `code`
      - `Metadata` / `acquisitionInformation` / `platform` / `identifier` / `authority` / `title`
      Since:
        0.8

    - #### INSTRUMENT

          public static final AttributeNames.Term INSTRUMENT

      The set of attribute names for the contributing instrument(s) or sensor(s) used to create the resource(s).

      Path in ISO 19115:

      - `Metadata` / `acquisitionInformation` / `platform` / `instrument` / `identifier` / `code`
      - `Metadata` / `acquisitionInformation` / `platform` / `instrument` / `identifier` / `authority` / `title`
      Since:
        0.8

    - #### CREATOR

          public static final AttributeNames.Responsible CREATOR

      The set of attribute names for the creator (Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `citedResponsibleParty` with `Role​.ORIGINATOR`
      See Also:
        `CONTRIBUTOR`, `PUBLISHER`, ESIP reference

    - #### CONTRIBUTOR

          public static final AttributeNames.Responsible CONTRIBUTOR

      The set of attribute names for the contributor (Suggested).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation`
      See Also:
        `CREATOR`, `PUBLISHER`, ESIP reference

    - #### PUBLISHER

          public static final AttributeNames.Responsible PUBLISHER

      The set of attribute names for the publisher (Suggested).

      Path in ISO 19115:

      - `Metadata` / `distributionInfo` / `distributors` / `distributorContact` with `Role​.PUBLISHER`
      - `Metadata` / `identificationInfo` / `descriptiveKeywords` / `keyword` with the `"dataCenter"` `KeywordType`
      See Also:
        `CREATOR`, `CONTRIBUTOR`, ESIP reference

    - #### PROJECT

          public static final String PROJECT

      The "project" attribute name for the scientific project that produced the data (Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `descriptiveKeywords` / `keyword` with the `"project"` `KeywordType`
      See Also:
        `PROGRAM`, ESIP reference, Constant Field Values

    - #### PURPOSE

          public static final String PURPOSE

      The "purpose" attribute name for the summary of the intentions with which the resource(s) was developed.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `purpose`
      See Also:
        Constant Field Values

    - #### REFERENCES

          public static final String REFERENCES

      The "references" attribute name for bibliographical references.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `citation` / `otherCitationDetails`
      See Also:
        Constant Field Values

    - #### PROCESSING_LEVEL

          public static final String PROCESSING_LEVEL

      The "processing_level" attribute name for a textual description of the processing (or quality control) level of the data.

      Path in ISO 19115:

      - `Metadata` / `contentInfo` / `processingLevelCode`
      See Also:
        ESIP reference, Constant Field Values

    - #### ACKNOWLEDGEMENT

          public static final String ACKNOWLEDGEMENT

      The "acknowledgement" attribute name for a place to acknowledge various type of support for the project that produced this data (Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `credit`
      Since:
        0.8
      See Also:
        ESIP reference, Constant Field Values

    - #### LICENSE

          public static final String LICENSE

      The "license" attribute name for a description of the restrictions to data access and distribution (Recommended).

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `resourceConstraints` / `useLimitation`
      See Also:
        ESIP reference, Constant Field Values

    - #### ACCESS_CONSTRAINT

          public static final String ACCESS_CONSTRAINT

      The "acces_constraint" attribute name for the access constraints applied to assure the protection of privacy or intellectual property. Typical values are `"copyright"`, `"patent"`, `"patent pending"`, `"trademark"`, `"license"`, `"intellectual property rights"` or `"restricted"`.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `resourceConstraints` / `accessConstraints`
      See Also:
        `Restriction`, Constant Field Values

    - #### GEOGRAPHIC_IDENTIFIER

          public static final String GEOGRAPHIC_IDENTIFIER

      The "geographic_identifier" attribute name for an identifier of the geographic area.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `extent` / `geographicElement` / `geographicIdentifier`
      See Also:
        Constant Field Values

    - #### GEOSPATIAL_BOUNDS

          public static final String GEOSPATIAL_BOUNDS

      Data's 2D or 3D geospatial extent in OGC's Well-Known Text (WKT) geometry format. The Coordinate Reference System is given by `"geospatial_bounds_crs"`, possibly completed by `"geospatial_bounds_vertical_crs"`.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `extent` / `geographicElement` / `polygon`
      Since:
        0.8
      See Also:
        ESIP reference, Constant Field Values

    - #### LATITUDE

          public static final AttributeNames.Dimension LATITUDE

      The set of attribute names for the minimal and maximal latitudes of the bounding box, resolution and units. Latitudes are assumed to be in decimal degrees north, unless a units attribute is specified.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `extent` / `geographicElement` / `southBoundLatitude` or `northBoundLatitude`
      - `Metadata` / `spatialRepresentationInfo` / `axisDimensionProperties` / `resolution`
      See Also:
        `LONGITUDE`, `VERTICAL`, `TIME`, ESIP reference

    - #### LONGITUDE

          public static final AttributeNames.Dimension LONGITUDE

      The set of attribute names for the minimal and maximal longitudes of the bounding box, resolution and units. Longitudes are assumed to be in decimal degrees east, unless a units attribute is specified.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `extent` / `geographicElement` / `westBoundLongitude` or `eastBoundLongitude`
      - `Metadata` / `spatialRepresentationInfo` / `axisDimensionProperties` / `resolution`
      See Also:
        `LATITUDE`, `VERTICAL`, `TIME`, ESIP reference

    - #### VERTICAL

          public static final AttributeNames.Dimension VERTICAL

      The set of attribute names for the minimal and maximal elevations of the bounding box, resolution and units. Elevations are assumed to be in metres above the ground, unless a units attribute is specified.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `extent` / `verticalElement` / `minimumValue` or `maximumValue`
      - `Metadata` / `spatialRepresentationInfo` / `axisDimensionProperties` / `resolution`
      See Also:
        `LATITUDE`, `LONGITUDE`, `TIME`, ESIP reference

    - #### TIME

          public static final AttributeNames.Dimension TIME

      The set of attribute names for the start and end times of the bounding box, resolution and units.

      Path in ISO 19115:

      - `Metadata` / `identificationInfo` / `extent` / `temporalElement` / `extent`
      - `Metadata` / `spatialRepresentationInfo` / `axisDimensionProperties` / `resolution`
      See Also:
        `LATITUDE`, `LONGITUDE`, `VERTICAL`, ESIP reference

    - #### FLAG_NAMES

          public static final String FLAG_NAMES

      The "flag_names" attribute name for the designation associated with a range element. This attribute can be associated to variables. If specified, they shall be one flag name for each flag mask, flag value and flag meaning.

      Path in ISO 19115:

      - `Metadata` / `contentInfo` / `rangeElementDescription` / `name`
      See Also:
        Constant Field Values

    - #### FLAG_MASKS

          public static final String FLAG_MASKS

      The "flag_masks" attribute name for bitmask to apply on sample values before to compare them to the flag values.

      Path in ISO 19115:

      - `Metadata` / `contentInfo` / `rangeElementDescription` / `rangeElement`
      See Also:
        Constant Field Values

    - #### FLAG_VALUES

          public static final String FLAG_VALUES

      The "flag_values" attribute name for sample values to be flagged. The flag masks, flag values and flag meaning attributes, used together, describe a blend of independent boolean conditions and enumerated status codes. A flagged condition is identified by a bitwise AND of the variable value and each flag masks value; a result that matches the flag values value indicates a true condition.

      Path in ISO 19115:

      - `Metadata` / `contentInfo` / `rangeElementDescription` / `rangeElement`
      See Also:
        Constant Field Values

    - #### FLAG_MEANINGS

          public static final String FLAG_MEANINGS

      The "flag_meanings" attribute name for the meaning of flag values. Each flag values and flag masks must coincide with a flag meanings.

      Path in ISO 19115:

      - `Metadata` / `contentInfo` / `rangeElementDescription` / `definition`
      See Also:
        Constant Field Values

    - #### METADATA_LINK

          public static final String METADATA_LINK

      The "metadata_link" 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.

      Path in ISO 19115:

      - `Metadata` / `metadataLinkage` / `linkage`
      Since:
        0.8
      See Also:
        ESIP reference, Constant Field Values

  - ### Constructor Detail

    - #### AttributeNames

          protected AttributeNames()

      For subclass constructors only. `AttributeNames` may be sub-classed by communities defining domain-specific attributes in addition to the ones defined by the CF convention.