classDiagram
class WorkflowConfig
click WorkflowConfig href "./WorkflowConfig.html"
WorkflowConfig : chunk
WorkflowConfig --> "0..1" Integer : chunk
click Integer href "../http://www.w3.org/2001/XMLSchema#integer.html"
WorkflowConfig : container
WorkflowConfig --> "0..1" String : container
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
WorkflowConfig : container_args
WorkflowConfig --> "0..1" String : container_args
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
WorkflowConfig : container_binds
WorkflowConfig --> "*" String : container_binds
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
WorkflowConfig : distribute
WorkflowConfig --> "0..1" DistributionConfig : distribute
click DistributionConfig href "./DistributionConfig.html"
WorkflowConfig : nextflow
WorkflowConfig --> "0..1" WorkflowEngineConfig : nextflow
click WorkflowEngineConfig href "./WorkflowEngineConfig.html"
WorkflowConfig : out_dir
WorkflowConfig --> "0..1" String : out_dir
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
WorkflowConfig : requirements
WorkflowConfig --> "*" SoftwareRequirement : requirements
click SoftwareRequirement href "./SoftwareRequirement.html"
WorkflowConfig : retries
WorkflowConfig --> "0..1" Integer : retries
click Integer href "../http://www.w3.org/2001/XMLSchema#integer.html"
WorkflowConfig : rng
WorkflowConfig --> "0..1" String : rng
click String href "../http://www.w3.org/2001/XMLSchema#string.html"
WorkflowConfig : slurm
WorkflowConfig --> "0..1" WorkflowEngineConfig : slurm
click WorkflowEngineConfig href "./WorkflowEngineConfig.html"
WorkflowConfig : snakemake
WorkflowConfig --> "0..1" WorkflowEngineConfig : snakemake
click WorkflowEngineConfig href "./WorkflowEngineConfig.html"
Class: WorkflowConfig
Declarative orchestration for rendering a parameter sweep into a distributed, reproducible workflow (Slurm array, Snakemake, Nextflow). Backend- and engine-independent: it names what to distribute, where results go, and the per-engine resources, while each engine emitter renders the concrete artefact. Declared on a study as workflow and refined per experiment via workflow_overrides; unset fields fall back to the emitter’s defaults so an override sets only what it names.
URI: tvbo:WorkflowConfig
Class Properties
| Property | Value |
|---|---|
| Class URI | tvbo:WorkflowConfig |
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| out_dir | 0..1 xsd:string |
Output directory template | direct |
| container | 0..1 xsd:string |
Container image wrapping each task; tasks run as <runtime> exec <image> … |
direct |
| container_binds | * xsd:string |
Host paths that must be visible inside the container beyond the ones its runt… | direct |
| container_args | 0..1 xsd:string |
Additional arguments passed verbatim to the container runtime when it execute… | direct |
| retries | 0..1 xsd:integer |
Automatic retries per failed task | direct |
| rng | 0..1 xsd:string |
Random-seed policy across shards | direct |
| chunk | 0..1 xsd:integer |
Default shard count used when distribute | direct | | [distribute](../slots/distribute.qmd) | 0..1 <br/> [DistributionConfig](../classes/DistributionConfig.qmd) | How exploration axes map onto the vectorized vs fanned-out tiers | direct | | [requirements](../slots/requirements.qmd) | * <br/> [SoftwareRequirement](../classes/SoftwareRequirement.qmd) | Software requirements for the workflow environment; overridesexperiment |
direct |
| slurm | 0..1 WorkflowEngineConfig |
Slurm sbatch directives for array-job execution | direct |
| snakemake | 0..1 WorkflowEngineConfig |
Snakemake execution directives | direct |
| nextflow | 0..1 WorkflowEngineConfig |
Nextflow execution directives | direct |
Usages
| used by | used in | type | used |
|---|---|---|---|
| Figure | workflow_overrides | range | WorkflowConfig |
| SimulationExperiment | workflow | range | WorkflowConfig |
| SimulationStudy | workflow | range | WorkflowConfig |
Identifier and Mapping Information
Schema Source
- from schema: https://w3id.org/tvbo
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | tvbo:WorkflowConfig |
| native | tvbo:WorkflowConfig |
LinkML Source
Direct
name: WorkflowConfig
description: 'Declarative orchestration for rendering a parameter sweep into a distributed,
reproducible workflow (Slurm array, Snakemake, Nextflow). Backend- and engine-independent:
it names *what* to distribute, *where* results go, and the per-engine resources,
while each engine emitter renders the concrete artefact. Declared on a study as
``workflow`` and refined per experiment via ``workflow_overrides``; unset fields
fall back to the emitter''s defaults so an override sets only what it names.'
from_schema: https://w3id.org/tvbo
attributes:
out_dir:
name: out_dir
description: Output directory template. ``{study}`` and ``{experiment}`` are substituted
with the study and experiment keys at emit time. Unset means the kit's own ``derivatives/tvbo``.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: string
container:
name: container
description: 'Container image wrapping each task; tasks run as ``<runtime> exec
<image> …``. A concrete image passes through as given — either a registry reference
the engine resolves and materialises itself (``docker://…:tag``) or a path to
an image file already built on the target, which pins the exact image and needs
no pull. A reference that leaves the version open is resolved to the tvbo image
matching the running CLI: the symbolic value ``tvbo``, or a tvbo registry reference
with no ``:tag``. Left unset while ``requirements`` are declared, the base still
defaults to that tvbo image (the deps layer onto it); unset with no requirements,
tasks run bare.'
from_schema: https://w3id.org/tvbo
domain_of:
- ResultEntity
- WorkflowConfig
range: string
container_binds:
name: container_binds
description: Host paths that must be visible inside the container beyond the ones
its runtime binds by default (typically ``$HOME`` and the working directory).
Required whenever a task reads or writes a site filesystem outside those defaults
— a shared cache, a data tree, or a scratch area a symlink resolves into. Rendered
into each runtime's own flag (``--bind`` for Apptainer/Singularity).
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: string
multivalued: true
container_args:
name: container_args
description: Additional arguments passed verbatim to the container runtime when
it executes a task. The extension point for runtime flags the typed fields do
not cover, mirroring ``WorkflowEngineConfig.options`` for scheduler directives.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: string
retries:
name: retries
description: Automatic retries per failed task. Unset means none.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: integer
minimum_value: 0
rng:
name: rng
description: Random-seed policy across shards. ``deterministic`` (the default
when unset) derives each task's seed from its shard index so the fan-out is
reproducible.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: string
chunk:
name: chunk
description: Default shard count used when ``distribute.chunk`` is unset (see
DistributionConfig.chunk).
from_schema: https://w3id.org/tvbo
domain_of:
- DistributionConfig
- WorkflowConfig
range: integer
minimum_value: 1
distribute:
name: distribute
description: How exploration axes map onto the vectorized vs fanned-out tiers.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: DistributionConfig
inlined: true
requirements:
name: requirements
description: Software requirements for the workflow environment; overrides ``experiment.environment.requirements``
when set.
from_schema: https://w3id.org/tvbo
domain_of:
- SoftwareEnvironment
- Function
- WorkflowConfig
- PDESolver
range: SoftwareRequirement
multivalued: true
inlined: true
inlined_as_list: true
slurm:
name: slurm
description: Slurm sbatch directives for array-job execution.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: WorkflowEngineConfig
inlined: true
snakemake:
name: snakemake
description: Snakemake execution directives.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: WorkflowEngineConfig
inlined: true
nextflow:
name: nextflow
description: Nextflow execution directives.
from_schema: https://w3id.org/tvbo
rank: 1000
domain_of:
- WorkflowConfig
range: WorkflowEngineConfig
inlined: true
class_uri: tvbo:WorkflowConfigInduced
name: WorkflowConfig
description: 'Declarative orchestration for rendering a parameter sweep into a distributed,
reproducible workflow (Slurm array, Snakemake, Nextflow). Backend- and engine-independent:
it names *what* to distribute, *where* results go, and the per-engine resources,
while each engine emitter renders the concrete artefact. Declared on a study as
``workflow`` and refined per experiment via ``workflow_overrides``; unset fields
fall back to the emitter''s defaults so an override sets only what it names.'
from_schema: https://w3id.org/tvbo
attributes:
out_dir:
name: out_dir
description: Output directory template. ``{study}`` and ``{experiment}`` are substituted
with the study and experiment keys at emit time. Unset means the kit's own ``derivatives/tvbo``.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: string
container:
name: container
description: 'Container image wrapping each task; tasks run as ``<runtime> exec
<image> …``. A concrete image passes through as given — either a registry reference
the engine resolves and materialises itself (``docker://…:tag``) or a path to
an image file already built on the target, which pins the exact image and needs
no pull. A reference that leaves the version open is resolved to the tvbo image
matching the running CLI: the symbolic value ``tvbo``, or a tvbo registry reference
with no ``:tag``. Left unset while ``requirements`` are declared, the base still
defaults to that tvbo image (the deps layer onto it); unset with no requirements,
tasks run bare.'
from_schema: https://w3id.org/tvbo
owner: WorkflowConfig
domain_of:
- ResultEntity
- WorkflowConfig
range: string
container_binds:
name: container_binds
description: Host paths that must be visible inside the container beyond the ones
its runtime binds by default (typically ``$HOME`` and the working directory).
Required whenever a task reads or writes a site filesystem outside those defaults
— a shared cache, a data tree, or a scratch area a symlink resolves into. Rendered
into each runtime's own flag (``--bind`` for Apptainer/Singularity).
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: string
multivalued: true
container_args:
name: container_args
description: Additional arguments passed verbatim to the container runtime when
it executes a task. The extension point for runtime flags the typed fields do
not cover, mirroring ``WorkflowEngineConfig.options`` for scheduler directives.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: string
retries:
name: retries
description: Automatic retries per failed task. Unset means none.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: integer
minimum_value: 0
rng:
name: rng
description: Random-seed policy across shards. ``deterministic`` (the default
when unset) derives each task's seed from its shard index so the fan-out is
reproducible.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: string
chunk:
name: chunk
description: Default shard count used when ``distribute.chunk`` is unset (see
DistributionConfig.chunk).
from_schema: https://w3id.org/tvbo
owner: WorkflowConfig
domain_of:
- DistributionConfig
- WorkflowConfig
range: integer
minimum_value: 1
distribute:
name: distribute
description: How exploration axes map onto the vectorized vs fanned-out tiers.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: DistributionConfig
inlined: true
requirements:
name: requirements
description: Software requirements for the workflow environment; overrides ``experiment.environment.requirements``
when set.
from_schema: https://w3id.org/tvbo
owner: WorkflowConfig
domain_of:
- SoftwareEnvironment
- Function
- WorkflowConfig
- PDESolver
range: SoftwareRequirement
multivalued: true
inlined: true
inlined_as_list: true
slurm:
name: slurm
description: Slurm sbatch directives for array-job execution.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: WorkflowEngineConfig
inlined: true
snakemake:
name: snakemake
description: Snakemake execution directives.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: WorkflowEngineConfig
inlined: true
nextflow:
name: nextflow
description: Nextflow execution directives.
from_schema: https://w3id.org/tvbo
rank: 1000
owner: WorkflowConfig
domain_of:
- WorkflowConfig
range: WorkflowEngineConfig
inlined: true
class_uri: tvbo:WorkflowConfig