EMWR - expanded FHIR

Sample Scenario

Data Point Value unit Comment
SessionId CGMSesssion AAAA
InstanceId EEMMWW mg/dL
MessageSource 2 Possible values are 0 = None, 1 = Application, 2 = CGM
EventName M_CALIBRATION_REQUIRED String Possible values are M_CALIBRATION_REQUIRED; M_CGM_BATTERY_LOW; M_CGM_SENSOR_MALFUNCTION_WITH_SESSION_STOP; W_CGM_SENSOR_MALFUNCTION_WITHOUT_SESSION_STOP; R_CGM_SESSION_END; M_END_OF_OPERATION; M_CGM_CONNECTION_LOST; M_SENSOR_TEMP_LOW; M_SENSOR_TEMP_HIGH; M_RC_COMM_FAILED; W_CGM_CALIBRATION_OUT_OF_RANGE; M_HYPO_MESSAGE; W_HYPER_MESSAGE; E_DATA_INTEGRITY_ERROR; M_RC_COMM_FAILED; W_HYPO_PREDICTION_MESSAGE; W_LENGTH_OF_STAY_MESSAGE; M_CALIBRATION_CRITICAL
TimeOffsetOccurance 200 min
State Snoozed String Possible values are NotProcessed, Processed, Snoozed, Dismissed
SnoozeWakeupTime 2020-08-05T15:10:16Z UTC
TimeWhenProcessed 2020-08-05T15:15:16Z UTC
Type Warning String Possible values are Error; Maintenance; Warning; Reminder; Message
Time Stamp 2020-08-04T15:00:16Z UTC

EWM Observation resource for Calibration BG measurement

A reduced format of this resource will be sent from Confidence. See the section EMWR - reduced FHIR. The facade needs to further expand that resource by adding the other relavent fields as per our implementation guide. Details are provided in the comments below in green.

Note: Please see the section Detailed modelling for possible values for how the resource needs to be built for different values of EMWR Type, EMWR Event Name and Message Source

Below is an example JSON for the EWM observation resource in expanded FHIR format

{
	"resourceType": "Observation",
    "id": "qe6f0b94-1519-4f95-b50c-758fa3d4ac55", //To be managed by FHIRSTACK 
	"meta": {
		"profile": [ //To be updated by facade - FHIR profile for Calibration observation for FHIR internal 
			"http://roche.com/fhir/rdc/StructureDefinition/observation-EWM"
		]
	},
	"identifier": [
		{
			"system": "http://roche.com/fhir/rdc/sid/observation/confidence",
			"value": "EEMMWW"  //retain same identifier received from Confidence reduced FHIR
		}
	],
	"status": "final", //retain same status received from confidence reduced FHIR
	"category": [ //To be added by facade - category for Calibration observation will always be "Error, Warning, Maintenance, Status"
		{
			"coding": [
				{
					"system": "http://roche.com/fhir/rdc/cs",
					"code": "EWM",
					"display": "Error, Warning, Maintenance, Status"
				}
			]
		}
	],
	"code": {
		"coding": [  //To be added by facade - system, code and display when code.text "Warning" is received in the reduced FHIR.
			{
				"system": "http://roche.com/fhir/rdc/cs",
				"code": "WARNING",
				"display": "Warning"
			}
		],
		"text": "Warning" //To be retained as is from the reduced format so that on restore it can be sent back
	},
	"subject": {
		"reference": "Device/0053cfd5-a427-4691-8690-b4d956c6e698" //To be added by facade - Device link
	},
	"effectiveDateTime": "2020-08-04T15:00:16Z", //Retain same value from Confidence reduced FHIR
	"performer": [
		{
			"reference": "Patient/2P0tI8p-SF9-6850" //To be added by facade - patient link
		}
	],
	"valueCodeableConcept": { //To be added by facade - system, code and display when code.text "M_CALIBRATION_REQUIRED" is received in the reduced FHIR.
		"coding": [
			{
				"system": "http://roche.com/fhir/rdc/cs",
				"code": "WARNING_49",
				"display": "Calibration Required"
			}
		],
		"text": "M_CALIBRATION_REQUIRED"  //To be retained as is from the reduced format so that on restore it can be sent back
	},
	"related": [
		{
			"type": "derived-from",
			"target": {
				"reference": "Observation/0053cfd5-a427-4691-8690-b4d956c6e690", //To be added by facade based on the SessionID (target.display) in the reduced FHIR.  Link to the relevant session observation
				"display": "AAAA" //To be retained as is from the reduced format so that on restore it can be sent back
			}
		}
	],
	"device": {
		"reference": "DeviceMetric/id-deviceMetric-CGM", //To be added by facade based on the device.display in the reduced FHIR. link to relavent device metric.
		"display": "2" //To be retained as is from the reduced format so that on restore it can be sent back
	},
	"extension": [
		{
			"url": "http://roche.com/fhir/rdc/StructureDefinition/time-offset",
			"valueQuantity": {
				"value": 200, //retain value from reduced FHIR
				"unit": "min", //retain value from reduced FHIR
				"system": "http://unitsofmeasure.org", //To be added by facade - the system and code 
				"code": "min"
			}
		},
		{
			"url": "http://roche.com/fhir/rdc/StructureDefinition/ewm-state",
			"valueString": "Snoozed" //retain value from reduced FHIR
		},
		{
			"url": "http://roche.com/fhir/rdc/StructureDefinition/snooze-wakeup-time",
			"valueDateTime": "2020-08-05T15:10:16Z" //retain value from reduced FHIR
		},
		{
			"url": "http://roche.com/fhir/rdc/StructureDefinition/time-when-processed",
			"valueDateTime": "2020-08-05T15:15:16Z" //retain value from reduced FHIR
		},
		{
			"url": "http://roche.com/fhir/rdc/StructureDefinition/patient-timezone",
			"valueString": "+02:00" //retain value from reduced FHIR
		},
		{
            "url": "http://roche.com/fhir/rdc/StructureDefinition/provenance-channel",
            "valueString": "<channel-name>" //To be added by facade - fill channel data
        },
        {
            "url": "http://roche.com/fhir/rdc/StructureDefinition/provenance-source",
            "valueString": "<source-name>" //To be added by facade - fill source data
        }
	]
}