ASBITSTREAM 関数と CREATE ステートメントを使用して、DFDL で記述したメッセージの内容を管理します。
ASBITSTREAM 関数
ASBITSTREAM 関数をコーディングしてメッセージ・ツリーをビット・ストリームに構文解析する場合に、パーサー・モード・オプションが RootBitStream に設定されていると、結果として、ターゲット・エレメントの子から DFDL 文書が通常の方法で生成されます。 このアルゴリズムは、通常の出力ビット・ストリームの生成に使用されるアルゴリズムと同じです。 ターゲット・エレメントは出力ビット・ストリームに含まれないため、ターゲット・エレメントの子が DFDL 文書のさまざまな制約に従うようにする必要があります。
1 つの制約は、メッセージ内にただ 1 つの本文エレメントだけが許容されることです。 この方法で生成した整形式ビット・ストリームを使用し、PARSE 文節を含む CREATE ステートメントを使って元の論理ツリーを再作成することができます。
ASBITSTREAM 関数の詳細、およびその使用方法の例については、ASBITSTREAM 関数を参照してください。
CREATE ステートメントでの PARSE 文節
CREATE ステートメントで PARSE 文節を使ってコーディングしてビット・ストリームをメッセージ・ツリーに構文解析する場合に、パーサー・モード・オプションが RootBitStream に設定されていると、ビット・ストリームとして、DFDL によって記述される通常のメッセージが予期されます。 エレメントがビット・ストリーム内に識別されると、そのたびにエレメントが論理ツリーに作成されます。 このアルゴリズムは、入力ノードからビット・ストリームを構文解析するときに使用されるアルゴリズムと同じです。
CREATE 関数の詳細、およびその使用方法の例については、CREATE ステートメントを参照してください。