DCAT-US 3.0: Identifiers and Relationships

Identifiers and Relationships

Supporting classes for identifiers, relationships, checksums, and controlled concepts used to describe and connect resources.

Class Identifier #

A unique identifier and optionally it’s scheme and other relevant information

Type combining
Additional properties Any type allowed
Any of
Simple string identifier
Identifier as a complex object

Identifier > anyOf > Simple string identifier #

| Type | string | | ——– | ——– |

Identifier > anyOf > Identifier as a complex object #

Type object
Additional properties Any type allowed
Property Type Requirement Level Title/Description
@id string Optional  
@type string Optional  
schemaAgency null or string Optional The name of the agency that issued the identifier
creator More than one type Optional the agency that manages the identifier scheme
issued More than one type Optional The date of formal issuance (e.g., publication) of the Identifier
version null or string Optional version of the identifier scheme
notation null or string Optional abbreviation or code from code lists for an identifier

Identifier > anyOf > Identifier as a complex object > @id #

Requirement: Optional

Type string
Format iri

Identifier > anyOf > Identifier as a complex object > @type #

Requirement: Optional

Type string
Default "Identifier"

Identifier > anyOf > Identifier as a complex object > schemaAgency #

Requirement: Optional

The name of the agency that issued the identifier

| Type | null or string | | ——– | —————- |

Identifier > anyOf > Identifier as a complex object > creator #

Requirement: Optional

the agency that manages the identifier scheme

Type combining
Additional properties Any type allowed
Any of
Null allowed when not required
Organization

Identifier > anyOf > Identifier as a complex object > creator > anyOf > Null allowed when not required #

| Type | null | | ——– | —— |

Identifier > anyOf > Identifier as a complex object > creator > anyOf > Organization #

inline description of the creator

Type object
Additional properties Any type allowed
Defined in Organization

Identifier > anyOf > Identifier as a complex object > issued #

Requirement: Optional

The date of formal issuance (e.g., publication) of the Identifier

Type combining
Additional properties Any type allowed
Any of
Null allowed when not required
Date string

Identifier > anyOf > Identifier as a complex object > issued > anyOf > Null allowed when not required #

| Type | null | | ——– | —— |

Identifier > anyOf > Identifier as a complex object > issued > anyOf > Date string #

Type combining
Additional properties Any type allowed
Any of
item 0
item 1
item 2
item 3
Identifier > anyOf > Identifier as a complex object > issued > anyOf > Date string > anyOf > item 0 #
Type string
Format date-time
Identifier > anyOf > Identifier as a complex object > issued > anyOf > Date string > anyOf > item 1 #
Type string
Format date
Identifier > anyOf > Identifier as a complex object > issued > anyOf > Date string > anyOf > item 2 #

A year in YYYY format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}$ Test
Identifier > anyOf > Identifier as a complex object > issued > anyOf > Date string > anyOf > item 3 #

A year and month in YYYY-MM format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}-[0-9]{2}$ Test

Identifier > anyOf > Identifier as a complex object > version #

Requirement: Optional

version of the identifier scheme

| Type | null or string | | ——– | —————- |

Identifier > anyOf > Identifier as a complex object > notation #

Requirement: Optional

abbreviation or code from code lists for an identifier

| Type | null or string | | ——– | —————- |


Class Relationship #

Additional information about how one resource is related to another

Type object
Additional properties Any type allowed

Example:

{
    "@type": "Relationship",
    "hadRole": "isInputTo",
    "relation": "https://example.gov/models/climate-prediction"
}
Property Type Requirement Level Title/Description
@id string Optional  
@type string Optional  
hadRole string Mandatory The function of an entity or agent with respect to a dataset
relation string Mandatory The entity related to the dataset. This string should unambiguously identify the related resource using an appropriate identifier.

Relationship > @id #

Requirement: Optional

Type string
Format iri

Example:

"https://example.gov/relationships/dataset-001-data-provider"

Relationship > @type #

Requirement: Optional

Type string
Default "Relationship"

Relationship > hadRole #

Title: role

Requirement: Mandatory

The function of an entity or agent with respect to a dataset

Type string
Required Yes

Examples:

"isInputTo"
"dataProvider"

Relationship > relation #

Requirement: Mandatory

The entity related to the dataset. This string should unambiguously identify the related resource using an appropriate identifier.

Type string
Required Yes

Examples:

"https://example.gov/models/climate-prediction"
"https://example.gov/organizations/national-weather-service"

Class Checksum #

A mechanism that can be used to verify that the contents of a distribution have not changed

Type object
Additional properties Any type allowed

Example:

{
    "@type": "Checksum",
    "algorithm": "SHA-256",
    "checksumValue": "a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456"
}
Property Type Requirement Level Title/Description
@id string Optional  
@type string Optional  
algorithm string Mandatory The algorithm used to produce the checksum
checksumValue string Mandatory A lower case hexadecimal encoded digest value produced using a specific algorithm

