コードユニット(ファイルまたはscript内容)が、アプリケーション全体のなかでどのような役割を演じるか、その貢献〈contribution〉と条件〈conditon〉、期待〈expectation〉、信頼〈reliance, trust〉などを関与〈engagement〉という形で記述する。
関与宣言 ::= 'engagement' 名前 '{' 文並び '}' 文並び ::= (文 (',' 文)* ','?)? 文 ::= 要求文 | 提供文 要求文 ::= 'require' 'on' ('setup'|'running') '{' 項目並び '}' 'from' パス via 手段 提供文 ::= 'provide' '{' 項目並び '}' 'via' 手段 項目並び ::= (項目 (',' 項目)* ','?)? 項目 ::= 名前 ':' 型 手段 ::= ('global' | 'ems' | 'cjs')
- 要求文に、セットアップフェーズで必要とするか稼働フェーズで必要とするかを書ける。
- 要求文に、どんな手段で提供されるかを指定できる。
- 提供文に、どんな手段で提供するかを書ける。
- 要求・提供する項目に型を書ける。