

19
One Model, Many Interests, Many Views
Iterate
An iterate construct is similar to a loop construct in that it repeats a sequence of functions or constructs.
Unlike a loop, which is controlled by a logical condition, an iterate construct is controlled by a domain
set which specifies the number of iterations.
An iterate construct consists of a pair of decision nodes that enclose a branch and are connected with
a loop-back line. The name of the specified domain set which determines the number of iterations
(either a count, a frequency, or a specified set of objects) is shown above the loop-back line. The branch
can contain any number of functions and control constructs. These will be repeatedly executed (in
sequence) as specified by the domain set.
Unlike the loop construct in which behavior on the main branch is guaranteed to be executed at least
once, the main branch of an iterate may not be executed depending upon the domain set.
Replicate
The replicate construct is a shorthand notation for identical processes that operate in parallel.
A replicate construct consists of a pair of nodes labeled “RP” that enclose a main branch and are
connected with a coordination branch. This coordination branch is labeled with the name of the
associated domain set.