DCAT-US Schema v3.0

Overview

Reference documentation for DCAT-US v3.0, the federal metadata standard for documenting datasets, APIs, and data services. Use this reference to build or validate your agency’s data inventory.

Details

THE IMPLEMENTATION GUIDE AND IMPLEMENTATION GUIDANCE IN GENERAL IS IN DRAFT FORMAT AT THIS TIME. 5.7.2026.

Specification name: DCAT-US Schema v3.0
This version: 3.0
Previous version: DCAT-US v1.1 (Project Open Data Metadata Schema)
Schema repository: github.com/GSA/dcat-us
JSON Schema: jsonschema/definitions/Catalog.json

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

What is DCAT-US v3.0?

DCAT-US v3.0 is the federal data catalog metadata standard, updated to improve the Findability, Accessibility, Interoperability, and Reusability (FAIRness) of federal data. It is a U.S. application profile of the W3C Data Catalog Vocabulary (DCAT) version 3 — not a new or separate standard. This means most DCAT-US v3.0 metadata is valid W3C DCAT 3 metadata, making it easier to share federal data with international catalogs and platforms that understand the W3C standard. DCAT-US v3.0 was developed collaboratively by the Federal Chief Data Officers Council, the Federal Committee on Statistical Methodology, and the Data.gov team at GSA, drawing on more than a decade of implementation experience with v1.1 and feedback from agencies, data providers, and data users across government. The schema is maintained in a public GitHub repository and governed through a CDO Tiger Team review process to ensure ongoing accuracy and responsiveness to agency needs. —

Why v3.0?

DCAT-US v1.1 was published in 2014 and served federal agencies well for over a decade. But the data landscape changed significantly. Agencies increasingly publish APIs alongside downloadable files, with no standard way to describe them at the catalog level. Geospatial data required a separate metadata standard. Datasets published in recurring series — annual surveys, quarterly reports, versioned reference data — had no standard way to express their relationship to each other. And the international open data community moved forward with W3C DCAT 2 and DCAT 3, leaving v1.1 increasingly out of step with global practice. DCAT-US v3.0 addresses these gaps while preserving the core investment agencies’ existing metadata. It aligns the U.S. federal standard with W3C DCAT 3, introduces structured support for APIs, geospatial data, dataset series, and data quality, and brings a consistent requirement level framework — Mandatory, Recommended, or Optional — that tells agencies exactly which fields matter most. —

What stays the same

For most agencies, the core structure of your data.json file carries forward unchanged. Your Catalog still holds an array of Datasets. Each Dataset still describes its Distributions. The fields you have been required to populate — title, description, publisher, contactPoint, keyword, modified, bureauCode, and programCode — are all still present and recognized in v3.0. Note: accessLevel is not part of the v3.0 core schema. The v3.0 equivalent is accessRights, a free-text string. Agencies should continue populating accessLevel per existing OMB policy (M-13-13) and add accessRights alongside it. See the Changes from v1.1 section for details. The upgrade work is real but manageable. Most of it involves converting a handful of fields from plain strings to structured objects, and updating a small number of field formats that are no longer valid. See the Quick Migration Guide for step-by-step instructions. —

Who needs to act and when

For agencies currently implementing v1.1: Continue operating your existing data.json files as-is until you are ready to migrate. v1.1 continues to be harvested by Data.gov during the transition period. When you are ready to migrate, start with the breaking changes listed in the Changes from v1.1 section — particularly modified, temporal, spatial, and language — since these are the fields most likely to fail validation in v3.0. For agencies building new implementations: Use v3.0 from the start. The v1.1 reference remains available, but new implementations should not be built against it. For system and tool developers: The schema has moved from JSON Schema Draft-04 to JSON Schema 2020-12. Update your validators accordingly. See jsonschema/README.md for tooling guidance. —

How the schema is organized

DCAT-US v3.0 continues the same three-tier structure that agencies have used since v1.1: a Catalog holds Datasets, and each Dataset describes its Distributions.

Catalog └── Dataset (one or more)
    └── Distribution (one or more)

Your data.json file is a Catalog. Each entry in its dataset array is a Dataset. Each Dataset’s distribution array contains one or more Distribution records describing how to access or download the data. This is the same flow as v1.1. However, v3.0 introduces several field-level changes that affect existing records. See the Changes from v1.1 section before migrating. —

What’s new in v3.0

