Message Header

Header for a message exchange that is either requesting or responding to an action. The reference(s) that are the subject of the action as well as other information related to the action are typically transmitted in a bundle in which the MessageHeader resource instance is the first resource in the bundle.

The MessageHeader resource is defined in order to support Messaging using FHIR resources. The principle usage of the MessageHeader resource is when messages are exchanged. However, as a resource that can be used with the RESTful framework, the MessageHeader resource has the normal resource end-point ([base-url]/MessageHeader), which is used to manage a set of static messages resources. This could be used to make an archive of past messages available. Creating or updating Message resources in this fashion does not represent the actual occurrence of any event, nor can it trigger any logic associated with the actual event. It is just for managing a set of message resources.

Message header profile has minor modifications from standard to have the event custom defined valueset binding and at the same time endpoint field will have environment actual endpoint for uudev,uutest etc..


Patient

This Resource covers data about patients. Its attributes provide very restricted demographic information. This includes an Identifier (unique for each patient), given name, family name, birth date, gender, contact details (Phone) and managing organization

Mandatory elements in the profile:

  • Identifier.system - Personal identification code.
  • Identifier.value - unique identifier for each patient in the system
  • name.given
  • name.family

Note : The size limit of the patient id is 64 characters max length


Condition

This Resource is used to indicate the condition (diabetes type) of the subject (patient)

The condition resource references the patient resource through the element "subject".

Condition

