About ASB Schema¶
ASB Schema is a set of LinkML schemas for scientific tasks extracted from published research and for the skills and releases built from them. It is maintained by the Holobiomics Lab (CNRS, Université Côte d'Azur) and distributed as the Python package asb-schema. The letters ASB come from the reference pipeline for which the schemas were first written; the standard was named SciTask until 2026-05-24.
History¶
| Date | Event |
|---|---|
| 2026-05-22 | Release 0.1.0 as scitask-schema: task card, capsule and skill bundle, with mappings to schema.org, Dublin Core, P-Plan, PROV, EDAM and RO-Crate. Release 0.1.1 adds JSON Schema generation. |
| 2026-05-24 | Release 0.2.0: the package becomes asb-schema, SciTaskCard becomes ASBTaskCard; skill collection and collection registry schemas are added. |
| 2026-06-09 | task_kind and TaskKindEnum added to the card; cards move to schema_version 0.18.0. |
| 2026-08-18 | Exploration trace schema asb_trace.yaml added. |
| 2026-09-14 | Release 0.3.0, the first release on the Python Package Index. |
Release 0.4.0 gives four card slots lists of JSON objects, declares the fourteen optional card slots that the reference pipeline writes, among them execution_environment, and moves the package to a standalone repository with its own documentation site and continuous integration. The full list of changes is in the changelog.
Governance¶
The maintaining laboratory decides changes to the schema through changes to the repository and its release process; continuous integration decides whether a change passes the build. The public collections repository asb-skill-collections has its own governance documents (maintainers, authorship, conflicts of interest, community skills, content and open-access policies, provenance and license tiers, dispute resolution and release rollback); they govern the collections, not the schema.
Proposing a change¶
Changes are proposed as issues and pull requests on the asb-schema repository. A complete change carries, in one pull request:
- the LinkML change in
src/asb_schema/; - the regenerated files, from
bash generate.sh(JSON Schema files,context.jsonld, the field reference); - tests in
tests/, run withpython -m pytest; - a
CHANGELOG.mdentry in the Keep a Changelog format1, naming the class or slot that changed and whether previously valid data can fail.
| CI job | Python | Checks |
|---|---|---|
test |
3.10 to 3.14 | python -m pytest -q |
lint |
3.12 | ruff check ., ruff format --check . |
generated |
3.12 | Installs the generator versions of constraints/generate.txt, regenerates and fails when src/asb_schema or docs/reference/index.md differs from the committed files (generation_date lines ignored) |
package |
3.12 | Builds the distribution, twine check --strict |
docs |
3.12 | mkdocs build --strict |
A release is a tag v<version>; the publish workflow checks that the tagged commit is on main, that the tag equals the version in pyproject.toml, asb_schema.__version__ and CITATION.cff, and that CHANGELOG.md has a heading for it, runs the tests and uploads through PyPI Trusted Publishing. The versioning policy and the legacy identifiers are on the conformance page.
Licenses¶
| Layer | License | Declared in |
|---|---|---|
| Python package | Apache-2.0 | pyproject.toml, LICENSE, CITATION.cff |
| LinkML sources | CC-BY-4.0 | license: key of each src/asb_schema/*.yaml |
| Released collection content | CC-BY-4.0 | license: of each collection.yaml; code of the collections repository is Apache-2.0 |
Status¶
Release state¶
This site documents release 0.4.0, a pre-1.0 release in which a minor release may change a schema so that data valid under the previous release fails; the notice in the top bar of every page says so. The Python Package Index lists release 0.3.02; release 0.4.0 installs from a checkout (Getting started). In asb-skill-collections, metabolomics v2 is the published collection; epigenomics v1, metabolomics v1 and transcriptomics v1 are staged and hold the 417 capsules and benchmark cards.
Unverified points¶
| Point | State |
|---|---|
Whether DOI 10.5281/zenodo.20794027 identifies metabolomics v2 |
The Zenodo record carries the label metabolomics-v0.1.0 |
rocrate-validator on the capsule crates and the worked example |
Not run |
astra-tools validation of the exported astra.yaml |
Not run |
| ARA tools on the exported exploration tree | Not run |
skills-ref validate on released leaves |
Not run; leaf counts come from a scan of the files |
harbor run --skill over a released collection |
Not run; the layout matches |
Conformance of mappings.sssom.tsv to SSSOM |
Not checked |
Alignment of landmark_outputs with SUPER-style partial credit |
Stated in the slot description only |
How the TB-Science novel criterion treats a reproduction of a published answer |
No published rule addresses it |
Open decisions¶
- Is conformance read as closed validation (
linkml-validate) or open validation (the JSON Schema root)? - Does the card gain benchmark slots (canary, license, the environment a benchmark gives a solver, a pointer to a hidden answer)?
- Is the versioning policy applied retroactively to
asb_capsule.yaml, as release 0.4.0 applies it toasb_card.yaml, or amended? - Which license covers which layer, and where is that stated?
- When is
asb_schema.compatremoved?
-
Keep a Changelog, "Keep a Changelog". https://keepachangelog.com/en/1.1.0/ ↩
-
Python Package Index, "asb-schema". https://pypi.org/project/asb-schema/ ↩