The data flow of a workflow is the manner in which workflow element input and output parameters bind to workflow attributes as each element of the workflow runs. You define the data flow of a workflow by using schema element bindings.

When an element in the workflow schema runs, it requires data in the form of input parameters. It takes the data for its input parameters by binding to a workflow attribute that you set when you create the workflow, or by binding to an attribute that a preceding element in the workflow set when it ran.

The element processes the data, possibly transforms it, and generates the results of its run in the form of output parameters. The element binds its resulting output parameters to new workflow attributes that it creates. Other elements in the schema can bind to these new workflow attributes as their input parameters. The workflow can generate the attributes as its output parameters at the end of its run.

The following figure shows a very simple workflow. The blue arrows represent the element linking and the logical flow of the workflow. The red lines show the data flow of the workflow.

Figure 1. Example of Workflow Data Flow


Example of data flow through a workflow

The data flows through the workflow as follows.

  1. The workflow starts with input parameters a and b.

  2. The first element processes parameter a and binds the result of the processing to workflow attribute c.

  3. The first element processes parameter b and binds the result of the processing to workflow attribute d.

  4. The second element takes workflow attribute c as an input parameter, processes it, and binds the resulting output parameter to workflow attribute e.

  5. The second element takes workflow attribute d as an input parameter, processes it, and generates output parameter f.

  6. The workflow ends and generates workflow attribute f as its output parameter, the result of its run.