process ::=protocol_decl?property_decl?rule_decl?
protocol_decl ::=event(event_name;)+
      ⁢protocol⁢(protocol⁢;;)+
protocol ::=event_name∣protocol;protocol
 ∣protocol+protocol∣protocol*∣(protocol)
property_decl ::=variable(var_name;)+
      ⁢property⁢(ldl_formula⁢;)+
rule_decl ::=rule(rule;)+
rule ::=onevent_name
  ⁢when⁢context
  ⁢action+
context ::=proposition∣<ldl_path>context
action ::=ensureldl_formula
 ∣raiseevent_name(+event_name)∗