Laboratory

ORU R01: Send test results and measurements to PKB

Overview

This message can be used to send unsolicited laboratory results and measurements to PKB.

Laboratory results

Laboratory results will appear in the "Tests" tab in the PKB web interface. A single laboratory report (a.k.a. order) can contain multiple profiles (a.k.a. panels), each of which is reported in its own OBR group.

Measurements

The ORU R01 can also be used to send measurements into PKB, such that they appear in the "Measurements" tab in the PKB web interface.

Please speak to us if you would like to do this, as you'll need to send pre-agreed SNOMED code values in OBX-3.1.

Any OBX-3.3 that specifies SNOMED CT (see table for exact values we match on) will be treated as a measurement, not a lab result, providing that the ID in OBX-3.1 matches one of the predefined measurement IDs we can accept.

Content patterns

A "content pattern" indicates how PKB will interpret the contents of your message. This provides additional guidance over and above the syntactic requirements of individual segments.

PKB supports two different content patterns for OBR groups. When a (non-radiology) report is received, we will inspect each OBR group to determine which content pattern has been provided.

Single textual laboratory report

PKB uses the following criteria to determine if the OBR group contains a single textual laboratory report:

    • There are 1 or more OBX segments, which together contain at least 2 lines of text

    • Each OBX segment has a textual data type (TX, FT, ST)

    • All the OBX segments have matching test IDs (OBX-3)

The OBX segments are treated as lines within the report, and do not maintain their own identity. The contents of the OBR group will be kept together, and displayed as originally provided.

NTE segments will be treated as lines of the report, just like OBX segments; their contents will appear in the same location as provided.

Note: when sending a single textual laboratory report, some metadata fields will only be taken from the first OBX segment. Importantly, if you wish to apply a patient delay this must be provided in the first OBX segment.

Collection of individual test results and measurements

If an OBR group does not contain a single textual laboratory report, then it is assumed to contain a collection of individual test results and measurements, each of which is provided in its own OBX segment (with the exception of multi-valued measurements, such as blood pressure) and which must be identified by a test code in OBX-3. Test results and measurements are considered to be meaningful even outside the context of the report in which they were provided.

The comments for each test result will be the union of the comments (NTE segments) provided for the OBR group and the comments (NTE segments) provided for the test result specifically.

Comments are not saved for measurements.

PKB processes content of this form in an OBX-centric manner. That is, PKB extracts the test results and measurements from the report and does not guarantee to display them alongside the other test results and measurements with which they were originally provided.

Sometimes, the same test result might be reported as part of more than one profile. This is valid, providing that each OBX segment appears no more than once in any given OBR group. However, since PKB does not include the profile as part of the result identity then all except the first instance of the OBX segment will be silently ignored. It is not valid to provide different results for the same test ID in different profiles within a given laboratory order.

It is valid to provide more than one measurement for the same measurement type (as identified by OBX-3) within any given OBR group. All such measurements will be processed.

Relevant entities

Please click through to the Data Model to explore the presentation of these entities in the web interface.

Update behaviour

[[Lab Report]]

Matched on: [[Lab Report.External ID]] as derived from ORC-3.1 or OBR-3.1

When matched: Associated [[Lab Result]] entries are individually matched. Note: if a [[Lab Result]] that was previously provided with the [[Lab Report]] is omitted from this [[Lab Report]], the [[Lab Result]] will be left unmodified. It will not be deleted.

When not matched: New [[Lab Report]] created.

[[Lab Result]]

Matched on: Results are matched on the test ID (OBX-3, or OBR-4 for textual reports).

When matched: The existing [[Lab Result]] is replaced in its entirety with the values provided in this message. A partial update is not performed.

When not matched: New [[Lab Result]] created.

[[Measurement]]

Matched on: There is no unique identifier on a [[Measurement]] submitted via HL7, so they cannot be updated.

When matched: N/A

When not matched: New [[Measurement]] created.

Definition

ORU R01 Laboratory

Examples

An example of a lab result message.

MSH|^~\&|Corepoint|TDL|HL7API|PKB|201303080949||ORU^R01|ABC0000000001|P|2.4

PID|||9999999999^^^NHS^NH||Smith^John^Joe^^Mr||19700101|M|||Flat name^1, The Road^London^London^SW1A 1AA^GBR||01234567890^PRN~07123456789^PRS|^NET^^john.smith@company.com~01234098765^WPN||||||||||||||||N|

PV1|1|||||||||SPEC_01|

OBR|1|12F000005|12F000005|LFT^LIVER PROFILE^WinPath||201303080948|201303080000||||||||SST|E85109||||||201303080949||CHE|F

OBX|1|NM|BILI^Bilirubin^Winpath||5|umol/L|0-20||||F

OBX|2|NM|ALP^Alkaline Phosphatase^Winpath||120|IU/L|40-130||||F|||201303080000

OBX|3|NM|ALT^Alanine Transaminase^Winpath||20|IU/L|10-50||||F||patientDelay:3days|201303080000

An example of a measurement message.

MSH|^~\&|Corepoint|TDL|HL7API|PKB|201303080949||ORU^R01|ABC0000000001|P|2.4

PID|||9999999999^^^NHS^NH||Smith^John^Joe^^Mr||19700101|M|||Flat name^1, The Road^London^London^SW1A 1AA^GBR||01234567890^PRN~07123456789^PRS|^NET^^john.smith@company.com~01234098765^WPN||||||||||||||||N|

OBR|1||||||||||||||||||||||||F

OBX|1|NM|107647005^^sct||75|^kg^|||||F|||20200625103943+0100

Response

PKB will respond with a standard HL7 acknowledgement.

Supported single measurements

Examples

An example of a single measurement message.

MSH|^~\&|Corepoint|TDL|HL7API|PKB|201303080949||ORU^R01|ABC0000000001|P|2.4

PID|||9999999999^^^NHS^NH||Smith^John^Joe^^Mr||19700101|M|||Flat name^1, The Road^London^London^SW1A 1AA^GBR||01234567890^PRN~07123456789^PRS|^NET^^john.smith@company.com~01234098765^WPN||||||||||||||||N|

OBR||||||||||||||||^Ward^Olivia^Elsie^^Ms|||||||||F

OBX||NM|162986007^^sct||7|^bpm|||||F|||20200401140103+0100

Supported multi measurements

Examples

An example of a multi measurement message.

MSH|^~\&|Corepoint|TDL|HL7API|PKB|201303080949||ORU^R01|ABC0000000001|P|2.4

PID|||9999999999^^^NHS^NH||Smith^John^Joe^^Mr||19700101|M|||Flat name^1, The Road^London^London^SW1A 1AA^GBR||01234567890^PRN~07123456789^PRS|^NET^^john.smith@company.com~01234098765^WPN||||||||||||||||N|

OBR||||||||||||||||^Ward^Olivia^Elsie^^Ms|||||||||F

OBX||NM|75367002^^sct|||-|||||F|||20191106091410+0000

OBX||NM|163030003^^sct||190|^mmHg (systolic)|||||F|||20191106091410+0000

OBX||NM|163031004^^sct||59|^mmHg (diastolic)|||||F|||20191106091410+0000