10.5. The AN Formalism

Formally, an AN is defined on the basis of a set of object types OT, a set of event types ET and a set of activity types AT as a directed graph ⟨ N, D ⟩ with two types of nodes N = ENAN, event nodes and activity nodes, and two types of directed edges D = EDAD, event scheduling edges and resource-dependent activity scheduling edges, with EDNEN and ADNAN, such that

  1. each event node nEN is associated with

    1. an event type EET with event participation roles PE,
    2. an event variable e representing an event of type E,
    3. a (possibly empty) set of auxiliary (shortcut) object variables o defined with the help of event participation roles pPE by setting o := e.p,
    4. a (possibly empty) set of definitions of on-event object state transition functions { fp | pPE };
  2. each activity node nAN is associated with

    1. an activity type AAT with activity participation roles PA,
    2. an activity variable a representing an activity of type A,
    3. a (possibly empty) set of auxiliary (shortcut) object variables o defined with the help of activity participation roles pPA by setting o := a.p,
    4. a (possibly empty) set of definitions of on-activity-start object state transition functions { sfp | pPE };
    5. a (possibly empty) set of definitions of on-activity-end object state transition functions { efp | pPE };
  3. each event scheduling edge ⟨ n1, n2 ⟩ ∈ ED may be associated with
    1. a numeric delay expression δ possibly expressed with the help of the variables associated with n1,
    2. a condition (or Boolean expression) C expressed with the help of the variables associated with n1.