profile-conceptscheme

CDIF Concept Scheme (profile module)

This repository holds the published artifacts for the CDIF Concept Scheme profile module — the cdifConceptScheme building block from the metadataBuildingBlocks source register.

Scope. cdifConceptScheme describes a SKOS concept scheme used as a controlled vocabulary in CDIF metadata — a community glossary or code system that supplies definitions and terms (for example, the concepts used to name variables) for use in other CDIF profiles. It is a thin module built on skosConceptScheme, reserved for concept-scheme-specific extensions and conformance rules. For controlled-value code lists (concepts with required skos:notation codes), see the related profile-codelist repository.

Specification

Conformance

A conforming concept scheme is a skos:ConceptScheme and declares conformance to:

Required elements: a scheme IRI (@id), skos:prefLabel, skos:definition, and at least one skos:hasTopConcept.

Examples

python FrameAndValidate.py examples/exampleSkosConceptScheme.json --validate

FrameAndValidate.py frames the document against cdifConceptScheme-frame.jsonld, array-wraps the multi-valued SKOS properties (skos:hasTopConcept, skos:altLabel, skos:narrower, skos:broader, the match and note properties, etc.), then validates against the JSON Schema. Validation is open-world: unknown properties pass.

Synced from metadataBuildingBlocks

Generated artifacts; re-sync manually when the source register changes:

file source
cdifConceptSchemeStructuredSchema.json python tools/resolve_schema.py cdifConceptScheme -o cdifConceptSchemeStructuredSchema.json
conceptSchemeRules.shacl byte-copy of _sources/skosProperties/skosConceptScheme/rules.shacl (the profile schema is a self-contained SKOS wrapper, so validate_shacl.py --emit-shapes finds no $ref-linked rules to merge)

Source profile: _sources/profiles/cdifProfile/cdifConceptScheme/.

Changelog — v1.1.0

Released 2026-09-10 as v1.1.0. Content synced from the CDIF metadataBuildingBlocks source; see the release for the tagged snapshot and git log v1.1.0 for the per-commit history:

Branches

main is the current release — GitHub Pages serves it, so the published URLs always show the newest release. It is protected: changes reach it only by pull request, which means the merge is the release.

New work goes on the updates branch and is merged to main when a release is cut, then tagged v1.1.n. The former reviewRevision202606 branch is retained as archive202609.

License

This work is licensed under Creative Commons Attribution 4.0 International (CC BY 4.0).