Common Workflow Language Viewer

Mark Robinson

Stian Soiland-Reyes 

Michael Crusoe

Carole Goble

These slides are licensed under a
Creative Commons Attribution 4.0 International License

2017-07-22 BOSC 2017
ISMB/ECCB 2017, Prague

Difficulties in sharing CWL

Workflow spread over multiple text files

https://github.com/common-workflow-language/

workflows/tree/master/workflows/lobSTR/lobSTR-workflow.cwl

Difficulties in sharing CWL

Often missing:

 

Detailed description (what, how)

Provenance (who, where, when)

Versioning (which)

#!/usr/bin/env cwl-runner

cwlVersion: v1.0
class: Workflow

inputs:
  #SCWRL
  scw_script: File
  scw_input_pdb_path: File
  scw_output_pdb_path: string
  scw_mutation: string
  scw_scwrl_path: string
  scw_log_path: string
  scw_error_path: string
  #PDB2GMX
  p2g_script: File
  p2g_output_gro_path: string
  p2g_output_top_path: string
  p2g_output_itp_path: string
  p2g_output_top_tar_path: string
  p2g_water_type: string
  p2g_force_field: string
  p2g_ignh: string
  p2g_gmx_path: string
  p2g_log_path: string
  p2g_error_path: string
  # ...

We need better incentives!

#!/usr/bin/env cwl-runner
cwlVersion: "cwl:draft-3"

class: Workflow

inputs:
  - id: p1
    type:
      - "null"
      - type: array
        items: File
    description: list of files containing the first end of paired end reads in fasta or fastq format

  - id: p2
    type:
      - "null"
      - type: array
        items: File
    description: list of files containing the second end of paired end reads in fasta or fastq format

  - id: output_prefix
    type: string
    description: prefix for output files. will output prefix.aligned.bam and prefix.aligned.stats

  - id: reference
    type: File
    description: "lobSTR's bwa reference files"

  - id: rg-sample
    type: string
    description: Use this in the read group SM tag

  - id: rg-lib
    type: string
    description: Use this in the read group LB tag

  - id: strinfo
    type: File
    description: File containing statistics for each STR.

  - id: noise_model
    type: File
    description: File to read noise model parameters from (.stepmodel)
    secondaryFiles:
      - "^.stuttermodel"

outputs:
  - id: bam
    type: File
    source: "#samindex/bam_with_bai"

  - id: bam_stats
    type: File
    source: "#lobSTR/bam_stats"

  - id: vcf
    type: File
    source: "#allelotype/vcf"

  - id: vcf_stats
    type: File
    source: "#allelotype/vcf_stats"

hints:
  - class: DockerRequirement
    dockerLoad: https://workbench.qr1hi.arvadosapi.com/collections/download/qr1hi-4zz18-x2ae13tsx5jqg8d/1nduktd8dpvhdpgsva82lje0i710kgzb6rttks5jldx7s2y7k9/7e0c0ae3bf4e70442f9b8eee816ec23426d9e1169a2925316e5c932745e21613.tar
    dockerImageId: 7e0c0ae3bf4e70442f9b8eee816ec23426d9e1169a2925316e5c932745e21613

steps:
  - id: lobSTR
    run: lobSTR-tool.cwl
    inputs:
      - { id: p1, source: "#p1" }
      - { id: p2, source: "#p2" }
      - { id: output_prefix, source: "#output_prefix" }
      - { id: reference, source: "#reference" }
      - { id: rg-sample, source: "#rg-sample" }
      - { id: rg-lib, source: "#rg-lib" }
    outputs:
      - { id: bam }
      - { id: bam_stats }

  - id: samsort
    run: samtools-sort.cwl
    inputs:
      - { id: input, source: "#lobSTR/bam" }
      - { id: output_name, default: "aligned.sorted.bam" }
    outputs:
      - { id: output_file }

  - id: samindex
    run: samtools-index.cwl
    inputs:
      - { id: input, source: "#samsort/output_file" }
    outputs:
      - { id: bam_with_bai }

  - id: allelotype
    run: allelotype.cwl
    inputs:
      - { id: bam, source: "#samindex/bam_with_bai" }
      - { id: reference, source: "#reference" }
      - { id: output_prefix, source: "#output_prefix" }
      - { id: noise_model, source: "#noise_model" }
      - { id: strinfo, source: "#strinfo" }
    outputs:
      - { id: vcf }
      - { id: vcf_stats }