Requirement levels. For the first time, every field is explicitly labeled Mandatory, Recommended, or Optional. Mandatory fields must be present for a record to be valid. Recommended fields are not required by the schema validator but should be populated whenever the information exists — they improve discoverability and interoperability. Optional fields are available but not expected in most records. Two new classes can appear alongside Dataset in the Catalog:

  • DataService: describes an API or other programmatic interface that provides access to data. In v1.1, APIs were documented only as Distributions inside a Dataset. In v3.0, a DataService can be listed at the Catalog level as its own resource, which is useful for services that serve many datasets or are not tied to a single one. See Catalog fields for how DataService fits into the catalog structure. - DatasetSeries: groups related datasets published over time — annual releases, recurring surveys, versioned reference data — under a single series record. Individual Dataset records point back to the series using the inSeries field. See DatasetSeries fields. Supporting classes provide structured definitions for information that was unstructured in v1.1, such as geographic location, temporal coverage, contact information, attribution, quality measurements, and access restrictions. These classes are referenced from Dataset, Distribution, and the new classes above. Most agencies will encounter them indirectly, through a field that points to one of these structures. JSON Schema validation. DCAT-US v3.0 is a valid JSON Schema (2020-12). Agencies can programmatically validate their metadata files against the schema. See jsonschema/README.md for tooling. Federal access and use restrictions. Three new structured classes — AccessRestriction, UseRestriction, and CUIRestriction — replace the v1.1 pattern of expressing restrictions as free text in rights or using the three-value accessLevel field. These are documented on the Constraints and Restrictions reference page. —

    Schema reference pages

    The schema reference pages below are generated directly from the DCAT-US v3.0 schema repository and reflect the current authoritative field definitions, types, and requirement levels. For human-readable implementation guidance, migration help, and examples, see the Implementation guidance section below.

    Core classes

    These three pages cover the fields most agencies interact with directly.

Class Description Schema reference
Catalog The top-level container. Your agency's data.json file is a Catalog. Catalog fields
Dataset The primary inventory unit. One record per dataset. Dataset fields
Distribution A specific file or access point for a dataset. Distribution fields
Dataset Series New in v3.0. A named collection of related datasets published over time. Dataset Series fields

Supporting classes

Supporting classes are referenced from the core classes above. Each page covers a group of related classes.

Group Classes covered Referenced from Schema reference
Agents Agent, Organization, Kind, Address publisher, contactPoint, creator Agents
Temporal, Spatial, and Metrics Location, PeriodOfTime, QualityMeasurement, Metric spatial, temporal, hasQualityMeasurement Temporal, Spatial, and Metrics
Identifiers and Relationships Identifier, Checksum, Attribution, Relationship, CatalogRecord otherIdentifier, checksum, qualifiedRelation, record Identifiers and Relationships
Quality and Governance Activity and related governance terms wasGeneratedBy, wasUsedBy Quality and Governance
Constraints and Restrictions AccessRestriction, UseRestriction, CUIRestriction accessRestriction, useRestriction, cuiRestriction on Distribution Constraints and Restrictions

Implementation guidance

The pages below are written for federal agency data managers and developers implementing DCAT-US v3.0. They explain what the standard means in practice, what changed from v1.1, and how to document common types of federal data assets. These pages complement the schema reference pages above — the schema reference pages tell you what every field is, the implementation pages tell you what to do with them.

Page What it covers Best for
Agency Implementation Guide Human-readable guidance for the core classes — Catalog, Dataset, Distribution, DataService, and DatasetSeries. Includes federal-specific context, before/after upgrade examples, common mistakes, and a breaking changes summary. Data managers implementing v3.0 for the first time or upgrading from v1.1
Quick Migration Guide Step-by-step instructions for updating an existing v1.1 data.json file to v3.0. Covers the eight most important changes in order of priority. Agencies with existing v1.1 implementations ready to migrate
DCAT-US Priorities Keyword and field requirements for priority federal data assets, including COVID-19 response data and AI research datasets. Shows how v1.1 field guidance maps to v3.0. Agencies with COVID-19 or AI research datasets in their inventory

Changes from v1.1

The table below summarizes the most significant changes from DCAT-US v1.1 to v3.0. For a complete field-by-field comparison, see the schema repository. For field-level detail see the individual schema reference pages linked above. For step-by-step migration instructions see the Quick Migration Guide.

Breaking changes

These are changes where existing v1.1 field values will fail v3.0 schema validation and must be updated.

Field What changed Action required
modified with repeating intervals v1.1 accepted repeating duration formats like R/P1D or R/P1Y to indicate continually updated datasets. v3.0 requires a plain ISO 8601 date. Set modified to the actual date the data last changed (e.g., "2024-06-01"). Use accrualPeriodicity to express update frequency.
temporal as an ISO 8601 string v1.1 used a plain interval string (e.g., "2000-01-15T00:00:00Z/2010-01-15T00:00:00Z"). v3.0 uses a structured PeriodOfTime object. Convert to a PeriodOfTime object: [{"@type": "PeriodOfTime", "startDate": "2000-01-15", "endDate": "2010-01-15"}]. Open-ended periods are valid — you can omit either startDate or endDate.
spatial as a plain string v1.1 accepted plain strings like "United States" or bounding box coordinate strings. v3.0 uses a structured Location object. Convert to a Location object: [{"@type": "Location", "prefLabel": "United States"}]. Add a bbox for geospatial precision.
language with RFC 5646 tags v1.1 used RFC 5646 language tags like en-US. v3.0 uses two-letter ISO 639-1 codes only, with a maximum length of two characters. Values like en-US will fail v3.0 validation. Simplify to two-letter codes: change en-US to en, es-MX to es, etc.

