DDI-CDI: Optimising Your Data Description for Integration and Reuse
24 March 2023
RDA Plenary 20
Gothenburg
Topics
Data Documentation Initiative Cross-Domain Integration (DDI-CDI): General Introduction
Background
A New DDI Specification
Why a New Specification?
DDI-CDI main aspects
DDI-CDI Functionality
DDI-CDI at-a-glance
Data Organization
Concepts & Representations
Process Description
Variable Cascade
DDI-CDI variable cascade – Conceptual
DDI-CDI variable cascade – Representation
DDI-CDI variable cascade – Instance
Legalmaritalstatus�(conceptual variable)
MARITALB
2008�(variable)
MARITAL�(represented variable)
MARITAL
2004�(variable)
MARITALB
2018�(variable)
MARITALB�(represented variable)
Represented variable
Common variable specification with a code representation
Conceptual variable�Common variable specification without a representation
Instance Variable
Variable specification within a dataset context
1 | Married |
2 | Separated |
3 | Divorced |
4 | Widowed |
5 | Never married |
| Married |
| Separated |
| Divorced |
| Widowed |
| Never married |
m | Married |
s | Separated |
d | Divorced |
w | Widowed |
n | Never married |
Example: comparability and traceability
Application: comparability and traceability
15
Application: cross domain integration
Describing Individual “Datums”
17
Datums – Holding data, variables and concepts together
DDI-CDI data description – Data structures
(Unit)
Identifier
Component
Measure
Component
Attribute
Component
entry | datetime | systolic | diastolic | position | weight | temp | pctO2 | pulse |
101 | 2020-07-14T13:54 | 114 | 70 | 2 | 83914.6 | 36.44 | 98 | 70 |
132 | 2020-07-14T14:03 | 125 | 86 | 3 | 68038.9 | 37.5 | 85 | 92 |
Example 1: data in wide form
Entry | DateTime | Position | Measure | Value |
101 | 2020-07-14T13:54 | 2 | systolic | 114 |
101 | 2020-07-14T13:54 | 2 | diastolic | 70 |
101 | 2020-07-14T13:54 | 2 | weight | 83914.60 |
101 | 2020-07-14T13:54 | 2 | temp | 36.44 |
101 | 2020-07-14T13:54 | 2 | pctO2 | 98 |
101 | 2020-07-14T13:54 | 2 | pulse | 70 |
101 | 2020-07-14T13:54 | 2 | away | n |
101 | 2020-07-14T13:54 | 2 | exposed | n |
132 | 2020-07-14T14:03 | 3 | systolic | 125 |
132 | 2020-07-14T14:03 | 3 | diastolic | 86 |
132 | 2020-07-14T14:03 | 3 | weight | 68038.90 |
132 | 2020-07-14T14:03 | 3 | temp | 37.5 |
132 | 2020-07-14T14:03 | 3 | pctO2 | 85 |
132 | 2020-07-14T14:03 | 3 | pulse | 92 |
132 | 2020-07-14T14:03 | 3 | away | y |
132 | 2020-07-14T14:03 | 3 | exposed | n |
IdentifierComponent
VariableValueComponent
AttributeComponent
VariableDescriptorComponent
The Variable Descriptor Component has values taken from the list of non-Unit Identifiers in the wide data set.
The “key” for each value is composed from
the Identifier and the Variable Descriptor, and may include non-transposed components, e.g. DateTime.
Key members
Example1: data in long form
Boat name | Nationality of boat | Landing date | Spieces | Round weight in ton | Fishing equipment |
Lønningen | NO | 07.04.2019 | Blue whiting | 2917,75 | Trawl |
Ligrunn | NO | 29.08.2019 | Herring | 23034,41 | Trawl |
Ligrunn | NO | 29.08.2019 | Pollock | 307,1 | Trawl |
Ligrunn | NO | 25.09.2019 | Mackerel | 1621,68 | Seine net |
Vikingbank | NO | 05.11.2019 | Norwegian spring breeding herring | 2932,16 | Net equipment |
| Fishing equipment, main group | |||
Species, main group | Purse seine | Conventional | Trawl | Other |
Pelagic fish | 587465 | 1371 | 712873 | 359 |
Cod and cod species | 33554 | 397254 | 237496 | 11 |
etc. | | | | |
Aggregate fisheries statistics, Year 2019 – Norwegian boats – Round weight in tons
Long table (micro-data set)
Multi-dimensional “keys” are identifiers formed from the set of dimension values (variables in long table).
Example: data in dimensional form
SensorIDz | Property | Time | ResultingValue |
sensor/35-207306-844818-0/BMP282 | atmosphericPressurehPa | 2017-06-06T12:36:12Z | 1021.45 |
Key | Value |
sensor/35-207306-844818-0/BMP28/atmosphericPressurehPa/2017-06-06T12:36:12Z | 1021.45 |
Wide
Key-Value
Semantic Sensor Network Ontology (SSN) example
Example: data in key-value form
The DDI-CDI Process Model
Simple Diagram
Activity
Step
Sub-Step
Control Logic
Inputs
Outputs
PROCEDURAL PROCESS
DECLARATIVE PROCESS
Process
Engine
Parameters
Playbook
(Functions)
Inputs
Outputs
Process Model (High Level)
Datum: Bringing it Together
Detailed Documentation
https://ddi-alliance.bitbucket.io/DDI-CDI/DDI-CDI_2022-10-06_rdf/doc/_build/DDICDILibrary/index.html
Current Status
User Communities: Implementation Guides and Syntaxes
Using the DDI-CDI Model
UK Data Services subset: Wide Data
UK Data Services subset: Long Data
Choosing Syntax Representations
DDI-CDI and Other Standards
There are a lot of standards!
36
DDI-CDI and other standards
GSBPM
GSIM
Information Capabilities
(CSDA)
DCAT
other implementation Standards…
implements
enables
enables
integrates
integrates
integrates
integrates
DDI-CDI
integrates
integrates
PROV-O
SKOS
Features for standards integration
A few examples…
Schema.org (Example)
Example: DCAT and DDI-CDI (1)
Slide credit: Arofan Gregory
Example: DCAT and DDI-CDI (2)
DCAT Instance
(Distribution, Service, etc.)
DDI-CDI Instance
(Proposed additional property)
Metadata
What is the Cross-Domain Interoperability Framework (CDIF)?
Many-to-Many or Many-to-One?
FAIR Activities and Standards
CDIF and DDI-CDI