Social Care Interoperability Platform FHIR Implementation Guide
Version: 0.1.0, Status: draft

Social Care Interoperability Platform FHIR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Logical Model: MODS Trace

Official URL: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-Trace Version: 0.1.0
Draft as of 2026-03-24 Computable Name: MODSTrace

MODS Definition: Represents the response returned from an NHS number trace request. The response includes the verified NHS Number along with the core demographic and registration details associated with the individual.

Usages:

  • This Logical Model is not used by any profiles in this Implementation Guide

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
.. MODS-Trace 0..* Element MODS Trace

Elements defined in Ancestors:@id, extension
Instances of this logical model can be the target of a Reference
... @id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... nhsNumber 1..1 BackboneElement Person NHS Number
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... value C 1..1 string NHS Number
Constraints: nhsnumber-invariant
.... statusIndicator 1..1 Coding NHS Number Trace Status Indicator
Binding: NHS Number Verification Status (required)
.... @id 1..1 string General Practice literal identifier
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name 1..1 string The name of the General Practice
.... organisationIdentifier 1..1 string General Practice Organisation Data Services Code (ODS Code)
.... address 1..1 BackboneElement Person Address
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
..... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
..... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
..... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
..... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
..... country 0..1 Coding Address Country
Binding: MODS Country (required)
... name 1..1 BackboneElement Person Name
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... family 1..1 string Person Family/Surname
.... given 1..1 string Person Given/Forename
... sex 1..1 Coding Person Sex
Binding: MODS Person Sex (Birth Sex) Code (required)
... dateOfBirth C 1..1 dateTime Date Of Birth
Constraints: birthdeathdate-invariant
... homeAddress 1..1 BackboneElement Person Address
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
.... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
.... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
.... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
.... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
.... country 0..1 Coding Address Country
Binding: MODS Country (required)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MODS-Trace.nhsNumber.​statusIndicator Base required NHS Number Verification Status 📦0.1.0 This IG
MODS-Trace.generalPractice.​address.country Base required MODS Country 📦0.1.0 This IG
MODS-Trace.sex Base required MODS Person Sex (Birth Sex) Code 📦0.1.0 This IG
MODS-Trace.homeAddress.​country Base required MODS Country 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
addressline-invariant error MODS-Trace.generalPractice.address.addressEntry1, MODS-Trace.generalPractice.address.addressEntry2, MODS-Trace.generalPractice.address.addressEntry3, MODS-Trace.generalPractice.address.addressEntry4, MODS-Trace.homeAddress.addressEntry1, MODS-Trace.homeAddress.addressEntry2, MODS-Trace.homeAddress.addressEntry3, MODS-Trace.homeAddress.addressEntry4 Address lines MUST not exceed 35 characters in length $this.length() <= 35
addresspostcode-invariant error MODS-Trace.generalPractice.address.postCode, MODS-Trace.homeAddress.postCode Only UK postcodes are valid $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
birthdeathdate-invariant error MODS-Trace.dateOfBirth Subject of Care Birth and Death date MUST be represented as Dates (YYYY-MM-DD only) $this.toString().matches('^[0-9]{4}-[0-9]{2}-[0-9]{2}$')
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()
nhsnumber-invariant error MODS-Trace.nhsNumber.value 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only) $this.matches('^\d{10}$')

This structure is derived from Element

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MODS-Trace 0..* Element MODS Trace

