Following are the contract level changes that we have fixed for our bundles to be parseable.
...
Composition
new mandatory fields added:
- type ->> NEED TO CREATE A VALUESET IN TR FOR THIS. (name is 'doc-typecodes' with document types from loinc).
- author,
- confidentiality => http://hl7.org/fhir/v3/Confidentiality - code system
Encounter
subject => patient
(Fields removed )
indication
Observation
The value[x] accepts only a limited set of datatypes. Some of them that we are using like Decimal are not present. Need to send appropriate datatypes.
Condition
RelatedItem is replaced by dueTo and occurredFollowing.
status is replaced by "clinicalStatus"
dateAsserted date takes only date without tim component. -> Need to investigate how to map bahmni chief complaint duration after this change. We need to start using Period to capture duration.
Bundle
- Bundle has to have a type -> Document. Validate this?
- base tag is mandated at either bundle level or at individual entry level.
All bundle entry ids must be a uuid,
in DSTU1 we had urn:<uuid>, this should be changed to have only <uuid>
example:DSTU1 DSTU2 <entry id="urn:5f982a33-4454-4b74-9236-b8157aa8effd"> <entry id="5f982a33-4454-4b74-9236-b8157aa8effd"> All reference urls should be either urls starting with http protocol or must be uuid prefixed with 'urn:uuid:'.
Observation [breaking]
- name ==> code.
Immunization [breaking]
- refusalIndicator ==> wasNotGiven
- refusalReason ==> getReasonNotGiven
- subject ==> patient
MedicationPrescription [not breaking]
- dosageInstruction can now take both dosageQuantity and dosageRange
[dosageInstruction.dose field can capture two types dosageQuantity,dosageRange]
To look into later:
Composition:
Confidentiality set to String - A code from the confidentiality vs
...