NHS North West Genomics
0.1.0 - ci-build United Kingdom flag

NHS North West Genomics - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Data Type Profile: Correlation Identifier

Official URL: https://fhir.nwgenomics.nhs.uk/StructureDefinition/CorrelationIdentifier Version: 0.1.0
Draft as of 2026-01-13 Computable Name: CorrelationIdentifier

Core Data Contract for FHIR Identifier, v2 CX and EI

Reference

Overview

Identifiers play a central role in both HL7 v2 and FHIR, enabling systems to uniquely reference and track entities such as patients, samples, orders, and clinical documents. In traditional point-to-point messaging, these identifiers are primarily used to correlate and reconcile messages exchanged between two systems—often those operating within the same organisation.

As the Regional Integration and Clinical Data Repository evolves to support genomic data exchange at a national scale, the demands placed on identifier management increase significantly. Genomic workflows involve multiple laboratories, platforms, and services distributed across the UK, all of which must consistently recognise and reference the same entities throughout complex end-to-end processes.

To meet these needs, a standardised and interoperable identifier model is required—one that ensures traceability, prevents collisions, supports cross-organisation communication, and aligns with national data-sharing patterns.

The following identifier data contract is therefore proposed to underpin the reliable exchange, correlation, and lifecycle management of genomic data across the UK health ecosystem.

Correlation Identifier Data Contract

HL7 v2 EI - Entity Identifier

Used in HL7 v2 ORC, SPM and OBR, and FHIR ServiceRequest, Specimen and DiagnosticReport.

Field Optionality Example Placer Example Filler HL7 FHIR Identifier HL7 v2 EI  
Entity Identifier 1..1 1012233558 T25-8ZEA Identifier.value EI.1  
Namespace Id 1..1 ROA-EPI 699X0-iGene   EI.2 This field is ODS code plus an existing Id for a system or a newly allocated one. The system is specified by the assigning authority/NHS Trust
Universal Id 0..1 urn:oid:1.2.840.114350.1.13.861.1.7.2.798268 https://fhir.north-west.england.nhs.uk/iGene/ReportIdentifier Identifier.system EI.3 The example used here is a generic value, NHS Trusts should supply actual value. Systems with a HL7 FHIR RESTful API e.g. EPIC and Meditech may have provided this value, the values in HL7 v2 and FHIR should be the same.
Universal Id Type 0..1 URI URI   EI.4 fixed value URI  
Identifier Type Code 1..1 PLAC FILL Identifier.type n/a - identifiers use seperate fields in HL7 v2 Messages  

Example

HL7 v2

With EPIC Order Placer OID

1029467053^ROA-EPI^urn:oid:1.2.840.114350.1.13.861.1.7.2.798268^URI

With self assigned Report Identifier for iGene

T25-8ZEA^699X0-iGene^https://fhir.north-west.england.nhs.uk/iGene/ReportIdentifier^URI

HL7 FHIR

    "identifier": [
          {
            "assigner": {
              "identifier": {
                "system": "https://fhir.nhs.uk/Id/ods-organization-code",
                "value": "699X0"
              }
            },
            "system": "https://fhir.north-west.england.nhs.uk/iGene/ReportIdentifier",
            "type": {
              "coding": [
                {
                  "code": "FILL",
                  "system": "http://terminology.hl7.org/CodeSystem/v2-0203"
                }
              ]
            },
            "value": "T25-8ZEA"
          },
          {
            "system": "urn:oid:1.2.840.114350.1.13.861.1.7.2.798268",
            "type": {
              "coding": [
                {
                  "code": "PLAC",
                  "system": "http://terminology.hl7.org/CodeSystem/v2-0203"
                }
              ]
            },
            "value": "1029467053"
          }
        ],

where ROA is the ODS code for Manchester University NHS Foundation Trust and 699XO is the ODS code from NW Region GLH

HL7 v2 CX - Extended Composite ID with Check Digit

Used in HL7 v2 PID and FHIR Patient.

Field Optionality Example NHS Number Example MRN HL7 FHIR Identifier HL7 v2 CX Notes
Id Number 1..1 921 906 8409 12067204 Identifier.value CX.1  
Assigning Authority 1..1 NHS ROA Identifier.assigner.value CX.4 For MRN the assigning authority shall be the NHS Trust ODS Code.

For NHS identifiers valid values are
NHS - England and Wales
HSNI - Northern Ireland
CHI - Scotland
Identifier Type Code 1..1 NH MR Identifier.type CX.5  
Universal Id 1..1 https://fhir.nhs.uk/Id/nhs-number https://nw-gmsa.github.io/Id/MR Identifier.system N/a  

Example

HL7 v2

NHS Number

9219068409^^^NHS^NH

MFT MRN

12067204^^^R0A^MR

HL7 FHIR

"identifier": [
          {
            "system": "https://fhir.nhs.uk/Id/nhs-number",
            "type": {
              "coding": [
                {
                  "code": "NH",
                  "system": "http://terminology.hl7.org/CodeSystem/v2-0203"
                }
              ]
            },
            "value": "9219068409"
          },
          {
            "assigner": {
              "identifier": {
                "system": "https://fhir.nhs.uk/Id/ods-organization-code",
                "value": "R0A"
              }
            },
            "system": "https://nw-gmsa.github.io/Id/MR",
            "type": {
              "coding": [
                {
                  "code": "MR",
                  "system": "http://terminology.hl7.org/CodeSystem/v2-0203"
                }
              ]
            },
            "value": "12067204"
          }
        ]

