MODS-SubjectOfCareRegistration
type: StructureDefinition
node role: treeRoot
id:
  v: MODS-SubjectOfCareRegistration
text:
  status:
    v: extensions
  div:
    v: Generated Narrative: StructureDefinition MODS-SubjectOfCareRegistration Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> <a href="StructureDefinition-MODS-SubjectOfCareRegistration-definitions.html#MODS-SubjectOfCareRegistration" title="MODS Definition: Represents the input payload required to trace an NHS number and register a subject of care in the local Care Data Repository (CDR). This object contains core demographic details (such as name, date of birth, gender and home address) to assist with the trace process. It is intended for use with the /care-actors/subjects-of-care/register endpoint and must include all required fields to successfully perform the trace and create the patient record in the CDR.">MODS-SubjectOfCareRegistration 0..* Element MODS Subject of Care Registration Elements defined in Ancestors:@id, <a href="http://hl7.org/fhir/R4/datatypes.html#Element" title="May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.">extension Instances of this logical model can be the target of a Reference #xD; subjectOfCareId 1..1 string Unique record id for the Subject of Care for whom registration was requested #xD; name 1..1 BackboneElement Person Name #xD; family 1..1 string Person Family/Surname #xD; given 1..1 string Person Given/Forename #xD; sex 1..1 Coding Person Sex Binding: MODS Person Sex (Birth Sex) Code (required) #xD; ethnicity 1..1 Coding Person Ethnicity Binding: MODS Person Ethnicity Code (required) #xD; maritalStatus 1..1 Coding Person Marital Status Binding: MODS Person Marital Status Code (required) #xD; religion 1..1 Coding Person Religion Binding: MODS Pers…
extension:
  url:
    v: http://hl7.org/fhir/StructureDefinition/structuredefinition-type-characteristics
    l: structuredefinition-type-characteristics
  value: Code
    v: can-be-target
url:
  v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
  l: MODS-SubjectOfCareRegistration
version:
  v: 0.1.0
name:
  v: MODSSubjectOfCareRegistration
title:
  v: MODS Subject of Care Registration
status:
  v: draft
date:
  v: 2026-06-10T19:05:58+00:00
publisher:
  v: Synanetics Ltd on behalf of DHSC/Social Care Interoperability Platform
contact:
  name:
    v: Synanetics Ltd on behalf of DHSC/Social Care Interoperability Platform
  telecom:
    system:
      v: url
    value:
      v: https://synanetics.com
  telecom:
    system:
      v: email
description:
  v: MODS Definition: Represents the input payload required to trace an NHS number and register a subject of care in the local Care Data Repository (CDR). This object contains core demographic details (such as name, date of birth, gender and home address) to assist with the trace process. It is intended for use with the /care-actors/subjects-of-care/register endpoint and must include all required fields to successfully perform the trace and create the patient record in the CDR.
jurisdiction:
  coding:
    system:
      v: urn:iso:std:iso:3166
      l: 3166
    code:
      v: GB
    display:
      v: United Kingdom of Great Britain and Northern Ireland
fhir version:
  v: 4.0.1
mapping:
  identity:
    v: rim
  uri:
    v: http://hl7.org/v3
    l: v3
  name:
    v: RIM Mapping
kind:
  v: logical
abstract:
  v: false
type:
  v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
  l: MODS-SubjectOfCareRegistration
base definition:
  v: http://hl7.org/fhir/StructureDefinition/Element
  l: Element
derivation:
  v: specialization
snapshot:
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version
      l: snapshot-base-version
    value: String
      v: 4.0.1
  element:
    id:
      v: MODS-SubjectOfCareRegistration
    path:
      v: MODS-SubjectOfCareRegistration
    short:
      v: MODS Subject of Care Registration
    definition:
      v: MODS Definition: Represents the input payload required to trace an NHS number and register a subject of care in the local Care Data Repository (CDR). This object contains core demographic details (such as name, date of birth, gender and home address) to assist with the trace process. It is intended for use with the /care-actors/subjects-of-care/register endpoint and must include all required fields to successfully perform the trace and create the patient record in the CDR.
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: Element
      min:
        v: 0
      max:
        v: *
    condition:
      v: ele-1
    constraint:
      key:
        v: ele-1
      severity:
        v: error
      human:
        v: All FHIR elements must have a @value or children
      expression:
        v: hasValue() or (children().count() > id.count())
      xpath:
        v: @value|f:*|h:div
      source:
        v: http://hl7.org/fhir/StructureDefinition/Element
        l: Element
    is modifier:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: n/a
  element:
    id:
      v: MODS-SubjectOfCareRegistration.id
    path:
      v: MODS-SubjectOfCareRegistration.id
    representation:
      v: xmlAttr
    short:
      v: Unique id for inter-element referencing
    definition:
      v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
    min:
      v: 0
    max:
      v: 1
    base:
      path:
        v: Element.id
      min:
        v: 0
      max:
        v: 1
    type:
      extension:
        value: Url
      code:
        v: http://hl7.org/fhirpath/System.String
        l: System.String
    is modifier:
      v: false
    is summary:
      v: false
    mapping:
      identity:
        v: rim
      map:
        v: n/a
  element:
    id:
      v: MODS-SubjectOfCareRegistration.extension
    path:
      v: MODS-SubjectOfCareRegistration.extension
    slicing:
      description:
        v: Extensions are always sliced by (at least) url
      rules:
        v: open
    short:
      v: Additional content defined by implementations
    definition:
      v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
    comment:
      v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
    alias:
      v: extensions
    alias:
      v: user content
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: Element.extension
      min:
        v: 0
      max:
        v: *
    type:
      code:
        v: Extension
        l: Extension
    constraint:
      key:
        v: ele-1
      severity:
        v: error
      human:
        v: All FHIR elements must have a @value or children

