FSD の field タグ
field 要素は、入力データまたは出力データの 1 つのフィールドを定義します。
属性
name
フィールドの名前を指定します。出力属性が [yes] に設定されている場合は、この名前が出力ファイルの XML タグ名として使用され、入力処理中に XML タグで選択項目を照合する際にも使用されます。
output
フィールドを出力ファイルに含めるかどうかを指定します。属性の有効な値は次のとおりです。
- [yes]
レコードは出力でタグを生成します。
- [no]
フィールドはデータ構成を記述するのみで、データをスキップするために使用できます。
デフォルト値は [yes] です。
- [yes]
record-sep
フィールドのオプションのフィールドセパレータを指定します。任意の文字列を使用できます。次の特殊な値も使用できます。
\r
キャリッジリターン文字
\n
-
ラインフィード文字
\t
タブ文字
このデータは固定長です。フィールドセパレータを指定しない場合は、max-length 属性が使用されます。
レコードの最後のフィールドでは、フィールドセパレータではなく、レコードセパレータが使用されます。
valid-value
フィールドの固定値を定義します。これはフラットデータを検証するために使用され、choice 要素でパターン照合の一部としても使用されます。フラットデータの出力属性が [no] に設定されている場合、valid-value が代わりにフラットファイルに書き込まれます。
leading-chars
フィールドの開始位置から除外する文字を指定します。trailing-chars 属性が指定されておらず、min-length 属性で指定されている長さより短い場合は、この文字を使用して値の左部分がパディングされます。
trailing-chars
フィールドの終了位置から除外する文字列を指定します。min-length 属性で指定されている長さより短い場合は、これらの文字の最初の文字を使用して値の右部分がパディングされます。
output-if-empty
コンテンツが空の場合にフィールドを出力するかどうかを定義します。属性の有効な値は [yes] と [no] です。デフォルト値は [no] です。
max-length
データの最大長を定義します。この値は、どれだけのデータを読み込むのかを指定します。デフォルト値は [128] です。
min-length
データの最小長を定義します。この値は、妥当性検査、選択要素によるパターン照合、leading-chars 属性または trailing-chars 属性が指定されているときのパディングに使用されます。デフォルト値は [0] です。
truncate
この属性を [yes] に設定すると、フラットファイル形式に書き込まれるデータは指定されている max-length に切り捨てられます。デフォルト値は [no] です。
quoted
データの前後に引用符を使用するかどうかを指定します。これにより、フィールドセパレータが出力データに表示されます (FSD プロセッサは、フィールドセパレータには引用符で囲まれた文字列を検索しません)。属性には次の値があります。
- [No]
データは引用符で囲まれた文字列として処理されません。データはフラットファイルから文字通りに読み込まれ、書き込まれます。
- [Yes]
データは引用符で囲まれた文字列として処理されます。フラット形式から XML 形式に変換されるとき、データの引用符は削除され、残った引用符は単一引用符に変換されます。
XML 形式からフラット形式に変換するとき、データは引用符で囲まれます。残った引用符は「エスケープ」されます。つまり、単一引用符は二重引用符に変換されます。たとえば、" から "" に変換されます。
- [No]
Auto
このオプションは、区切りフラットファイルデータを XML に変換するときにのみ適用されます。データにフィールドセパレータが含まれる場合は、quoted オプションが [yes] に設定されているものとして処理されます。
デフォルト値は [auto] です。