“…After an event is detected, the corresponding rule will be fired. Events can be either primitive (e.g., a method invocation, a transaction begin or commit, a time event, an abstract event 2 ) or composite (e.g., conjunction, sequence, disjunction, negation, repeated occurrence). Composite event restrictions are conditions that must hold for component events in order to form a legitimate composition.…”