Url
v: string
l: string

v: value

v: url

v: hasValue() or (children().count() > id.count())

v: @value|f:*|h:div

key:
  v: ext-1
severity:
  v: error
human:
  v: Must have either extensions or value[x], not both
expression:
  v: extension.exists() != value.exists()
xpath:
  v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
source:
  v: http://hl7.org/fhir/StructureDefinition/Extension
  l: Extension

v: false

v: false

identity:
  v: rim
map:
  v: n/a

id:
  v: MODS-SubjectOfCareRegistration.subjectOfCareId
path:
  v: MODS-SubjectOfCareRegistration.subjectOfCareId
short:
  v: Unique record id for the Subject of Care for whom registration was requested
definition:
  v: Unique record id for the Subject of Care for whom registration was requested
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.subjectOfCareId
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.name
path:
  v: MODS-SubjectOfCareRegistration.name
short:
  v: Person Name
definition:
  v: Person Name
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.name
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: MODS-SubjectOfCareRegistration.name.id
path:
  v: MODS-SubjectOfCareRegistration.name.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.name.extension
path:
  v: MODS-SubjectOfCareRegistration.name.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.name.modifierExtension
path:
  v: MODS-SubjectOfCareRegistration.name.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: MODS-SubjectOfCareRegistration.name.family
path:
  v: MODS-SubjectOfCareRegistration.name.family
short:
  v: Person Family/Surname
definition:
  v: Person Family/Surname
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.name.family
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.name.given
path:
  v: MODS-SubjectOfCareRegistration.name.given
short:
  v: Person Given/Forename
definition:
  v: Person Given/Forename
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.name.given
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.sex
path:
  v: MODS-SubjectOfCareRegistration.sex
short:
  v: Person Sex
definition:
  v: Person Sex
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.sex
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonBirthSexCode-1
    l: MODS-PersonBirthSexCode-1

id:
  v: MODS-SubjectOfCareRegistration.ethnicity
path:
  v: MODS-SubjectOfCareRegistration.ethnicity
short:
  v: Person Ethnicity
definition:
  v: Person Ethnicity
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.ethnicity
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonEthnicityCode-1
    l: MODS-PersonEthnicityCode-1

id:
  v: MODS-SubjectOfCareRegistration.maritalStatus
path:
  v: MODS-SubjectOfCareRegistration.maritalStatus
short:
  v: Person Marital Status
definition:
  v: Person Marital Status
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.maritalStatus
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonMaritalStatusCode-1
    l: MODS-PersonMaritalStatusCode-1

id:
  v: MODS-SubjectOfCareRegistration.religion
path:
  v: MODS-SubjectOfCareRegistration.religion
short:
  v: Person Religion
definition:
  v: Person Religion
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.religion
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonReligionCode-1
    l: MODS-PersonReligionCode-1

id:
  v: MODS-SubjectOfCareRegistration.sexualOrientation
path:
  v: MODS-SubjectOfCareRegistration.sexualOrientation
short:
  v: Person Sexual Orientation
definition:
  v: Person Sexual Orientation
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.sexualOrientation
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonSexualOrientation-1
    l: MODS-PersonSexualOrientation-1

id:
  v: MODS-SubjectOfCareRegistration.dateOfBirth
path:
  v: MODS-SubjectOfCareRegistration.dateOfBirth
short:
  v: Date Of Birth
definition:
  v: Date Of Birth
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.dateOfBirth
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: dateTime
    l: dateTime

id:
  v: MODS-SubjectOfCareRegistration.homeAddress
path:
  v: MODS-SubjectOfCareRegistration.homeAddress
short:
  v: Person Address
definition:
  v: Person Address
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.id
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.extension
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.modifierExtension
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry1
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry1
short:
  v: First address line
