DCAT-US Schema v3.0 Supporting classes

Overview

Reference for the DCAT-US v3.0 supporting classes. These classes are referenced from Dataset, Distribution, Catalog, DataService, and DatasetSeries.

Details


See an error on this page or have other feedback? Email us at DataGovHelp@gsa.gov

Overview

Supporting classes are referenced from Dataset, Distribution, Catalog, DataService, and DatasetSeries. Most agencies will encounter them indirectly — through a field that points to one of these structures. The sections below cover the classes agencies are most likely to work with directly. The full class index at the bottom of this page lists all supporting classes with links to their source files. Most supporting class objects also accept an optional @id field — a URI that uniquely identifies the specific instance of that object. This is useful for linked data implementations but is not required for standard federal data inventory use. —

Agents and organizations

Three classes handle people and organizations in DCAT-US v3.0: Agent (an abstract entity — person, organization, or system), Organization (a named organizational entity with hierarchy support), and Kind (contact information modeled on vCard). A fourth class, Address, is used within Kind to express physical addresses. As a general rule: use Organization for publisher on Dataset — it supports preferred labels, abbreviations, and parent hierarchy. Use Agent for publisher on Catalog and DataService, and for creator, contributor, and wasAttributedTo on Dataset and DataService — it is a simpler class intended for any type of entity. Use Kind for all contactPoint fields.

Agent

An entity responsible for a resource — a person, organization, software agent, or other entity. Referenced by creator, contributor, and wasAttributedTo on Dataset and DataService. Also used by publisher on Catalog and DataService.

Field Required Type Description
name Mandatory string The name of the agent. Example: "National Climate Data Center"
@type Optional string Defaults to Agent.
category Optional array of Concept objects The type of agent — for example, a federal agency, contractor, or research institution.

Source: Agent.json

Organization

A named organizational entity, typically used for publisher on Dataset. Extends Agent with support for preferred labels, alternative names, abbreviations, and hierarchical parent organizations.

Field Required Type Description
name Mandatory string The full name of the organization. Example: "U.S. Census Bureau"
@type Optional string Defaults to Organization.
prefLabel Optional string The preferred or legal name of the organization. Example: "United States Census Bureau"
altLabel Optional string An alternative name, trading name, or common abbreviation. Example: "Census Bureau"
notation Optional array of strings Official abbreviations or codes for the organization. Example: ["USCB", "CB"]
subOrganizationOf Optional array of Organization objects Parent organization(s). Can be nested to express full hierarchy — bureau within agency within U.S. Government. In v3.0 this is an array; in v1.1 it was a single object.

Example:

{
  "@type": "Organization",
  "name": "U.S. Census Bureau",
  "prefLabel": "United States Census Bureau",
  "altLabel": "Census Bureau",
  "notation": ["USCB"],
  "subOrganizationOf": [
    {
      "@type": "Organization",
      "name": "U.S. Department of Commerce"
    }
  ]
} 

Source: Organization.json

Kind

Contact information modeled on vCard. Referenced by contactPoint on Dataset, DataService, Catalog, and DatasetSeries. Can be a single object or an array of objects when multiple contacts are needed.

Field Required Type Description
fn Mandatory string The full formatted name of the contact. Can be a person's name or a team name. Example: "Climate Data Support Team"
hasEmail Mandatory string Email address formatted with the mailto: prefix. Example: "mailto:climate@agency.gov"
@type Optional string Defaults to Kind.
tel Optional string Telephone number. Example: "+1-202-555-0100"
organization-name Optional string The name of the organization the contact belongs to. Example: "Office of Data Management"
title Optional string The position or role of the contact. Example: "Data Steward"
given-name Optional string The contact's given (first) name.
family-name Optional string The contact's family (last) name.
address Optional array of Address objects Physical or mailing address(es) for the contact. See Address below.

Example:

{
  "@type": "Kind",
  "fn": "Climate Data Support Team",
  "hasEmail": "mailto:climate@agency.gov",
  "tel": "+1-202-555-0100",
  "organization-name": "National Climate Data Center",
  "title": "Data Steward"
} 

Source: Kind.json

Address

A physical or mailing address. Referenced by address on Kind. No fields are required — include what is available.