Checksum > @id #

Requirement: Optional

Type string
Format iri

Example:

"https://example.gov/checksums/dataset-001-sha256"

Checksum > @type #

Requirement: Optional

Type string
Default "Checksum"

Checksum > algorithm #

Requirement: Mandatory

The algorithm used to produce the checksum

Type string
Required Yes

Example:

"SHA-256"

Checksum > checksumValue #

Requirement: Mandatory

A lower case hexadecimal encoded digest value produced using a specific algorithm

Type string
Required Yes

Examples:

"a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456"
"a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e"

Class Concept #

A controlled term or label, optionally drawn from a concept scheme

Type combining
Additional properties Any type allowed

Examples:

"Environment"
"Climate Science"
{
    "@type": "Concept",
    "prefLabel": "Environment"
}
{
    "@type": "Concept",
    "prefLabel": "Climate Science",
    "definition": "The scientific study of climate patterns and change.",
    "inScheme": {
        "@id": "https://example.gov/concept-schemes/science-domains",
        "@type": "ConceptScheme",
        "title": "Science Domains"
    }
}
{
    "@id": "https://example.gov/concepts/environment",
    "@type": "Concept",
    "prefLabel": "Environment",
    "altLabel": "Ecology",
    "definition": "The natural world, including air, water, land, plants, and animals, especially as affected by human activity.",
    "notation": [
        "ENV",
        "E01",
        "ENVI"
    ],
    "inScheme": {
        "@id": "https://example.gov/concept-schemes/data-themes",
        "@type": "ConceptScheme",
        "version": "2.0",
        "description": "DCAT-US approved themes for categorizing datasets",
        "title": "Data Themes"
    }
}
Any of
Concept
item 1

Concept > anyOf > Concept #

The value of the concept, expressed as a string. This is only used when the concept is not further described by the properties of the Concept object and is not linked to a concept scheme.

| Type | string | | ——– | ——– |

Examples:

"Environment"
"Climate Science"

Concept > anyOf > item 1 #

Type object
Additional properties Any type allowed

Examples:

{
    "@type": "Concept",
    "prefLabel": "Environment"
}
{
    "@type": "Concept",
    "prefLabel": "Climate Science",
    "definition": "The scientific study of climate patterns and change.",
    "inScheme": {
        "@id": "https://example.gov/concept-schemes/science-domains",
        "@type": "ConceptScheme",
        "title": "Science Domains"
    }
}
Property Type Requirement Level Title/Description
@id string Optional  
@type string Optional  
altLabel null or string Optional Alternative label for a concept
definition null or string Optional Definition of the controlled vocabulary term
inScheme object Optional Concept scheme defining this concept
notation More than one type Optional List of abbreviations or codes from code lists for the Concept
prefLabel string Optional Preferred label for the term

Concept > anyOf > item 1 > @id #

Requirement: Optional

Type string
Format iri

Example:

"https://example.gov/concepts/environment"

Concept > anyOf > item 1 > @type #

Requirement: Optional

Type string
Default "Concept"

Concept > anyOf > item 1 > altLabel #

Title: alternate label

Requirement: Optional

Alternative label for a concept

| Type | null or string | | ——– | —————- |

Example:

"Ecology"

Concept > anyOf > item 1 > definition #

Requirement: Optional

Definition of the controlled vocabulary term

| Type | null or string | | ——– | —————- |

Examples:

"The scientific study of climate patterns and change."
"The natural world, including air, water, land, plants, and animals, especially as affected by human activity."

Concept > anyOf > item 1 > inScheme #

Requirement: Optional

Concept scheme defining this concept

Type object
Additional properties Any type allowed
Defined in ConceptScheme

Examples:

{
    "@id": "https://example.gov/concept-schemes/science-domains",
    "@type": "ConceptScheme",
    "title": "Science Domains"
}
{
    "@id": "https://example.gov/concept-schemes/data-themes",
    "@type": "ConceptScheme",
    "version": "2.0",
    "description": "DCAT-US approved themes for categorizing datasets",
    "title": "Data Themes"
}

Concept > anyOf > item 1 > notation #

Requirement: Optional

List of abbreviations or codes from code lists for the Concept

Type combining
Additional properties Any type allowed

Example:

[
    "ENV",
    "E01",
    "ENVI"
]
Any of
item 0
item 1

Concept > anyOf > item 1 > notation > anyOf > item 0 #

| Type | null | | ——– | —— |

Concept > anyOf > item 1 > notation > anyOf > item 1 #

| Type | array of string | | ——– | ————— |

Each item of this array must be Description
item 1 items -
Array Item #

| Type | string | | ——– | ——– |

Concept > anyOf > item 1 > prefLabel #

Title: preferred label

Requirement: Optional

Preferred label for the term

