ExternalIdentifier

The ExternalIdentifier entity lets feed creators associate arbitrary sets of source-value pairs with certain objects. ExternalIdentifier is a often jurisdiction's code in an external system that's used to associate a jurisdiciton with objects such as candidates, offices, or geopolitical units.

The Type field of an ExternalIdentifier entity is used to describe the source of the identifier, not the object being identified. For example, two of the built-in types are fips, an abbreviation of "Federal Information Processing Standard" code, and state. Even though FIPS two-digit codes can be used to describe states, the intended Type value for this situation is fips and not state. That's because fips describes the source of the identifier.

External identifiers are used throughout the feed for the following purposes:

  • Provide a stable identifier.
  • Provide a canonical identifier from an external resource, such as Open Civic Data Identifiers or FIPS code.
  • Provide additional attributes that aren't native to the NIST CDF schema.

When used to provide additional data or context for an object, external identifiers need to use a Type of other. They also include an OtherType and a Value that both depend on the type of data that's provided. For an example of how data can be provided in this manner, see Office.

Attributes

The following table describes the attributes for ExternalIdentifier:

Attribute Required? Type Description
label Optional string An informative label. For use as needed.

Elements

The following table shows the elements for ExternalIdentifier:

Element Multiplicity Type Description
Type 1 IdentifierType Provides an identifier type.
OtherType 0 or 1 string Used when the value of IdentifierType is other.
Value 1 string The identifier used by the jurisdiction.

Examples

XML

    <ExternalIdentifiers>
     <ExternalIdentifier>
        <Type>other</Type>
        <OtherType>stable</OtherType>
        <Value>stable-gu-0081</Value>
      </ExternalIdentifier>
      <ExternalIdentifier>
        <Type>ocd-id</Type>
        <Value>ocd-division/country:ke/county:narok</Value>
      </ExternalIdentifier>
      <ExternalIdentifier>
        <Type>national-level</Type>
        <Value>33</Value>
      </ExternalIdentifier>
    </ExternalIdentifiers>

JSON

    "ExternalIdentifiers": {
      "ExternalIdentifier" : [
        {
          "Type": "other",
          "OtherType": "stable",
          "Value": "stable-gu-0081"
        },
        {
          "Type": "ocd-id",
          "Value": "ocd-division/country:ke/county:narok"
        },
        {
          "Type": "national-level",
          "Value": "33"
        }
      ]
    }