Patient-Generated Health Data (PGHD) Implementation Guide
0.5.0 - release

Publication Build: This will be filled in by the publication tooling

Specification(English)

FHIR Specification

Elements of Profile

Mapping of Data Acquisition Time

The date and time of data acquisition are mapped to Observation.effectiveDatetime for instantaneous values, and to Observation.effectivePeriod for other cases.

  • HealthKit
    • Map to effectiveDatetime if HKSample.startDate and HKSample.endDate are the same value.
    • Map to effectivePeriod if HKSample.startDate and HKSample.endDate are different values.
  • Health Connect
    • Map to effectiveDatetime if the Record has a value in the time attribute.
    • Map to effectivePeriod if the Record has values in both startDate and endDate attributes.
Mapping of Data Values

Data values can be divided into three types

  • Quantitative data
    • Data expressed in quantity and units, such as weight, height, and body temperature
  • Qualitative data
    • Data expressed in categories, such as types and degrees of symptoms
  • Sampling data
    • Data measured by sampling at a certain cycle, such as electrocardiograms

Depending on the type of data, select the appropriate element from value[x] and map it. The table below provides a guide for mapping:

Data Type Mapped Element
Quantitative data Observation.valueQuantity
Qualitative data Observation.valueCodeableConcept
Sampling data Observation.valueSampledData

Required Elements in PGHD

Elements that are crucial and indispensable for PGHD information are defined as required elements. These include:

  • Elements indicating the subject of PGHD data, such as Observation.subject.
  • The date and time when PGHD data was measured, such as Observation.effective[x].
  • The measurement item of PGHD data, such as Observation.code.

Must Support Elements in PGHD

The elements that we aim to obtain as much as possible for PGHD information are defined as Must Support. These include:

  • Required elements: Elements with a minimum cardinality of 1 or more need to be supported, hence they are considered Must Support.
  • Measurement results of PGHD data, such as Observation.value[x].
    However, results of data like low heart rate notification that only require the observation date and time and do not need result values, are not considered required.
  • Device information, such as Observation.device.
  • Information category, such as Observation.category.
  • Elements that are closely related between resources, such as Observation.hasMember.

Standardization of PGHD Codes

In order to uniformly handle data from HealthKit, Health Connect, Open mHealth, and Finnish PHR, standardization is performed to assign the same code (referred to as Observation PGHD Codes) to data representing the same concept. The codes that are subject to this standardization include:

  • Observation.code, which represents the type of data.
  • Observation.valueCodeableConcept, which represents the type of qualitative data.

If data corresponding to the same concept exists in both HealthKit and Health Connect, the code is defined to match the code and name of Apple HealthKit, which has a wider data coverage range.

Implementation of LOINC Codes in PGHD

To enhance the searchability of PGHD, the implementation guide is defined to incorporate the international standard code LOINC into Observation.code. The table below provides an example of how LOINC codes are implemented:

Concept Blood Sugar Level Step Count
Data Type Name (HealthKit/HealthConnect) bloodGlucose /BloodGlucoseRecord stepCount /StepsRecord
Observation PGHD Codes bloodGlucose stepCount
LOINC Code 15074-8 (Glucose [Moles/volume] in Blood) N/A (Not set)

Standardization of Units in PGHD

The units of quantity data in PGHD are standardized with reference to standard conventions:

  • Units of examination and measurement are standardized according to LOINC.
  • Units of nutrition are standardized according to the Japanese Food Standard Ingredient Table.