Until

Create a loop. All child elements are executed repeatedly until the given condition is true. The return value of Until is the concatenated return value of the child elements.

Child elements

ClearPage, Column, Li, LoadDataset, Loop, Message, NextFrame, NextRow, Paragraph, PlaceObject, ProcessNode, SaveDataset, SetVariable, Switch, Tr, Until, Value, While

Parent elements

AtPageCreation, AtPageShipout, Case, Contents, ForAll, Loop, Otherwise, Record, SetVariable, Until, While

Attributes

test (XPath expressions)
Every time after the the loop is executed, the condition is evaluated. If it is true, the loop exits.

Example

<Record element="data">
  <SetVariable variable="i" select="0"/>
  <Until test="$i = 4">
    <Message select="concat('$i is: ', $i)"/>
    <SetVariable variable="i" select="$i + 1"/>
  </Until>
</Record>

Gives the following output (in the protocol file)

Message: "$i is: 0.000000"
Message: "$i is: 1.000000"
Message: "$i is: 2.000000"
Message: "$i is: 3.000000"

See also

<Loop>, <While>, the section about programming.