Skip to content

Release 1.0.0

Choose a tag to compare

@dalito dalito released this 31 Dec 11:33
· 26 commits to main since this release

Release 1.0.0

voc4cat 1.0.0 is a major release with richer RDF output, better provenance tracking, and improved compatibility with vocabulary publishing tools like Skosmos.

Warning

Breaking changes: Vocabularies must be migrated from xlsx template v0.43 to v1.0. See the migration guide.

Highlights

  • xlsx template v1.0 — The familiar spreadsheet interface is preserved with minimal column changes. Under the hood, the xlsx handling has been rewritten with a pydantic-backed data model and dynamic template generation. Providing an xlsx template is no longer required; templates can optionally be supplied to include additional sheets.
  • Richer RDF output — Provenance support with prov:wasInfluencedBy, prov:hadPrimarySource, license/rights holder references, dct:created/modified and git blame URLs for traceability.
  • Deprecation support — Workflow for deprecating concepts with owl:deprecated, dct:isReplacedBy, and obsolete markers.
  • Skosmos 3.0 compatibility — RDF output aligned with the Skosmos data model.
  • Documentation — New Sphinx-based docs published to GitHub Pages.

Features

  • New validation profile vp4cat-5.2 based on vocpub-5.2, now the default. Custom SHACL profiles also supported.
  • ConceptScheme metadata is now read from idranges.toml configuration.
  • Partitioned storage (--split): Concept files organized into subdirectories by ID range (1000 IDs per directory), avoiding GitHub UI limits for large vocabularies.
  • Git-based provenance (--prov-from-git): Adds dct:created and dct:modified dates based on git history, following file moves/renames.
  • Simplified language handling: Translations are specified as additional rows (same IRI, different language code) rather than separate columns per language. Alternate labels (skos:altLabel) are now supported for concepts. Collections gain language support for the first time.
  • Hierarchy redundancy check (--detect-hierarchy-redundancy): Detects redundant skos:broader relationships.
  • ID ranges sheet: New output sheet displaying ID range configuration.
  • Python 3.14 support added.

Breaking Changes

  • xlsx template v1.0 replaces v0.43 — migration required.
  • Hierarchy-by-indentation removed.
  • Removed CLI option voc4cat transform --make-ids.
  • Removed profiles: vocpub pre-3.0 profiles removed; vp4cat-5.2 is now default.
  • dct:identifier format changed to local numeric ID only (e.g., 0000123).
  • skos:historyNote is now exclusively used for documenting concept obsoletion.

List of merged PRs

Full Changelog: v0.10.1...v1.0.0