CGM Sample
Example :
{ "resourceType": "Observation", // Resource name value in FHIR for this profile "meta": { // used for validation of the profile "profile": [ "http://roche.com/fhir/iop/StructureDefinition/CGM_Observation" ] }, "status": "final", "code": { // hardcoded structure value in FHIR for this profile "coding": [ { "system": "http://snomed.info/sct", "code": "700585005", "display": "Invasive interstitial-fluid glucose monitoring system (physical object)" } ] }, "subject": { "reference": "Patient/34605fdc-74aa-4587-a5f0-92e6c5f64527" }, "effectivePeriod": { // CGM Data flow period (start and end time) "start": "2020-10-14T02:01:00", "end": "2020-10-14T02:06:00" }, "valueSampledData": { "origin": { "value": 0, "unit": "mg/dL", "system": "http://unitsofmeasure.org/", "code": "mg/dL" }, "interval": "60000", // Time interval of the data "intervalUnit": "ms", // Time interval unit "dimensions": "1", // Hardcorded value in FHIR "data": "100 99 89 89", // CGM data values "extension": [ { "url": "http://roche.com/fhir/iop/StructureDefinition/CGMFlags", "valueString": "HI; X; X; LO", } ] }, "component": [ { "code": { "coding": [ { "system": "http://roche.com/fhir/rdc/cs", "code": "CGM-rate-of-change", "display": "CGM rate of change" } ] }, "valueSampledData": { "origin": { "value": 0, "unit": "mg/dL/min", "system": "http://roche.com/fhir/rdc/cs", "code": "mg/dL/min" }, "interval": "60000", // Time interval of the data "intervalUnit": "ms", // Time interval unit "dimensions": "1", "data": "1.0 1.0 1.0 1.1" } } ], "extension": [ { "url": "http://roche.com/fhir/iop/StructureDefinition/CalibrationStatus", "valueString": "calibrated" } ], }, "device": { "reference": "Device/6ae8bff3-910a-419d-96f6-de0e8fd1d64d" // Reference for the CGM Device info } }
CGM Calibration status : The CGM value in the observation resource will be considered when extension: calibration-status = calibrated [Refer Example above]
if the extension: calibration-status = uncalibrated then it will be not considered as a valid entry, below is the calibration status representation for the same.
{ "url": "http://roche.com/fhir/rdc/StructureDefinition/calibration-status", "valueString": "uncalibrated" }
CGM Flags : The CGM Flags are values that denotes certain conditions like if the value is High or low for the CGM values measured, If the CGM values have any flags it will be marked in the CGM Flags extension, if there are no flags for a particular value it is denoted with X as shown in below sample.
so in the below sample below are the flag association:
100 -> HI is the flag associated
99 -> X is represented stating no flag association
89 -> LO & CALIBRATION REQUIRED (mutliple flags are associated to single CGM value)
89 -> LO is the flag associated
"valueSampledData": { "origin": { "value": 0, "unit": "mg/dL", "system": "http://unitsofmeasure.org/", "code": "mg/dL" }, "interval": "60000", // Time interval of the data "intervalUnits": "ms" // Time interval unit "dimensions": "1", // Hardcorded value in FHIR "data": "100 99 89 89", // CGM data values "extension": [ { "url": "http://roche.com/fhir/rdc/StructureDefinition/flags", "valueString": "HI; X; LO CALIBRATION REQUIRED; LO", } ] }
Notes :
- CGM Device resource needs to be send first
- once we have the device resource in place, CGM Data resource can be shared as it has a reference to the device (CGM) resource.