Element Description

The Identifier element holds different types of granule identifiers. 


Best Practices

There are three sub-elements that comprise the Data Granule Identifiers:

  • Identifier Type: The value for this field must be selected from a list of known identifier types. If the identifier is not included in the list, the enumeration value of "Other" may be selected, and the provider must specify the identifier's name. Available identifiers include:
    • ProducerGranuleId
    • LocalVersionId
    • FeatureId
    • CRID
    • Other - select "Other" to provide an identifier not included in the list
  • Identifier: The identifier value, e.g. the CRID value, FeatureId value, etc.
  • Identifier Name: The name of the identifier. This field should only be populated if 'Other' is selected as the identifier type. 


Examples:

Identifier Type: "ProducerGranuleId"

Identifier: "MERRA300.prod.assim.tavgU_3d_udt_Cp.200909.hdf"


Identifier Type: "CRID"

Identifier: "R16010"


Identifier Type: "Other"

Identifier: "2013_GR_NASA"

IdentifierName: "ThemeId"


Element Specification

Providing an Identifier is optional. More than 1 different type of identifier may be provided, but each type may only be used once (e.g. only one FeatureId may be provided, only one CRID may be provided, etc.) (Cardinality: 0..1).

ModelElementTypeUsable Valid ValuesConstraintsRequired?CardinalityNotes
UMM-GDataGranule/Identifiers/IdentifierTypeEnumeration

ProducerGranuleId

LocalVersionId

FeatureId

CRID

Other

n/a

Yes, if applicable1

Multiple Identifier Types may be provided, but each enumeration can only be used once in a granule record.

UMM-GDataGranule/Identifiers/IdentifierStringn/a1 - 1024 charactersYes, if applicable1The actual value of the Identifier (e.g. the CRID value, FeatureId value, etc.)
UMM-GDataGranule/Identifiers/IdentifierNameStringn/a1 - 1024 charactersOnly required if "Other" is selected as the IdentifierType0..1If "Other" is selected as the IdentifierType, then this field must be used to provide a name for the identifier.

Metadata Validation and QA/QC

All metadata entering the CMR goes through the below process to ensure metadata quality requirements are met. All records undergo CMR validation before entering the system. The process of QA/QC is slightly different for NASA and non-NASA data providers. Non-NASA providers include inter-agency and international data providers and are referred to as the International Directory Network (IDN).

Please see the expandable sections below for flowchart details.


<>

ARC Priority Matrix

Priority CategorizationJustification

Red = High Priority Finding

This element is categorized as highest priority when:

  • An invalid Identifier Type is provided.
  • Required fields are left blank.
  • The 'Identifier Name' is left blank when the Identifier Type = "Other"
  • The information provided is incorrect for the granule.

Yellow = Medium Priority Finding

Not Applicable 

Blue = Low Priority Finding

Not Applicable

Green = No Findings/Issues

The element is provided and follows all applicable criteria specified in the best practices section above.

ARC Automated Checks

ARC uses the pyQuARC library for automated metadata checks. Please see the pyQuARC GitHub for more information. 

Dialect Mappings

ECHO 10

Providing a Producer Granule Id or Local Version Id is optional in ECHO 10.

There are not special fields in ECHO 10 for CRID, FeatureId, or "Other" IDs. It is recommended that other types of granule identifiers be provided in the Additional Attributes metadata element in ECHO 10.

UMM-G ElementECHO 10 PathTypeConstraintsRequired in ECHO10?CardinalityNotes

DataGranule/Identifiers/IdentifierType = "ProducerGranuleId"

&

DataGranule/Identifiers/Identifier

DataGranule/ProducerGranuleIdString

1 - 128 characters

No0..1

Unique identifier for locally produced granule that ECS ingests and is required to capture.

DataGranule/Identifiers/IdentifierType = "LocalVersionId"

&

DataGranule/Identifiers/Identifier

DataGranule/LocalVersionIdString1 - 80 charactersNo0..1

Granule version identifier for PGE defined granule defined by the producer.


Example Mapping

ECHO 10

<DataGranule>
  <ProducerGranuleId>IDCSI4_20130424.txt</ProducerGranuleId>
  <LocalVersionId>002</LocalVersionId> 
</DataGranule>

UMM

"DataGranule": {
  "Identifiers": [
    {
      "IdentifierType": "ProducerGranuleId",
      "Identifier": "IDCSI4_20130424.txt"
    },
    {
      "IdentifierType": "LocalVersionId",
      "Identifier": "002"
    }
  ]
}

ISO 19115-2 MENDS

Providing Identifiers is optional in ISO (Cardinality: 0..1)

UMM-G ElementISO PathTypeNotes
DataGranule/Identifiers/IdentifierType

