Guidance for populating and consuming the observation to represent test result data in GP Connect

Introduction

The headings below list the elements of the Observation resource and describe how to populate and consume them.

Test result - Observation resource elements

id

Data type: Id Optionality: Mandatory Cardinality: 1..1

The logical identifier of the Observation resource.

meta.profile

Data type: uri Optionality: Mandatory Cardinality: 1..1

The Observation profile URL.

Fixed value https://fhir.nhs.uk/STU3/StructureDefinition/CareConnect-GPC-Observation-1

identifier

Data type: Identifier Optionality: Mandatory Cardinality: 1..*

This MUST be populated with a globally unique and persistent identifier (that is, it doesn’t change between requests and therefore stored with the source data). This MUST be scoped by a provider specific namespace for the identifier.

Where consuming systems are integrating data from this resource to their local system, they MUST also persist this identifier at the same time.

status

Data type: Code Optionality: Mandatory Cardinality: 1..1

The status of the test result.

In GP systems, these are most likely to be ‘final’. However, ‘preliminary’ reports are possible as, for example, some work can be sub-contracted to other labs. If the system is not able to determine the status of a test group header, then it should default to the ‘unknown’ value.

category

Data type: CodableConcept Optionality: Required Cardinality: 0..*

The general type of test result. A default value of Laboratory should be used if a more specific value is not available - for example, pathology, microbiology, and so on.

code

Data type: CodableConcept Optionality: Mandatory Cardinality: 1..1

The clinical code that represents the name of the test result or test analyte.

subject

Data type: Reference(Patient) Optionality: Mandatory Cardinality: 1..1

A reference to the patient who the observation is about.

context

Data type: reference Optionality: Optional Cardinality: 0..1

A reference to the Encounter profile representing the consultation the test result is associated to.

effective[x]

Data type: dateTime/Period Optionality: Required Cardinality: 0..1

The date and time when the test was performed.

issued

Data type: instant Optionality: Manadatory Cardinality: 1..1

The date and time that the result was issued by the laboratory or other report provider.

Is this is not provided for an individual result then it should inherit the date from the DiagnosticReport.

performer

Data type: Reference (Practitioner/Organisation) Optionality: Required Cardinality: 0..*

Reference to the resource for the organisation and/or practitioner that performed the test.

value[x]

Data type: Many Optionality: Required Cardinality: 0..1

The value of the test. This may be in the form of, but is not limited to, one of the following datatypes: a quantity, string or an attachment.

dataAbsentReason

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

The reason why a result/value has been omitted.

interpretation

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

A human-readable clinical summary relating to a test result and/or additional notes provided by the laboratory - for example, the specimen has haemolysed or has leaked.

comment

Data type: string Optionality: Required Cardinality: 0..1

Lab notes in addition to the interpretation. For example, the sample has haemolysed or has leaked.

bodysite

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

The body part that was tested/observed.

method

Data type: CodeableConcept Optionality: Required Cardinality: 0..1

The method of testing/observation that was used.

specimen

Data type: Reference Optionality: Required Cardinality: 0..1

Reference to the specimen on which these results were based.

referenceRange

Data type: BackboneElement Optionality: Required Cardinality: 0..*

The reference range provides a guide for interpretation of the results.

Data type: BackboneElement Optionality: Required Cardinality: 0..1

Reference to the test group header observation if the result is part of a test group.

This MUST be qualified using the related.type ‘derived-from’.


Elements not in use

The following elements MUST NOT be populated:

basedOn

Data type: reference

device

Data type: BackboneElement

component

Data type: BackboneElement