Executes the given commands for all elements in the data XML file that match the contents of the attribute select.

Child elements

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

Parent elements

A, AtPageCreation, AtPageShipout, B, Case, Color, Columns, Contents, Element, Fontface, ForAll, Function, I, Li, Loop, NoBreak, Ol, Otherwise, Pagetype, Paragraph, Record, SaveDataset, SavePages, SetVariable, Span, Table, Tablefoot, Tablehead, Td, Text, Textblock, Tr, U, URL, Ul, Until, While


limit (number, optional, deprecated)

Limits the number of children to the given number.

select (XPath expression)

Selects the child elements from the data XML

start (number, optional, since version 2.3.67, deprecated)

The first entry to process. Default is 1.


With the default XPath parser, start and limit are not allowed anymore. Please use predicates instead (expressions in square brackets that filter the result). For example start="4" and limit="8" can be obtained with element[position() > 3 and position() < 8] with the new XPath parser.


<Record element="data">
      <ForAll select="entry">
        <Tr><Td><Paragraph><Value select="string(.)"/></Paragraph></Td></Tr>

Creates a table row for all elements entry in the data element data. The data XML should look similar to this:


See also

The section about Structure of the data file and the layout rules.