Personal Health Device Implementation Guide
1.0.0 - STU 1

This page is part of the Personal Health Device FHIR IG (v1.0.0: STU 1) based on FHIR R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Bundled upload of Patient, Device, and Observation resources

This example is a transaction bundle where the Patient and Device resources are using a conditional create transaction. In this manner the PHG specifies a temporary id and uses that temporary id in the bundle where it needs to without waiting for a server response. The PHG also needs to specify a sufficiently selective criterion identifying those resources that only one or none should be found on the server. When a server response is obtained, the actual logical id can be used in the Observations. Subsequent bundles can be sent without the Patient and Device resources since they have already been uploaded.

{
  "resourceType": "Bundle",
  "id": "1568997631814",
  "type": "transaction",
  "entry": [
    {
      "fullUrl": "urn:oid:1.2.3.0",
      "resource": {
        "resourceType": "Patient",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/uv/phd/StructureDefinition/PhdPatient"
          ]
        },
        "identifier": [
          {
            "type": {
              "coding": [
                {
                  "system": "http://terminology.hl7.org/CodeSystem/v2-0203",
                  "code": "MR"
                }
              ],
              "text": "Medical record number"
            },
            "system": "urn:oid:1.2.3.4.5.6.6.8.10",
            "value": "sisansarahId"
          }
        ],
        "name": [
          {
            "family": "Gyannea",
            "given": [
              "Sisansarah"
            ]
          }
        ]
      },
      "request": {
        "method": "POST",
        "url": "Patient",
        "ifNoneExist": "identifier=urn:oid:1.2.3.4.5.6.6.8.10|sisansarahId"
      }
    },
    {
      "fullUrl": "urn:oid:1.2.3.1",
      "resource": {
        "resourceType": "Device",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/uv/phd/StructureDefinition/PhgDevice"
          ]
        },
        "identifier": [
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaDeviceIdentifiers",
                  "code": "SYSID",
                  "display": "IEEE 11073 System Identifier"
                }
              ]
            },
            "system": "urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680",
            "value": "4C-4E-49-12-34-56-FF-FF"
          }
        ],
        "type": {
          "coding": [
            {
              "system": "urn:iso:std:iso:11073:10101",
              "code": "531981",
              "display": "MDC_MOC_VMS_MDS_AHD"
            }
          ],
          "text": "MDC_MOC_VMS_MDS_AHD: Continua compliant Gateway"
        },
        "version": [
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "532352"
                }
              ],
              "text": "MDC_REG_CERT_DATA_CONTINUA_VERSION: Continua version"
            },
            "value": "6.0"
          }
        ],
        "property": [
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "532353"
                }
              ],
              "text": "MDC_REG_CERT_DATA_CONTINUA_CERT_DEV_LIST: Continua certified device list"
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaPHD",
                    "code": "4"
                  }
                ]
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "532355"
                }
              ],
              "text": "MDC_REG_CERT_DATA_CONTINUA_AHD_CERT_LIST: Continua certified Health&Fitness interfaces list"
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaHFS",
                    "code": "0"
                  }
                ]
              },
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaHFS",
                    "code": "3"
                  }
                ]
              },
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaHFS",
                    "code": "7"
                  }
                ]
              },
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaHFS",
                    "code": "2"
                  }
                ]
              },
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaHFS",
                    "code": "6"
                  }
                ]
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7",
                  "code": "532354.0",
                  "display": "regulation-status"
                }
              ]
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/v2-0136",
                    "code": "Y"
                  }
                ],
                "text": "Device is Unregulated"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68220"
                }
              ],
              "text": "MDC_TIME_SYNC_PROTOCOL: Time synchronization protocol"
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "urn:iso:std:iso:11073:10101",
                    "code": "532226"
                  }
                ],
                "text": "MDC_TIME_SYNC_NTPV4: NTPV4 time synchronization"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68221"
                }
              ],
              "text": "MDC_TIME_SYNC_ACCURACY: unknown code 68221"
            },
            "valueQuantity": [
              {
                "value": 120000000,
                "system": "http://unitsofmeasure.org",
                "code": "us"
              }
            ]
          }
        ]
      },
      "request": {
        "method": "POST",
        "url": "Device",
        "ifNoneExist": "identifier=urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680|4C-4E-49-12-34-56-FF-FF"
      }
    },
    {
      "fullUrl": "urn:oid:1.2.3.2",
      "resource": {
        "resourceType": "Device",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/uv/phd/StructureDefinition/PhdDevice"
          ]
        },
        "identifier": [
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaDeviceIdentifiers",
                  "code": "SYSID",
                  "display": "System Identifier"
                }
              ]
            },
            "system": "urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680",
            "value": "00-1C-05-04-00-00-78-25"
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaDeviceIdentifiers",
                  "code": "BTMAC",
                  "display": "Bluetooth Address"
                }
              ]
            },
            "system": "http://hl7.org/fhir/sid/eui-48/bluetooth",
            "value": "00-1C-05-00-78-25"
          }
        ],
        "manufacturer": "Nonin Medical, Inc.",
        "serialNumber": "0400007825",
        "deviceName": [
          {
            "name": "Nonin_Medical_Inc._323552",
            "type": "user-friendly-name"
          }
        ],
        "modelNumber": "Model 3150",
        "type": {
          "coding": [
            {
              "system": "urn:iso:std:iso:11073:10101",
              "code": "65573",
              "display": "MDC_MOC_VMS_MDS_SIMP"
            }
          ],
          "text": "MDC_MOC_VMS_MDS_SIMP: Personal Health Device"
        },
        "specialization": [
          {
            "systemType": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "528388"
                }
              ],
              "text": "MDC_DEV_SPEC_PROFILE_PULS_OXIM: Pulse Oximeter"
            },
            "version": "1"
          }
        ],
        "version": [
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "531976"
                }
              ],
              "text": "MDC_ID_PROD_SPEC_FW: Firmware revision"
            },
            "value": "0.9C"
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "532352"
                }
              ],
              "text": "MDC_REG_CERT_DATA_CONTINUA_VERSION: Continua version"
            },
            "value": "1.0"
          }
        ],
        "property": [
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "532353"
                }
              ],
              "text": "MDC_REG_CERT_DATA_CONTINUA_CERT_DEV_LIST: Continua certified device list"
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ContinuaPHD",
                    "code": "4"
                  }
                ]
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7",
                  "code": "532354.0",
                  "display": "regulation-status"
                }
              ]
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/v2-0136",
                    "code": "N"
                  }
                ],
                "text": "Device is Regulated"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68220"
                }
              ],
              "text": "MDC_TIME_SYNC_PROTOCOL: Time synchronization protocol"
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "urn:iso:std:iso:11073:10101",
                    "code": "532224"
                  }
                ],
                "text": "MDC_TIME_SYNC_NONE: No time synchronization"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7",
                  "code": "68219.0",
                  "display": "mds-time-capab-real-time-clock"
                }
              ]
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/v2-0136",
                    "code": "Y"
                  }
                ],
                "text": "real time clock supported"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7",
                  "code": "68219.1",
                  "display": "mds-time-capab-set-clock"
                }
              ]
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/v2-0136",
                    "code": "Y"
                  }
                ],
                "text": "setting the time supported"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7",
                  "code": "68219.2",
                  "display": "mds-time-capab-relative-time"
                }
              ]
            },
            "valueCode": [
              {
                "coding": [
                  {
                    "system": "http://terminology.hl7.org/CodeSystem/v2-0136",
                    "code": "Y"
                  }
                ],
                "text": "relative time supported"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68222"
                }
              ],
              "text": "MDC_TIME_RES_ABS: Resolution of absolute time clock"
            },
            "valueQuantity": [
              {
                "value": 1000000,
                "system": "http://unitsofmeasure.org",
                "code": "us"
              }
            ]
          },
          {
            "type": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68223"
                }
              ],
              "text": "MDC_TIME_RES_REL: Resolution of relative time clock"
            },
            "valueQuantity": [
              {
                "value": 10000,
                "system": "http://unitsofmeasure.org",
                "code": "us"
              }
            ]
          }
        ]
      },
      "request": {
        "method": "POST",
        "url": "Device",
        "ifNoneExist": "identifier=urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680|00-1C-05-04-00-00-78-25"
      }
    },
    {
      "fullUrl": "urn:oid:3.1568997631834",
      "resource": {
        "resourceType": "Observation",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/uv/phd/StructureDefinition/PhdCoincidentTimeStampObservation"
          ]
        },
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/observation-gatewayDevice",
            "valueReference": {
              "reference": "urn:oid:1.2.3.1"
            }
          }
        ],
        "status": "final",
        "code": {
          "coding": [
            {
              "system": "urn:iso:std:iso:11073:10101",
              "code": "67975"
            }
          ],
          "text": "MDC_ATTR_TIME_ABS: Uses Absolute time clock"
        },
        "subject": {
          "reference": "urn:oid:1.2.3.0"
        },
        "effectiveDateTime": "2019-09-20T12:40:07.936-04:00",
        "valueDateTime": "2019-09-20T12:40:09.000-04:00",
        "device": {
          "reference": "urn:oid:1.2.3.2"
        }
      },
      "request": {
        "method": "POST",
        "url": "Observation"
      }
    },
    {
      "fullUrl": "urn:oid:1.0.0.1",
      "resource": {
        "resourceType": "Observation",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/uv/phd/StructureDefinition/PhdNumericObservation"
          ]
        },
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/observation-gatewayDevice",
            "valueReference": {
              "reference": "urn:oid:1.2.3.1"
            }
          }
        ],
        "status": "final",
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                "code": "vital-signs",
                "display": "Vital Signs"
              }
            ]
          }
        ],
        "code": {
          "coding": [
            {
              "system": "urn:iso:std:iso:11073:10101",
              "code": "150456"
            },
            {
              "system": "http://loinc.org",
              "code": "2708-6"
            }
          ],
          "text": "MDC_PULS_OXIM_SAT_O2: Blood 0₂"
        },
        "subject": {
          "reference": "urn:oid:1.2.3.0"
        },
        "effectiveDateTime": "2019-09-20T12:40:16.936-04:00",
        "valueQuantity": {
          "value": 98,
          "system": "http://unitsofmeasure.org",
          "code": "%"
        },
        "device": {
          "reference": "urn:oid:1.2.3.2"
        },
        "derivedFrom": [
          {
            "reference": "urn:oid:3.1568997631834"
          }
        ],
        "component": [
          {
            "code": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68193"
                }
              ],
              "text": "MDC_ATTR_SUPPLEMENTAL_TYPES: Supplemental information"
            },
            "valueCodeableConcept": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "150588"
                }
              ],
              "text": "MDC_MODALITY_SPOT: Stable mean"
            }
          }
        ]
      },
      "request": {
        "method": "POST",
        "url": "Observation"
      }
    },
    {
      "fullUrl": "urn:oid:1.0.0.2",
      "resource": {
        "resourceType": "Observation",
        "meta": {
          "profile": [
            "http://hl7.org/fhir/uv/phd/StructureDefinition/PhdNumericObservation"
          ]
        },
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/observation-gatewayDevice",
            "valueReference": {
              "reference": "urn:oid:1.2.3.1"
            }
          }
        ],
        "status": "final",
        "category": [
          {
            "coding": [
              {
                "system": "http://terminology.hl7.org/CodeSystem/observation-category",
                "code": "vital-signs",
                "display": "Vital Signs"
              }
            ]
          }
        ],
        "code": {
          "coding": [
            {
              "system": "urn:iso:std:iso:11073:10101",
              "code": "149530"
            },
            {
              "system": "http://loinc.org",
              "code": "8867-4"
            }
          ],
          "text": "MDC_PULS_OXIM_PULS_RATE: Pulse rate"
        },
        "subject": {
          "reference": "urn:oid:1.2.3.0"
        },
        "effectiveDateTime": "2019-09-20T12:40:16.936-04:00",
        "valueQuantity": {
          "value": 47,
          "system": "http://unitsofmeasure.org",
          "code": "{beat}/min"
        },
        "device": {
          "reference": "urn:oid:1.2.3.2"
        },
        "derivedFrom": [
          {
            "reference": "urn:oid:3.1568997631834"
          }
        ],
        "component": [
          {
            "code": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "68193"
                }
              ],
              "text": "MDC_ATTR_SUPPLEMENTAL_TYPES: Supplemental information"
            },
            "valueCodeableConcept": {
              "coding": [
                {
                  "system": "urn:iso:std:iso:11073:10101",
                  "code": "150588"
                }
              ],
              "text": "MDC_MODALITY_SPOT: Stable mean"
            }
          }
        ]
      },
      "request": {
        "method": "POST",
        "url": "Observation"
      }
    }
  ]
}