Common Workflow Language

From HandWiki
Short description: Standard for computational data-analysis workflows
Common Workflow Language
The Common Workflow Language standards
CWL-Logo-4k.png
CWL Logo
StatusPublished
Year started10 July 2014 (2014-07-10)
Latest version1.2
7 August 2020 (2020-08-07)
Related standardsBioCompute Object
LicenseApache 2.0
AbbreviationCWL
Websitecommonwl.org

The Common Workflow Language (CWL) is a standard for describing computational data-analysis workflows.[1] Development of CWL is focused particularly on serving the data-intensive sciences, such as bioinformatics,[2] medical imaging, astronomy, physics, and chemistry.

Standard

A key goal of the CWL is to allow the creation of a workflow that is portable and thus may be run reproducibly in different computational environments.[3]

The CWL originated from discussions in 2014 between Peter Amstutz, John Chilton, Nebojša Tijanić, and Michael R. Crusoe (at that time their respective affiliations were: Galaxy, Arvados, Seven Bridges, and Michigan State University) at the Open Bioinformatics Foundation BOSC 2014 codefest.

CWL is supported by multiple analysis runners and platforms[4] such as Apache Airflow (via CWL-Airflow [5]), Arvados, Rabix,[6] Cromwell workflow engine, Toil, REANA - Reusable Analyses and CWLEXEC for IBM Spectrum LSF, and was identified in 2017 as one of the future trends for bioinformatics pipeline development.[2] Several additional analysis environments are currently implementing support for CWL including Pegasus[7] and Galaxy.[8]

Availability

The CWL Project[9] is a multi-stakeholder working group consisting of both organizations and individuals. A member project of Software Freedom Conservancy, it publishes the CWL standards freely available via its GitHub repository under a permissive Apache License 2.0.

References

  1. Peter, Amstutz; R., Crusoe, Michael; Nebojša, Tijanić; Brad, Chapman; John, Chilton; Michael, Heuer; Andrey, Kartashov; Dan, Leehr et al. (2016-07-08). "Common Workflow Language, v1.0" (in en-US). Figshare. doi:10.6084/m9.figshare.3115156.v2. https://figshare.com/articles/Common_Workflow_Language_draft_3/3115156/2. 
  2. 2.0 2.1 Leipzig, Jeremy (2017-05-01). "A review of bioinformatic pipeline frameworks" (in en). Briefings in Bioinformatics 18 (3): 530–536. doi:10.1093/bib/bbw020. ISSN 1467-5463. PMID 27013646. 
  3. Perkel, Jeffrey M. (2019). "Workflow systems turn raw data into scientific knowledge". Nature 573 (7772): 149–150. doi:10.1038/d41586-019-02619-z. ISSN 0028-0836. PMID 31477884. Bibcode2019Natur.573..149P. 
  4. "CWL Implementations" (in en). https://www.commonwl.org/#Implementations. 
  5. Barski, Artem; Kartashov, Andrey V.; Kotliar, Michael (2019-07-01). "CWL-Airflow: a lightweight pipeline manager supporting Common Workflow Language" (in en). GigaScience 8 (7). doi:10.1093/gigascience/giz084. PMID 31321430. 
  6. Kaushik, Gaurav; Ivković, Sinisa; Simonović, Janko; Tijanić, Nebojša; Davis-Dusenbery, Brandi; Kural, Deniz (January 2017). "Rabix: An Open-Source Workflow Executor Supporting Recomputability and Interoperability of Workflow Descriptions". Pacific Symposium on Biocomputing 2017. Proceedings of the Pacific Symposium. 22. pp. 154–165. doi:10.1142/9789813207813_0016. ISBN 978-981-320-780-6. 
  7. "11.6. pegasus-cwl-converter — Pegasus WMS 5.0.1 documentation". https://pegasus.isi.edu/documentation/manpages/pegasus-cwl-converter.html. 
  8. Chilton, John; Soranzo, Nicola. "Implement a subset of the Common Workflow Language. by jmchilton · Pull Request #47 · common-workflow-language/galaxy" (in en). https://github.com/common-workflow-language/galaxy/pull/47. 
  9. Crusoe, Michael R.; Abeln, Sanne; Iosup, Alexandru; Amstutz, Peter; Chilton, John; Tijanić, Nebojša; Ménager, Hervé; Soiland-Reyes, Stian et al. (2022). "Methods Included: Standardizing Computational Reuse and Portability with the Common Workflow Language". Communications of the ACM 65: 54–63. doi:10.1145/3486897. 

External links