Page 101 -
P. 101
88 N. Russell and A. ter Hofstede
VTmapW VarID Task ! TaskID identifies the specific task to which a task variable
corresponds, such that dom.VTmap/ D VarID Task I
VMmapW VarID MI ! MITaskID identifies the specific task to which each multi-
MI
ple instance variable corresponds, such that dom.VMmap/ D VarID :
Having described the global characteristics of a YAWL specification, we can now
proceed to the definition of a YAWL net. Note that YAWL nets is the set of all
instances governed by Definition 13. Each YAWL net is identified by a unique nid in
the form of a tuple .C;T;F /, which takes its form from classical Petri nets where
C corresponds to the set of conditions, T to the set of tasks, and F to the flow rela-
tion (i.e., the directed arcs between conditions and tasks). However, there are two
distinctions: (1) i and o describe specific conditions that denote the start and end
condition for a net and (2) the flow relation allows for direct connections between
tasks in addition to links from conditions to tasks and tasks to conditions.
Expressions are denoted informally via Expr, which identifies the set of expres-
sions relevant to a YAWL net. It may be divided into a number of disjoint subsets
including BoolExpr, IntExpr, NatExpr, StrExpr,and RecExpr, these being the sets
of expressions that yield Boolean, integer, natural number, string, and record-based
results when evaluated. There is also recognition for work distribution purposes
of capability-based, historical, and organizational distribution functions that are
denoted by the CapExpr, HistExpr,and OrgExpr subsets of Expr, respectively.
Note that in actuality, all forms of Expr are realized using XQuery and XPath
functionality.
Definition 13. (YAWL net) A YAWL net is a tuple (nid, C,i,o, T, T A , T C ,M,F,
Split, Join, Default,< XOR , Rem, Nofi, ArcCond) such that:
(* basic control-flow elements *)
nid 2 NetID is the identity of the YAWL net;
C is a set of conditions;
i 2 C is the input condition;
o 2 C is the output condition;
T is the set of tasks;
T A T is the set of atomic tasks;
T C T is the set of composite tasks;
T A and T C form a partition over T ;
M T is the set of multiple instance tasks;
F .C nfog T/ [ .T C nfig/ [ .T T/ is the flow relation, such that
every node in the graph .C [ T; F / is on a directed path from i to o;
Split W T fAND; XOR; ORg specifies the split behavior of each task;
Join W T fAND; XOR; ORg specifies the join behavior of each task;
Default F; Default W dom.Split fORg/ ! T [ C denotes the default
arc for each OR-split. If none of the outgoing arc expressions evaluate to true,
the default arc indicated by Default.t/ is selected, thus ensuring that at least one
outgoing arc is enabled;