A node represents a unit of execution or work within a workflow. Ordinarily, a node encapsulates an instance of a task, but it can also contain an entire subworkflow or trigger an external workflow. Nodes can have inputs and outputs, which are used to coordinate task inputs and outputs. Moreover, node outputs can be used as inputs to other nodes within a workflow.
Tasks referenced in a workflow are always enclosed in nodes. This extends to all task types. For example, an array task will be enclosed by a single node.
A node can contain an entire sub-workflow. Since workflow executions always require a launch plan, workflow nodes have a reference to a launch plan to trigger their enclosed workflows.
Branch nodes alter the flow of the workflow graph. Conditions at runtime are evaluated to determine the control flow.