Common Workflow Language

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.

Common Workflow Language
The Common Workflow Language standards
CWL Logo
AbbreviationCWL
StatusPublished
Year started10 July 2014 (2014-07-10)
Latest version1.2
7 August 2020 (2020-08-07)
Related standardsBioCompute Object
LicenseApache 2.0
Websitecommonwl.org

Standard edit

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 edit

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 edit

  1. ^ Peter, Amstutz; R., Crusoe, Michael; Nebojša, Tijanić; Brad, Chapman; John, Chilton; Michael, Heuer; Andrey, Kartashov; Dan, Leehr; Hervé, Ménager (2016-07-08). "Common Workflow Language, v1.0". Figshare. doi:10.6084/m9.figshare.3115156.v2.{{cite journal}}: CS1 maint: multiple names: authors list (link)
  2. ^ a b Leipzig, Jeremy (2017-05-01). "A review of bioinformatic pipeline frameworks". Briefings in Bioinformatics. 18 (3): 530–536. doi:10.1093/bib/bbw020. ISSN 1467-5463. PMC 5429012. PMID 27013646.
  3. ^ Perkel, Jeffrey M. (2019). "Workflow systems turn raw data into scientific knowledge". Nature. 573 (7772): 149–150. Bibcode:2019Natur.573..149P. doi:10.1038/d41586-019-02619-z. ISSN 0028-0836. PMID 31477884. S2CID 201713827.
  4. ^ "CWL Implementations". Common Workflow Language (CWL). Retrieved 10 October 2021.
  5. ^ Barski, Artem; Kartashov, Andrey V.; Kotliar, Michael (2019-07-01). "CWL-Airflow: a lightweight pipeline manager supporting Common Workflow Language". GigaScience. 8 (7). doi:10.1093/gigascience/giz084. PMC 6639121. 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. Vol. 22. pp. 154–165. doi:10.1142/9789813207813_0016. ISBN 978-981-320-780-6. PMC 5166558. PMID 27896971.
  7. ^ "11.6. pegasus-cwl-converter — Pegasus WMS 5.0.1 documentation". pegasus.isi.edu. Retrieved 10 October 2021.
  8. ^ Chilton, John; Soranzo, Nicola. "Implement a subset of the Common Workflow Language. by jmchilton · Pull Request #47 · common-workflow-language/galaxy". GitHub. Retrieved 10 October 2021.
  9. ^ Crusoe, Michael R.; Abeln, Sanne; Iosup, Alexandru; Amstutz, Peter; Chilton, John; Tijanić, Nebojša; Ménager, Hervé; Soiland-Reyes, Stian; Gavrilović, Bogdan; Goble, Carole; The CWL Community (2022). "Methods Included: Standardizing Computational Reuse and Portability with the Common Workflow Language". Communications of the ACM. 65: 54–63. arXiv:2105.07028. doi:10.1145/3486897. S2CID 234742536.

External links edit