Changelog

All notable changes to this project will be documented in this file.

Version 0.1.0 (Current)

Current development release of the DDI Toolkit.

DDI-Codebook 2.6 Upgrade

  • Upgraded DDI-Codebook models from version 2.5 to 2.6 schema.

  • Added 8 new complex types: fileCommandType, fileDerivationType, fileDerivationVarsType, languageType, licenseType, metadataAccsType, origArchType, varRangeType.

  • Migrated keywordType and topcClasType to subclass conceptType (matching 2.6 schema).

  • Updated base types for 8 classes (e.g., softwareType now extends conceptType).

  • Added agent identification attributes to 13 agent-related types.

  • Added controlled vocabulary attributes to conceptType and nationType.

  • Added access attribute to 11 types for fine-grained access control.

  • Added translation attributes (isTranslatable, isTranslated, etc.) to abstractTextType.

  • Added new child elements to 13 existing types (licensing, file derivation, type-of classifications).

  • Changed fileTxtType.fileCont cardinality from singular to list.

  • All changes are backward compatible with DDI-Codebook 2.5 documents.

Refactors

  • Refactored ddicodebook module into a subpackage structure for better extensibility.

  • Moved DDI-Codebook models to dartfx.ddi.ddicodebook.model.

  • Modularized Utility Functions: Moved spec-specific logic from root utils.py into ddicdi.utils and ddicodebook.utils.

  • Generic SHACL Reporting: Updated toolkit to use dartfx.rdf.utils.shacl_validation_to_markdown for standardized validation reports across the ecosystem.

  • Cleaned up root utils.py to focus on experimental simplified data models.

Features

DDI-Codebook Support:

  • Load DDI-Codebook XML files

  • Extract basic metadata (title, abstract, etc.)

  • Access data dictionary with variable information

  • File information extraction

  • Support for filtering variables by type

DDI-CDI Support (Experimental):

  • Load DDI-CDI specifications from directory

  • RDF graph operations with rdflib >= 7.0

  • SPARQL query support

  • Assistant Framework: High-level wrapper for simplified object creation and association management

  • RDF Toolkit Migration: Transitioned to the DataArtifex RDF Toolkit for definitive Pydantic models

  • Resource property and relationship exploration

  • Support for DDI-CDI 1.0 specification

  • SHACL validation support for DDI-CDI graphs

Documentation:

  • Comprehensive Sphinx documentation

  • API reference for all modules

  • Usage examples and tutorials

  • Installation and quick start guides

Known Issues

  • DDI-CDI support is experimental and subject to change

  • Limited validation for DDI-Codebook files

  • Performance not optimized for very large datasets

Upcoming Features

  • Enhanced DDI-Codebook validation

  • Better error handling and logging

  • Performance improvements

  • Additional DDI-CDI resource types

  • Export functionality for various formats

Previous Versions

This is the initial release.