-
Type:
Change Request
-
Resolution: Persuasive with Modification
-
Priority:
Medium
-
FHIR Core (FHIR)
-
DSTU1 [deprecated]
-
FHIR Infrastructure
-
StructureDefinition
-
(profiles)
-
-
Enhancement
-
Non-substantive
-
DSTU1 [deprecated]
By the definition in FHIR spec "Differential statements describe only the *differences *that they make relative to another profile (which is most often the base FHIR resource or data type)".
Source: https://www.hl7.org/implement/standards/FHIR-Develop/profiling.html#2.11.0.5
The current tooling seems to contradict this statement in that many of the same definitions are repeated in the differential section. If the type or cardinality of a particular element in a profile is the same as that of the base resource then it should not be present in the differential for that element in the profile but still appears.
Example: (cqf-substance):
<snapshot>
<element>
<path value="Substance.type"/>
<short value="..."/>
<formal value="..."/>
<comments value="..."/>
* <min value="1"/>
<max value="1"/>*
* <type>
<code value="CodeableConcept"/>
</type>
<mustSupport value="true"/>
<isSummary value="false"/>*
<binding>...</binding>
</element>
</snapshot>
<differential>
<element>
<path value="Substance.type"/>
* <min value="1"/>
<max value="1"/>
<type>
<code value="CodeableConcept"/>
</type>*
* <mustSupport value="true"/>
<isSummary value="false"/>*
</element>
</differential>
The FHIR tooling should suppress adding the type and cardinality (Iikewise mustSupport + isSummary) if it is the same of the base resource/profile to keep the profiles with only the actual differences between the profiles and its base.
The only difference in profile should be changing this to the MustSupport value of true and the desired differential for "Substance.type" element should be following:
<differential>
<element>
<path value="Substance.type"/>
* <mustSupport value="true"/>*
</element>
</differential>
- is duplicated by
-
FHIR-5170 Jan 2015 Ballot Comment #44
-
- Published
-