eTextテンプレートの構造

eTextテンプレートには、定位置ベース(EFTテンプレート)とデリミタベース(EDIテンプレート)の2つのタイプがあります。

テンプレートは一連の表で構成されています。これらの表では、レイアウト、設定コマンドおよびデータ・フィールド定義が定義されます。2種類のテンプレートに必要とされるデータの説明列は異なりますが、使用可能なコマンドと関数は同じです。表には、コマンドのみを含めることも、コマンドとデータ・フィールドを含めることもできます。

次の図に、コマンドおよびデータ行の一般的な構造を表示する、EFTテンプレートのサンプルを示します。

グローバルに適用されるコマンド、またはテンプレートのプログラム要素を定義するコマンドは、設定コマンドと呼ばれます。これらのコマンドは、テンプレートの始めの表で指定する必要があります。設定コマンドの例には、テンプレート・タイプや文字セットがあります。

データ表では、ソースXMLのデータ要素名、および受信側の銀行またはエンティティが必要とする特定の配置および書式設定定義を指定します。データおよび条件付き文に対して実行する関数を定義することもできます。

データ表は必ず、レベルを定義するコマンド行で始める必要があります。レベルは、表をXMLデータ・ファイルの要素に関連付けて、階層を確立します。レベルの表で次に定義するデータ・フィールドは、XML要素の子要素に対応します。

次の図に、XMLデータ階層とテンプレート・レベル間の関連を示します。XML要素RequestHeaderは、レベルとして定義されています。表に定義されているデータ要素(FileIDおよびEncryption)は、RequestHeader要素の子です。

テンプレート内の表の順序は、レコードの印刷順序を決定します。実行時に、システムは表(レベル)に対応するXML要素のすべてのインスタンスをループし、その表に属するレコードを印刷します。その後、テンプレート内の次の表を処理します。表がネストされている場合は、次の親インスタンスに移動する前に、子表のネストされているレコードを生成します。

コマンド行、データ行およびデータ列ヘッダー行

コマンド行は、テンプレート内のコマンドの指定に使用します。コマンド行には、コマンド名とコマンド・パラメータの2つの列が常に存在します。コマンド行には列ヘッダーはありません。コマンドは、テンプレートの全体的な設定とレコード構造を制御します。

次の表に、コマンド行、データ行およびデータ列ヘッダー行の配置を示します。

表は、任意の位置に空白行を挿入することによって、見やすくすることができます。これらは、設定表のコマンド間で最も頻繁に使用されています。Publisherでは、テンプレートの解析時に空白行が無視されます。

データ列ヘッダー行

データ列ヘッダーは、データ・フィールドの列ヘッダーを指定します(位置、長さ、書式、埋込み、コメントなど)。列ヘッダー行は、通常は表のレベル・コマンド(ソート・コマンドの使用時にはソート・コマンド)の後に続きます。データ列ヘッダー行は、表のデータ行よりも前に配置する必要があります。また、表の任意の位置に空の列ヘッダー行を挿入すると、表を見やすくすることができます。空の行は、実行時には無視されます。

必要なデータ列ヘッダー行は、テンプレート・タイプに応じて異なります。「データ行の構造」を参照してください。

データ行

データ行は、各データ・フィールドのデータ列ヘッダーの値を提供します。

データ行の内容は、テンプレート・タイプに応じて異なります。「データ行の構造」を参照してください。