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

 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 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:WorkflowConfig

Induced

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