An input modifying tool is a tool that manipulates its input objects (for example by adding annotations) without producing a new object. In a workflow, an input modifying tool is marked with the symbol () (figure 11.29).
There are 2 cases where it is not possible to save the Output of such a tool:
- When the input modifying tool is used in a branch(see figure 11.30), it cannot be guaranteed which workflow branch will be executed first, which in turn means that different runs can result in production of different objects. A message in red letters will appear saying "Branching before a modifying tool can lead to non-deterministic behavior", and the Run and Create Installer buttons are disabled.
The problem can be solved by adding elements (with respect to order of execution) so that the branch disappears. This is shown in figure 11.31.
- When a workflow is made of only one of these tools. To be able to save the output of such a tool, simply add an element before or after the first one (see figure 11.32).
The output arrow is marked with "copy" to indicate that this is a copy of the result that is used as input at the next level in the chain (see figure 11.33).