This page is part of the Personal Health Device FHIR IG (v0.1.0: STU 1 Draft) based on FHIR R3. The current version which supercedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions

Phd Coincident Time Stamp Observation Profile

The Coincident Time Stamp Observation Profile is used to compare the timelines of the PHD with the timeline of the PHG. The primary elements are the Observation.effectiveDateTime which has the current time of the PHG and the Observation.valueDateTime or Observation.valueQuantity which has the current time of the PHD. The valueDateTime is used when the PHD uses either an Absolute or Base-Offset time clock and the valueQuantity is used when the PHD uses a relative time clock. The PHG reports its current time at the time it reads the current time of the PHD. For more details on the interpretation of the Coincident Time Stamp see the section Coincident Time Stamp.

A Phd Observtion will always reference a Coincident Time Stamp Observation if the measurement reported from the PHD contains a time stamp. It will not reference a Coincident Time Stamp Observation if the measurement contains no time stamp.

If a PHD has its time clock altered, a Date-Time-Adjustment attribute is sent to the PHG. The attribute can come in a live measurement or be part of the PM Segment information in perisitently stored data. When a Date-Time-Adjustment occurs, a new Coincident Time Stamp Observation is generated and all effected data will reference the new Coincident Time Stamp Observation.

The Structure Definition for the Phd Coincident Time Stamp Observation Profile is as follows:

NameFlagsCard.Type
profile1..
phdProfile1..1Fixed Value
statusFixed Value
coding1..
system1..Fixed Value
code1..
reference1..
effectiveDateTimedateTime
value[x]
dateTimeValuedateTime
value1..
unit
system1..Fixed Value
code1..Fixed Value
system1..Fixed Value
code1..Fixed Value
reference1..

Code

The code element is used to report the type of time clock used by the PHD. The PHG obtains the type of time clock and its current setting by reading the MDS attributes. There are four types of clocks as follows:

Attribute Type of clock Description FHIR mapping
Date-and-Time Absolute time Wall-clock time with offset to UTC Observation.code.coding.code = 67975
Base-Offset-Time Base offset time Wall-clock time with offset to some base time, often UTC Observation.code.coding.code = 68226
Relative-Time relative time a sequence of ticks with 1/8th millisecond resolution Observation.code.coding.code = 67983
HiRes-Relative-Time relative time a sequence of ticks with microsecond resolution Observation.code.coding.code = 68072

Subject

The subject element points to the PhdPatient resource using the logical id of the Patient resource, for example 'Patient/123546'

Populating the PHG Current Time

The PHG is required to have the capability to report local time and offset to UTC. The PHG records its current time in the Observation.effectiveDateTime element regardless of the type of time clock used by the PHD unless the PHD has superior time synchronization than the PHG see the section Coincident Time Stamp on this topic. In that case, the Observation.effective[x] element is not populated.

Populating the PHD Current Time

If the PHD uses an Absolute or Base-Offset time clock, the current time of the PHD is reported in an Observation.valueDateTime element. FHIR requires the presence of an offset to UTC so if the PHD uses an absolute time, the PHG adds its offset to the value. Since all PHDs currently use local transports, the PHD and PHG are logically in the same time zone and thus have the same offset to UTC.

If the PHD uses a relative time clock the current tick time is reported in an Observation.valueQuantity element scaled to microseconds.

If the PHD has a time fault, the Observation.value[x] element is absent and an Observation.dataAbsentReason.coding.code element is present with the code "unknown". A time fault is reported if the PHD itself indicates a time fault or the PHD uses a time stamp in its measurements but does not report its current time.

Attribute FHIR mapping
Date-and-Time.value Observation.valueDateTime
Base-Offset-Time.value Observation.valueDateTime
Relative-Time.value Observation.valueQuantity.value = Relative-Time.value * 125
HiRes-Relative-Time.value Observation.valueQuantity.value = HiRes-Relative-Time.value

Device

The Observation.device element is a reference to the DeviceComponent representing the PHD that took the measurement. Note that such a reference is only available in post 3.0.1 versions of the FHIR specification. In versions 3.0.1 and earlier, the Observation can only point to the DeviceComponent via a DeviceMetric resource. In these versions of the Continua mapping, a dummy DeviceMetric object containing no useful information except the pointer is used to satisfy the specification. In that case, the Observation.device points to the DeviceMetric which, in turn, points to the DeviceComponent representing the PHD.

Additional information

There is no additional information reported in component elements in this profile.

Phd Coincident Time Stamp Observation JSON Example

The following JSON example is the Coincident Time Stamp Observation associated with a Blood Pressure measurement.

{
    "resourceType":"Observation",
    "meta":{
        "profile": [
            "http: //pchalliance.org/phdfhir/StructureDefinition/PhdCoincidentTimeStampObservation"
        ]
    },
    "status":"final",
    "code":{
        "coding": [
            {
                "system":"urn:iso:std:iso:11073:10101",
                "code":"67975",
                "display":"MDC_ATTR_TIME_ABS"
            }
        ]
    },
    "subject":{
        "reference":"Patient/PatientId-sisansarahId"
    },
    "effectiveDateTime":"2017-12-12T09:13:39-05:00",
    // If the effectiveDateTime is absent, it means that the PHD has superior
    // time synchronization than the PHG. All reported times stamps are then taken directly from
    // the PHD and reported in the metric Observations unmodified. To date there are no PHDs that
    // have external synchronization

    "valueDateTime":"2017-12-12T09:13:39-05:00",
    // If the value[x] element is absent, it means that the PHD has experienced
    // a time fault or is non-compliant by reporting a time stamp but no current time. All reported 
    // times stamps are then taken directly from the PHD and reported in the metric Observations 
    // unmodified. However, the time stamps are not reliable.

    // A consumer of this resource can restore the original time reported by the PHD
    // by taking  (effectiveDateTime - valueDateTime) and subtracting it from the time stamp reported in
    // times stamps are then taken directly from the PHD and reported in the metric Observations 
    // the metric Observation. If there is a valueQuantity element for the PHD time, the PHD uses 
    // a relative time stamp. One can use a similar approach to find the relative time sent by the PHD
    // but the value is already reported in a component element of the metric Observation
    
    "device":{
        "reference":"DeviceComponent/SysId-01040302f0000000"
    }
}