6.10 作成ルール

作成ルールは、マッチングルールが一致の検出に失敗した場合に、Addイベントに適用されます。作成ルールは、オブジェクトを識別ボールトまたは接続システムで作成できるようにするために、あらかじめイベントに与えられている必要がある最低限のデータを指定します。

6.10.1 発行者

マッチングルールで一致するオブジェクトが識別ボールトに見つからないと、その文書に作成ルールが適用され、十分な情報が文書に確保されます。作成ルールは、属性のデフォルト値を設定したり、新規オブジェクトの作成時に使うテンプレートを指定したりする目的でも使用されます。識別ボールトと同期するオブジェクトの場合、CNや姓など、ユーザを作成するために必要な必須の属性がスキーマに存在する可能性があります。オブジェクトクラスやユースケースにはそれぞれ、異なる要件が存在する可能性があります。

Addイベントが作成ルールの条件を満たさない場合、作成ルールではAddイベントを拒否することもできます。たとえば、作成ルールがオブジェクトに電話番号を要求するとき、オブジェクトに電話番号がない場合にはAddイベントが失敗します。

破棄されたイベントは、接続システムで属性情報が追加されたときに再度処理されます。これにより、変更イベントがオブジェクトの関連付けなしに発生します。この変更イベントはAddプロセッサによって合成Addに変換されます。

6.10.2 購読者

接続システムでオブジェクトを作成するとき、イベントに十分な情報があるかどうかを判断する場合に、購読者チャネルでの作成ルールが、発行者チャネルと同様に機能します。これには、接続システムとその技術的またはビジネス上の要件についての知識が必要です。

作成ルールは、しばしば(生成元のイベントからの)新しいオブジェクトで利用可能な属性を評価するために使用され、必須のオブジェクトのいずれかがない場合に、新しいオブジェクトの作成を拒否します。購読者チャネルでの最も一般的な例は、パスワードの要求です。通常、ユーザは識別ボールトで2段階で作成されます。最初にユーザオブジェクトが作成され、次に2番目の操作でパスワードが設定されます。オブジェクトが作成されても、新しいユーザオブジェクトの作成に必要な属性であるパスワードがないため作成ルールが失敗する場合が多く見受けられます。パスワードイベントが発生して少しすると、新しいオブジェクトが正常に追加されます。