definition:
  v: First address line
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry1
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry2
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry2
short:
  v: Second address line
definition:
  v: Second address line
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry2
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry3
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry3
short:
  v: Third address line
definition:
  v: Third address line
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry3
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry4
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry4
short:
  v: Fourth address line
definition:
  v: Fourth address line
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry4
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.postCode
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.postCode
short:
  v: Address postal code
definition:
  v: Address postal code
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress.postCode
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addresspostcode-invariant
  severity:
    v: error
  human:
    v: Only UK postcodes are valid
  expression:
    v: $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.country
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.country
short:
  v: Address Country
definition:
  v: Address Country
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.homeAddress.country
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-Country-1
    l: MODS-Country-1

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber
short:
  v: Person NHS Number
definition:
  v: Person NHS Number
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.nhsNumber
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.id
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.extension
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.modifierExtension
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.value
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.value
short:
  v: NHS Number
definition:
  v: NHS Number
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.nhsNumber.value
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: nhsnumber-invariant
  severity:
    v: error
  human:
    v: 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only)
  expression:
    v: $this.matches('^\d{10}$')
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.statusIndicator
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.statusIndicator
short:
  v: NHS Number Trace Status Indicator
definition:
  v: NHS Number Trace Status Indicator
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.nhsNumber.statusIndicator
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-NHSNumberVerficationStatus-1
    l: MODS-NHSNumberVerficationStatus-1

id:
  v: MODS-SubjectOfCareRegistration.nationalInsuranceNumber
path:
  v: MODS-SubjectOfCareRegistration.nationalInsuranceNumber
short:
  v: NI Number
definition:
  v: NI Number
min:
  v: 0
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.nationalInsuranceNumber
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier
short:
  v: Person Other Identifier
definition:
  v: Person Other Identifier
min:
  v: 0
max:
  v: *
base:
  path:
    v: MODS-SubjectOfCareRegistration.otherIdentifier
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.id
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.extension
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.modifierExtension
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.value
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.value
short:
  v: Identifier Value
definition:
  v: Identifier Value
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.otherIdentifier.value
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.system
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.system
short:
  v: A URL indicating the identifier’s system or type, used as a logical business identifier rather than a database key.
definition:
  v: A URL indicating the identifier’s system or type, used as a logical business identifier rather than a database key.
min:
  v: 1
max:
  v: 1
base:
  path:
    v: MODS-SubjectOfCareRegistration.otherIdentifier.system
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: url
    l: url

element:
  id:
    v: MODS-SubjectOfCareRegistration
  path:
    v: MODS-SubjectOfCareRegistration
  short:
    v: MODS Subject of Care Registration
  definition:
    v: MODS Definition: Represents the input payload required to trace an NHS number and register a subject of care in the local Care Data Repository (CDR). This object contains core demographic details (such as name, date of birth, gender and home address) to assist with the trace process. It is intended for use with the /care-actors/subjects-of-care/register endpoint and must include all required fields to successfully perform the trace and create the patient record in the CDR.
element:
  id:
    v: MODS-SubjectOfCareRegistration.subjectOfCareId
  path:
    v: MODS-SubjectOfCareRegistration.subjectOfCareId
  short:
    v: Unique record id for the Subject of Care for whom registration was requested
  definition:
    v: Unique record id for the Subject of Care for whom registration was requested
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: MODS-SubjectOfCareRegistration.name
  path:
    v: MODS-SubjectOfCareRegistration.name
  short:
    v: Person Name
  definition:
    v: Person Name
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: BackboneElement
      l: BackboneElement
element:
  id:
    v: MODS-SubjectOfCareRegistration.name.family
  path:
    v: MODS-SubjectOfCareRegistration.name.family
  short:
    v: Person Family/Surname
  definition:
    v: Person Family/Surname
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: MODS-SubjectOfCareRegistration.name.given
  path:
    v: MODS-SubjectOfCareRegistration.name.given
  short:
    v: Person Given/Forename
  definition:
    v: Person Given/Forename
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: MODS-SubjectOfCareRegistration.sex
  path:
    v: MODS-SubjectOfCareRegistration.sex
  short:
    v: Person Sex
  definition:
    v: Person Sex
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: Coding
      l: Coding
  binding:
    strength:
      v: required
    value set:
      v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonBirthSexCode-1
      l: MODS-PersonBirthSexCode-1
element:
  id:
    v: MODS-SubjectOfCareRegistration.ethnicity
  path:
    v: MODS-SubjectOfCareRegistration.ethnicity
  short:
    v: Person Ethnicity
  definition:
    v: Person Ethnicity
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: Coding
      l: Coding
  binding:
    strength:
      v: required
    value set:
      v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonEthnicityCode-1
      l: MODS-PersonEthnicityCode-1
