Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

CDIF Data Structure Profile — Schema.org Implementation

This page documents the content items in the CDIF Data Structure profile and how each is encoded in JSON-LD. Some example metadata documents are accessible in the Data Structure GitHub repository. The ‘Cardinality’ value specifies how many values a property may carry: 1 means one value required; 1..* means at least one required, repeatable; 0..* means optional and repeatable; 0..1 means optional, single-valued.

All property names use namespace prefixes as declared in the @context (e.g. schema:, dcterms:, cdi:, cdif:). The CDIF JSON-LD implementation uses a hierarchical JSON structure, and CURIE syntax to abbreviate URIs using prefixes defined in the JSON-LD context. The implementation does not map un-prefixed JSON keys to URIs; rather, it prefixes a namespace abbreviation on the key label to represent the URI. This enables using standard JSON Schema to validate documents and avoids confusion about the vocabulary origin of keys used in the JSON.

The Data Structure profile builds on the CDIF Data Description profile (which describes what a dataset’s variables are) and adds what roles those variables play in the dataset’s structure and how records are keyed. A schema:DataDownload distribution gains a cdi:isStructuredBy link pointing to one of three concrete structures — cdi:WideDataStructure, cdi:LongDataStructure, or cdi:DimensionalDataStructure — each of which lists the role-typed components that make up the structure.

Each item lists its Cardinality, JSON encoding, and a Description explaining usage.

See also graphical presentation of the Data Structure profile

Artefacts for the Data Structure profile are in this GitHub repository (TBD — update link to release tag).

The profile’s authoritative implementation guide is CDIFDataStructureImplementationGuide.md; this page is a content-item-focused summary derived from it.

Profile conformance declaration

Wide data structure

Long data structure

Dimensional data structure

Identifier component

Measure component

Attribute component

Dimension component

Variable descriptor component

Variable value component

Dimension group

Primary key

Foreign key

Represented variable

Variable substantive value domain

Variable sentinel value domain

Enumeration value domain

Value description (non-enumerated)

Variable unit of measure

Variable intended datatype

Component semantic tag

Component identifier