Skip to main content

CKAN Deposit — Semantics Reference

The CKAN deposit plugin submits plans as CKAN datasets and can also create CKAN dataset relationships. During deposit it reads values from the plan blueprint and descriptions, locating each field by its semantic tag.

This page lists every CKAN field the plugin can populate and the semantic you must assign to a blueprint or description-template field to populate it.

How the plugin resolves fields

Each semantic below is applied to both plan blueprint fields and description template fields. Single-valued semantics use the first matching value found (blueprint takes priority). Multi-valued semantics (tags, extras, relationships) aggregate from all matching fields and de-duplicate.

Values that are always set (not semantic-driven)

CKAN fieldSource
titlePlan label.
privatetrue for restricted plans, false for public plans.
notesPlan description.
versionPlan version.
authorPlan creator's name.
author_emailPlan creator's email.
maintainerAssembled from the plan's contacts. A single contact becomes "First Last"; multiple contacts are joined as "First Last (email)" entries.
maintainer_emailSet when the plan has exactly one contact.

Dataset fields

CKAN fieldSemanticNotes
typeckan.dataset.typeSingle-valued.
urlckan.dataset.sourceSingle-valued. For public plans without a value, falls back to the URL of the plan's public page in OpenCDMP.
owner_orgckan.dataset.organizationSingle-valued. Value must match an existing CKAN organisation. Falls back to plan organisation references, then to the configured default organisation.
license_idckan.dataset.licenseSingle-valued. Value must match an existing CKAN licence id. Falls back to plan licence references.

Tags

CKAN fieldSemanticNotes
tags[].nameckan.dataset.tagsAggregated from blueprint fields, description template fields, and each description's own tag list. Values must contain only letters, numbers, spaces, dots, underscores, or hyphens; others are silently skipped. Duplicates are dropped.

Extras

CKAN fieldSemanticNotes
extras[].key / extras[].valueckan.dataset.extrasAggregated from blueprint and description template fields. Each matching field produces one extra entry.

Relationships

The relationship semantics control CKAN dataset relationships. The field value is used as the id of the related dataset.

This dataset as subject

Relationship typeSemantic
depends_onckan.dataset.relationships_as_object.depends_on
dependency_ofckan.dataset.relationships_as_object.dependency_of
derives_fromckan.dataset.relationships_as_object.derives_from
has_derivationckan.dataset.relationships_as_object.has_derivation
links_tockan.dataset.relationships_as_object.links_to
linked_fromckan.dataset.relationships_as_object.linked_from
child_ofckan.dataset.relationships_as_object.child_of
parent_ofckan.dataset.relationships_as_object.parent_of

This dataset as object

Relationship typeSemantic
depends_onckan.dataset.relationships_as_subject.depends_on
dependency_ofckan.dataset.relationships_as_subject.dependency_of
derives_fromckan.dataset.relationships_as_subject.derives_from
has_derivationckan.dataset.relationships_as_subject.has_derivation
links_tockan.dataset.relationships_as_subject.links_to
linked_fromckan.dataset.relationships_as_subject.linked_from
child_ofckan.dataset.relationships_as_subject.child_of
parent_ofckan.dataset.relationships_as_subject.parent_of

All relationship semantics are assignable to both plan blueprint and description template fields; values from all matching fields are collected and de-duplicated.