Field Required Type Description
street-address Optional string Street name and civic number. Example: "1401 Constitution Ave NW"
locality Optional string City. Example: "Washington"
region Optional string State or administrative area. Example: "DC"
postal-code Optional string Postal or ZIP code. Example: "20230"
country-name Optional string Country name. Example: "United States"

Source: Address.json

Location and time

Location

A named place or geographic area. Referenced by spatial on Dataset, DataService, and DatasetSeries. No fields are required — use what is available. At minimum provide a prefLabel. For geospatial precision add a bbox.

Field Required Type Description
prefLabel Recommended string The preferred name of the location. Example: "United States", "Washington, D.C."
bbox Recommended string (WKT) or GeoJSON Polygon object Bounding box for the location. Accepts either a WKT string or a GeoJSON Polygon object.

WKT example: "POLYGON((-125 24, -66 24, -66 50, -125 50, -125 24))"

GeoJSON example: {"type": "Polygon", "coordinates": [[[-125.0, 24.0], [-66.0, 24.0], [-66.0, 50.0], [-125.0, 50.0], [-125.0, 24.0]]]}
centroid Optional string (WKT) or GeoJSON Point object The geographic center of the location. Example: {"type": "Point", "coordinates": [-77.0369, 38.9072]}
geometry Optional string or GeoJSON object Full geometry of the location in WKT, GeoJSON, or GML format.
altLabel Optional string An alternative name for the location. Example: "DC" for Washington D.C.
identifier Optional Identifier object A unique geographic identifier, such as a GeoNames URI.
inScheme Optional ConceptScheme object The gazetteer or geographic authority list this location belongs to.

Example:

{
  "@type": "Location",
  "prefLabel": "Continental United States",
  "bbox": "POLYGON((-125 24, -66 24, -66 50, -125 50, -125 24))"
} 

Source: Location.json

PeriodOfTime

A temporal interval defined by a start date and/or end date. Referenced by temporal on Dataset, DataService, and DatasetSeries. At least one of startDate or endDate must be present. Open-ended periods are valid — you can omit either date.

Field Required Type Description
startDate Recommended string (ISO 8601) The start date of the period. Accepts date, datetime, year (YYYY), or year-month (YYYY-MM). Example: "2020-01-01"

Upgrading from v1.1? The v1.1 plain interval string format (e.g., "2000-01-15T00:00:00Z/2010-01-15T00:00:00Z") is no longer valid. Convert to a PeriodOfTime object with explicit startDate and endDate fields.
endDate Recommended string (ISO 8601) The end date of the period. Accepts date, datetime, year, or year-month. Example: "2024-12-31"
@type Optional string Defaults to PeriodOfTime.

Examples:

{
  "@type": "PeriodOfTime",
  "startDate": "2020-01-01",
  "endDate": "2024-12-31"
} 
{
  "@type": "PeriodOfTime",
  "startDate": "2020-01-01"
} 

Note: In v1.1 temporal was a plain ISO 8601 interval string (e.g., "2000-01-15T00:00:00Z/2010-01-15T00:00:00Z"). That format is no longer valid in v3.0. Source: PeriodOfTime.json

Controlled vocabularies

Concept

A controlled term or label, optionally drawn from a concept scheme (controlled vocabulary). Used throughout the schema in fields like theme, status, category, accrualPeriodicity, and accessRestriction.restrictionStatus. Concept is flexible — it can be a plain string for simple cases, or a full object with vocabulary linkage for richer implementations.

Form When to use Example
Plain string When you have a label but no controlled vocabulary URI "Climate Science"
Object with prefLabel When you want a structured label without linking to a scheme {"prefLabel": "Climate Science"}
Object with prefLabel and inScheme When linking to a formal controlled vocabulary {"prefLabel": "Climate Science", "inScheme": {"title": "Federal Data Categories"}}

Full Concept object fields:

Field Required Type Description
prefLabel Mandatory (if object) string The preferred label for this concept.
altLabel Optional string An alternative label.
definition Optional string A definition of the concept.
notation Optional array of strings Abbreviations or codes from code lists.
inScheme Optional ConceptScheme object The controlled vocabulary or taxonomy this concept belongs to.

Examples showing all three forms:

"theme": ["Climate Science"] 
"theme": [
  {
    "prefLabel": "Climate Science"
  }
] 
"theme": [
  {
    "prefLabel": "Climate Science",
    "definition": "Data related to climate observations, modeling, and research.",
    "inScheme": {
      "@type": "ConceptScheme",
      "title": "Federal Data Categories"
    }
  }
] 

Source: Concept.json

ConceptScheme

A controlled vocabulary, taxonomy, or other list of approved terms. Referenced by themeTaxonomy on Catalog and by inScheme on Concept and Location.

Field Required Type Description
title Mandatory string The title of the concept scheme. Example: "Federal Data Categories"
description Recommended string A description of the vocabulary and what it covers.
version Optional string Version number or designation. Example: "2.0.1"
issued Optional string (ISO 8601) Date the vocabulary was formally published.
modified Optional string (ISO 8601) Most recent date the vocabulary was updated.

Source: ConceptScheme.json

Identifiers and integrity

Identifier

A unique identifier and optionally its scheme and other relevant information. Referenced by identifier and otherIdentifier on Dataset, Distribution, DataService, and other classes. Like Concept, Identifier is flexible — it can be a plain string or a full object.

Field Required Type Description
notation Optional string The identifier value. Example: "10.7927/H45X26V8"
schemaAgency Optional string The name of the agency that issued the identifier. Example: "DOI Foundation"
creator Optional Organization object The organization that manages the identifier scheme.
issued Optional string (ISO 8601) Date the identifier was issued.
version Optional string Version of the identifier scheme.

Identifier is flexible — it can be a plain string or a structured object:

"identifier": "https://doi.org/10.7927/H45X26V8" 
"identifier": {
  "@type": "Identifier",
  "notation": "10.7927/H45X26V8",
  "schemaAgency": "DOI Foundation",
  "issued": "2018-03-01"
} 

Source: Identifier.json

Checksum

A mechanism for verifying that the contents of a Distribution have not changed. Referenced by checksum on Distribution. New in v3.0.

Field Required Type Description
algorithm Mandatory string The algorithm used to produce the checksum. Example: "SHA-256"
checksumValue Mandatory string A lowercase hexadecimal encoded digest value. Example: "a1b2c3d4e5f6..."

Example:

{
  "@type": "Checksum",
  "algorithm": "SHA-256",
  "checksumValue": "a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456"
} 

Source: Checksum.json

Standard

A standard or specification that another resource conforms to. Referenced by conformsTo on Dataset, Distribution, DataService, and Catalog. No fields are required — include what is available.

Field Required Type Description
title Recommended string Human-readable title of the standard. Example: "DCAT-US 3.0"
description Recommended string Plain-language summary of the standard.
identifier Recommended Identifier object or string A persistent URI for the standard. Example: "https://resources.data.gov/dcat-us/3.0.0"
issued Recommended string (ISO 8601) Date the standard was formally published.
inScheme Recommended ConceptScheme object A standards registry this standard belongs to.
created Optional string (ISO 8601) The date the standard was first created.
modified Optional string (ISO 8601) The most recent date the standard was updated.

Example:

{
  "@type": "Standard",
  "title": "DCAT-US 3.0",
  "identifier": "https://resources.data.gov/dcat-us/3.0.0",
  "issued": "2025-05-01"
} 

Source: Standard.json

Document

A publication or other document related to a resource. Referenced by page on Dataset and Distribution, and by landingPage and homepage on Dataset and Catalog respectively.

Field Required Type Description
title Mandatory string The title of the document. Example: "Climate Data User Guide"
accessURL Optional string (IRI) A URL that gives access to the document — typically an HTML page.
downloadURL Optional string (IRI) A direct download URL for the document file.
mediaType Optional string (IANA Media Type) The file format of the document. Example: "application/pdf"
description Recommended string Plain-language summary of the document.
creator Optional array of Kind objects The individual person(s) responsible for creating the document. Uses Kind objects — the same class as contactPoint. Use this for named individuals.
corporateCreator Optional array of Organization objects The corporate organization(s) responsible for creating the document. Uses Organization objects. Use this for institutional authorship. Example: [{"name": "National Climate Data Center"}]
bibliographicCitation Recommended string A plain-text bibliographic citation for the document.
issued Recommended string (ISO 8601) Publication date of the document.
publisher Recommended array of Organization objects The organization(s) that published the document.
identifier Recommended Identifier object A unique identifier for the document such as a DOI or ISBN.

