0

DSTU2 の 5 月の投票バージョンには、構造の「異なる」定義を可能にする StructureDefintion リソース (プロファイルを置き換える) があります。

これを使用して既存の構造に要素を追加するのは非常に簡単です。差分内のすべての要素は、ベースに「追加」されます。

しかし、既存のプロファイルをどのように変更または削減するのでしょうか? すなわち:

基本構造の要素を差分構造の要素と確実に一致させて、差分が基本を変更できるようにするにはどうすればよいでしょうか?

私は2つの可能性を見ることができます:

  1. パスを使用します。スライスされていない要素では機能しますが、スライスでは機能しない必須要素です (拡張子は常にスライスです)。
  2. 名前を使用します。オプションであることを除いて、ベースが要素に名前を付けていない場合、これは機能しません。

別の方法はありますか?

ここでの作業例: http://hl7.org/fhir/2015May/extensibility-examples.html#1.16.2.1.2

この例では、パスによるマッチングは他の拡張子を置き換えますが、どちらの要素にも名前が付けられていないため、名前のマッチングは機能しません。唯一のオプションは、それを追加として扱うことです (幸いなことに、これがここでの意図です)。しかし、この構造をベースとして使用してこの構造をさらに変更したい場合 (おそらく max="1" に設定する) はできません。

4

1 に答える 1

1

実際、追加は追加ではありません。追加は拡張のスライスでなければなりません。プロファイルに新しい要素を追加することはできません。したがって (HL7 だけができるリソースを定義している場合を除きます)、制約 StructureDefinition で指定するすべての要素は、基本リソースの既存のパスに対応する「パス」を指定する必要があります。既存の要素を制約するには、そのパスを特定して制約をアサートするだけです。制約したいものをパスだけで識別できない場合 (つまり、親プロファイルで定義されたスライスを制約したい場合)、スライスを再宣言し、関連するスライスに追加の制約をアサートする必要があります。 . 名前は、プロファイル内のスライスを一意に識別するために使用されますが、(現在) プロファイル間で使用されていません。

于 2015-05-09T22:27:27.087 に答える