There is a newer version of the record available.

Published July 17, 2026 | Version v0.5.6

linkml/schema-automator: v0.5.6

  • 1. Lawrence Berkeley National Laboratory
  • 2. Lawrence Berkeley National Lab
  • 3. UNC Chapel Hill
  • 4. RWTH Aachen University
  • 5. Leibniz Institute for Catalysis (LIKAT)
  • 6. semanticly.ai
  • 7. Dartmouth College, @dandi, @Debian, @DataLad, @neurodebian, @PyMVPA, @fail2ban

Description

This release builds out a data dictionary adapter ecosystem (#202): a canonical data-dictionary format, adapters that translate between it and common external formats, a schema→DD projector, and a DD-driven schema enrichment step. It also modernizes the project's tooling and XML handling.

Highlights

  • Canonical data dictionary format — a documented, LinkML-modeled DD format that the new adapters translate to and from, giving a single hub representation for tabular metadata.
  • New format adapters — Frictionless Table Schema, dbGaP variable digests, and REDCap data dictionaries, each convertible in both directions against the canonical DD.
  • EML importer — import Ecological Metadata Language XML into LinkML (schemauto import-eml), one class per <dataTable>, one slot per <attribute>.
  • Schema enrichment from data dictionaries — overlay one or more canonical DDs onto an inferred schema (schemauto enrich) to add descriptions, labels, URIs, units, permissible values, and constraints (#192).

New adapters & importers

  • Frictionless Table Schema adapter — convert between a Frictionless Table Schema and the canonical DD in both directions.
  • dbGaP variable digest adapter — ingest dbGaP variable digests as data dictionaries (import-side of the long-standing dbGaP request).
  • REDCap data dictionary adapter — round-trip between a REDCap data dictionary CSV and the canonical DD (schemauto adapt-redcap, --reverse for the return direction) (#204).
  • EML XML importer (schemauto import-eml) — with --schema-name / --schema-id overrides; the schema name and id default to the EML packageId.

Data dictionary tooling

  • Canonical DD format spec — prose spec plus the LinkML metamodel the adapters share.
  • schemauto extract-dd — project a LinkML schema (including importer output: XSD, JSON Schema, OWL, RDFS, SQL DDL, EML) into the canonical DD format, per-class or in batch.
  • Schema-driven XML loader — a reusable, annotation-driven XML→dict loader; the dbGaP adapter and EML importer are both built on it.

Schema enrichment

  • schemauto enrich — overlay canonical data dictionaries onto an inferred schema by slot name, flowing descriptions, titles, semantic URIs, units, permissible values, min/max, required, multivalued, and patterns into the schema, with conflicts surfaced as warnings. Multiple DDs can be layered in order (#192).

Infrastructure & dependencies

  • Migrated from Poetry to uv for dependency management and builds.
  • Consolidated XML parsing on lxml and dropped the direct defusedxml dependency; parsing now uses a hardened lxml parser (no external/DTD entity resolution, no network).
  • linkml-map ≥ 0.5.3 and linkml-runtime 1.11.x — trans-spec source_schema/target_schema now use the SchemaReference shape, and the REDCap/Frictionless code lists are derived via class_derivations rather than expression comprehensions.
  • Python: 3.10–3.14 supported and tested in CI.

Full changelog: https://github.com/linkml/schema-automator/compare/v0.5.5...v0.5.6

Files

linkml/schema-automator-v0.5.6.zip

Files (4.3 MB)

Name Size Download all
md5:b611ff74713a06bc885480c787f48164
4.3 MB Preview Download

Additional details

Related works