Fields replaced or removed

v1.1 Field Status in v3.0 Action
accessLevel Not in v3.0 core schema. Replaced by accessRights on Dataset. Add accessRights as a free-text string alongside your existing accessLevel. The value "public" remains valid. For restricted datasets write a plain-language explanation. Continue populating accessLevel per OMB policy (M-13-13) until updated guidance is issued.
isPartOf Replaced by inSeries and hasPart Use inSeries for datasets that belong to a recurring temporal series. Use hasPart at the parent dataset level for generic collections.
describedByType Absorbed into describedBy Express the format as mediaType within the describedBy Distribution object. No separate field needed.
license at Dataset level Now at Distribution level Add license to each Distribution object. You do not need to remove it from the Dataset level during the transition period — the v3.0 schema will not reject records that include it there.
@context at Catalog level Removed Remove from your catalog file.
describedBy at Catalog level Removed — replaced by conformsTo Standard object Remove from your catalog file. Use a Standard object in conformsTo instead.

Fields not in the v3.0 core schema

The following fields were introduced in v1.1 specifically for U.S. federal agencies. They are not defined in the v3.0 core schema but agencies should continue populating them until updated OMB policy guidance is issued. The v3.0 schema will not reject records that include them.

Field Notes
bureauCode Required by existing OMB policy (M-13-13). Continue populating per current guidance.
programCode Required by existing OMB policy (M-13-13). Continue populating per current guidance.
accessLevel Required by existing OMB policy. Not in the v3.0 core schema. Use alongside the new accessRights field until updated guidance is issued.
dataQuality Not in v3.0 schema. Use hasQualityMeasurement for structured quality reporting going forward.
primaryITInvestmentUII Not in v3.0 schema. Can be preserved in otherIdentifier if needed.
systemOfRecords Not in v3.0 schema. Reference the SORN URL in accessRights or rights until formal guidance is issued.

Structural changes

The following fields changed type or structure between v1.1 and v3.0. Existing string values in these fields will not validate against the v3.0 schema and must be converted to the new object format.

Field v1.1 type v3.0 type Notes
landingPage string (URL) Document object Wrap in a Document object with title and accessURL. Still in the v3.0 schema as Recommended.
theme array of strings array of Concept objects Each Concept requires a prefLabel. Plain string values are no longer valid.
describedBy on Dataset and Distribution string (URL) Distribution object Wrap in a Distribution object with title, downloadURL or accessURL, and mediaType.
conformsTo on Dataset and Distribution string (URI) array of Standard objects Wrap in an array of Standard objects. Each Standard should include title and identifier.
conformsTo on Catalog string (URI) Standard object Use {"@type": "Standard", "title": "DCAT-US 3.0", "identifier": "https://resources.data.gov/dcat-us/3.0.0"}
rights string — max 255 characters array of strings — no character limit Convert to an array. The 255-character limit no longer applies.
byteSize on Distribution number string Express as a numeric string, e.g. "52428800".
publisher.subOrganizationOf single Organization object array of Organization objects Wrap in an array if you have parent organization hierarchy.
accrualPeriodicity ISO 8601 repeating duration only (e.g., R/P1Y) or irregular Three vocabularies accepted: ISO 19115 plain-language codes, Dublin Core frequency vocabulary, or ISO 8601 repeating duration ISO 8601 patterns remain valid but plain-language codes are preferred — e.g., "annually" instead of "R/P1Y".

Validation

Note: the generated reference documentation in jsonschema/docs/ currently shows all fields as Optional regardless of their actual requirement level. This is a known issue. Trust the requirement levels documented on the schema reference pages and in the JSON schema files directly. Validate your metadata against the v3.0 schema:

Date Change
May 2026 Page rewritten to correct several errors and add links to schema reference pages generated from the DCAT-US v3.0 GitHub repository.

Corrections made: removed accessLevel from the "What stays the same" list (not in v3.0 core schema); corrected language breaking change description from BCP 47 to ISO 639-1 two-letter codes; corrected landingPage entry (still in schema as Recommended, moved to Structural changes table); corrected accrualPeriodicity description to reflect three accepted vocabularies; removed webService and accessLevelComment (v1.0 fields, not relevant to v1.1 to v3.0 migration); added bureauCode, programCode, and accrualPeriodicity to the relevant tables.

Still using DCAT-US v1.1?

The DCAT-US v1.1 reference remains available.