Type representing a valid CWL input file as a map<string, union<array<ProcessRequirement>, CWLObjectType>>.
Generic type representing a valid CWL object. It is used to represent default values passed to CWL InputParameter and WorkflowStepInput record fields.
Extends primitive types with the concept of a file and directory as a builtin type. File: A File object Directory: A Directory object
Version symbols for published CWL document versions.
An input parameter for a CommandLineTool.
When listed under inputBinding in the input schema, the term "value" refers to the corresponding value in the input object. For binding objects listed in CommandLineTool.arguments, the term "value" refers to the effective value after evaluating valueFrom.
This defines the schema of the CWL Command Line Tool Description document.
Describes how to generate an output parameter based on the files produced by a CommandLineTool.
An output parameter for a CommandLineTool.
Represents a directory to present to a command line tool.
Define a file or subdirectory that must be staged to a particular place prior to executing the command line tool. May be the result of executing an expression, such as building a configuration file from a template.
Indicates that a workflow component should be run in a Docker or Docker-compatible (such as Singularity and udocker) container environment and specifies how to fetch or build the image.
Define an enumerated type.
Define a list of environment variables which will be set in the execution environment of the tool. See EnvironmentDef for details.
Define an environment variable that will be set in the runtime environment by the workflow platform when executing the command line tool. May be the result of executing an expression, such as getting a parameter from input.
An ExpressionTool is a type of Process object that can be run by itself or as a Workflow step. It executes a pure Javascript expression that has access to the same input parameters as a workflow. It is meant to be used sparingly as a way to isolate complex Javascript expressions that need to operate on input data and produce some result; perhaps just a rearrangement of the inputs. No Docker software container is required or allowed.
Represents a file (or group of files when secondaryFiles is provided) that will be accessible by tools using standard POSIX file system call API such as open(2) and read(2).
Define a list of files and subdirectories that must be staged by the workflow platform prior to executing the command line tool. Normally files are staged within the designated output directory. However, when running inside containers, files may be staged at arbitrary locations, see discussion for `Dirent.entryname`. Together with DockerRequirement.dockerOutputDirectory it is possible to control the locations of both input and output files when running in containers.
Indicates that the workflow platform must support inline Javascript expressions. If this requirement is not present, the workflow platform must not perform expression interpolation.
If inplaceUpdate is true, then an implementation supporting this feature may permit tools to directly update files with `writable: true` in InitialWorkDirRequirement. That is, as an optimization, files may be destructively modified in place as opposed to copied and updated.
The input link merge method, described in WorkflowStepInput.
Specify the desired behavior for loading the listing field of a Directory object for use by expressions.
Specify the desired behavior for loading the listing field of a Directory object for use by expressions.
Indicates that the workflow platform must support multiple inbound data links listed in the source field of WorkflowStepInput.
Indicate whether a process requires outgoing IPv4/IPv6 network access. Choice of IPv4 or IPv6 is implementation and site specific, correct tools must support both.
This record describes an abstract operation. It is a potential step of a workflow that has not yet been bound to a concrete implementation. It specifies an input and output signature, but does not provide enough information to be executed. An implementation (or other tooling) may provide a means of binding an Operation to a concrete process (such as Workflow, CommandLineTool, or ExpressionTool) with a compatible signature.
Describe an input parameter of an operation.
Describe an output parameter of an operation.
Picking non-null values among inbound data links, described in WorkflowStepInput.
Names of salad data types (based on Avro schema declarations).
A field of a record.
Specify basic hardware resource requirements.
Indicates that the workflow platform must support the scatter and scatterMethod fields of WorkflowStep.
The scatter method, as described in workflow step scatter.
This field consists of an array of type definitions which must be used when interpreting the inputs and outputs fields. When a type field contains a IRI, the implementation must check if the type is defined in schemaDefs and use that definition. If the type is not found in schemaDefs, it is an error. The entries in schemaDefs must be processed in the order listed such that later schema definitions may refer to earlier schema definitions.
Secondary files are specified using the following micro-DSL for secondary files:
Modify the behavior of CommandLineTool to generate a single string containing a shell command line. Each item in the arguments list must be joined into a string separated by single spaces and quoted to prevent interpretation by the shell, unless CommandLineBinding for that argument contains shellQuote: false. If shellQuote: false is specified, the argument is joined into the command string without quoting, which allows the use of shell metacharacters such as | for pipes.
A list of software packages that should be configured in the environment of the defined process.
Indicate that the workflow platform must support the valueFrom field of WorkflowStepInput.
Indicates that the workflow platform must support nested workflows in the run field of WorkflowStep.
Set an upper limit on the execution time of a CommandLineTool. A CommandLineTool whose execution duration exceeds the time limit may be preemptively terminated and considered failed. May also be used by batch systems to make scheduling decisions. The execution duration excludes external operations, such as staging of files, pulling a docker image etc, and only counts wall-time for the execution of the command line itself.
For implementations that support reusing output from past work (on the assumption that same code and same input produce same results), control whether to enable or disable the reuse behavior for a particular tool or step (to accommodate situations where that assumption is incorrect). A reused step is not executed but instead returns the same output as the original execution.
A workflow describes a set of **steps** and the **dependencies** between those steps. When a step produces output that will be consumed by a second step, the first step is a dependency of the second step.
Describe an output parameter of a workflow. The parameter must be connected to one or more parameters defined in the workflow that will provide the value of the output parameter. It is legal to connect a WorkflowInputParameter to a WorkflowOutputParameter.
A workflow step is an executable element of a workflow. It specifies the underlying process implementation (such as CommandLineTool or another Workflow) in the run field and connects the input and output parameters of the underlying process to workflow parameters.
The input of a workflow step connects an upstream parameter (from the workflow inputs, or the outputs of other workflows steps) with the input parameters of the process specified by the run field. Only input parameters declared by the target process will be passed through at runtime to the process though additional parameters may be specified (for use within valueFrom expressions for instance) - unconnected or unused parameters do not represent an error condition.
Associate an output parameter of the underlying process with a workflow parameter. The workflow parameter (given in the id field) be may be used as a source to connect with input parameters of other workflow steps, or with an output parameter of the process.
Only valid as a type for a CommandLineTool output with no outputBinding set.
Only valid as a type for a CommandLineTool input with no inputBinding set. stdin must not be specified at the CommandLineTool level.
Only valid as a type for a CommandLineTool output with no outputBinding set.
parser information
CWL v1.2 parser generated with schema-salad-tool
This module was generated using schema-salad code generator.
The embedded document is subject to the license of the original schema.