DCAT-US Schema v3.0 Distribution fields
Overview
Field-level reference for the DCAT-US v3.0 Distribution class. A Distribution describes a specific file or access point for a dataset.
Source
Category
Keywords
Details
See an error on this page or have other feedback? Email us at DataGovHelp@gsa.gov
Overview
A Distribution represents a specific way of accessing or obtaining a dataset: a downloadable CSV, a ZIP package, a REST API endpoint, or any other form of access. A single dataset can have multiple distributions.
Required fields in v3.0: None. However, each distribution should contain at least one of accessURL or downloadURL.
—
Changes from v1.1
The table below summarizes field-level changes from DCAT-US v1.1 to v3.0 for the Distribution class. See the DCAT-US v3.0 overview for a full list of changes across all classes.
| v1.1 Field | Status in v3.0 | Action |
|---|---|---|
describedByType |
Absorbed into describedBy |
Remove describedByType as a standalone field. Express the format as mediaType within the describedBy Distribution object. Example: {"@type": "Distribution", "title": "Data Dictionary", "downloadURL": "https://agency.gov/dict.pdf", "mediaType": "application/pdf"} |
conformsTo as a plain string URI |
Now an array of Standard objects | Change from a plain URI string to an array of Standard objects. Example: [{"@type": "Standard", "title": "CSV on the Web", "identifier": "https://www.w3.org/TR/tabular-data-primer/"}]. A distribution can now conform to multiple standards. |
rights as a single string |
Now an array of strings | Convert from a single string to an array of strings. Example: ["This data is in the public domain.", "Please cite the source when using this data."] |
language with RFC 5646 tags (e.g., en-US) |
Now ISO 639-1 two-letter codes only | Simplify to two-letter ISO 639-1 codes. Change en-US to en, es-MX to es, etc. |
license at the Dataset level |
Now at the Distribution level | Move license from your Dataset objects to each Distribution object. If all distributions share the same license add it to each one individually. Example on each distribution: "license": "https://creativecommons.org/publicdomain/zero/1.0/" |
byteSize as a number |
Now a string | Change from a numeric value to a string. Example: "52428800" instead of 52428800. |
Access restrictions expressed as free text in rights or via accessLevel on the Dataset |
Now structured via accessRestriction, useRestriction, and cuiRestriction |
Use the new restriction fields on each Distribution to express access and use restrictions in a structured, machine-readable way. See the Access and use restrictions section below. |
Access fields
| Field | Required | Type | Description |
|---|---|---|---|
accessURL |
Conditional | string (URL) | URL providing indirect access to the dataset, such as an API or graphical interface. Use this when the data is not available as a direct download. Should not be a direct download URL. |
downloadURL |
Conditional | string (URL) | URL providing direct access to a downloadable file. Always accompany with mediaType. |
mediaType |
Conditional | string (IANA Media Type) | The MIME type of the file at downloadURL. Required when downloadURL is provided. Example: text/csv, application/zip. |
format |
Recommended | string | Human-readable description of the file format. Use API for web APIs. Example: CSV, XML, Zipped CSV. |
byteSize |
Optional | string | The size of the distribution in bytes, expressed as a numeric string. Example: "52428800" for 50 MB. |
checksum |
Optional | object | A Checksum object for verifying that the downloadable file has not been corrupted or tampered with. Requires algorithm (e.g., SHA-256) and checksumValue (a lowercase hexadecimal string). Example: {"@type": "Checksum", "algorithm": "SHA-256", "checksumValue": "a1b2c3..."}. Strongly recommended for all downloadable distributions. References the Checksum class. New in v3.0. |
Descriptive fields
| Field | Required | Type | Description |
|---|---|---|---|
title |
Recommended | string | A human-readable title for the distribution. Example: FY2024 Travel Data (CSV). |
description |
Recommended | string | A human-readable description of this distribution. |
conformsTo |
Optional | array of Standard objects | Standards or specifications this distribution conforms to. A distribution can conform to multiple standards. Example: [{"@type": "Standard", "title": "CSV on the Web", "identifier": "https://www.w3.org/TR/tabular-data-primer/"}] |
describedBy |
Recommended | object | A Distribution object describing the data dictionary or schema for this distribution. Example: {"@type": "Distribution", "title": "Data Dictionary", "downloadURL": "https://agency.gov/dict.pdf", "mediaType": "application/pdf"}. The describedByType field from v1.1 is no longer needed — express the format as mediaType within this Distribution object. |
license |
Recommended | string (URL) | The license or public domain dedication for this distribution. See Open Licenses. In v1.1 license was documented at the Dataset level. In v3.0 it is more correctly expressed here at the Distribution level per W3C DCAT. If all distributions share the same license add it to each one individually. |
rights |
Recommended | array of strings | Rights information for this specific distribution. Example: ["This data is in the public domain.", "Please cite the source when using this data."] |
language |
Optional | array of strings | ISO 639-1 two-letter language codes (e.g., en, es, fr). |
modified |
Recommended | string (ISO 8601) | The most recent date this specific distribution's content changed. Use an ISO 8601 date, datetime, year, or year-month value — for example, "2024-06-01". Particularly useful when a dataset has multiple distributions updated on different schedules — for example, a CSV file updated monthly and a ZIP archive updated annually. |
issued |
Optional | string (ISO 8601) | The date this specific distribution was formally published. Use an ISO 8601 date, datetime, year, or year-month value — for example, "2024-01-15". Use this when a distribution was published at a different time from the dataset itself — for example, when a new file format is added to an existing dataset. |
page |
Optional | array of Document objects | Documentation pages for this distribution. References the Document class. |
New in v3.0
| Field | Required | Type | Description |
|---|---|---|---|
representationTechnique |
Optional | Concept object | The format in which the distribution is released, beyond the file format. For geospatial data, use this to express the spatial representation type (grid, vector, TIN) using URIs from an approved registry. References the Concept class. |
status |
Optional | Concept object | The lifecycle status of this distribution. References the Concept class. |
characterEncoding |
Optional | array of strings | The character encoding(s) of the distribution. Example: ["UTF-8"]. |
spatialResolutionInMeters |
Optional | string | Minimum spatial separation resolvable in this distribution, in meters. Example: "1000". |
temporalResolution |
Optional | string (ISO 8601 duration) | Minimum time period resolvable in this distribution. |
compressFormat |
Optional | string (IANA Media Type) | The compression format of the file — for example, "application/gzip". Use this when the downloadable file is compressed. Distinct from mediaType (the underlying data format) and packageFormat (how multiple files are bundled). For example, a collection of CSV files compressed with gzip and packaged in a ZIP archive would have "mediaType": "text/csv", "compressFormat": "application/gzip", and "packageFormat": "application/zip". |
packageFormat |
Optional | string (IANA Media Type) | The packaging format used when one or more data files are grouped together for download — for example, "application/zip". Use this when a distribution bundles multiple files into a single downloadable archive. Distinct from compressFormat (compression) and mediaType (underlying data format). |
Access and use restrictions
These fields are new in v3.0 and specific to the U.S. federal context. They provide structured, machine-readable ways to express access and use restrictions on a distribution — replacing the v1.1 pattern of writing free text in rights or using the three-value accessLevel field on the dataset.
| Field | Required | Type | Description |
|---|---|---|---|
accessRestriction |
Recommended | array of AccessRestriction objects |
Structured access restriction information describing who can access this distribution and under what conditions. Each AccessRestriction object requires a restrictionStatus Concept. Optionally include specificRestriction (the specific authority or policy, such as a FOIA exemption) and restrictionNote (a plain-language explanation).
Controlled vocabulary: NARA Access Restriction Status list. Example for a public distribution: [{"@type": "AccessRestriction", "restrictionStatus": {"prefLabel": "Unrestricted"}}]
Example for a restricted distribution: [{"@type": "AccessRestriction", "restrictionStatus": {"prefLabel": "Restricted - Fully"}, "specificRestriction": {"prefLabel": "FOIA Exemption 6"}, "restrictionNote": "Contains personally identifiable information. Not available for public release."}]
|
useRestriction |
Recommended | array of UseRestriction objects |
Structured information about how this distribution may be used after access is granted — for example, attribution requirements, restrictions on commercial use, or terms of service. Each UseRestriction object requires a restrictionStatus Concept. Optionally include specificRestriction and restrictionNote.
Controlled vocabulary: NARA Use Restriction Status list. Example: [{"@type": "UseRestriction", "restrictionStatus": {"prefLabel": "Unrestricted"}, "restrictionNote": "Data is in the public domain. Please cite the source when using this data."}]
|
cuiRestriction |
Recommended | CUIRestriction object |
Controlled Unclassified Information (CUI) marking for this distribution, per Executive Order 13556 and NARA guidelines. Required for any distribution containing CUI. Requires cuiBannerMarking (e.g., CUI//SP-PRVCY) and designationIndicator (e.g., Controlled by: Example Federal Agency). Optionally include requiredIndicatorPerAuthority (an array of applicable authority strings).
See the NARA CUI Registry for valid banner marking values. Example: {"@type": "CUIRestriction", "cuiBannerMarking": "CUI//SP-PRVCY", "designationIndicator": "Controlled by: Example Federal Agency; POC: jane.smith@agency.gov"}
Distributions that do not contain CUI should set this field to null.
|
Example
A minimal distribution with a direct file download:
{
"@type": "Distribution",
"title": "FY2024 Travel Data (CSV)",
"description": "Full travel records as a comma-separated values file.",
"downloadURL": "https://www.agency.gov/data/travel-fy2024.csv",
"mediaType": "text/csv",
"format": "CSV",
"license": "https://creativecommons.org/publicdomain/zero/1.0/"
}
A distribution for an API endpoint:
{
"@type": "Distribution",
"title": "Travel Data REST API",
"description": "A fully queryable REST API returning JSON or XML.",
"accessURL": "https://api.agency.gov/travel/",
"format": "API",
"license": "https://creativecommons.org/publicdomain/zero/1.0/"
}
A more complete distribution showing commonly used fields:
{
"@type": "Distribution",
"title": "FY2024 Travel Data (CSV)",
"description": "Full travel records as a comma-separated values file. Includes destination, purpose, and cost for all official travel during fiscal year 2024.",
"downloadURL": "https://www.agency.gov/data/travel-fy2024.csv",
"mediaType": "text/csv",
"format": "CSV",
"byteSize": "52428800",
"modified": "2024-10-15",
"issued": "2024-10-01",
"language": ["en"],
"license": "https://creativecommons.org/publicdomain/zero/1.0/",
"rights": ["This data is in the public domain under 17 USC 105."],
"describedBy": {
"@type": "Distribution",
"title": "FY2024 Travel Data Dictionary",
"downloadURL": "https://www.agency.gov/data/travel-fy2024-dictionary.pdf",
"mediaType": "application/pdf"
},
"conformsTo": [
{
"@type": "Standard",
"title": "CSV on the Web",
"identifier": "https://www.w3.org/TR/tabular-data-primer/"
}
],
"checksum": {
"@type": "Checksum",
"algorithm": "SHA-256",
"checksumValue": "a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456"
},
"accessRestriction": [
{
"@type": "AccessRestriction",
"restrictionStatus": {
"prefLabel": "Unrestricted"
}
}
],
"useRestriction": [
{
"@type": "UseRestriction",
"restrictionStatus": {
"prefLabel": "Unrestricted"
},
"restrictionNote": "Data is in the public domain. Please cite the source when using this data."
}
],
"cuiRestriction": null
}
A distribution for a ZIP archive containing multiple files:
{
"@type": "Distribution",
"title": "FY2024 Travel Data (Zipped CSV with data dictionary)",
"description": "Travel records and accompanying data dictionary packaged as a ZIP archive.",
"downloadURL": "https://www.agency.gov/data/travel-fy2024-package.zip",
"mediaType": "text/csv",
"format": "Zipped CSV",
"packageFormat": "application/zip",
"byteSize": "15728640",
"license": "https://creativecommons.org/publicdomain/zero/1.0/",
"checksum": {
"@type": "Checksum",
"algorithm": "SHA-256",
"checksumValue": "b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef1234567a"
}
}
Source: jsonschema/definitions/Distribution.json · Generated reference: jsonschema/docs/Distribution.md