England-Provenance-Lab-Pathology

Summary

This profile ensures the identification and standardisation of the test reporting systems within the Pathology project to ensure the correct routing of information back to the test reporting systems.

England-Provenance-Lab-Pathology

This resource design pattern describes the use of the FHIR Provenance resource to record information about the organisation responsible for transforming clinical data into FHIR-compliant content prior to exchange. Provenance supports transparency and traceability by identifying the entity that performed the transformation process and contributed to the creation of the exchanged FHIR resource.

The provenance information represents the organisation acting as an intermediary in the data exchange workflow. It enables receiving systems to understand the origin of the FHIR representation, distinguish the transformation activity from the original clinical data source, and maintain an auditable record of processing activities performed during message creation.

This model is intended to support interoperability scenarios where healthcare information is transformed from source formats into FHIR resources before being transmitted to consuming systems, while preserving clear accountability for the transformation process.

middleware.drawio


Profile Views

Refer to Profile Descriptions for a definition of the different profile view formats.

idΣ0..1id
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionC0..*Extension
modifierExtension?! C0..*Extension
targetΣ C1..*Reference(Resource)
occurredDateTimedateTime
occurredPeriodPeriod
recordedΣ1..1instant
policy0..*uri
locationC0..1Reference(Location)
reason0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
typeΣ0..1CodeableConceptBinding
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
roleΣ1..1codeBinding
whatΣ C1..1Reference(Resource)
agent0..*see (agent)
signature0..*Signature
idΣ0..1id
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionC0..*Extension
modifierExtension?! C0..*Extension
targetΣ C1..*Reference(Resource)
occurredDateTimedateTime
occurredPeriodPeriod
recordedΣ1..1instant
policy0..*uri
locationC0..1Reference(Location)
reason0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
typeΣ0..1CodeableConceptBinding
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
roleΣ1..1codeBinding
whatΣ C1..1Reference(Resource)
agent0..*see (agent)
signature0..*Signature
idΣ0..1id
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
extensionC0..*Extension
modifierExtension?! C0..*Extension
targetΣ C1..*Reference(Resource)
occurredDateTimedateTime
occurredPeriodPeriod
recordedΣ1..1instant
policy0..*uri
locationC0..1Reference(Location)
reason0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1codeFixed Value
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
typeΣ0..1CodeableConceptBinding
role0..*CodeableConcept
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference(Organization)
displayΣ0..1string
onBehalfOfC0..1Reference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
roleΣ1..1codeBinding
whatΣ C1..1Reference(Resource)
agent0..*see (agent)
signature0..*Signature

Additional Guidance

meta.profile

This element SHALL be populated using the appropriate value from the table on the Profiles page.


target

This element SHALL reference the Composition resource.


recorded

This element SHALL be populated with the same value as DiagnosticReport.issued.


activity

This element SHALL be populated with the following value, taken from the iso-21089-lifecycle CodeSystem:

  "activity": {
    "coding": [
      {
        "system": "http://terminology.hl7.org/CodeSystem/iso-21089-lifecycle",
        "code": "transform"
      }
    ]
}


agent.who.identifier

In the context of the DAPB4101 information standard, this is a unique identifier used to specify the system to which laboratory report acknowledgements are routed.

  • The agent.who.identifier.system element SHALL be populated with https://api.service.nhs.uk/pathology-laboratory-reporting/test-reporting-system

  • The agent.who.identifier.value element SHALL contain a mandatory Product ID. An optional locally assigned Test Reporter ID MAY also be included. Where present, the Test Reporter ID SHALL be appended to the Product ID and separated by a colon (:). Both options are illustrated below:

    • "value": "P.XMX-4CN"
    • "value": "P.XMX-4CN:0553f3ee-d30e-4392-97c3-78283d6ab70e"

Example

{
"resourceType": "Provenance",
"meta": {
"profile": [
"https://fhir.nhs.uk/England/StructureDefinition/England-Provenance-Lab-Pathology|0.1.0"
]
},
"target": [
{
"reference": "urn:uuid:12345678-1234-4234-8234-123456789012"
}
],
"recorded": "2024-01-01T10:00:00Z",
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/iso-21089-lifecycle",
"code": "transform"
}
]
},
"agent": [
{
"who": {
"system": "https://api.service.nhs.uk/pathology-laboratory-reporting/test-reporting-system",
"value": "P.XMX-4CN:0553f3ee-d30e-4392-97c3-78283d6ab70e"
}
}
}
]
}