Elements defined in Ancestors:@id, extension
Instances of this logical model can be the target of a Reference
... nhsNumber 1..1 BackboneElement Person NHS Number
.... value C 1..1 string NHS Number
Constraints: nhsnumber-invariant
.... statusIndicator 1..1 Coding NHS Number Trace Status Indicator
Binding: NHS Number Verification Status (required)
... generalPractice 0..1 BackboneElement Persons General Practice
.... @id 1..1 string General Practice literal identifier
.... name 1..1 string The name of the General Practice
.... organisationIdentifier 1..1 string General Practice Organisation Data Services Code (ODS Code)
.... address 1..1 BackboneElement Person Address
..... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
..... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
..... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
..... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
..... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
..... country 0..1 Coding Address Country
Binding: MODS Country (required)
... name 1..1 BackboneElement Person Name
.... family 1..1 string Person Family/Surname
.... given 1..1 string Person Given/Forename
... dateOfBirth C 1..1 dateTime Date Of Birth
Constraints: birthdeathdate-invariant
... homeAddress 1..1 BackboneElement Person Address
.... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
.... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
.... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
.... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
.... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
.... country 0..1 Coding Address Country
Binding: MODS Country (required)

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
MODS-Trace.nhsNumber.​statusIndicator Base required NHS Number Verification Status 📦0.1.0 This IG
MODS-Trace.generalPractice.​address.country Base required MODS Country 📦0.1.0 This IG
MODS-Trace.sex Base required MODS Person Sex (Birth Sex) Code 📦0.1.0 This IG
MODS-Trace.homeAddress.​country Base required MODS Country 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
addressline-invariant error MODS-Trace.generalPractice.address.addressEntry1, MODS-Trace.generalPractice.address.addressEntry2, MODS-Trace.generalPractice.address.addressEntry3, MODS-Trace.generalPractice.address.addressEntry4, MODS-Trace.homeAddress.addressEntry1, MODS-Trace.homeAddress.addressEntry2, MODS-Trace.homeAddress.addressEntry3, MODS-Trace.homeAddress.addressEntry4 Address lines MUST not exceed 35 characters in length $this.length() <= 35
addresspostcode-invariant error MODS-Trace.generalPractice.address.postCode, MODS-Trace.homeAddress.postCode Only UK postcodes are valid $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
birthdeathdate-invariant error MODS-Trace.dateOfBirth Subject of Care Birth and Death date MUST be represented as Dates (YYYY-MM-DD only) $this.toString().matches('^[0-9]{4}-[0-9]{2}-[0-9]{2}$')
nhsnumber-invariant error MODS-Trace.nhsNumber.value 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only) $this.matches('^\d{10}$')
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MODS-Trace 0..* Element MODS Trace

Elements defined in Ancestors:@id, extension
Instances of this logical model can be the target of a Reference
... @id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... nhsNumber 1..1 BackboneElement Person NHS Number
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... value C 1..1 string NHS Number
Constraints: nhsnumber-invariant
.... statusIndicator 1..1 Coding NHS Number Trace Status Indicator
Binding: NHS Number Verification Status (required)
.... @id 1..1 string General Practice literal identifier
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name 1..1 string The name of the General Practice
.... organisationIdentifier 1..1 string General Practice Organisation Data Services Code (ODS Code)
.... address 1..1 BackboneElement Person Address
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
..... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
..... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
..... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
..... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
..... country 0..1 Coding Address Country
Binding: MODS Country (required)
... name 1..1 BackboneElement Person Name
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... family 1..1 string Person Family/Surname
.... given 1..1 string Person Given/Forename
... sex 1..1 Coding Person Sex
Binding: MODS Person Sex (Birth Sex) Code (required)
... dateOfBirth C 1..1 dateTime Date Of Birth
Constraints: birthdeathdate-invariant
... homeAddress 1..1 BackboneElement Person Address
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
.... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
.... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
.... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
.... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
.... country 0..1 Coding Address Country
Binding: MODS Country (required)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MODS-Trace.nhsNumber.​statusIndicator Base required NHS Number Verification Status 📦0.1.0 This IG
MODS-Trace.generalPractice.​address.country Base required MODS Country 📦0.1.0 This IG
MODS-Trace.sex Base required MODS Person Sex (Birth Sex) Code 📦0.1.0 This IG
MODS-Trace.homeAddress.​country Base required MODS Country 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
addressline-invariant error MODS-Trace.generalPractice.address.addressEntry1, MODS-Trace.generalPractice.address.addressEntry2, MODS-Trace.generalPractice.address.addressEntry3, MODS-Trace.generalPractice.address.addressEntry4, MODS-Trace.homeAddress.addressEntry1, MODS-Trace.homeAddress.addressEntry2, MODS-Trace.homeAddress.addressEntry3, MODS-Trace.homeAddress.addressEntry4 Address lines MUST not exceed 35 characters in length $this.length() <= 35
addresspostcode-invariant error MODS-Trace.generalPractice.address.postCode, MODS-Trace.homeAddress.postCode Only UK postcodes are valid $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
birthdeathdate-invariant error MODS-Trace.dateOfBirth Subject of Care Birth and Death date MUST be represented as Dates (YYYY-MM-DD only) $this.toString().matches('^[0-9]{4}-[0-9]{2}-[0-9]{2}$')
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()
nhsnumber-invariant error MODS-Trace.nhsNumber.value 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only) $this.matches('^\d{10}$')

This structure is derived from Element

Summary

Mandatory: 0 element(17 nested mandatory elements)

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MODS-Trace 0..* Element MODS Trace

