グループは、エレメントのリストで、それらのエレメントがどのようにメッセージ内に現れるかを定義します。 グループは、複合タイプに対する構成と内容の妥当性検査を定義します。
XML スキーマでは、グループを配列したり (「シーケンス」)、配列解除したり (「すべて」)、または選択したり (「選択」) できます。
DFDL スキーマでは、グループを配列したり (「シーケンス」)、配列解除したり (「シーケンス」、ただし DFDL プロパティーの dfdl:sequenceKind=”unordered” を指定)、または選択したり (「選択」) できます。
メッセージ・セット内のメッセージ定義ファイルでは、グループを配列したり (「シーケンス」)、配列解除したり (「すべて」)、または選択したり (「選択」) できます。 詳しくは、メッセージ・セット: メッセージ・セットにおける XML スキーマ拡張を参照してください。
グループは、以下の目的のいずれかのために使用できます。
複合タイプは、その内容を完全に定義するグローバル・グループを参照することができます。 (参照しない場合、複合タイプの内容は、メッセージ定義エディター内に隠されている無名ローカル・グループにより定義されます。)
複数の複合タイプは、それらがエレメントの同じサブセットを含む場合には同じグローバル・グループを参照できます。
3 つのメンバーのシーケンスである複合タイプがあり、2 番目のメンバーは 2 つのエレメントのどちらかを選択したものであるとします。 この環境をモデル化するには、「構成」を「選択」に設定したグループをシーケンスの 2 番目のメンバーとして挿入できます。
グループには、複合エレメント、単純エレメント、ワイルドカード・エレメント、およびグループを含めることができます。
これらのコンポーネントを組み合わせることにより、どのようなメッセージの構造でもモデル化できます。 ワイルドカード・エレメントを組み込んで、モデル化されていないエレメントの存在が許可されるようにし、メッセージ・モデルを堅固で柔軟なものにすることができます。
グループは、グローバルまたはローカルのいずれかになります。
グローバル・グループは、メッセージ・モデル内の複数の場所で使用できます。 それは、メッセージ・モデル内の複数の場所に出現する構造を表します。 グローバル・グループには、グループ参照 で参照できる固有の名前を付ける必要があります。
ローカル・グループは、1 つのグループ内の 1 つの位置で定義され、 メッセージ・モデル内の他の場所で再利用するために利用できません。 ローカル・グループには名前はありません。それらはグループの構成を使用して表示されます。