While#
Create a loop. All child elements are executed as long as the condition in the test attribute evaluates to true.
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 before the the loop is executed, this condition must evaluate to true. See the command Until for a loop with an exit test.
Example#
The following example creates a textblock with three times the contents 'Text Text Text '.
<Record element="data">
<SetVariable variable="counter" select="1"/>
<SetVariable variable="text" select="''"/>
<While test=" $counter <= 3 "> <!-- less or equal -->
<SetVariable variable="counter" select=" $counter + 1"/>
<SetVariable variable="text">
<Value select="$text"/>
<Value select="'Text '"/>
</SetVariable>
</While>
<PlaceObject>
<Textblock>
<Paragraph><Value select="$text"/></Paragraph>
</Textblock>
</PlaceObject>
</Record>