このトピックでは、CSV サンプルで使用される 9 つのサンプル・メッセージ・モデルのそれぞれについて、要点を説明します。
このメッセージは、最も単純なコンマ区切り値メッセージ・モデルの例を示しています。 このメッセージのモデルを作成するには、メッセージを分解してその構造を理解する必要があります。 下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_1 メッセージを参照して、その構造と論理プロパティーを調べることができます。 このメッセージには、0 回から -1 回 (無制限) 反復する「customer」という単一のエレメントがあることに注意してください。 モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このメッセージは、ヘッダー・レコードを CSV_1 からの CSV メッセージに追加します。 下の図は、この CSV メッセージ例に含まれるメタデータの重要項目を示すとともに、メッセージ・セットに定義されている メッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_2 メッセージを参照して、その構造および論理プロパティーを CSV_1 の構造および 論理プロパティーと比較することができます。 以下のような、注目すべき特徴があります。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このメッセージは、CSV_2 のトレーラー・レコードを CSV メッセージに追加します。 下の図は、CSV メッセージの例に含まれるメタデータの重要項目を示すとともに、メッセージ・セットに定義されているメッセージの 論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_3 メッセージを参照して、その構造および論理プロパティーを CSV_2 の構造および 論理プロパティーと比較することができます。 以下のような、注目すべき特徴があります。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このモデルはインスタンス・メッセージを正しく解析しますが、トレーラー・レコードが複数あるメッセージや、 トレーラー・レコードの順序が間違っているメッセージとも一致してしまいます。 これを回避するために、より精巧なモデルが必要になります。 CSV_4 はその一例です。
このメッセージは、CSV_3 と同じメッセージをモデル化する ための代替アプローチです。 このモデルは、トレーラー・レコードはメッセージ内の最後のレコードであり、常に存在する、という前提に基づいています。 下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_4 メッセージを参照して、その構造および論理プロパティーを CSV_3 の構造および 論理プロパティーと比較することができます。 以下のような、注目すべき特徴があります。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このモデルは、インスタンス・メッセージを正しく解析します。 最終レコードを常にトレーラーとして解析し、その前にあるすべてのレコードを顧客レコードとして解析します。
このメッセージは CSV_4 のメッセージを基に作成したもので、 複数のストリング・フィールドを二重引用符で囲んでエスケープし、単一のフィールドにするサポートを追加したものです。 ストリング・フィールドを引用符で囲むことは、「,」(コンマ) などの文字がメタデータと競合することなくデータ内に存在できる ようにするための一般的な方法です。 下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_5 メッセージを参照して、その構造および論理プロパティーを CSV_4 の構造および 論理プロパティーと比較することができます。 以下のような、注目すべき特徴があります。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このモデルでは、引用符の有無を問わず、フィールド「streetaddress」を解析できます。 ただし、このモデルでは引用符がデータ内に残ります。 CSV_6 にあるモデルのような、より精巧なモデルが必要に なります。
このメッセージは、CSV_5 と同じメッセージをモデル化する ための代替アプローチです。 これは、引用符で囲まれている場合と囲まれていない場合とを区別することにより、メタデータに引用符を含めること、メッセージを 解析するときに引用符を除去すること、およびメッセージをシリアライズするときに引用符を追加することを可能にします。 下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_6 メッセージを参照して、CSV_6 メッセージの構造および論理プロパティーを CSV_5 と 比較することができます。 このメッセージには「streetaddress2」へのグループ参照が含まれていることに注意してください。 これは他の 2 つのグループの選択です。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このモデルでは、引用符の有無を問わず、フィールド「streetaddress」を解析できます。 引用符はメタデータの一部として扱われます。 引用符は、メッセージがシリアライズされるときに「streetaddress」フィールドに追加されます。 このモデルでは、引用符で囲んだ streetaddress のデータに引用符を含めることはサポートされていません。 これには、CSV_7 などの、もう少し精巧なモデルが必要となります。
これは、CSV_6 と同じメッセージをモデル化するための代替アプローチです。 ここでは、streetaddress フィールドのデータ内に二重引用符を含めるサポートが追加されています。 二重引用符のペアは、データ内で単一の二重引用符に置き換えられます。 下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_7 メッセージを参照して、その構造および論理プロパティーを CSV_6 の構造および 論理プロパティーと比較することができます。 このメッセージには「streetaddress3」へのグループ参照が含まれていることに注意してください。 これは他の 2 つのグループの選択です。 モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
messageSet.mset ファイルを開くことによって、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
このモデルでは、引用符の有無を問わず、フィールド「streetaddress」を解析できます。 引用符はメタデータの一部として扱われます。 引用符は、メッセージがシリアライズされるときに「streetaddress」フィールドに追加されます。 さらにこのモデルでは、二重引用符をエスケープ文字として使用することにより、引用符で囲んだ streetaddress のデータに 引用符を含めることをサポートしています。
このメッセージでは、CSV メッセージ内でのタグの使用を導入して、モデルの柔軟性を高めます。 各 CSV レコードの最初のフィールドが固有 ID である場合、それをタグとして使用できます。 これにより、ヘッダーおよびトレーラーのモデル化が大いに簡単になり、柔軟性が高まります。 下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_8 メッセージを参照して、その構造と論理プロパティーを調べることができます。 以下のような、注目すべき特徴があります。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。
CSV メッセージには各レコードごとに固有のタグがあるため、モデルが簡単になります。 このことは、CSV_9. の場合と同様に、メッセージに alternate レコード・タイプを 入れることができることを意味します。
このメッセージは CSV_8 のメッセージを基に作成したもので、異なる顧客レコードの選択をメッセージ本体に追加したものです。 タグを使えば、これは大変簡単になります。下の図は、CSV メッセージの例に含まれるメタデータの主な項目を示すとともに、メッセージ・セットに定義されているメッセージの論理構造を示しています。
イメージに代わる、文章によるメッセージの説明については、 『Comma Separated Value (CSV) サンプル・メッセージの説明』を 参照してください。
サンプル・メッセージ・セット内の CSV_9 メッセージを参照して、その構造および論理プロパティーを CSV_8 の構造および 論理プロパティーと比較することができます。 以下のような、注目すべき特徴があります。
モデルに定義されている、メッセージの「CSV」物理プロパティーについて調べることができます。 以下のような、注目すべき特徴があります。