PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.au.base@1.0.1
    http://hl7.org.au/fhir/StructureDefinition/au-relatedperson
description: This profile defines a related person administration details structure that includes core localisation concepts for use in an Australian context.
package_name: hl7.fhir.au.base
derivation: constraint
name: AUBaseRelatedPerson
type: RelatedPerson
elements:
  identifier:
    index: 0
    slicing:
      rules: open
      discriminator:
      - {path: type, type: pattern}
      - {path: system, type: value}
      min: null
      slices:
        ihiNumber:
          match:
            type:
              coding:
              - {code: NI, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            system: http://ns.electronichealth.net.au/id/hi/ihi/1.0
          schema:
            short: National Individual Healthcare Identifier (IHI)
            constraint:
              inv-ihi-value-0: {human: IHI shall be an exactly 16 digit number, severity: error, expression: 'value.matches(''^([0-9]{16})$'')'}
              inv-ihi-value-1: {human: IHI prefix is 800360, severity: error, expression: value.startsWith('800360')}
              inv-ihi-value-2: {human: IHI shall pass the Luhn algorithm check, severity: error, expression: '(((select(value.substring(0,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(1,1).toInteger())+(select(value.substring(2,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(3,1).toInteger())+(select(value.substring(4,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(5,1).toInteger())+(select(value.substring(6,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(7,1).toInteger())+(select(value.substring(8,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(9,1).toInteger())+(select(value.substring(10,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(11,1).toInteger())+(select(value.substring(12,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(13,1).toInteger())+(select(value.substring(14,1).toInteger()).select(iif($this<5, $this*2, (($this*2)-9))))+(value.substring(15,1).toInteger()))mod 10=0)'}
            index: 1
            extensions:
              ihiStatus: {url: 'http://hl7.org.au/fhir/StructureDefinition/ihi-status', type: Extension, short: Individual Healthcare Identifier (IHI) Number Status, index: 3}
              ihiRecordStatus: {url: 'http://hl7.org.au/fhir/StructureDefinition/ihi-record-status', type: Extension, short: Individual Healthcare Identifier (IHI) Number Record Status, index: 4}
            elements:
              extension:
                index: 2
                slicing:
                  rules: open
                  discriminator:
                  - {path: url, type: value}
                  min: null
                  slices:
                    ihiStatus:
                      match: {url: null}
                      schema: {type: Extension, short: Individual Healthcare Identifier (IHI) Number Status, url: 'http://hl7.org.au/fhir/StructureDefinition/ihi-status', index: 3}
                    ihiRecordStatus:
                      match: {url: null}
                      schema: {type: Extension, short: Individual Healthcare Identifier (IHI) Number Record Status, url: 'http://hl7.org.au/fhir/StructureDefinition/ihi-record-status', index: 4}
              type:
                short: Coded identifier type for IHI
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: NI, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                index: 5
                elements:
                  text:
                    pattern: {type: String, value: IHI}
                    index: 6
              system:
                short: Namespace for IHI
                pattern: {type: Uri, value: 'http://ns.electronichealth.net.au/id/hi/ihi/1.0'}
                index: 7
              value: {short: IHI number, maxLength: 16, index: 8}
            required: [value, system]
        medicareNumber:
          match:
            type:
              coding:
              - {code: MC, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            system: http://ns.electronichealth.net.au/id/medicare-number
          schema:
            short: Medicare Number
            index: 9
            elements:
              type:
                short: Coded identifier type for Medicare number
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: MC, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                index: 10
                elements:
                  text:
                    pattern: {type: String, value: Medicare Number}
                    index: 11
              system:
                short: Namespace for Medicare number
                pattern: {type: Uri, value: 'http://ns.electronichealth.net.au/id/medicare-number'}
                index: 12
              value: {short: Medicare number including optional individual reference number, maxLength: 11, index: 13}
              period:
                short: Medicare number validity period
                index: 14
                elements:
                  end: {short: Medicare number expiry date, index: 15}
                required: [end]
            required: [value, period, system]
        dvaNumber:
          match: {type: null, system: 'http://ns.electronichealth.net.au/id/dva'}
          schema:
            short: Department of Veterans' Affairs (DVA) Number
            constraint:
              inv-dva-number-unspecified: {human: DVA number identifier type text must be 'DVA Number' when colour is not specified, severity: error, expression: type.coding.exists() and type.text != 'DVA Number'}
              inv-dva-number-gold: {human: DVA number identifier type text must be 'DVA Number (Gold)' when colour coding is DVG, severity: error, expression: type.coding.code='DVG' and type.text != 'DVA Number (Gold)'}
              inv-dva-number-white: {human: DVA number identifier type text must be 'DVA Number (White)' when colour coding is DVW, severity: error, expression: type.coding.code='DVW' and type.text != 'DVA Number (White)'}
              inv-dva-number-orange: {human: DVA number identifier type text must be 'DVA Number (Orange)' when colour coding is DVO, severity: error, expression: type.coding.code='DVO' and type.text != 'DVA Number (Orange)'}
              inv-dva-number-lilac: {human: DVA number identifier type text must be 'DVA Number (Lilac)' when colour coding is DVL, severity: error, expression: type.coding.code='DVL' and type.text != 'DVA Number (Lilac)'}
              inv-dva-number-text: {human: 'DVA number identifier type text must be one of ''DVA Number'', ''DVA Number (Gold)'',  ''DVA Number (White), ''DVA Number (Orange), ''DVA Number (Lilac)''', severity: error, expression: type.text = 'DVA Number' or type.text = 'DVA Number (Gold)' or type.text = 'DVA Number (White)' or type.text = 'DVA Number (Orange)' or type.text = 'DVA Number (Lilac)'}
            index: 16
            elements:
              type:
                short: Coded identifier type for DVA number
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                index: 17
                elements:
                  text: {index: 18}
              system:
                short: Namespace for DVA number
                pattern: {type: Uri, value: 'http://ns.electronichealth.net.au/id/dva'}
                index: 19
              value: {short: DVA number, maxLength: 9, index: 20}
            required: [value, system]
        healthcareCard:
          match:
            type:
              coding:
              - {code: HC, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            system: http://ns.electronichealth.net.au/id/centrelink-customer-reference-number
          schema:
            short: Health Care Card Number
            index: 21
            elements:
              type:
                short: Coded identifier type for Health Care Card number
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: HC, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                index: 22
                elements:
                  text:
                    pattern: {type: String, value: Health Care Card Number}
                    index: 23
              system:
                short: Namespace for Centrelink Customer Reference Number (CRN)
                pattern: {type: Uri, value: 'http://ns.electronichealth.net.au/id/centrelink-customer-reference-number'}
                index: 24
              value: {short: Centrelink CRN, maxLength: 10, index: 25}
            required: [value, type, system]
        pensionerConcessionCard:
          match:
            type:
              coding:
              - {code: PEN, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            system: http://ns.electronichealth.net.au/id/centrelink-customer-reference-number
          schema:
            short: Pensioner Concession Card Number
            index: 26
            elements:
              type:
                short: Coded identifier type for Pensioner Concession Card number
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: PEN, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                index: 27
                elements:
                  text:
                    pattern: {type: String, value: Pensioner Concession Card Number}
                    index: 28
              system:
                short: Namespace for Centrelink Customer Reference Number (CRN)
                pattern: {type: Uri, value: 'http://ns.electronichealth.net.au/id/centrelink-customer-reference-number'}
                index: 29
              value: {short: Centrelink CRN, maxLength: 10, index: 30}
            required: [value, type, system]
        commonwealthSeniorsHealthCard:
          match:
            type:
              coding:
              - {code: SEN, system: 'http://terminology.hl7.org.au/CodeSystem/v2-0203'}
            system: http://ns.electronichealth.net.au/id/centrelink-customer-reference-number
          schema:
            short: Commonwealth Seniors Health Card Number
            index: 31
            elements:
              type:
                short: Coded identifier type for Commonwealth Seniors Health Card number
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: SEN, system: 'http://terminology.hl7.org.au/CodeSystem/v2-0203'}
                index: 32
                elements:
                  text:
                    pattern: {type: String, value: Commonwealth Seniors Health Card}
                    index: 33
              system:
                short: Namespace for Centrelink Customer Reference Number (CRN)
                pattern: {type: Uri, value: 'http://ns.electronichealth.net.au/id/centrelink-customer-reference-number'}
                index: 34
              value: {short: Centrelink CRN, maxLength: 10, index: 35}
            required: [value, type, system]
        medicalRecordNumber:
          match:
            type:
              coding:
              - {code: MR, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            system: null
          schema:
            short: Medical Record Number (MRN)
            index: 36
            elements:
              type:
                short: Coded identifier type for MRN
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: MR, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                index: 37
                elements:
                  text:
                    pattern: {type: String, value: Medical Record Number}
                    index: 38
              system: {short: Medical record number system namespace, index: 39}
              value: {short: Medical record number, index: 40}
              assigner: {short: Medical record number assigning entity, index: 41}
            required: [assigner, value, type, system]
        insurerNumber:
          match:
            type:
              coding:
              - {code: MB, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            system: null
          schema:
            short: Private Health Insurance Member Number
            index: 42
            elements:
              type:
                short: Coded identifier type for private health insurance member number
                binding: {strength: required, valueSet: 'http://hl7.org.au/fhir/ValueSet/au-hl7v2-0203'}
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: MB, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                index: 43
                elements:
                  text:
                    pattern: {type: String, value: Private Health Insurance Member Number}
                    index: 44
              value: {short: Private health insurance member number, index: 45}
              assigner:
                short: Private health insurer
                index: 46
                elements:
                  display: {index: 47}
                required: [display]
            required: [assigner, value, type]
  relationship:
    binding: {strength: extensible, valueSet: 'https://healthterminologies.gov.au/fhir/ValueSet/related-person-relationship-type-1'}
    index: 48
  communication:
    index: 49
    elements:
      language:
        binding: {strength: extensible, valueSet: 'https://healthterminologies.gov.au/fhir/ValueSet/common-languages-australia-2'}
        index: 50
package_version: 1.0.1
class: profile
kind: resource
url: http://hl7.org.au/fhir/StructureDefinition/au-relatedperson
base: http://hl7.org/fhir/StructureDefinition/RelatedPerson
version: 2.0.0