where ROA is the ODS code for Manchester University NHS Foundation Trust

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
... type SΣ 0..1 CodeableConcept Description of identifier
Binding: NW IdentifierType (required)
... system SΣ 1..1 uri uri is defined by supplying organisation.
Example General: http://www.acme.com/identifiers/patient
... value SΣ 1..1 string The value MUST be unique to the organisation
Example General: 123456
... assigner SΣ 1..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... system SΣ 1..1 uri The namespace for the identifier value
Required Pattern: https://fhir.nhs.uk/Id/ods-organization-code
..... value SΣ 1..1 string The value that is unique
Example General: 123456
Example Manchester University NHS Foundation Trust: R0A

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.type Base required NW IdentifierType 📦0.1.0 This IG
Identifier.assigner.​identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())

This structure is derived from Identifier

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... type S 0..1 CodeableConcept Description of identifier
Binding: NW IdentifierType (required)
... system S 1..1 uri uri is defined by supplying organisation.
... value S 1..1 string The value MUST be unique to the organisation
... assigner S 1..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier S 1..1 Identifier Logical reference, when literal reference is not known
..... system S 1..1 uri The namespace for the identifier value
Required Pattern: https://fhir.nhs.uk/Id/ods-organization-code
..... value S 1..1 string The value that is unique
Example Manchester University NHS Foundation Trust: R0A

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Identifier.type Base required NW IdentifierType 📦0.1.0 This IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
... type SΣ 0..1 CodeableConcept Description of identifier
Binding: NW IdentifierType (required)
... system SΣ 1..1 uri uri is defined by supplying organisation.
Example General: http://www.acme.com/identifiers/patient
... value SΣ 1..1 string The value MUST be unique to the organisation
Example General: 123456
... period Σ 0..1 Period Time period when id is/was valid for use
... assigner SΣ 1..1 Reference(Organization) Organization that issued id (may be just text)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system SΣ 1..1 uri The namespace for the identifier value
Required Pattern: https://fhir.nhs.uk/Id/ods-organization-code
..... value SΣ 1..1 string The value that is unique
Example General: 123456
Example Manchester University NHS Foundation Trust: R0A
..... period Σ 0..1 Period Time period when id is/was valid for use
..... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
.... display Σ 0..1 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.type Base required NW IdentifierType 📦0.1.0 This IG
Identifier.assigner.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Identifier.assigner.​identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.assigner.​identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Identifier

Summary

Mandatory: 6 elements
Must-Support: 7 elements

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
... type SΣ 0..1 CodeableConcept Description of identifier
Binding: NW IdentifierType (required)
... system SΣ 1..1 uri uri is defined by supplying organisation.
Example General: http://www.acme.com/identifiers/patient
... value SΣ 1..1 string The value MUST be unique to the organisation
Example General: 123456
... assigner SΣ 1..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... system SΣ 1..1 uri The namespace for the identifier value
Required Pattern: https://fhir.nhs.uk/Id/ods-organization-code
..... value SΣ 1..1 string The value that is unique
Example General: 123456
Example Manchester University NHS Foundation Trust: R0A

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.type Base required NW IdentifierType 📦0.1.0 This IG
Identifier.assigner.​identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())

Differential View

This structure is derived from Identifier

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... type S 0..1 CodeableConcept Description of identifier
Binding: NW IdentifierType (required)
... system S 1..1 uri uri is defined by supplying organisation.
... value S 1..1 string The value MUST be unique to the organisation
... assigner S 1..1 Reference(Organization) Organization that issued id (may be just text)
.... identifier S 1..1 Identifier Logical reference, when literal reference is not known
..... system S 1..1 uri The namespace for the identifier value
Required Pattern: https://fhir.nhs.uk/Id/ods-organization-code
..... value S 1..1 string The value that is unique
Example Manchester University NHS Foundation Trust: R0A

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Identifier.type Base required NW IdentifierType 📦0.1.0 This IG

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Identifier 0..* Identifier An identifier intended for computation
... id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
... type SΣ 0..1 CodeableConcept Description of identifier
Binding: NW IdentifierType (required)
... system SΣ 1..1 uri uri is defined by supplying organisation.
Example General: http://www.acme.com/identifiers/patient
... value SΣ 1..1 string The value MUST be unique to the organisation
Example General: 123456
... period Σ 0..1 Period Time period when id is/was valid for use
... assigner SΣ 1..1 Reference(Organization) Organization that issued id (may be just text)
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣC 0..1 string Literal reference, Relative, internal or absolute URL
.... type Σ 0..1 uri Type the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
.... identifier SΣ 1..1 Identifier Logical reference, when literal reference is not known
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
..... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
..... system SΣ 1..1 uri The namespace for the identifier value
Required Pattern: https://fhir.nhs.uk/Id/ods-organization-code
..... value SΣ 1..1 string The value that is unique
Example General: 123456
Example Manchester University NHS Foundation Trust: R0A
..... period Σ 0..1 Period Time period when id is/was valid for use
..... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
.... display Σ 0..1 string Text alternative for the resource

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.type Base required NW IdentifierType 📦0.1.0 This IG
Identifier.assigner.​type Base extensible ResourceType 📍4.0.1 FHIR Std.
Identifier.assigner.​identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Identifier.assigner.​identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Identifier

Summary

Mandatory: 6 elements
Must-Support: 7 elements

 

Other representations of profile: CSV, Excel, Schematron