Source: Document.json

Quality and provenance

QualityMeasurement

A measurement of a resource against a specific quality metric. Referenced by hasQualityMeasurement on Dataset, Distribution, and DataService. New in v3.0. Replaces the boolean dataQuality field from v1.1.

Field Required Type Description
isMeasurementOf Mandatory Metric object The quality metric being measured. See Metric below.
value Mandatory string The measured value, expressed as a string. Example: "98.5". The data type is declared in the Metric's expectedDataType field.
unitMeasure Optional string Unit of measure for the value. Example: "percent"

Metric

A standard used to measure one aspect of data quality. Used within QualityMeasurement as the isMeasurementOf field.

Field Required Type Description
expectedDataType Mandatory string The expected data type of the measured value. Example: "xsd:decimal", "xsd:boolean"
inDimension Mandatory string (URI) URI of the quality dimension being measured. Example: "https://agency.gov/quality/completeness"
definition Recommended string A plain-language definition of the metric. Example: "Percentage of non-null values in required fields."

Example of a complete quality measurement:

{
  "@type": "QualityMeasurement",
  "isMeasurementOf": {
    "@type": "Metric",
    "expectedDataType": "xsd:decimal",
    "inDimension": "https://agency.gov/quality/completeness",
    "definition": "Percentage of non-null values in required fields."
  },
  "value": "98.5",
  "unitMeasure": "percent"
} 

Source: QualityMeasurement.json · Metric.json

Activity

An activity related to creating, changing, or using a resource. Referenced by wasGeneratedBy and wasUsedBy on Dataset and DataService.

Field Required Type Description
label Mandatory string A human-readable label for the activity. Example: "Data Collection", "Quality Control Review"
category Optional array of Concept objects Categories for the activity type.

Source: Activity.json

Relationships

Attribution

A responsibility that an agent has for a resource. Referenced by qualifiedAttribution on Dataset, Catalog, and DataService. Useful when you need to distinguish specific roles — data collector, quality reviewer, data steward — beyond what creator or publisher can express.

Field Required Type Description
hadRole Mandatory string The role the agent plays. Example: "Data Steward", "Quality Reviewer"
agent Mandatory Agent object The agent that has this role. Requires name.

Source: Attribution.json

Relationship

Additional information about how one resource is related to another, including the named role of that relationship. Referenced by qualifiedRelation on Dataset. Use this when isReferencedBy or relation are not specific enough about the nature of the relationship.

Field Required Type Description
hadRole Mandatory string The nature of the relationship. Example: "isInputTo", "dataProvider"
relation Mandatory string (IRI) The IRI of the related resource. Example: "https://agency.gov/models/climate-prediction"

Source: Relationship.json

CatalogRecord

A record describing when and how a single resource was registered in a catalog. Referenced by record on Catalog. Useful for tracking catalog provenance — when a dataset was added, by whom, and under what schema.

Field Required Type Description
modified Mandatory string (ISO 8601) The most recent date the catalog record was changed.
primaryTopic Mandatory string (IRI) IRI linking to the Dataset, DataService, or Catalog described by this record. Example: "https://agency.gov/datasets/climate-2024"
status Recommended Concept object Editorial status of the record. Example: {"prefLabel": "published"}
conformsTo Recommended Standard object The application profile the catalog record's metadata conforms to.
description Optional array of strings One or more plain-language descriptions of the catalog record. Note: unlike most other classes where description is a single string, CatalogRecord accepts an array of strings.

Example: ["This catalog record describes the registration of the Climate Data 2024 dataset.", "Added to catalog January 2025."]
language Optional string or array of strings ISO 639-1 two-letter language code(s) for the catalog record metadata. Example: "en" or ["en", "es"]
issued Optional array of ISO 8601 date strings Date(s) on which the record was included in the catalog. Note: this is an array, not a single date.
title Optional string A name for the catalog record.
source Optional string The original metadata this record was derived from — a URL or description of the source.

Source: CatalogRecord.json

Access and use restrictions

Three classes provide structured, machine-readable ways to express access and use restrictions on a Distribution. They are new in v3.0 and specific to the U.S. federal context. See the Distribution fields page for guidance on how to use them together.

