Iteration strategies

Iteration strategies must be defined when the processor has two or more input ports. By default the workflow parser will use a dot iteration strategy for all inputs. These operators use the index of data items received or produced by workflow processors to combine them. The index of a data item corresponds, for data items produced by a source, to the order number in the source data file, and for data items produced by a standard processor to the index of input data items eventually combined by the operators. There are 4 data manipulation operators:

Here is an example of a Gwendia workflow (to be continued with the links part below):

<workflow>
  <interface>
    <constant name="parameter" type="integer" value="50"/>
    <source name="key" type="double" />
    <sink name="results" type="file" />
  </interface>

  </processors>
    <processor name="genParam">
      <in name="paramKey" type="double"/>
      <out name="paramFiles" type="file" depth="1"/>
      <diet path="gen" estimation="constant"/>
    </processor>

    <processor name="docking">
      <in name="param" type="integer" />
      <in name="input" type="file" />
      <out name="result" type="double" />
      <iterationstrategy>
        <cross>
          <port name="param" />
          <port name="input" />
        </cross>
      </iterationstrategy>
      <diet path="dock" estimation="constant"/>
    </processor>

    <processor name="statisticaltest">
      <in name="values" type="double" depth="1"/>
      <out name="result" type="file"/>
      <iterationstrategy>
        <cross>
          <port name="coefficient" />
          <match>
            <port name="values" />
            <port name="weights" />
          </match>
        </cross>
      </iterationstrategy>
      <diet path="weightedaverage" />
    </processor>
</processors>
<links>
  <!-- LINKS (see below) -->
</links>
</workflow>

The DIET Team - Mer 29 nov 2017 15:13:36 EST