Skip to content

Commit 747ab94

Browse files
authored
Merge pull request #6 from common-workflow-language/sink-type-refactoring
Sink type refactoring
2 parents 4ba1f4f + 64ca809 commit 747ab94

File tree

1 file changed

+52
-52
lines changed

1 file changed

+52
-52
lines changed

Workflow.yml

Lines changed: 52 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -182,18 +182,46 @@ $graph:
182182
- all_non_null
183183

184184

185-
- name: WorkflowOutputParameter
185+
- name: Sink
186186
type: record
187-
extends: OutputParameter
188-
docParent: "#Workflow"
189-
doc: |
190-
Describe an output parameter of a workflow. The parameter must be
191-
connected to one or more parameters defined in the workflow that
192-
will provide the value of the output parameter. It is legal to
193-
connect a WorkflowInputParameter to a WorkflowOutputParameter.
187+
abstract: true
188+
fields:
189+
- name: linkMerge
190+
type: LinkMergeMethod?
191+
jsonldPredicate: "cwl:linkMerge"
192+
default: merge_nested
193+
doc: |
194+
The method to use to merge multiple inbound links into a single array.
195+
If not specified, the default method is "merge_nested".
196+
- name: pickValue
197+
type: [ "null", PickValueMethod ]
198+
jsonldPredicate: "cwl:pickValue"
199+
doc: |
200+
The method to use to choose non-null elements among multiple sources.
194201
195-
See [WorkflowStepInput](#WorkflowStepInput) for discussion of
196-
`linkMerge` and `pickValue`.
202+
203+
- name: InputSink
204+
type: record
205+
extends: Sink
206+
abstract: true
207+
fields:
208+
- name: source
209+
doc: |
210+
Specifies one or more workflow parameters that will provide input to
211+
the underlying step parameter.
212+
jsonldPredicate:
213+
"_id": "cwl:source"
214+
"_type": "@id"
215+
refScope: 2
216+
type:
217+
- string?
218+
- string[]?
219+
220+
221+
- name: OutputSink
222+
type: record
223+
extends: Sink
224+
abstract: true
197225
fields:
198226
- name: outputSource
199227
doc: |
@@ -209,20 +237,21 @@ $graph:
209237
type:
210238
- string?
211239
- string[]?
212-
- name: linkMerge
213-
type: ["null", LinkMergeMethod]
214-
jsonldPredicate: "cwl:linkMerge"
215-
default: merge_nested
216-
doc: |
217-
The method to use to merge multiple sources into a single array.
218-
If not specified, the default method is "merge_nested".
219240

220-
- name: pickValue
221-
type: ["null", PickValueMethod]
222-
jsonldPredicate: "cwl:pickValue"
223-
doc: |
224-
The method to use to choose non-null elements among multiple sources.
225241

242+
- name: WorkflowOutputParameter
243+
type: record
244+
extends: [OutputParameter, OutputSink]
245+
docParent: "#Workflow"
246+
doc: |
247+
Describe an output parameter of a workflow. The parameter must be
248+
connected to one or more parameters defined in the workflow that
249+
will provide the value of the output parameter. It is legal to
250+
connect a WorkflowInputParameter to a WorkflowOutputParameter.
251+
252+
See [WorkflowStepInput](#WorkflowStepInput) for discussion of
253+
`linkMerge` and `pickValue`.
254+
fields:
226255
- name: type
227256
type:
228257
- CWLType
@@ -246,38 +275,9 @@ $graph:
246275
Specify valid types of data that may be assigned to this parameter.
247276
248277
249-
- name: Sink
250-
type: record
251-
abstract: true
252-
fields:
253-
- name: source
254-
doc: |
255-
Specifies one or more workflow parameters that will provide input to
256-
the underlying step parameter.
257-
jsonldPredicate:
258-
"_id": "cwl:source"
259-
"_type": "@id"
260-
refScope: 2
261-
type:
262-
- string?
263-
- string[]?
264-
- name: linkMerge
265-
type: LinkMergeMethod?
266-
jsonldPredicate: "cwl:linkMerge"
267-
default: merge_nested
268-
doc: |
269-
The method to use to merge multiple inbound links into a single array.
270-
If not specified, the default method is "merge_nested".
271-
- name: pickValue
272-
type: ["null", PickValueMethod]
273-
jsonldPredicate: "cwl:pickValue"
274-
doc: |
275-
The method to use to choose non-null elements among multiple sources.
276-
277-
278278
- type: record
279279
name: WorkflowStepInput
280-
extends: [Identified, Sink, LoadContents, Labeled]
280+
extends: [Identified, InputSink, LoadContents, Labeled]
281281
docParent: "#WorkflowStep"
282282
doc: |
283283
The input of a workflow step connects an upstream parameter (from the

0 commit comments

Comments
 (0)