Visualisation = quick and easy understanding

CWL Viewer

https://view.commonwl.org

View a Workflow

Interactivity

https://view.commonwl.org/workflows/github.com/ProteinsWebTeam/ebi-metagenomics-cwl/tree/master/tools/rRNA_selection.cwl

Download and Share

Visualisation Images

(various formats)

GraphViz DOT source

Research Object Bundle/

Origin Information

A Research Object bundles and relates digital resources of a scientific experiment or investigation:

 

Data used and results produced in experimental study

Methods employed to produce and analyse that data

Provenance and settings for the experiments

People involved in the investigation

Annotations about these resources, to improve understanding and interpretation

bundle.zip
├── mimetype
├── .ro
│   └── manifest.json
└── workflow
    ├── completeWorkflow.cwl
    ├── concatFasta.cwl
    ├── fastqc.cwl
    ├── generateRReports.cwl
    ├── qiimeAddMetadata.cwl
    ├── readPair.yml
    ├── uparseChimeraCheck.cwl
    ├── uparseDerepWorkAround.cwl
    ├── uparseFastqMerge.cwl
    ├── uparseFilter.cwl
    └── uparseTruncateLength.cwl
{
  "@context" : [ "https://w3id.org/bundle/context" ],
  "id" : "/",
  "manifest" : [ "manifest.json" ],
  "createdOn" : "2017-02-27T11:48:54.986Z",
  "createdBy" : {
    "uri" : "http://view.commonwl.org",
    "name" : "Common Workflow Language Viewer"
  },
  "authoredBy" : [ {
    "uri" : "https://github.com/grbot",
    "name" : "Gerrit Botha"
  }, {
    "uri" : "https://github.com/mr-c",
    "name" : "Michael R. Crusoe"
  }, {
    "name" : "Ubuntu"
  }, {
    "uri" : "https://github.com/mepstein-gh",
    "name" : "Milt Epstein"
  }, {
    "uri" : "https://github.com/ShakunBaichoo",
    "name" : "ShakunBaichoo"
  } ],
  "importedFrom" : "https://github.com/h3abionet/h3abionet16S/tree/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows",
  "importedOn" : "2017-02-27T11:48:54.986Z",
  "importedBy" : {
    "uri" : "http://view.commonwl.org",
    "name" : "Common Workflow Language Viewer"
  },
  "aggregates" : [ {
    "uri" : "/workflow/completeWorkflow.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:55.21Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mr-c",
      "name" : "Michael R. Crusoe"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/completeWorkflow.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:fbc4f48a-b111-4e1b-b6b9-d6a97c7c7f90",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/concatFasta.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:55.406Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/concatFasta.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:a9576413-03e7-42c1-8a78-0bcc888fbe2b",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/fastqc.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:55.545Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/fastqc.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:6a1a449c-d577-4d8c-9810-e919a7df79ab",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/generateRReports.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:55.701Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/generateRReports.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:e44f044a-b30a-4669-b1db-f06504db5752",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeAddMetadata.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:55.85Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeAddMetadata.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:bd30d107-7e4f-4f1d-b54d-6537b6756482",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeAlignSeqs.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:56.007Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeAlignSeqs.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:3630c7e2-0f81-4ca1-8992-78fa7206dab2",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeAssignTaxonomy.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:56.198Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeAssignTaxonomy.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:78d24ee4-a936-4b53-87e1-a0663f2540f4",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeFilterAlign.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:56.34Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeFilterAlign.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:06239baa-761c-40e9-bc31-c6646f6ccfe7",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeMakePhylogeny.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:56.544Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeMakePhylogeny.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:ac75b37c-322f-4277-adf0-755fe4d30334",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeOtusTxt2Biom.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:56.746Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeOtusTxt2Biom.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:ed3b2548-6749-420b-8f01-8b2084c90e9a",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeSummaryObservations.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:56.895Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeSummaryObservations.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:a8875d98-d43e-44b2-a290-fdb2f2e7b01e",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/qiimeSummaryQualitative.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:57.033Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/qiimeSummaryQualitative.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:412306bb-419f-46f2-a279-85ec98526ab2",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/readPair.yml",
    "mediatype" : "application/octet-stream",
    "createdOn" : "2017-02-27T11:48:57.835Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mr-c",
      "name" : "Michael R. Crusoe"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/readPair.yml",
    "bundledAs" : {
      "uri" : "urn:uuid:3f3681b9-03a8-45ea-b278-ee59223813bc",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseChimeraCheck.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:57.98Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseChimeraCheck.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:1a848cc0-f942-407f-a23f-5654c4f9fa43",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseDerepWorkAround.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:58.113Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseDerepWorkAround.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:2b551c93-b5e2-498c-9aba-a4fce586ffdd",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseFastqMerge.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:58.243Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseFastqMerge.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:282307ca-cc45-4dcb-afdd-9b94183ccc25",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseFilter.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:58.432Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseFilter.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:dcdbf23f-7cb4-4214-9162-29ddcaf13d37",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseGlobalSearchWorkAround.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:58.573Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseGlobalSearchWorkAround.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:9c80cc34-2671-4686-b0cd-f230d3a55d80",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseOTUPick.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:58.741Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseOTUPick.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:63bbbd02-61dc-4797-b791-245a8a0970a6",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseOtuToTab.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:59.01Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseOtuToTab.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:a1572a54-0bc7-4fac-b1d9-107bfc9ed22f",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseRenameFastQ.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:59.146Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mr-c",
      "name" : "Michael R. Crusoe"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseRenameFastQ.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:2cce884a-8b97-41a0-9db5-8a1099561406",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseRenameOTUs.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:59.303Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseRenameOTUs.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:8f1ef90e-5d98-4cea-9a14-cae28ccc8489",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseRenameWithMetadata.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:59.456Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mr-c",
      "name" : "Michael R. Crusoe"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseRenameWithMetadata.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:9658c5e4-6ec5-48bf-b3d2-c9fb0dcef87c",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseSort.cwl",
    "mediatype" : "text/x-yaml",
    "createdOn" : "2017-02-27T11:48:59.598Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "uri" : "https://github.com/mepstein-gh",
      "name" : "Milt Epstein"
    }, {
      "uri" : "https://github.com/ShakunBaichoo",
      "name" : "ShakunBaichoo"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseSort.cwl",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "bundledAs" : {
      "uri" : "urn:uuid:8be968a6-a678-43d2-8a39-bfbf29a19451",
      "folder" : "/workflow/"
    }
  }, {
    "uri" : "/workflow/uparseTruncateLength.cwl",
    "mediatype" : "text/x-yaml",
    "conformsTo" : "https://w3id.org/cwl/v1.0",
    "createdOn" : "2017-02-27T11:48:59.814Z",
    "authoredBy" : [ {
      "uri" : "https://github.com/grbot",
      "name" : "Gerrit Botha"
    }, {
      "name" : "Ubuntu"
    } ],
    "retrievedFrom" : "https://github.com/h3abionet/h3abionet16S/blob/70498847fd6bfc63f44c59c748233cac7f8dd85d/workflows/uparseTruncateLength.cwl",
    "bundledAs" : {
      "uri" : "urn:uuid:4ab00aca-93dd-4006-adc4-7565ac4e3f20",
      "folder" : "/workflow/"
    }
  } ]
}

Provenance, attribution

 

Who made which part of the workflow when

CWL Viewer Research Objects

BOSC 2017
Birds of a Feather

 

Today 12:20-13:40
BoF #2: Common Workflow Language community meetup

 

Farah Zaib Khan & Stian Soiland-Reyes:

ResearchObject.org & CWL integration

Discovery of Workflows

https://view.commonwl.org/workflows

In the Works!

JSON API

Use of the cwltool reference implementation for parsing

Input labelling

More import options

And More!

cwl-svg

Join us!

Common Workflow Language Viewer

By Mark Robinson

Common Workflow Language Viewer

  • 4,813