/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier [=>
[=>/gmd:codeSpace/gco:CharacterString = gov.nasa.esdis.umm.producergranuleid

OR gov.nasa.esdis.umm.localversionid

OR gov.nasa.esdis.umm.featureid

OR gov.nasa.esdis.umm.crid

OR gov.nasa.esdis.umm.otherid

String

Provide the appropriate esdis identifier (see options to the left in blue) in the gmd:codeSpace field. This will ensure the appropriate identifier type is selected when converting from ISO to the UMM.

DataGranule/Identifiers/Identifier


/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier [=>
[=>/gmd:code/gco:CharacterString = {the actual ID}

String

Provide the Identifier value in the gmd:code field.

DataGranule/Identifiers/IdentifierType

OR

DataGranule/Identifiers/IdentifierName (if 'OtherId' is used)

/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier [=>
[=>/gmd:aggregateDataSetIdentifier/gmd:MD_Identifier/gmd:description/gco:CharacterString = ProducerGranuleId

OR LocalVersionId

OR FeatureId

OR CRID

OR OtherId: {insert the identifiers name}

String

Provide the appropriate identifier name (see options to the left in blue) in the gmd:description field. This will ensure the appropriate identifier type is selected when converting from ISO to the UMM.

If the type of "Other" is selected, the value provided here will be mapped to the UMM field "Identifier Name". For example, the below string would translate to an Identifier Name of "ThemeId" in CMR:

<gmd:description>

<gco:CharacterString>OtherId: ThemeId</gco:CharacterString>

</gmd:description>


Example Mapping

ISO 19115-2 MENDS

<gmi:MI_Metadata>
  ...
  <gmd:identificationInfo>
    <gmd:MD_DataIdentification>
     ...
      <gmd:citation>
        <gmd:CI_Citation>
         ...
          <gmd:identifier>
            <gmd:MD_Identifier>
              <gmd:code>
                <gco:CharacterString>IDCSI4_20130424.txt</gco:CharacterString>
              </gmd:code>
              <gmd:codeSpace>
                <gco:CharacterString>gov.nasa.esdis.umm.producergranuleid</gco:CharacterString>
              </gmd:codeSpace>
              <gmd:aggregateDataSetIdentifier>
                <gmd:MD_Identifier>
                  <gmd:description>
                    <gco:CharacterString>ProducerGranuleId</gco:CharacterString>
                  </gmd:description>
                </gmd:MD_Identifier>
              </gmd:aggregateDataSetIdentifier>
            </gmd:MD_Identifier>
          </gmd:identifier>
          <gmd:identifier>
            <gmd:MD_Identifier>
              <gmd:code>
                <gco:CharacterString>002</gco:CharacterString>
              </gmd:code>
              <gmd:codeSpace>
                <gco:CharacterString>gov.nasa.esdis.umm.localversionid</gco:CharacterString>
              </gmd:codeSpace>
              <gmd:aggregateDataSetIdentifier>
                <gmd:MD_Identifier>
                  <gmd:description>
                    <gco:CharacterString>LocalVersionId</gco:CharacterString>
                  </gmd:description>
                </gmd:MD_Identifier>
              </gmd:aggregateDataSetIdentifier>
            </gmd:MD_Identifier>
          </gmd:identifier>
         ...
        </gmd:CI_Citation>
      </gmd:citation>
     ...
    </gmd:MD_DataIdentification>
  </gmd:identificationInfo>
  ...
</gmi:MI_Metadata>

UMM

"DataGranule": {
  "Identifiers": [
    {
      "IdentifierType": "ProducerGranuleId",
      "Identifier": "IDCSI4_20130424.txt"
    },
    {
      "IdentifierType": "LocalVersionId",
      "Identifier": "002"
    }
  ]
}

ISO 19115-2 SMAP

Providing Identifiers is optional in ISO (Cardinality: 0..1)

Producer Granule Id is the only type of identifier currently supported in the ISO SMAP dialect.

UMM-G ElementISO PathTypeNotes

DataGranule/Identifiers/IdentifierType = "ProducerGranuleId"

&

DataGranule/Identifiers/Identifier

/gmd:DS_Series/gmd:composedOf/gmd:DS_DataSet/gmd:has/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gmx:FileName

String

Maps to the UMM element "Identifier" with Type "ProducerGranuleId"


Example Mapping

ISO 19115-2 SMAP

<gmd:DS_Series>
  <gmd:composedOf>
    <gmd:DS_DataSet>
      <gmd:has>
        <gmi:MI_Metadata>
          <gmd:identificationInfo>
            <gmd:MD_DataIdentification>
              <gmd:citation>
                <gmd:CI_Citation>
                  <gmd:title>
                    <gmx:FileName>IDCSI4_20130424.txt</IDCSI4_20130424.txt>
                  </gmd:title>
                </gmd:CI_Citation>
              </gmd:citation>
            </gmd:MD_DataIdentification>
          </gmd:identificationInfo>
        </gmi:MI_Metadata>
      </gmd:has>
    </gmd:DS_DataSet>
  </gmd:composedOf>
</gmd:DS_Series>

UMM

"DataGranule": {
  "Identifiers": [
    {
      "IdentifierType": "ProducerGranuleId",
      "Identifier": "IDCSI4_20130424.txt"
    }
  ]
}

UMM Migration

N/A

History

UMM Versioning

VersionDateWhat Changed
1.6.011/4/2019Increase the length of Identifiers/Identifier and Identifiers/IdentifierName to 1024
1.5.001/30/2019

No changes were made for Identifiers during the transition from version 1.4.0 to 1.5.0.

1.4.0

ARC Documentation

VersionDateWhat ChangedAuthor
1.002/13/19

Recommendations/priority matrix transferred from internal ARC documentation to wiki space


  • No labels