Note — this repo is being renamed from
datacite4.6-jsonldtodatacite-metadata-toolkitto better reflect its scope (now covers DataCite 4.6 + 4.7, JSON Schema profiles, XML conversion, and crosswalk mappings — not just JSON-LD).
This repository provides machine-readable linked-data resources and tooling for the DataCite Metadata Schema (currently versions 4.6 and 4.7): RDF class and property definitions, controlled vocabulary terms as resolvable IRIs, JSON Schema validation profiles, an XML-to-JSON conversion script, and SKOS / JSKOS / SSSOM crosswalk mappings to external vocabularies (Schema.org, DCTERMS, DCAT-AP, Wikidata).
It is the source of truth for the DataCite linked-data namespace. For the TIB/W3ID publication route, this repository generates a reviewable production-namespace/ bundle that can be synced to TIBHannover/datacite-metadata-toolkit. The TIB toolkit fork then supplies the flat publication repository, TIBHannover/datacite, which is the GitHub Pages backend for the W3ID namespace. Do not edit the publication repo directly — all generated namespace changes start here or in TIBHannover/datacite-metadata-toolkit.
The key folders are:
| Path | What to expect |
|---|---|
production-namespace/ |
Generated TIB/W3ID production bundle. This is the reviewable output intended for later sync to TIBHannover/datacite-metadata-toolkit and then publication through TIBHannover/datacite. It contains W3ID-rewritten class/, property/, vocab/, context/, manifest/, and dist/ artifacts plus section index.html pages. It does not own publication-root files such as .nojekyll, LICENSE, or the root index.html; those belong to TIBHannover/datacite. |
rdf-vocabulary-staging/ |
Editable linked-data source files using the staging namespace. Expect class definitions, property definitions, controlled vocabularies, JSON-LD context files, manifests, generated distribution snapshots under dist/, and section index pages. |
rdf-build-scripts/ |
Build and release tooling. This includes release detection/application scripts, manifest and distribution builders, index generation, production namespace generation, OWL generation, shared libraries, and templates copied into generated bundles. |
validation-and-conversion/ |
JSON Schema profiles, XML validation/conversion scripts, XSD files, and examples for validating or converting DataCite metadata records. |
mappings/ |
SKOS, JSKOS, and SSSOM mappings from DataCite terms to Schema.org, DCTERMS, DCAT-AP, Wikidata, and related vocabularies. |
reports/ |
Generated release detection/application reports and plans. These are regenerated by the release tooling. |
website/ |
Source website pages used for human-facing documentation and landing pages. |
.github/workflows/ |
GitHub Actions workflows for release detection, applying release plans, snapshot builds, and Pages deployment. |
The staging namespace is rooted at https://schema.stage.datacite.org/linked-data/. Every file in rdf-vocabulary-staging/ and validation-and-conversion/schemas/schema-profiles/ declares an $id (JSON Schema) or @id (JSON-LD) whose URL path mirrors its location on disk, so a file's canonical IRI is predictable from its folder:
| Resource | Canonical IRI |
|---|---|
| Class | …/linked-data/class/<ClassName> |
| Property | …/linked-data/property/<propertyName> |
| SKOS ConceptScheme | …/linked-data/vocab/<scheme> |
| SKOS Concept | …/linked-data/vocab/<scheme>/<Term> |
| JSON-LD context | …/linked-data/context/fullcontext.jsonld |
| Manifest | …/linked-data/manifest/datacite-4.6.json |
| Schema profile | …/linked-data/schema-profiles/<filename> |
The GitHub Pages deploy publishes this layout so the IRIs resolve to both human-readable HTML pages and machine-readable JSON-LD. generate-production-namespace.sh creates the public namespace bundle for the planned TIB publication setup:
| Layer | URL |
|---|---|
| Canonical persistent namespace | https://w3id.org/tib/datacite/ |
| GitHub Pages publication backend | https://tibhannover.github.io/datacite/ |
In that setup, RDF identifiers use w3id, while GitHub Pages serves the concrete files. For example, the canonical term IRI https://w3id.org/tib/datacite/vocab/resourceTypeGeneral/Dataset resolves through w3id to the file served at https://tibhannover.github.io/datacite/vocab/resourceTypeGeneral/Dataset.jsonld.
Two relatedItem sub-properties reuse the controlled vocabularies of other DataCite properties — per spec, not as parallel vocabularies. The JSON-LD context (rdf-vocabulary-staging/context/fullcontext.jsonld) reflects this by pointing both @vocab bases at the canonical scheme directories:
| Sub-property | Reuses list from | Spec reference |
|---|---|---|
relatedItemType |
resourceTypeGeneral (vocab/resourceTypeGeneral/) |
4.7 §20.a: "Use the controlled list values as stated in 10.a resourceTypeGeneral" |
relatedItemIdentifierType |
relatedIdentifierType (vocab/relatedIdentifierType/) |
4.7 §20.1.a: matches property 12.a exactly |
This means a value like Dataset appearing under relatedItemType resolves to the same SKOS Concept IRI as it would under resourceTypeGeneral (…/vocab/resourceTypeGeneral/Dataset). Consumers distinguish the two usages by the predicate (property:relatedItemType vs property:resourceTypeGeneral), not the object. This eliminates the maintenance hazard of keeping two parallel vocabularies in sync as new values are added (e.g. 4.7's Poster/Presentation automatically apply to both fields).
Three related fields are open lists per spec — values are free text, not constrained to a controlled vocabulary. The context types them as xsd:string:
| Sub-property | Spec reference | Typical values |
|---|---|---|
alternateIdentifierType |
4.7 §11.a | Free text (e.g. Local accession number, Inventory number) |
subjectScheme |
4.7 §6.a | Free text (e.g. LCSH, ANZSRC Fields of Research, MeSH) |
nameIdentifierScheme, affiliationIdentifierScheme, rightsIdentifierScheme, publisherIdentifierScheme |
various — recommended values, not strictly closed | ORCID, ROR, ISNI, SPDX, … |
The DataCite metadata schema evolves over time (4.6, 4.7, …). This section explains how the linked-data vocabulary handles that change, so consumers always know exactly what they are pointing at.
There are three kinds of artifact, and they behave differently:
| Artifact | Example | Changes over time? | Use it when you want… |
|---|---|---|---|
| Canonical term IRI | …/property/subject, …/vocab/resourceTypeGeneral/Dataset |
Never — stable forever | A durable identifier for a DataCite term |
| Frozen versioned distribution | dist/datacite-4.6.ttl, dist/datacite-4.7.ttl |
Never after publication | The exact state of the vocabulary as of one release |
| Moving "latest" distribution | dist/datacite.ttl (.jsonld, .rdf) |
Yes — always equals the newest release | Always-current vocabulary, from one stable URL |
A separate pointer file, dist/datacite-current.jsonld, is a small machine-readable record that simply names which release is currently the default.
Key consequence — version provenance. Because canonical term IRIs are stable, a machine cannot tell which DataCite schema version a term was used under from the IRI alone. If you dereference …/property/subject, you get its current meaning. If exact provenance matters (was this record built against 4.6 or 4.7?), the consuming system must store that separately — either the schema version string (e.g. 4.6) or the versioned snapshot IRI (e.g. …/dist/datacite-4.6.jsonld).
Several community members have asked for version-specific IRIs for individual terms (so a term carries its release inside its own identifier). We deliberately do not do this:
- Identifier explosion. Versioning every term on every release would create thousands of near-duplicate IRIs, and tools that reason about
sameAs/relatedTowould have to reconcile all of them. - Aligns with DC / DCTERMS. The established practice is to treat each major change as a new ontology version, not as new per-term IRIs.
- Forward-compatible. Frozen distributions don't rule out per-term versioned IRIs later; if a strong need emerges they can be layered on without breaking any existing stable IRI.
These are easy to conflate but are independent:
- Which version of an external subject vocabulary was used? (e.g. UAT 5.1, AGROVOC) — expressed in the Subject property's
schemeUriwhen that vocabulary offers a versioned IRI. This is about other people's vocabularies, not DataCite's. - Which version of the DataCite schema was used? — a separate concern, captured by the versioned distribution / schema-version context described above.
See also Version History for what changed in each release.
rdf-vocabulary-staging/manifest/datacite-4.6.json is a versioned index of every defined class, property, and vocabulary term. Start there to discover what is available.
Individual term files follow a predictable structure:
- Class files (
class/Resource.jsonld) — define the IRI,rdf:type,rdfs:label, andrdfs:commentfor a DataCite entity. - Property files (
property/identifier.jsonld) — define the IRI and (where applicable) domain/range for a DataCite metadata field. - Vocab term files (
vocab/resourceTypeGeneral/Dataset.jsonld) — define a controlled term withskos:prefLabel,skos:definition,skos:inScheme, and optionalskos:closeMatchmappings.
rdf-vocabulary-staging/context/fullcontext.jsonld maps DataCite-style compact JSON keys to their full IRIs. Reference it in your JSON-LD documents:
{
"@context": "https://schema.stage.datacite.org/linked-data/context/fullcontext.jsonld",
"@type": "Resource",
"identifier": "10.1234/example",
"creator": [{ "creatorName": "Smith, Jane" }]
}validation-and-conversion/scripts/validate_xml.rb validates an XML file against the DataCite XSD schema. Requires Ruby.
validation-and-conversion/scripts/convert.py parses a DataCite XML file and produces a JSON payload matching the DataCite REST API structure (a data.attributes envelope). Python 3 only — no external packages required.
python3 validation-and-conversion/scripts/convert.py \
validation-and-conversion/examples/datacite-example-full-v4.xml \
--output record.jsonvalidation-and-conversion/scripts/validate.js validates an NDJSON file containing JSKOS mappings or concept records using the jskos-validate package.
npm install jskos-validate
node validation-and-conversion/scripts/validate.js mappings/jskos-mappings.jsonGenerate the public TIB/w3id namespace bundle:
npm run build:production-namespace
# Output is written to production-namespace/The default command rewrites staging IRIs from https://schema.stage.datacite.org/linked-data/ to the canonical namespace https://w3id.org/tib/datacite/, prepares generated HTML links for the GitHub Pages project path /datacite, and writes a production-specific README into the generated bundle. It also writes CHECKSUMS.sha256 and manifest/bundle-integrity.json so the file count and bundle checksum can be reviewed. The generated bundle is committed in this repository first so it can be reviewed and then synced to TIBHannover/datacite-metadata-toolkit; publication to TIBHannover/datacite happens from that TIB fork.
The production bundle intentionally does not own publication-root files such as .nojekyll, LICENSE, or the root index.html; those belong to TIBHannover/datacite.
To override the defaults:
SOURCE_NAMESPACE="https://schema.stage.datacite.org/linked-data/" \
CANONICAL_NAMESPACE="https://w3id.org/tib/datacite/" \
PAGES_BASE_PATH="/datacite" \
PUBLICATION_BASE_URL="https://tibhannover.github.io/datacite/" \
DST="production-namespace" \
bash rdf-build-scripts/generate-production-namespace.shOnce deployed, each profile is fetchable at its $id URL — e.g. https://schema.stage.datacite.org/linked-data/schema-profiles/integrated.json — so validators can resolve $refs remotely. You can also validate against a local copy:
npx ajv-cli validate \
-s validation-and-conversion/schemas/schema-profiles/integrated.json \
-d your-metadata-record.jsonSee the Schema Profiles section below for which profile to choose.
The mappings/ folder provides four complementary views of how DataCite terms align with external vocabularies. All four files use the same canonical IRI scheme: subject IRIs resolve to the linked-data namespace (https://w3id.org/tib/datacite/{property,class,vocab/<scheme>}/<name>) and Schema.org targets use the HTTPS form (https://schema.org/<name>). Tools can merge any subset of these files into a single RDF graph without IRI conflicts.
SKOS_crosswalks.jsonld— SKOS-predicate mappings (skos:exactMatch,skos:closeMatch, etc.) to Schema.org, DCAT, DCTERMS, and Wikidata, embedded directly in the vocabulary JSON-LD. Uses CURIE prefixesdatacite-prop:,datacite-class:,datacite-vocab:.datacite-schemaorg.sssom.tsv— machine-readable SSSOM mapping set from DataCite 4.6 properties and controlled vocabulary terms to Schema.org only. Suitable for automated alignment pipelines and SSSOM-aware tools.datacite-dcterms.sssom.tsv— companion SSSOM mapping set strictly limited to DataCite terms with no adequate Schema.org equivalent (currently fourdateTypevalues —Accepted,Submitted,Valid,Withdrawn— and therelationTypepairIsReplacedBy/Replaces), mapped to DCTERMS (Dublin Core Terms). Overlap with the Schema.org SSSOM file is excluded by design — see that file for DataCite terms that have both Schema.org and DCTERMS targets.jskos-mappings.json— the same mappings in JSKOS format for use with Cocoda and compatible mapping registries.
| File | What it is | Use it when |
|---|---|---|
datacite4.6-schema.json |
Core attribute schema | You want a minimal schema for the data.attributes object only |
datacite4.6-profile.json |
Modular submission profile | You're validating client submissions to the REST API and prefer external $defs/context references |
integrated.json |
Self-contained bundled profile | You need a single file with all enumerations, context, response/submit validators, and export rules embedded — no external $ref resolution |
datacite_api.jsonld |
JSON-LD context for REST payloads | You want to interpret REST API JSON as linked data |
rules.json |
Supplementary validation rules | Layered on top of the main profile for additional checks |
titleTypes.jsonld |
Title-type SKOS fragment | Standalone SKOS-style definition of title types |
The integrated profile bundles five concerns into one self-contained file:
- Root attributes schema — structure and validation of
data.attributes(creators, titles, publisher, relatedIdentifiers, …), mirroring the REST API.additionalProperties: falsefor strict client-side validation. $defsenumerations — every controlled vocabulary (resourceTypeGeneral,relationType,descriptionType,contributorType, etc.) inlined. Each term has aniriMapentry pointing to its canonical staging IRI (…/linked-data/vocab/<scheme>/<term>), so the same JSON can be validated and exported as RDF without re-mapping.profile.@context— a complete JSON-LD context mapping DataCite keys to RDF predicates (creator → schema:creator,identifier → dcterms:identifier, etc.). Embedded so consumers can generate RDF graphs without an external context fetch.responseProfileandsubmitProfile— JSON:API envelope validators for GET responses and POST/PUT submissions, embedded so a single file handles both directions.exportProfile— rules for converting validated JSON into RDF/JSON-LD, including language-tag handling and DOI normalization tohttps://doi.org/<doi>.
rdf-build-scripts/synCheck.py verifies that the controlled-list $defs inside datacite4.6-profile.json stay in sync with the published vocab term files under rdf-vocabulary-staging/vocab/. Run it whenever you add or remove vocabulary terms.
The release pipeline is a three-step process: detect → review → apply. All three steps have both a GitHub Actions workflow (for CI) and a local Node.js command (for development).
- Node.js 20+
- Apache Jena (
rioton PATH) — only needed forbuild-distribution/release-snapshot, which generate.ttland.rdffiles.
What it does: Fetches the official DataCite schema release page, compares it to the local manifest versions, and writes a machine-readable JSON plan plus a Markdown report under reports/.
Via GitHub Actions:
- Go to Actions → Detect DataCite Release → Run workflow
- Optionally fill in
version(e.g.4.7) andrelease_date(e.g.2026-03-03). Leave both blank to auto-detect the next release. - Enable Commit plan files (default: on) to push the plan to the branch automatically.
Locally:
# Auto-detect next release
node rdf-build-scripts/detect-datacite-release.js
# Target a specific version
node rdf-build-scripts/detect-datacite-release.js --version 4.7 --release-date 2026-03-03Output files:
| File | Description |
|---|---|
reports/release-import-plan-4.7.json |
Machine-readable change plan — edit this to approve/skip changes |
reports/release-import-plan-4.7.md |
Human-readable summary of detected changes |
Open reports/release-import-plan-4.7.json. Each detected change has a "status" field:
| Status | Meaning |
|---|---|
"proposed" |
Automatically detected; ready to approve |
"apply" |
Change this from "proposed" to approve it for the next step |
"skip" |
Intentionally excluded from this run |
"manual" |
Requires manual attention before it can be applied (e.g. renames, removals) |
Change every "proposed" entry you want to apply to "apply". Entries left as "proposed" or "manual" are skipped.
Typical 4.6 → 4.7 plan looks like:
What it does: Reads the approved plan, writes new vocab term files into rdf-vocabulary-staging/, updates scheme files and context/fullcontext.jsonld, then builds a full versioned snapshot (manifest + dist bundles + index pages).
Via GitHub Actions:
- Go to Actions → Apply DataCite Release Plan → Run workflow
- Set
plan_pathtoreports/release-import-plan-4.7.json - Leave module toggles at their defaults unless you want to selectively run only some modules
- Enable Commit generated files (default: on) to push all outputs back to the branch
Locally:
node rdf-build-scripts/apply-datacite-release-plan.js \
--plan reports/release-import-plan-4.7.json \
--set-currentWhat gets written:
| Path | Description |
|---|---|
rdf-vocabulary-staging/vocab/<scheme>/<Term>.jsonld |
New term files |
rdf-vocabulary-staging/vocab/<scheme>/<scheme>.jsonld |
Updated scheme with new hasTopConcept entries |
rdf-vocabulary-staging/property/<name>.jsonld |
New property files (for simple-property changes) |
rdf-vocabulary-staging/context/fullcontext.jsonld |
Updated context mappings |
rdf-vocabulary-staging/manifest/datacite-4.7.json |
New versioned manifest |
rdf-vocabulary-staging/manifest/release-matrix-4.6-4.7.json |
Change delta between versions |
rdf-vocabulary-staging/manifest/datacite-current.json |
Updated current-version pointer |
rdf-vocabulary-staging/dist/datacite-4.7.{jsonld,ttl,rdf} |
Bundled distribution in 3 RDF formats |
rdf-vocabulary-staging/dist/datacite-current.jsonld |
Pointer to the current distribution |
rdf-vocabulary-staging/dist/datacite.{jsonld,ttl,rdf} |
Moving "latest" aliases |
rdf-vocabulary-staging/*/index.html |
Updated vocabulary browser index pages |
reports/release-apply-4.7.md |
Summary of what was applied |
To rebuild the manifest and distribution for an existing version — for example after manually editing vocab files — use the snapshot workflow directly:
Via GitHub Actions: Run Build Versioned Snapshot with version (e.g. 4.6) and an optional release_date.
Locally:
node rdf-build-scripts/release-snapshot.js --version 4.6This runs: manifest-sync --write --validate → build-distribution → update-current-pointers → generate-index-pages → update-root-index.
All scripts run from the repository root and auto-detect rdf-vocabulary-staging/ as the vocabulary root.
| Script | Usage | Description |
|---|---|---|
manifest-sync.js |
--check | --write | --validate [--version x.y] [--manifest <path>] [--allow-narrow] |
Rebuilds or validates a manifest from files on disk |
build-distribution.js |
[--version x.y] |
Bundles vocab files into dist/datacite-<v>.jsonld and converts to .ttl/.rdf |
update-current-pointers.js |
[--version x.y] |
Writes datacite-current.json and dist/datacite.jsonld aliases |
generate-index-pages.js |
(no args) | Regenerates HTML browser index pages for class/, property/, vocab/, context/, dist/, manifest/ |
generate-production-namespace.sh |
env vars: SOURCE_NAMESPACE, CANONICAL_NAMESPACE, PAGES_BASE_PATH, PUBLICATION_BASE_URL, DST |
Builds the reviewable production-namespace/ bundle for the TIB/W3ID publication flow |
update-root-index.js |
(no args) | Patches AUTO marker blocks in rdf-vocabulary-staging/index.html if that file exists (no-op otherwise) |
detect-datacite-release.js |
[--version x.y] [--release-date YYYY-MM-DD] |
Detects changes, writes plan to reports/ |
apply-datacite-release-plan.js |
--plan <path> [--modules <csv>] [--set-current] |
Applies an approved plan to vocab source files |
release-snapshot.js |
--version x.y [--release-date YYYY-MM-DD] [--no-set-current] |
Full snapshot: manifest-sync + dist + pointers + index pages |
synCheck.py |
[--profile <filename>] |
Verifies $defs enums in a schema profile match vocab term files on disk |
Module IDs (for --modules CSV in apply):
| ID | What it handles |
|---|---|
controlled-list |
Adds new terms to vocab schemes and creates term .jsonld files |
simple-property |
Creates a new property .jsonld and adds its context entry |
property-group |
Creates a group of related properties with shared context entries |
complex-structure |
Creates new class + property files for a complex nested structure |
rename |
Renames a controlled-list term |
removal |
Removes deprecated terms or context entries |
rdf-vocabulary-staging/manifest/datacite-current.json points at the current published version (currently 4.7). Each release leaves a versioned manifest, an apply report under reports/, and a release-matrix delta under rdf-vocabulary-staging/manifest/release-matrix-<prev>-<next>.json.
Applied on top of 4.6 via the Detect → Review → Apply pipeline. Changes:
resourceTypeGeneral: addsPoster,PresentationrelatedIdentifierType: addsRAiD,SWHIDrelationType: addsOther- New property
relationTypeInformation(additional information about the selected relationType, applies to bothrelatedIdentifierandrelatedItem) descriptionType=SeriesInformationis soft-deprecated — the spec directs new content to encode series metadata via the structuredrelatedItemproperty withrelationType=IsPublishedIninstead. TheSeriesInformationterm remains valid for backwards compatibility; see vocab/descriptionType/SeriesInformation.jsonld for the supersession note.
See reports/release-apply-4.7.md and rdf-vocabulary-staging/manifest/release-matrix-4.6-4.7.json for the full apply record.
Adds or updates these controlled values, all represented in the vocabulary files:
| Field | New values |
|---|---|
resourceTypeGeneral |
Project, Award |
relatedIdentifierType |
RRID, CSTR |
contributorType |
Translator |
relationType |
IsTranslationOf, HasTranslation |
dateType |
Coverage |
4.6 also introduced the subject sub-property classificationCode to support subject schemes such as ANZSRC that lack per-term valueURIs.
JSON-LD — A JSON-based format for linked data. An @context maps compact JSON keys to globally unique IRIs so different systems interpret the same key identically.
SKOS — The W3C Simple Knowledge Organization System. Used here to define controlled vocabulary terms and to map DataCite terms to equivalent terms in Schema.org, DCAT, and other vocabularies.
JSKOS — A JSON-based serialization of SKOS, used for interoperable mapping registries such as Cocoda.
SSSOM — The Simple Standard for Sharing Ontology Mappings. A TSV-based format that records each alignment between two terms with a predicate, justification, and provenance. The .sssom.tsv files in mappings/ can be loaded directly by tools such as sssom-py or imported into ontology alignment pipelines.
JSON Schema profile vs JSON-LD context — The schema profiles (validation-and-conversion/schemas/schema-profiles/) check the structure of a JSON record (required fields, allowed values, data types). The JSON-LD context (rdf-vocabulary-staging/context/fullcontext.jsonld) gives those fields semantic meaning as linked data. Both can be applied to the same JSON document.
Staging vs production namespace — Source vocabulary files use the staging host https://schema.stage.datacite.org/linked-data/. The TIB/W3ID production namespace (https://w3id.org/tib/datacite/) is generated separately via generate-production-namespace.sh into production-namespace/.
- DataCite Metadata Schema 4.6 — https://schema.datacite.org/meta/kernel-4.6/
- DataCite REST API — https://support.datacite.org/docs/api
- DataCite 4.6 Release Notes — https://support.datacite.org/docs/datacite-metadata-schema-46-release-notes
- JSON-LD specification — https://json-ld.org/
- JSON Schema specification — https://json-schema.org/
- SKOS Primer — https://www.w3.org/TR/skos-primer/
- JSKOS format — https://gbv.github.io/jskos/
- SSSOM specification — https://mapping-commons.github.io/sssom/
{ "targetVersion": "4.7", "releaseDate": "2026-03-03", "changes": [ { "id": "controlled-list-values-added:resourceTypeGeneral:4.7", "module": "controlled-list", "kind": "controlled-list-values-added", "status": "apply", // ← set to "apply" to include "summary": "Add resourceTypeGeneral terms: Poster, Presentation" }, { "id": "controlled-list-values-added:relatedIdentifierType:4.7", "module": "controlled-list", "status": "apply", "summary": "Add relatedIdentifierType terms: RAiD, SWHID" }, { "id": "simple-property-added:relationTypeInformation:4.7", "module": "simple-property", "status": "apply", "summary": "Add simple property relationTypeInformation" } ] }