Mandatory elements in the profile:

  • clinicalStatus - active | recurrence | inactive | remission | resolved (this field is mandatory if the verificationStstus is not "entered-in-error")
  • code (bindling valueset condition-code
  • subject (reference to the Patient resource)

Practitioner

Practitioner is a person who is directly or indirectly involved in the provisioning of healthcare

Mandatory elements in the profile:

  • Identifier.system - Isentifer system (unique OID/url
  • Identifier.value - unique identifier for each practitioner in the system
  • name.given
  • name.family
  • telecom (fixed value for system - email)

DeviceComponents

Describes the characteristics, operational status and capabilities of a medical-related component of a medical device (for example glucometers or insulin pumps).

The DeviceComponent resource is used to describe the characteristics, operational status and capabilities of a medical-related component of a medical device. It can be a physical component that is integrated inside the device, a removable physical component,or a non-physical component that allows physiological measurement data and its derived data to be grouped in a hierarchical information organization.


DeviceMetrics

Describes mandatory static properties that characterize a direct or derived, quantitative or qualitative biosignal measurement, setting, or calculation produced by a medical device component like glucometers or insulin pumps (for example; mg/dL, [iU], etc.)

The DeviceMetric resource describes mandatory static properties that characterize a direct or derived, quantitative or qualitative biosignal measurement, setting, or calculation produced by a medical device. The DeviceMetric resource can also be used to describe the non-static but highly relevant properties to the metric such as metric status, metric last calibration time and type, measurement mode, color, reference link to the parent DeviceComponent to where it belongs, and any capabilities that the metric offers (for example: setting the metric label).

There are two related resources.

  • Device - The physical device that this DeviceMetric belongs to.
  • DeviceComponent - The DeviceComponent that this DeviceMetric is part of. This can be a DeviceComponent of any kind like a VirtualMedicalDevice, a MedicalDeviceSystem, or a Channel.

A diagram that depicts DeviceMetrics structure and relationships is showed below:

DeviceMetricClassdiagram


OperationOutcome

Operation outcomes are sets of error, warning and information messages that provide detailed information about the outcome of an attempted system operation. They are provided as a direct system response or component of one and provide information about the outcome of the operation.

The OperationOutcome resource is used in the following circumstances:

  • When an RESTful operation fails
  • As the response on a validation operation to provide information about the outcome
  • As part of a message response, usually when the message has not been processed correctly

  • MedicationAdministration

    Describes the event of a patient consuming or otherwise being administered a medication.

    Administered Medication (either manually reported or reported by an insulin pump) are represented by the MedicationAdministration resource. Medications are generally insulin, but are not limited to insulin.

    Below are possible Insulin codes used for medicationCodeableConcept in MedicationAdministration resource.

    System Code Display Notes
    http://snomed.info/sct 25305005 Long-acting insulin (substance) Basal insulin
    http://snomed.info/sct 411531001 Short-acting insulin (substance) Bolus insulin
    http://snomed.info/sct C0356369 Mixed Insulins combination of insulins
    http://roche.com/fhir/rdc/cs insulinDose Insulin Dose
    http://snomed.info/sct 67866001 Insulin (substance) used for Insulin device metric

    Note : For edited use case, If there is any update on any entry, application shall send the updated resource. use shall see the updated details in history. in case of deleted use case the status shall be updated from 'completed' to 'entered-in-error'

    Sample bundle(BG, carbs, Insulin)

    {
        "id": "09d44dc8-c225-4c5c-bba9-031f67566324",
        "resourceType": "Bundle",
        "type": "message",
        "entry":  [
            {
                "resource": {
                    "id": "1",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/message-header"
                        ]
                    },
                    "resourceType": "MessageHeader",
                    "event": {
                        "system": "http://roche.com/fhir/rdc/message-type",
                        "code": "new-bundle",
                        "display": "New bundle generated"
                    },
                    "timestamp": "2019-02-22T11:28:57.962Z",
                    "source": {
                        "name": "UDTC",
                        "software": "UDTC",
                        "version": "5.1.0",
                        "endpoint": "https://uudev-internal.rochedc.accentureanalytics.com/fhirmsg/rdc/v1.0.0/$process-message"
                    },
                    "extension":  [
                        {
                            "url": "http://roche.com/fhir/rdc/StructureDefinition/gdpr-controller",
                            "valueString": "<GDPR controller>"
                        }
                    ]
                }
            },
            {
                "resource": {
                    "id": "2",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/phg-device"
                        ]
                    },
                    "resourceType": "Device",
                    "status": "active",
                    "type": {
                        "coding":  [
                            {
                                "system": "http://roche.com/fhir/rdc/cdf",
                                "code": "cdf.dev.im",
                                "display": "Manual interface"
                            }
                        ]
                    },
                    "manufacturer": "Roche",
                    "version": "3.0.2"
                }
            },
            {
                "resource": {
                    "id": "3",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/phd-devicecomponent"
                        ]
                    },
                    "resourceType": "DeviceComponent",
                    "identifier": {
                        "system": "http://roche.com/fhir/rdc/sid/device-identifier",
                        "value": "GluciChekApp/712/450274815"
                    },
                    "type": {
                        "coding":  [
                            {
                                "system": "http://roche.com/fhir/rdc/cs",
                                "code": "smartPhone",
                                "display": "Smart Phone"
                            }
                        ]
                    },
                    "source": {
                        "reference": "Device/2"
                    },
                    "measurementPrinciple": "manual",
                    "productionSpecification":  [
                        {
                            "specType": {
                                "coding":  [
                                    {
                                        "system": "http://hl7.org/fhir/specification-type",
                                        "code": "serial-number",
                                        "display": "Serial Number"
                                    }
                                ]
                            },
                            "productionSpec": "b89a5d95c258a66b"
                        },
                        {
                            "specType": {
                                "coding":  [
                                    {
                                        "system": "http://hl7.org/fhir/specification-type",
                                        "code": "unspecified",
                                        "display": "Unspecified Production Specification"
                                    }
                                ]
                            },
                            "productionSpec": "SM-G960F"
                        },
                        {
                            "specType": {
                                "coding":  [
                                    {
                                        "system": "http://hl7.org/fhir/specification-type",
                                        "code": "part-number",
                                        "display": "Part Number"
                                    }
                                ]
                            },
                            "productionSpec": "2000001"
                        }
                    ],
                    "lastSystemChange": "2020-01-09T11:51:22+01:00"
                }
            },
            {
                "resource": {
                    "id": "4",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/dm-device-metric"
                        ]
                    },
                    "resourceType": "DeviceMetric",
                    "identifier": {
                        "system": "http://roche.com/fhir/rdc/sid/devicemetric-identifier",
                        "value": "2339-0"
                    },
                    "type": {
                        "coding":  [
                            {
                                "system": "http://loinc.org",
                                "code": "2339-0",
                                "display": "Glucose [Mass/volume] in Blood"
                            }
                        ]
                    },
                    "unit": {
                        "coding":  [
                            {
                                "system": "http://unitsofmeasure.org",
                                "code": "mg/dL",
                                "display": "milligram per deciliter"
                            }
                        ]
                    },
                    "source": {
                        "reference": "Device/2"
                    },
                    "parent": {
                        "reference": "DeviceComponent/3"
                    },
                    "operationalStatus": "on",
                    "category": "measurement"
                }
            },
            {
                "resource": {
                    "id": "id-deviceMetric-smartPhone-insulin",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/dm-device-metric"
                        ]
                    },
                    "resourceType": "DeviceMetric",
                    "identifier": {
                        "system": "http://roche.com/fhir/rdc/sid/devicemetric-identifier",
                        "value": "67866001"
                    },
                    "type": {
                        "coding":  [
                            {
                                "system": "http://snomed.info/sct",
                                "code": "67866001",
                                "display": "Insulin (substance)"
                            }
                        ]
                    },
                    "unit": {
                        "coding":  [
                            {
                                "system": "http://unitsofmeasure.org",
                                "code": "[iU]",
                                "display": "international unit"
                            }
                        ]
                    },
                    "source": {
                        "reference": "Device/2"
                    },
                    "parent": {
                        "reference": "DeviceComponent/3"
                    },
                    "operationalStatus": "on",
                    "category": "measurement"
                }
            },
            {
                "resource": {
                    "resourceType": "Observation",
                    "id": "5",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/bg-observation"
                        ]
                    },
                    "extension":  [
                        {
                            "url": "http://roche.com/fhir/rdc/StructureDefinition/observation-event-timing",
                            "valueCodeableConcept": {
                                "coding":  [
                                    {
                                        "system": "http://hl7.org/fhir/v3/TimingEvent",
                                        "code": "AC",
                                        "display": "AC"
                                    }
                                ]
                            }
                        }
                    ],
                    "status": "final",
                    "category":  [
                        {
                            "coding":  [
                                {
                                    "system": "http://roche.com/fhir/rdc/cs",
                                    "code": "clinical-observation",
                                    "display": "Clinical Observation"
                                }
                            ]
                        }
                    ],
                    "code": {
                        "coding":  [
                            {
                                "system": "http://loinc.org",
                                "code": "41653-7",
                                "display": "Glucose [Mass/volume] in Capillary blood by Glucometer"
                            }
                        ]
                    },
                    "subject": {
                        "reference": "Patient/SandboxPat4"
                    },
                    "effectiveDateTime": "2020-01-09T11:49:58+02:00",
                    "performer":  [
                        {
                            "reference": "Patient/SandboxPat4"
                        }
                    ],
                    "valueQuantity": {
                        "value": 110,
                        "unit": "mg/dL",
                        "system": "http://unitsofmeasure.org",
                        "code": "mg/dL"
                    },
                    "device": {
                        "reference": "DeviceMetric/4"
                    }
                }
            },
            {
                "resource": {
                    "resourceType": "Observation",
                    "id": "id-observation-carb",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/observation-carbs"
                        ]
                    },
                    "status": "final",
                    "category":  [
                        {
                            "coding":  [
                                {
                                    "system": "http://roche.com/fhir/rdc/cs",
                                    "code": "carb-observation",
                                    "display": "Carbohydrate intake Observation"
                                }
                            ]
                        }
                    ],
                    "code": {
                        "coding":  [
                            {
                                "system": "http://loinc.org",
                                "code": "9059-7",
                                "display": "Carbohydrate intake Estimated"
                            }
                        ]
                    },
                    "subject": {
                        "reference": "Patient/SandboxPat4"
                    },
                    "effectiveDateTime": "2020-01-09T11:49:58+02:00",
                    "performer":  [
                        {
                            "reference": "Patient/SandboxPat4"
                        }
                    ],
                    "valueQuantity": {
                        "value": 10,
                        "unit": "g",
                        "system": "http://unitsofmeasure.org",
                        "code": "g"
                    },
                    "device": {
                        "reference": "Device/2"
                    }
                }
            },
            {
                "resource": {
                    "id": "ec450b7e-b832-42bc-baf0-c74ec1266e5e",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/medication-administration"
                        ]
                    },
                    "extension":  [
                        {
                            "url": "http://roche.com/fhir/rdc/StructureDefinition/parent-device-metric",
                            "valueReference": {
                                "reference": "DeviceMetric/id-deviceMetric-smartPhone-insulin"
                            }
                        }
                    ],
                    "resourceType": "MedicationAdministration",
                    "status": "completed",
                    "medicationCodeableConcept": {
                        "coding":  [
                            {
                                "system": "http://snomed.info/sct",
                                "code": "25305005",
                                "display": "Long-acting insulin (substance)"
                            }
                        ]
                    },
                    "subject": {
                        "reference": "Patient/SandboxPat4"
                    },
                    "effectiveDateTime": "2018-06-06T06:40:00+02:00",
                    "performer":  [
                        {
                            "actor": {
                                "reference": "Patient/SandboxPat4"
                            }
                        }
                    ],
                    "dosage": {
                        "dose": {
                            "value": 2,
                            "unit": "[iU]",
                            "system": "http://unitsofmeasure.org",
                            "code": "[iU]"
                        }
                    }
                }
            },
            {
                "resource": {
                    "id": "ec450b7e-b832-42bc-baf0-c74ec1266e5e",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/medication-administration"
                        ]
                    },
                    "extension":  [
                        {
                            "url": "http://roche.com/fhir/rdc/StructureDefinition/parent-device-metric",
                            "valueReference": {
                                "reference": "DeviceMetric/id-deviceMetric-smartPhone-insulin"
                            }
                        }
                    ],
                    "resourceType": "MedicationAdministration",
                    "status": "completed",
                    "medicationCodeableConcept": {
                        "coding":  [
                            {
                                "system": "http://ncimeta.nci.nih.gov",
                                "code": "C0356369",
                                "display": "Mixed Insulins"
                            }
                        ]
                    },
                    "subject": {
                        "reference": "Patient/htCh37p-wa9-610"
                    },
                    "effectiveDateTime": "2018-06-05T06:40:00+02:00",
                    "performer":  [
                        {
                            "actor": {
                                "reference": "Patient/SandboxPat4"
                            }
                        }
                    ],
                    "dosage": {
                        "dose": {
                            "value": 4.1,
                            "unit": "[iU]",
                            "system": "http://unitsofmeasure.org",
                            "code": "[iU]"
                        }
                    }
                }
            },
            {
                "resource": {
                    "id": "939f3c07-4f9d-4c83-9f0d-68ced229195b",
                    "meta": {
                        "profile":  [
                            "http://roche.com/fhir/rdc/StructureDefinition/medication-administration"
                        ]
                    },
                    "extension":  [
                        {
                            "url": "http://roche.com/fhir/rdc/StructureDefinition/parent-device-metric",
                            "valueReference": {
                                "reference": "DeviceMetric/id-deviceMetric-smartPhone-insulin"
                            }
                        }
                    ],
                    "resourceType": "MedicationAdministration",
                    "status": "completed",
                    "medicationCodeableConcept": {
                        "coding":  [
                            {
                                "system": "http://snomed.info/sct",
                                "code": "411531001",
                                "display": "Short-acting insulin (substance)"
                            }
                        ]
                    },
                    "subject": {
                        "reference": "Patient/SandboxPat4"
                    },
                    "effectiveDateTime": "2018-06-07T11:44:00+02:00",
                    "performer":  [
                        {
                            "actor": {
                                "reference": "Patient/SandboxPat4"
                            }
                        }
                    ],
                    "dosage": {
                        "dose": {
                            "value": 5.6,
                            "unit": "[iU]",
                            "system": "http://unitsofmeasure.org",
                            "code": "[iU]"
                        }
                    }
                }
            }
        ]
    }