Events and MessageDefinition Instances
Events
As the FHIR Standards does not yet define concrete events (see MessageHeader.event), SAP has defined a codeSystem for potential input for the HL7 organization. Its event pattern is based on basic operations occurring on the business related FHIR resources.
- This means that per resource like Patient, Condition etc. we defined messages like patient-created, condition-updated or procedure-cancelled
- Initial load is a particular event. Its purpose is to synchronize master data like practitioner with another system. The message with the event practitioner-initial-load sends all practitioner instances within SAP Patient Management as message.
- See this codeSystem here
MessageDefinition Instances
For each of the events, we defined a specific MessageDefinition instance which contains:
- the corresponding event code (example patient-created)
- the category with value "consequence"
- the focus elements (e.g. the encounter instance that has been created)
- the focus element refers to a specific profile indicating the requirements towards that instances, f.ex. in terms of must-support elements, mandatory fields, valueSets etc.
- the min and max for the number of instances. For the CUD messages this is typically 1.
Each event code has a specific MessageDefinition instance associated. Below is a set of messageDefinition instances for transactional data as samples:
Resource | Created MsgDef instance | Updated MsgDef instance | Inbound msg profile |
---|---|---|---|
Patient | Patient-created MessageDefinition | Patient-updated MessageDefinition to come | Profile |
Condition | Condition-created MessageDefinition to come | Condition-updated MessageDefinition to come | Profile to come |
Procedure | Procedure-created MessageDefinition to come | Procedure-updated MessageDefinition to come | Profile to come |