While
Erzeugt eine Schleife, die wiederholt durchlaufen wird. Die Kindelemente werden so oft ausgeführt, solange die Bedingung im Attribut »wahr« ergibt.
Kindelemente
A
, Action
, AddSearchpath
, AttachFile
, Attribute
, B
, Barcode
, Bookmark
, Box
, Br
, ClearPage
, Clip
, Color
, Column
, Columns
, Copy-of
, DefineColor
, DefineFontalias
, DefineFontfamily
, DefineMatter
, DefineTextformat
, Element
, Fontface
, ForAll
, Frame
, Group
, HSpace
, Hyphenation
, I
, Image
, Include
, Initial
, InsertPages
, Layout
, Li
, LoadDataset
, LoadFontfile
, Loop
, Message
, NextFrame
, NextRow
, NoBreak
, Options
, Output
, Overlay
, Pageformat
, Pagetype
, Paragraph
, PlaceObject
, PositioningArea
, PositioningFrame
, ProcessNode
, SaveDataset
, SavePages
, SetGrid
, SetVariable
, SortSequence
, Span
, StructureElement
, Sub
, Sup
, Switch
, Table
, TableNewPage
, Tablehead
, Tablerule
, Td
, Tr
, Trace
, Transformation
, U
, Until
, VSpace
, Value
, While
Elternelemente
AtPageCreation
, AtPageShipout
, Case
, Contents
, ForAll
, Layout
, Loop
, Otherwise
, Record
, SavePages
, Until
, While
Attribute
test
(XPath-Ausdruck)-
Für jedes Mal, das die Schleife durchlaufen werden soll, muss die Bedingung im Attribut erfüllt sein. Die Bedingung wird am Anfang der Schleife überprüft. Eine Schleife, bei der die Bedingung am Ende der Schleife geprüft wird, ist Until.
Beispiel
Folgendes Beispiel erzeugt einen Textblock mit dem Inhalt „Text Text Text“.
<Record element="url">
<SetVariable variable="zaehler" select="1"/>
<SetVariable variable="text" select="''"/>
<While test=" $zaehler <= 3 "> <!-- kleiner oder gleich -->
<SetVariable variable="zaehler" select=" $zaehler + 1"/>
<SetVariable variable="text">
<Value select="$text"/>
<Value select="'Text '"/>
</SetVariable>
</While>
<PlaceObject>
<Textblock>
<Paragraph><Value select="$text"></Value></Paragraph>
</Textblock>
</PlaceObject>
</Record>
Siehe auch
Den Abschnitt Schleifen im Kapitel Programmierung.