Skip to main content
v2026.11,858 entries · CC-BY 4.0
Dictionary termTrack CProposedv2026.2

Workflow Language (CWL/WDL)

A declarative specification language for describing multi-step computational analyses such that the steps, their inputs and outputs, and their software dependencies are portable across compatible workflow execution engines.

ByCASRAI Editorial Board
· Last updated 5 Sept 2026
Share this

Ask CASRAI · free to try

Ask about Workflow Language (CWL/WDL)

Ask your first 2 questions free below. Subscribers get 150 a day for $29 a month.

An AI assistant specialized in research administration. It cites the sources behind every answer, labels web answers and says when it can't answer.

Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.

Works on this site and inside Claude, Cursor and the AI tools you already use.

Everything CASRAI publishes — this page, the dictionary, the guides and the news — stays free to read, with no account and no card.

Examples

Worked examples

  • Is an instance

    A genomics pipeline distributed as CWL and run unchanged on AWS Batch, on Slurm, and on a local cwltool installation.

  • Is an instance

    A WDL workflow executed on Cromwell at the Broad Institute and on Terra in the cloud.

Counter-examples

Looks similar, but isn't

  • Not an instance

    A bash script that calls tools in sequence (no portable specification).

  • Not an instance

    A Python script that pipes stages internally without an external workflow descriptor.

Editorial commentary

Common Workflow Language (CWL) and Workflow Description Language (WDL) are the two most widely adopted standards in genomics and large-scale computational biology, with execution engines including cwltool, Toil, Cromwell, miniWDL, and Arvados. Workflow languages support computational reproducibility by separating 'what to compute' from 'where to run it'.

References

  • Crusoe et al., 'Methods Included: Standardizing Computational Reuse and Portability with the Common Workflow Language' (Communications of the ACM, 2022).

CWL and WDL compared

Common Workflow Language (CWL) is a YAML/JSON-based specification maintained by an open, multi-institution community (commonwl.org) under the umbrella of the Global Alliance for Genomics and Health (GA4GH). CWL expresses each analysis step as a typed CommandLineTool or nested Workflow with explicit input/output ports, which makes it verbose but highly portable: the same CWL document can run on cwltool, Toil, Arvados, or a cloud batch engine without modification. Workflow Description Language (WDL) originated at the Broad Institute for GATK-based genomics pipelines and favors a more scripting-like syntax that is faster to write for small-to-medium pipelines. WDL is most closely associated with the Cromwell execution engine (and the lighter-weight miniWDL) and underpins the GATK best-practices and Terra cloud ecosystems.

Relationship to Nextflow and Snakemake

Nextflow and Snakemake are also widely used for computational pipelines, but they differ structurally from CWL/WDL. Nextflow is a Groovy-based domain-specific language with a dataflow programming model: processes communicate through channels, which makes parallelization across HPC clusters and cloud infrastructure natural, and it has a large community around the nf-core project. Snakemake is Python-based and file-oriented, with rules written in a clean, Makefile-inspired syntax under Python logic — it tends to feel most natural to researchers already comfortable scripting in Python. CWL and WDL were designed primarily as portable interchange formats decoupled from any single engine; Nextflow and Snakemake are workflow languages that are more tightly coupled to their own execution engines, though CWL runners exist for several of them. See the Snakemake vs Nextflow comparison for a fuller breakdown of the two most common choices in practice.

Why workflow languages matter for computational reproducibility

A declarative workflow specification separates what to compute from where and how it runs, so a pipeline described in CWL or WDL can, in principle, be re-executed years later on different infrastructure and still produce the same logical steps. Combined with containerized software environments (Docker, Singularity/Apptainer) referenced per step, a workflow language turns an ad hoc sequence of scripts into an auditable, versionable, and shareable computational method. This is a core piece of what CASRAI’s reproducibility infrastructure entry describes, and it directly supports computational reproducibility claims made in a paper’s methods section.

References

  • Crusoe et al., ‘Methods Included: Standardizing Computational Reuse and Portability with the Common Workflow Language’ (Communications of the ACM, 2022).
  • commonwl.org — Common Workflow Language project documentation.
  • openwdl.org — Workflow Description Language specification and documentation.

Also known as

CWL · WDL · workflow specification language

Machine-readable encodings

Use in your systems

JATS XML <role> element
xml
<role vocab="credit"
      vocab-identifier="https://casrai.org/dictionary/"
      vocab-term="Workflow Language (CWL/WDL)"
      vocab-term-identifier="https://casrai.org/dictionary/term/workflow-language-cwl-wdl" />
Schema.org DefinedTerm (JSON-LD)
json
{
  "@context": "https://schema.org",
  "@type": "DefinedTerm",
  "@id": "https://casrai.org/dictionary/term/workflow-language-cwl-wdl",
  "name": "Workflow Language (CWL/WDL)",
  "identifier": "https://casrai.org/dictionary/term/workflow-language-cwl-wdl",
  "description": "A declarative specification language for describing multi-step computational analyses such that the steps, their inputs and outputs, and their software dependencies are portable across compatible workflow execution engines.",
  "inDefinedTermSet": "https://casrai.org/dictionary/domain/reproducibility#set",
  "url": "https://casrai.org/dictionary/term/workflow-language-cwl-wdl",
  "alternateName": [
    "CWL",
    "WDL",
    "workflow specification language"
  ],
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "publisher": {
    "@id": "https://casrai.org/#organization"
  },
  "author": {
    "@id": "https://casrai.org/#editorial-team"
  },
  "datePublished": "2026-05-21T02:22:49",
  "dateModified": "2026-09-05T14:24:13",
  "inLanguage": "en-GB",
  "isAccessibleForFree": true
}

Referenced across the research world

University of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logoUniversity of Cambridge logoColumbia University logoCrossref logoUniversity of Edinburgh logoHarvard University logoUniversity of Oxford logoPrinceton University logoStanford School of Medicine logoUniversity College London logoORCID logo
  • University of Cambridge logo
  • Columbia University logo
  • Crossref logo
  • University of Edinburgh logo
  • Harvard University logo
  • University of Oxford logo
  • Princeton University logo
  • Stanford School of Medicine logo
  • University College London logo
  • ORCID logo

View CASRAI adoption →

Ask CASRAI · Regulatory Radar

Research-admin question? Get an answer that links its sources.

An AI assistant specialized in research administration. Every answer links its sources to check before you act. 2 questions free, no account. $29/month after.

  • Answers draw on CASRAI's guides and dictionary plus the federal and funder documents we index: Federal Register, Grants.gov, Regulations.gov and UKRI.
  • Every answer numbers its sources and links each one, so you can check the source yourself.