The differential view currently seems to show all aspects of the element that appear in structuredefinition.differential. In some cases, we repeat information from the parent profile/resource without actually changing it. This may be because if you want to say something about any one of a polymorphic type (e.g. use MyCodeableConcept in value[x] instead of regular CodeableConcept), you need to repeat all other polymorphic types supported in the parent, without saying anything about them. This results in all the value[x] types showing up in the differential as a change, despite only having changed one of the types. A similar case occurs with references: Reference(Patient | Provider) -> Reference(MyPatient | Provider). A third occurrence may be "sloppy" profiling where the author leaves in unchanged attributes.
Ideally, the differential view should identify where the profile is the same as the parent (which is different from the StructureDefinition.differential including that element), and grey it out, thus highlighting where the profile is different from the parent.
The differential view currently seems to show all aspects of the element that appear in structuredefinition.differential. In some cases, we repeat information from the parent profile/resource without actually changing it. This may be because if you want to say something about any one of a polymorphic type (e.g. use MyCodeableConcept in value[x] instead of regular CodeableConcept), you need to repeat all other polymorphic types supported in the parent, without saying anything about them. This results in all the value[x] types showing up in the differential as a change, despite only having changed one of the types. A similar case occurs with references:
Reference(Patient | Provider)
->Reference(MyPatient | Provider)
. A third occurrence may be "sloppy" profiling where the author leaves in unchanged attributes.Ideally, the differential view should identify where the profile is the same as the parent (which is different from the StructureDefinition.differential including that element), and grey it out, thus highlighting where the profile is different from the parent.