Skip to content
GCHQDeveloper81 edited this page Jul 16, 2024 · 2 revisions

DCAT is a vocabulary for describing data catalogs (organised inventories of data assets that exist within an organisation). It was originally developed in the context of creating government data catalogs such as data.gov and data.gov.uk however the vocab itself is completely data-agnostic and can be applied to the creation of any data catalog. The standard is one of the many W3C recommendations and at time of writing has already undergone one major revision (making version 2 the current version). DCAT Version 3 is currently in working draft form, however the specifications state that all versions of DCAT maintain compatibility with older versions, so upgrading is not necessary for existing users.

Using a shared vocab such as DCAT carries with it all of the usual benefits of working with linked data, such as interoperability and decentralised publishing which are qualities particularly suited to the naturally distributed nature of data catalogs. Unlike many other vocabs, DCAT makes a point of borrowing heavily from other off-the-shelf vocabs wherever possible (the spec itself recommends building DCAT data from around 15 separate vocabs). For example...

  • It borrows metadata terms such as titles, temporal and spatial information from the Dublin Core ontology.
  • It borrows entity-like terms describing things like people and organizations from the FOAF ontology.
  • It borrows attribution and provenence vocabulary terms from the PROV ontology.

The DCAT vocab itself defines only around six new classes, including a Catalog and its associated Resource items. The Resource class is not meant to be used directly and is subclassed into more specific terms such as Datasets and DataServices. A Distribution represents a downloadable version of data from within a Dataset (e.g. an excel file) and a DataService is a service that provides access to those Distributions.

Example

The following example shows a simple catalog containing datasets relating to fictional motorway information. This example demonstrates how DCAT encourages the borrowing of terms from other vocabs rather than providing a full package of terms itself.

@prefix : <http://www.example.com/> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .                # DCAT
@prefix dt: <http://purl.org/dc/terms/> .                   # Dublin Core Terms
@prefix foaf: <http://xmlns.com/foaf/0.1/> .                # Friend of a Friend
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .          # XML-Schema

# The publisher of the catalog
:highways_england a foaf:Organization ;
    foaf:name "Highways England"@en .

# The catalog itself
:roadworks_catalog
  a dcat:Catalog ;
  dt:title "Imaginary Roadworks Catalog"@en ;
  dt:publisher :highways_england ;
  foaf:homepage "http://www.example.com/motorway_roadworks_catalog" ;
  dcat:dataset :M5_roadworks , :M5_accidents .

# Dataset 1
:M5_roadworks a dcat:Dataset ;
  dt:title "M5 Roadworks Report 2021"@en ;
  dcat:keyword "motorway"@en, "maintenence"@en ;
  dt:issued "2021-10-05"^^xsd:date ;
  dt:modified "2021-12-19"^^xsd:date ;
  dt:publisher :highways_england ;
  dcat:distribution [
    a dcat:Distribution ;
    dt:title "CSV distribution of M5 roadworks data"@en ;
    dcat:downloadURL "http://www.example.com/files/m5_roadworks.csv" ;
    dcat:mediaType <https://www.iana.org/assignments/media-types/text/csv> ;
    dcat:byteSize "5120"^^xsd:decimal
  ] ,
  [
    a dcat:Distribution ;
    dt:title "XML distribution of M5 roadworks data"@en ;
    dcat:downloadURL "http://www.example.com/files/m5_roadworks.xml" ;
    dcat:mediaType <https://www.iana.org/assignments/media-types/text/xml> ;
    dcat:byteSize "6899"^^xsd:decimal
  ] .

:M5_accidents a dcat:Dataset ;
  dt:title "M5 Accidents Report 2021"@en ;
  dcat:keyword "motorway"@en, "accidents"@en ;
  dt:issued "2021-12-31"^^xsd:date ;
  dt:modified "2021-12-31"^^xsd:date ;
  dt:publisher :highways_england ;
  dcat:distribution [
    a dcat:Distribution ;
    dt:title "CSV distribution of M5 accidents data"@en ;
    dcat:downloadURL "http://www.example.com/files/m5_roadworks.csv" ;
    dcat:mediaType <https://www.iana.org/assignments/media-types/text/csv> ;
    dcat:byteSize "5120"^^xsd:decimal
  ] .

Clone this wiki locally