AccessRestriction

Rules or indicators describing who can access a resource. Referenced by accessRestriction on Distribution. Uses NARA authority lists for controlled vocabulary values.

Field Required Type Description
restrictionStatus Mandatory Concept object Whether or not there are access restrictions. Use the NARA Access Restriction Status list. Example: {"prefLabel": "Unrestricted"} or {"prefLabel": "Restricted - Fully"}
specificRestriction Recommended Concept object The specific authority or policy defining the restriction. Use the NARA Specific Access Restriction list. Example: {"prefLabel": "FOIA Exemption 6"}
restrictionNote Optional string A plain-language explanation of the restriction.

Source: AccessRestriction.json

UseRestriction

Rules or legal limits on how a resource may be used after access is granted. Referenced by useRestriction on Distribution. Structurally identical to AccessRestriction but applies to use rather than access.

Field Required Type Description
restrictionStatus Mandatory Concept object Whether or not there are use restrictions. Use the NARA Use Restriction Status list. Example: {"prefLabel": "Unrestricted"}
specificRestriction Recommended Concept object The specific use restriction authority or policy. Example: {"prefLabel": "Copyright"}
restrictionNote Optional string A plain-language explanation of the use restriction or terms of use.

Source: UseRestriction.json

CUIRestriction

Controlled Unclassified Information (CUI) marking information for a distribution. Referenced by cuiRestriction on Distribution. Required for any distribution containing CUI per Executive Order 13556 and NARA guidelines. Distributions that do not contain CUI should set this field to null.

Field Required Type Description
cuiBannerMarking Mandatory string The CUI banner marking string per the NARA CUI Registry. Example: "CUI//SP-PRVCY", "CUI//SP-CTI"
designationIndicator Mandatory string Identifies the agency that designated the information as CUI. Must include "Controlled by:" followed by agency name and contact where possible. Example: "Controlled by: Example Federal Agency; POC: jane.smith@agency.gov"
requiredIndicatorPerAuthority Optional array of strings Required indicators from the applicable authority. Example: ["Privacy Act of 1974", "Federal Records Act"]

Source: CUIRestriction.json

Full class index

Class Group Referenced from Source
Agent Agents creator, contributor, wasAttributedTo on Dataset; publisher on Catalog and DataService Agent.json
Organization Agents publisher on Dataset; subOrganizationOf on Organization Organization.json
Kind Agents contactPoint on Dataset, DataService, Catalog, DatasetSeries Kind.json
Address Agents address on Kind Address.json
Location Location and time spatial on Dataset, DataService, DatasetSeries, Catalog Location.json
PeriodOfTime Location and time temporal on Dataset, DataService, DatasetSeries, Catalog PeriodOfTime.json
Concept Controlled vocabularies theme, status, category, accrualPeriodicity, restriction fields and others Concept.json
ConceptScheme Controlled vocabularies themeTaxonomy on Catalog; inScheme on Concept and Location ConceptScheme.json
Document Docs and standards page on Dataset and Distribution; landingPage on Dataset; homepage on Catalog Document.json
Standard Docs and standards conformsTo on Dataset, Distribution, DataService, Catalog Standard.json
Identifier Identifiers and integrity identifier, otherIdentifier on Dataset, Distribution, DataService, Location Identifier.json
Checksum Identifiers and integrity checksum on Distribution Checksum.json
QualityMeasurement Quality and provenance hasQualityMeasurement on Dataset, Distribution, DataService QualityMeasurement.json
Metric Quality and provenance isMeasurementOf on QualityMeasurement Metric.json
Activity Quality and provenance wasGeneratedBy, wasUsedBy on Dataset and DataService Activity.json
Attribution Relationships qualifiedAttribution on Dataset, Catalog, DataService Attribution.json
Relationship Relationships qualifiedRelation on Dataset Relationship.json
CatalogRecord Relationships record on Catalog CatalogRecord.json
AccessRestriction Restrictions accessRestriction on Distribution AccessRestriction.json
UseRestriction Restrictions useRestriction on Distribution UseRestriction.json
CUIRestriction Restrictions cuiRestriction on Distribution CUIRestriction.json

Source: jsonschema/definitions/