Elements defined in Ancestors:@id, extension
Instances of this logical model can be the target of a Reference
... @id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... nhsNumber 1..1 BackboneElement Person NHS Number
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... value C 1..1 string NHS Number
Constraints: nhsnumber-invariant
.... statusIndicator 1..1 Coding NHS Number Trace Status Indicator
Binding: NHS Number Verification Status (required)
.... @id 1..1 string General Practice literal identifier
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name 1..1 string The name of the General Practice
.... organisationIdentifier 1..1 string General Practice Organisation Data Services Code (ODS Code)
.... address 1..1 BackboneElement Person Address
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
..... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
..... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
..... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
..... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
..... country 0..1 Coding Address Country
Binding: MODS Country (required)
... name 1..1 BackboneElement Person Name
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... family 1..1 string Person Family/Surname
.... given 1..1 string Person Given/Forename
... sex 1..1 Coding Person Sex
Binding: MODS Person Sex (Birth Sex) Code (required)
... dateOfBirth C 1..1 dateTime Date Of Birth
Constraints: birthdeathdate-invariant
... homeAddress 1..1 BackboneElement Person Address
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
.... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
.... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
.... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
.... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
.... country 0..1 Coding Address Country
Binding: MODS Country (required)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MODS-Trace.nhsNumber.​statusIndicator Base required NHS Number Verification Status 📦0.1.0 This IG
MODS-Trace.generalPractice.​address.country Base required MODS Country 📦0.1.0 This IG
MODS-Trace.sex Base required MODS Person Sex (Birth Sex) Code 📦0.1.0 This IG
MODS-Trace.homeAddress.​country Base required MODS Country 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
addressline-invariant error MODS-Trace.generalPractice.address.addressEntry1, MODS-Trace.generalPractice.address.addressEntry2, MODS-Trace.generalPractice.address.addressEntry3, MODS-Trace.generalPractice.address.addressEntry4, MODS-Trace.homeAddress.addressEntry1, MODS-Trace.homeAddress.addressEntry2, MODS-Trace.homeAddress.addressEntry3, MODS-Trace.homeAddress.addressEntry4 Address lines MUST not exceed 35 characters in length $this.length() <= 35
addresspostcode-invariant error MODS-Trace.generalPractice.address.postCode, MODS-Trace.homeAddress.postCode Only UK postcodes are valid $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
birthdeathdate-invariant error MODS-Trace.dateOfBirth Subject of Care Birth and Death date MUST be represented as Dates (YYYY-MM-DD only) $this.toString().matches('^[0-9]{4}-[0-9]{2}-[0-9]{2}$')
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()
nhsnumber-invariant error MODS-Trace.nhsNumber.value 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only) $this.matches('^\d{10}$')

Differential View

This structure is derived from Element

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MODS-Trace 0..* Element MODS Trace

Elements defined in Ancestors:@id, extension
Instances of this logical model can be the target of a Reference
... nhsNumber 1..1 BackboneElement Person NHS Number
.... value C 1..1 string NHS Number
Constraints: nhsnumber-invariant
.... statusIndicator 1..1 Coding NHS Number Trace Status Indicator
Binding: NHS Number Verification Status (required)
... generalPractice 0..1 BackboneElement Persons General Practice
.... @id 1..1 string General Practice literal identifier
.... name 1..1 string The name of the General Practice
.... organisationIdentifier 1..1 string General Practice Organisation Data Services Code (ODS Code)
.... address 1..1 BackboneElement Person Address
..... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
..... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
..... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
..... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
..... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
..... country 0..1 Coding Address Country
Binding: MODS Country (required)
... name 1..1 BackboneElement Person Name
.... family 1..1 string Person Family/Surname
.... given 1..1 string Person Given/Forename
... dateOfBirth C 1..1 dateTime Date Of Birth
Constraints: birthdeathdate-invariant
... homeAddress 1..1 BackboneElement Person Address
.... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
.... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
.... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
.... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
.... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
.... country 0..1 Coding Address Country
Binding: MODS Country (required)

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
MODS-Trace.nhsNumber.​statusIndicator Base required NHS Number Verification Status 📦0.1.0 This IG
MODS-Trace.generalPractice.​address.country Base required MODS Country 📦0.1.0 This IG
MODS-Trace.sex Base required MODS Person Sex (Birth Sex) Code 📦0.1.0 This IG
MODS-Trace.homeAddress.​country Base required MODS Country 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
addressline-invariant error MODS-Trace.generalPractice.address.addressEntry1, MODS-Trace.generalPractice.address.addressEntry2, MODS-Trace.generalPractice.address.addressEntry3, MODS-Trace.generalPractice.address.addressEntry4, MODS-Trace.homeAddress.addressEntry1, MODS-Trace.homeAddress.addressEntry2, MODS-Trace.homeAddress.addressEntry3, MODS-Trace.homeAddress.addressEntry4 Address lines MUST not exceed 35 characters in length $this.length() <= 35
addresspostcode-invariant error MODS-Trace.generalPractice.address.postCode, MODS-Trace.homeAddress.postCode Only UK postcodes are valid $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
birthdeathdate-invariant error MODS-Trace.dateOfBirth Subject of Care Birth and Death date MUST be represented as Dates (YYYY-MM-DD only) $this.toString().matches('^[0-9]{4}-[0-9]{2}-[0-9]{2}$')
nhsnumber-invariant error MODS-Trace.nhsNumber.value 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only) $this.matches('^\d{10}$')

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. MODS-Trace 0..* Element MODS Trace

