Da80 introduces X-transition of E-nets (including the environment-variables, token-attributes, and predicates) to time Petri nets.
The X-transition provides determinism (evaluated-abstraction, with its data and procedures), similar to a (deterministic) "if" statement in programming languages. i.e: If (bool) then do1, else do2."
The context-dependent interpretation of token-attributes, is reminiscent of Pascal variant-records (or, C unions), too.
Although Da80 is with the E-net formalism, for easy reference, the term "resolution-procedure" is redefined - other than in IV.E, where the FSA-based formalization, refers to F, the resolution-procedure and G, the transition-procedure, as different.
To implement a Da80 resolution-procedure, e.g:
F: if (rule0) r=0; else r=1; G: if (r) fire_path1(); else fire_path0();
For ease of referral, we may refer to it as R, other than when its steps are important.
With E-nets, there are four phases of activity (cf. NN73, p.721). Da80 formalism, is about how we may refer to them as a context- vs. a basic-automaton (two finite-state automata).
The difference of Da80, is about time. Although it is still feasible to let the third-phase of an E-net X-transition (the activity-phase) take time, Da80 lets only the first (or, second) phase take time, and that time-Petri-net may altogether neglect the token, after a maximum time.
i.e: Whereas Nutt's E-nets interpret with activity-oriented time, Da80 E-nets interpret with wait-oriented time, as Da80 found it preferrable for protocol-modeling. They are easily reconcilable (to model any type of net), though. i.e:
The former is rather a preference of a(n ordinary E-net) J-transition versus a time-Petri-net, as what Da80 refers to as an X-transition, is with two input-locations. With E-net primitives, that is a module (or, macro) with a J-transition, followed by an X-transition. A J-transition may only take its time, whereas a time-Petri-net may dump a token away, too.