element:
  id:
    v: MODS-SubjectOfCareRegistration.maritalStatus
  path:
    v: MODS-SubjectOfCareRegistration.maritalStatus
  short:
    v: Person Marital Status
  definition:
    v: Person Marital Status
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: Coding
      l: Coding
  binding:
    strength:
      v: required
    value set:
      v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonMaritalStatusCode-1
      l: MODS-PersonMaritalStatusCode-1
element:
  id:
    v: MODS-SubjectOfCareRegistration.religion
  path:
    v: MODS-SubjectOfCareRegistration.religion
  short:
    v: Person Religion
  definition:
    v: Person Religion
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: Coding
      l: Coding
  binding:
    strength:
      v: required
    value set:
      v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonReligionCode-1
      l: MODS-PersonReligionCode-1
element:
  id:
    v: MODS-SubjectOfCareRegistration.sexualOrientation
  path:
    v: MODS-SubjectOfCareRegistration.sexualOrientation
  short:
    v: Person Sexual Orientation
  definition:
    v: Person Sexual Orientation
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: Coding
      l: Coding
  binding:
    strength:
      v: required
    value set:
      v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-PersonSexualOrientation-1
      l: MODS-PersonSexualOrientation-1
element:
  id:
    v: MODS-SubjectOfCareRegistration.dateOfBirth
  path:
    v: MODS-SubjectOfCareRegistration.dateOfBirth
  short:
    v: Date Of Birth
  definition:
    v: Date Of Birth

v: 1

v: 1

code:
  v: dateTime
  l: dateTime

id:
  v: MODS-SubjectOfCareRegistration.homeAddress
path:
  v: MODS-SubjectOfCareRegistration.homeAddress
short:
  v: Person Address
definition:
  v: Person Address
min:
  v: 1
max:
  v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry1
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry1
short:
  v: First address line
definition:
  v: First address line
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry2
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry2
short:
  v: Second address line
definition:
  v: Second address line
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry3
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry3
short:
  v: Third address line
definition:
  v: Third address line
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry4
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.addressEntry4
short:
  v: Fourth address line
definition:
  v: Fourth address line
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addressline-invariant
  severity:
    v: error
  human:
    v: Address lines MUST not exceed 35 characters in length
  expression:
    v: $this.length() <= 35
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.postCode
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.postCode
short:
  v: Address postal code
definition:
  v: Address postal code
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: addresspostcode-invariant
  severity:
    v: error
  human:
    v: Only UK postcodes are valid
  expression:
    v: $this.matches('^[a-zA-Z0-9]{0,8}$') and $this.length() <= 8
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.homeAddress.country
path:
  v: MODS-SubjectOfCareRegistration.homeAddress.country
short:
  v: Address Country
definition:
  v: Address Country
min:
  v: 0
max:
  v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-Country-1
    l: MODS-Country-1

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber
short:
  v: Person NHS Number
definition:
  v: Person NHS Number
min:
  v: 0
max:
  v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.value
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.value
short:
  v: NHS Number
definition:
  v: NHS Number
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string
constraint:
  key:
    v: nhsnumber-invariant
  severity:
    v: error
  human:
    v: 10-digit NHS Number (leading zeros allowed). MUST be exactly 10 digits (numeric only)
  expression:
    v: $this.matches('^\d{10}$')
  source:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SubjectOfCareRegistration
    l: MODS-SubjectOfCareRegistration

id:
  v: MODS-SubjectOfCareRegistration.nhsNumber.statusIndicator
path:
  v: MODS-SubjectOfCareRegistration.nhsNumber.statusIndicator
short:
  v: NHS Number Trace Status Indicator
definition:
  v: NHS Number Trace Status Indicator
min:
  v: 0
max:
  v: 1
type:
  code:
    v: Coding
    l: Coding
binding:
  strength:
    v: required
  value set:
    v: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/ValueSet/MODS-NHSNumberVerficationStatus-1
    l: MODS-NHSNumberVerficationStatus-1

id:
  v: MODS-SubjectOfCareRegistration.nationalInsuranceNumber
path:
  v: MODS-SubjectOfCareRegistration.nationalInsuranceNumber
short:
  v: NI Number
definition:
  v: NI Number
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier
short:
  v: Person Other Identifier
definition:
  v: Person Other Identifier
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.value
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.value
short:
  v: Identifier Value
definition:
  v: Identifier Value
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.system
path:
  v: MODS-SubjectOfCareRegistration.otherIdentifier.system
short:
  v: A URL indicating the identifier’s system or type, used as a logical business identifier rather than a database key.
definition:
  v: A URL indicating the identifier’s system or type, used as a logical business identifier rather than a database key.
min:
  v: 1
max:
  v: 1
type:
  code:
    v: url
    l: url