Elements defined in Ancestors:@id, extension
Instances of this logical model can be the target of a Reference
... @id 0..1 string Unique id for inter-element referencing
... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
... nhsNumber 1..1 BackboneElement Person NHS Number
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... value C 1..1 string NHS Number
Constraints: nhsnumber-invariant
.... statusIndicator 1..1 Coding NHS Number Trace Status Indicator
Binding: NHS Number Verification Status (required)
.... @id 1..1 string General Practice literal identifier
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... name 1..1 string The name of the General Practice
.... organisationIdentifier 1..1 string General Practice Organisation Data Services Code (ODS Code)
.... address 1..1 BackboneElement Person Address
..... @id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
..... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
..... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
..... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
..... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
..... country 0..1 Coding Address Country
Binding: MODS Country (required)
... name 1..1 BackboneElement Person Name
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... family 1..1 string Person Family/Surname
.... given 1..1 string Person Given/Forename
... sex 1..1 Coding Person Sex
Binding: MODS Person Sex (Birth Sex) Code (required)
... dateOfBirth C 1..1 dateTime Date Of Birth
Constraints: birthdeathdate-invariant
... homeAddress 1..1 BackboneElement Person Address
.... @id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... addressEntry1 C 1..1 string First address line
Constraints: addressline-invariant
.... addressEntry2 C 0..1 string Second address line
Constraints: addressline-invariant
.... addressEntry3 C 0..1 string Third address line
Constraints: addressline-invariant
.... addressEntry4 C 0..1 string Fourth address line
Constraints: addressline-invariant
.... postCode C 1..1 string Address postal code
Constraints: addresspostcode-invariant
.... country 0..1 Coding Address Country
Binding: MODS Country (required)

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
MODS-Trace.nhsNumber.​statusIndicator Base required NHS Number Verification Status 📦0.1.0 This IG
MODS-Trace.generalPractice.​address.country Base required MODS Country 📦0.1.0 This IG
MODS-Trace.sex Base required MODS Person Sex (Birth Sex) Code 📦0.1.0 This IG
MODS-Trace.homeAddress.​country Base required MODS Country 📦0.1.0 This IG

Constraints

Id Grade Path(s) Description Expression
addressline-invariant error MODS-Trace.generalPractice.address.addressEntry1, MODS-Trace.generalPractice.address.addressEntry2, MODS-Trace.generalPractice.address.addressEntry3, MODS-Trace.generalPractice.address.addressEntry4, MODS-Trace.homeAddress.addressEntry1, MODS-Trace.homeAddress.addressEntry2, MODS-Trace.homeAddress.addressEntry3, MODS-Trace.homeAddress.addressEntry4 Address lines MUST not exceed 35 characters in length $this.length() <= 35
addresspostcode-invariant error MODS-Trace.generalPractice.address.postCode, MODS-Trace.homeAddress.postCode Only UK postcodes are valid $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
birthdeathdate-invariant error MODS-Trace.dateOfBirth Subject of Care Birth and Death date MUST be represented as Dates (YYYY-MM-DD only) $this.toString().matches('^[0-9]{4}-[0-9]{2}-[0-9]{2}$')
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()
nhsnumber-invariant error MODS-Trace.nhsNumber.value 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only) $this.matches('^\d{10}$')

This structure is derived from Element

Summary

Mandatory: 0 element(17 nested mandatory elements)

 

Other representations of profile: CSV, Excel