Type string
Required Yes

Examples:

"Environment"
"Climate Science"

Class ConceptScheme #

A controlled vocabulary or other list of approved terms for a concept

Type object
Additional properties Any type allowed

Example:

{
    "@type": "ConceptScheme",
    "title": "Science Domains",
    "description": "A classification scheme for scientific research domains.",
    "issued": "2020-01-01"
}
Property Type Requirement Level Title/Description
@id string Optional  
@type string Optional  
version null or string Optional A version number or other version designation of the concept scheme
created More than one type Optional The date on which the Concept Scheme was first created
description null or string Recommended A description of the concept scheme
issued More than one type Optional The date of formal issuance (e.g., publication) of the concept scheme
modified More than one type Optional The most recent date at which the concept scheme was changed or modified
title string Mandatory The title of the concept scheme

ConceptScheme > @id #

Requirement: Optional

Type string
Format iri

Example:

"https://example.gov/concept-schemes/data-classification"

ConceptScheme > @type #

Requirement: Optional

Type string
Default "ConceptScheme"

ConceptScheme > version #

Title: version info

Requirement: Optional

A version number or other version designation of the concept scheme

| Type | null or string | | ——– | —————- |

Example:

"2.0.1"

ConceptScheme > created #

Title: creation date

Requirement: Optional

The date on which the Concept Scheme was first created

Type combining
Additional properties Any type allowed

Examples:

"2020"
"2024-01-15T10:30:00Z"
"2024-01-15"
"2024-01"
Any of
Null allowed when not required
Date string

ConceptScheme > created > anyOf > Null allowed when not required #

| Type | null | | ——– | —— |

ConceptScheme > created > anyOf > Date string #

Type combining
Additional properties Any type allowed
Any of
item 0
item 1
item 2
item 3

ConceptScheme > created > anyOf > Date string > anyOf > item 0 #

Type string
Format date-time

ConceptScheme > created > anyOf > Date string > anyOf > item 1 #

Type string
Format date

ConceptScheme > created > anyOf > Date string > anyOf > item 2 #

A year in YYYY format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}$ Test

ConceptScheme > created > anyOf > Date string > anyOf > item 3 #

A year and month in YYYY-MM format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}-[0-9]{2}$ Test

ConceptScheme > description #

Requirement: Recommended

A description of the concept scheme

| Type | null or string | | ——– | —————- |

Examples:

"A classification scheme for scientific research domains."
"A controlled vocabulary for classifying federal government data assets by sensitivity and access requirements."

ConceptScheme > issued #

Title: publication date

Requirement: Optional

The date of formal issuance (e.g., publication) of the concept scheme

Type combining
Additional properties Any type allowed

Examples:

"2020-01-01"
"2020"
"2024-01-15T10:30:00Z"
"2024-01"
Any of
Null allowed when not required
Date string

ConceptScheme > issued > anyOf > Null allowed when not required #

| Type | null | | ——– | —— |

ConceptScheme > issued > anyOf > Date string #

Type combining
Additional properties Any type allowed
Any of
item 0
item 1
item 2
item 3

ConceptScheme > issued > anyOf > Date string > anyOf > item 0 #

Type string
Format date-time

ConceptScheme > issued > anyOf > Date string > anyOf > item 1 #

Type string
Format date

ConceptScheme > issued > anyOf > Date string > anyOf > item 2 #

A year in YYYY format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}$ Test

ConceptScheme > issued > anyOf > Date string > anyOf > item 3 #

A year and month in YYYY-MM format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}-[0-9]{2}$ Test

ConceptScheme > modified #

Title: update/modification date

Requirement: Optional

The most recent date at which the concept scheme was changed or modified

Type combining
Additional properties Any type allowed

Examples:

"2024"
"2024-01-15T10:30:00Z"
"2024-01-15"
"2024-01"
Any of
Null allowed when not required
Date string

ConceptScheme > modified > anyOf > Null allowed when not required #

| Type | null | | ——– | —— |

ConceptScheme > modified > anyOf > Date string #

Type combining
Additional properties Any type allowed
Any of
item 0
item 1
item 2
item 3

ConceptScheme > modified > anyOf > Date string > anyOf > item 0 #

Type string
Format date-time

ConceptScheme > modified > anyOf > Date string > anyOf > item 1 #

Type string
Format date

ConceptScheme > modified > anyOf > Date string > anyOf > item 2 #

A year in YYYY format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}$ Test

ConceptScheme > modified > anyOf > Date string > anyOf > item 3 #

A year and month in YYYY-MM format

| Type | string | | ——– | ——– |

Restrictions  
Must match regular expression ^[0-9]{4}-[0-9]{2}$ Test

ConceptScheme > title #

Requirement: Mandatory

The title of the concept scheme

Type string
Required Yes

Examples:

"Science Domains"
"Federal Data Classification Scheme"