次の方法で共有


フリー テキストを使用する文字のエンコード

BizTalk Server 2013 R2 以降では、フィールドまたはセグメントで "FreeText" を使用できます。 "FreeText" フィールドまたはセグメント内のデータは解析されません。

知っておくべきこと

区切り記号 動作
~: 繰り返し区切り記号 フィールドでは、繰り返し (~) は繰り返し区切り記号として扱われます。 フリーでないセグメントでは、繰り返し (~) は繰り返し区切り記号として扱われます。 フリー セグメントでは、繰り返し (~) は新しい繰り返しではなく、フリー テキストの一部として扱われます。 次の例では、FRE は Free Segment です。 ~を含む任意の文字をフリー テキストとして使用できます。 追加の繰り返し (~) は繰り返し区切り記号とは見なされず、フリー テキスト コンテンツとして扱われます。 Free Segment の子が繰り返し不可能で、繰り返し (~) が含まれている場合でも、検証は成功します。 FRE の例:

FRE|Foo&^|Foo&^|Foo&^|Foo&^~Foo&^|Foo&^|Foo&^|Foo&^

次の例では、EVN4 は ^&含まれているため、フリー テキストとして定義されています。 "|" 区切り記号が検出されると、現在のフリー テキストの末尾として扱われます。 EVN の例:

EVN||||Foo&^Foo&^Foo&^Foo&^Foo&^||

次の例では、 が含まれているため、EVN5 の最初の子はフリー テキストとして定義 &。 "^" 区切り記号が検出されると、現在のフリー テキストの末尾として扱われます。 EVN5 の例:

EVN|||||Foo&Foo&Foo&Foo&Foo&^5.2|

次の例では、5.2.1 と 5.2.2 は、スキーマで FreeText として定義されている場合でも、フリー テキストとして区切り記号を持つことはできません。 5.2.1 と 5.2.2 の例:

EVN|||||Foo1^5.2.1&5.2.2|

次の例では、EVN4 を繰り返し実行でき、フリー テキスト型であるとします。 Foo1&^ は最初の繰り返しとして扱われ、 Foo2&^ は 2 番目の繰り返しとして扱われます。 EVN4 が繰り返し可能でない場合 (MaxOccurs = 1)、フリー テキスト型の場合 (フリー テキスト以外のフィールドの場合など) であっても~が含まれている場合、検証は失敗します。 EVN4 の例:

EVN ||||Foo1&^~ Foo2&^ ||
|: フィールド区切り記号 空きセグメントのセグメント タグの後にフィールド区切り記号がない場合、検証は成功します。 次の例では、FRE はフリー テキスト型です。 フリー テキスト コンテンツは、FRE セグメント タグの直後に、"|" フィールド区切り記号の有無にかかわらず開始できます。 どちらの例も成功します。

FREabc
FRE|abc

次の例では、検証は成功します。

DASM への入力メッセージ: FRE|abcd
DASM からの出力: <SegmentData>|abcd</SegmentData>
ASM からの出力: FRE|abcd

DASM への入力メッセージ: FREabcd
DASM からの出力: <SegmentData>abcd</SegmentData>
ASM からの出力: FREabcd
Parent-Child 省略可能 親子の省略可能な検証規則は引き続き適用されます。 親が省略可能であり、その子の 1 つが必須であるとします。

- 他の子と必須の子が入力されていない場合、メッセージの検証は成功します。
- 少なくとも 1 つの子が設定されている場合は、必須の子も設定する必要があります。 それ以外の場合、メッセージの検証は失敗します。

次の例では、フィールド 1 は省略可能です。 その 1.a 子は省略可能であり、フリー テキスト型です。 その 1.b 子は必須です。

xyz|1.a^1.b|2

次のサンプル メッセージでは、 dfssdf&sdf は 1 つの 1 つの要素 (1.a) と見なされます。 パーサーは、1.b が存在するかどうかを確認します。 に | 達すると、1.b が設定されておらず、メッセージの検証が失敗すると想定されます。

xyz|dfssdf&sdf|2
MSH、FSH、BSH の各セグメント フリー テキストは、すべてのフィールドで無視されます。 これらのセグメントは、ヘッダー セクションに対応しています。 検証は、フリー テキストとして定義されている場合でも、通常と同様に行われます。
\: エスケープ文字 要素に偶数の "\" がある場合は、(連続していない場合でも) 検証は成功します。 奇数の場合、検証は失敗します。 フリー テキスト以外のフィールドでも同じ動作が続きます。 フリー テキスト フィールドでは、数値に対する検証はありません。これは、フリー テキスト コンテンツとして扱われます。

メッセージ区切り記号は、 次の例の区切り記号の詳細を提供します。

フリー テキストの使用

  1. Visual Studio のプロジェクトで、スキーマを開きます。

  2. レコードを右クリックし、[ スキーマ ノードの挿入] を選択し、[ 子フィールド要素] を選択します。

  3. [プロパティ] で [ データ型] を選択し、[ フリー テキスト (SimpleType)] を選択します。

参照

HL7 メッセージの処理