PackagesCanonicalsLogsProblems
    Packages
    rs/il.core.fhir.r4.2023@0.1.0
    http://fhir.health.gov.il/StructureDefinition/il-core-patient
description: Israel Core Proposed constraints and extensions on the Patient Resource.
package_name: rs/il.core.fhir.r4.2023
derivation: constraint
name: ILCorePatient
type: Patient
elements:
  address: {type: Address, index: 52}
  managingOrganization:
    type: Reference
    refers: ['http://fhir.health.gov.il/StructureDefinition/il-core-organization']
    index: 56
  name:
    constraint:
      il-patient-name: {human: Either Patient.name.given and/or Patient.name.family SHALL be present or a Data Absent Reason Extension SHALL be present., source: 'http://fhir.health.gov.il/StructureDefinition/il-core-patient', severity: error, expression: '(family.exists() or given.exists()) xor name.extension.where(url=''http://hl7.org/fhir/StructureDefinition/data-absent-reason'').exists()'}
    mustSupport: true
    index: 24
    extensions:
      language: {url: 'http://hl7.org/fhir/StructureDefinition/language', min: 0, max: 1, type: Extension, index: 25}
      dataAbsentReason: {url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', min: 0, max: 1, type: Extension, index: 26}
    elements:
      extension:
        type: Extension
        url: http://hl7.org/fhir/StructureDefinition/language
        index: 25
        slicing:
          slices:
            language:
              match: {}
              schema: {type: Extension, url: 'http://hl7.org/fhir/StructureDefinition/language', index: 25}
              min: 0
              max: 1
            dataAbsentReason:
              match: {}
              schema: {type: Extension, url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', index: 26}
              min: 0
              max: 1
      family: {mustSupport: true, index: 27}
      given: {mustSupport: true, index: 28}
    slicing:
      rules: open
      discriminator:
      - {path: 'extension(''http://hl7.org/fhir/StructureDefinition/language'').value.ofType(code)', type: value}
      min: 1
      slices:
        Hebrew:
          match:
            extension('http://hl7:
              org/fhir/StructureDefinition/language'):
                value: {ofType(code): null}
          schema:
            array: true
            index: 29
            extensions:
              language:
                url: http://hl7.org/fhir/StructureDefinition/language
                type: Extension
                index: 31
                elements:
                  value:
                    pattern: {type: code, value: he}
                    choices: []
                    type: code
                    index: 33
              dataAbsentReason: {url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', min: 0, max: 1, type: Extension, index: 34}
            elements:
              extension:
                index: 30
                slicing:
                  slices:
                    language:
                      match: {}
                      schema:
                        type: Extension
                        url: http://hl7.org/fhir/StructureDefinition/language
                        index: 31
                        elements:
                          value:
                            pattern: {type: code, value: he}
                            choices: []
                            type: code
                            index: 33
                    dataAbsentReason:
                      match: {}
                      schema: {type: Extension, url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', index: 34}
                      min: 0
                      max: 1
            required: [extension]
        English:
          match:
            extension('http://hl7:
              org/fhir/StructureDefinition/language'):
                value: {ofType(code): null}
          schema:
            array: true
            index: 35
            extensions:
              language:
                url: http://hl7.org/fhir/StructureDefinition/language
                type: Extension
                index: 37
                elements:
                  value:
                    pattern: {type: code, value: en}
                    choices: []
                    type: code
                    index: 39
              dataAbsentReason: {url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', min: 0, max: 1, type: Extension, index: 40}
            elements:
              extension:
                index: 36
                slicing:
                  slices:
                    language:
                      match: {}
                      schema:
                        type: Extension
                        url: http://hl7.org/fhir/StructureDefinition/language
                        index: 37
                        elements:
                          value:
                            pattern: {type: code, value: en}
                            choices: []
                            type: code
                            index: 39
                    dataAbsentReason:
                      match: {}
                      schema: {type: Extension, url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', index: 40}
                      min: 0
                      max: 1
            required: [extension]
        Arabic:
          match:
            extension('http://hl7:
              org/fhir/StructureDefinition/language'):
                value: {ofType(code): null}
          schema:
            array: true
            index: 41
            extensions:
              language:
                url: http://hl7.org/fhir/StructureDefinition/language
                type: Extension
                index: 43
                elements:
                  value:
                    pattern: {type: code, value: ar}
                    choices: []
                    type: code
                    index: 45
              dataAbsentReason: {url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', min: 0, max: 1, type: Extension, index: 46}
            elements:
              extension:
                index: 42
                slicing:
                  slices:
                    language:
                      match: {}
                      schema:
                        type: Extension
                        url: http://hl7.org/fhir/StructureDefinition/language
                        index: 43
                        elements:
                          value:
                            pattern: {type: code, value: ar}
                            choices: []
                            type: code
                            index: 45
                    dataAbsentReason:
                      match: {}
                      schema: {type: Extension, url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', index: 46}
                      min: 0
                      max: 1
            required: [extension]
  birthDate: {mustSupport: true, index: 51}
  extension:
    index: 0
    slicing:
      rules: open
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: null
      slices:
        hmo:
          match: {url: null}
          schema: {short: 'Extension: Israel Core HMO (קופת חולים)', type: Extension, mustSupport: true, url: 'http://fhir.health.gov.il/StructureDefinition/ext-il-hmo', index: 1}
          min: 0
          max: 1
        parentName:
          match: {url: null}
          schema: {short: 'Extension: Administrative Parent Name', type: Extension, mustSupport: true, url: 'http://fhir.health.gov.il/StructureDefinition/ext-administrative-parent-name', index: 2}
          min: 0
        birthPlace:
          match: {url: null}
          schema: {type: Extension, short: 'Extension: Place of Birth for patient', url: 'http://hl7.org/fhir/StructureDefinition/patient-birthPlace', index: 3}
          min: 0
          max: 1
        immigration:
          match: {url: null}
          schema: {type: Extension, short: 'Extension: Patient Immigration', url: 'http://fhir.health.gov.il/StructureDefinition/ext-patient-immigration', index: 4}
          min: 0
        birthSex:
          match: {url: null}
          schema: {type: Extension, short: 'Extension: US Core Birth Sex Extension', url: 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex', index: 5}
          min: 0
          max: 1
  link:
    elements:
      other:
        type: Reference
        refers: ['http://fhir.health.gov.il/StructureDefinition/il-core-patient', 'http://fhir.health.gov.il/StructureDefinition/il-core-related-person']
        index: 57
  communication:
    elements:
      language: {mustSupport: true, index: 54}
  identifier:
    index: 6
    elements:
      system: {mustSupport: true, index: 7}
      value: {short: The value that is unique within the system., mustSupport: true, index: 8}
    required: [system, value]
    slicing:
      rules: open
      discriminator:
      - {path: system, type: value}
      min: 1
      slices:
        il-id:
          match: {system: 'http://fhir.health.gov.il/identifier/il-national-id'}
          schema:
            short: Israeli National Identifier
            mustSupport: true
            index: 9
            elements:
              system:
                pattern: {type: uri, value: 'http://fhir.health.gov.il/identifier/il-national-id'}
                type: uri
                index: 10
              value:
                short: An Israeli ID number
                constraint:
                  il-id-chk:
                    human: Israeli ID must be 9-digits with a correct check-digit at the end.
                    source: http://fhir.health.gov.il/StructureDefinition/il-core-patient
                    severity: error
                    expression: "matches('[0-9]{9}') and\r\nsubstring(8,1).toInteger()=\r\n(10-((substring(0,1).toInteger() +\r\nsubstring(1,1).toInteger()*2 mod 10 +\r\nsubstring(1,1).toInteger()*2 div 10 +\r\nsubstring(2,1).toInteger() +\r\nsubstring(3,1).toInteger()*2 mod 10 +\r\nsubstring(3,1).toInteger()*2 div 10 +\r\nsubstring(4,1).toInteger() +\r\nsubstring(5,1).toInteger()*2 mod 10 +\r\nsubstring(5,1).toInteger()*2 div 10 +\r\nsubstring(6,1).toInteger() +\r\nsubstring(7,1).toInteger()*2 mod 10 +\r\nsubstring(7,1).toInteger()*2 div 10) mod 10)) mod 10"
                index: 11
              assigner:
                type: Reference
                refers: ['http://fhir.health.gov.il/StructureDefinition/il-core-organization']
                index: 12
        pna-id:
          match: {system: 'http://fhir.health.gov.il/identifier/pna-national-id'}
          schema:
            short: Palestinian National Identifier
            mustSupport: false
            index: 13
            elements:
              system:
                pattern: {type: uri, value: 'http://fhir.health.gov.il/identifier/pna-national-id'}
                type: uri
                index: 14
              value: {short: A Palestininan ID number, index: 15}
        ppn:
          match: {system: null}
          schema:
            short: Passport Number
            mustSupport: false
            array: true
            index: 16
            elements:
              type:
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: PPN, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                type: CodeableConcept
                index: 17
              system:
                binding: {strength: required, valueSet: 'http://fhir.health.gov.il/ValueSet/passport-uri'}
                index: 18
              value: {short: Passport Number, index: 19}
        enc:
          match: {system: 'http://fhir.health.gov.il/identifier/encrypted-id-primary-moh'}
          schema:
            short: Person's Identifier - MoH encrypted
            mustSupport: false
            array: true
            index: 20
            elements:
              system:
                pattern: {type: uri, value: 'http://fhir.health.gov.il/identifier/encrypted-id-primary-moh'}
                type: uri
                index: 21
              value: {short: An encrypted identifier, index: 22}
              assigner:
                type: Reference
                refers: ['http://fhir.health.gov.il/StructureDefinition/il-core-organization']
                index: 23
  telecom:
    elements:
      system: {mustSupport: true, index: 47}
      value: {mustSupport: true, index: 48}
      use: {mustSupport: true, index: 49}
    required: [system, value]
  generalPractitioner:
    type: Reference
    refers: ['http://fhir.health.gov.il/StructureDefinition/il-core-organization', 'http://fhir.health.gov.il/StructureDefinition/il-core-practitioner', 'http://fhir.health.gov.il/StructureDefinition/il-core-practitioner-role']
    index: 55
  gender: {mustSupport: true, index: 50}
  contact:
    elements:
      organization:
        type: Reference
        refers: ['http://fhir.health.gov.il/StructureDefinition/il-core-organization']
        index: 53
package_version: 0.1.0
extensions:
  hmo: {url: 'http://fhir.health.gov.il/StructureDefinition/ext-il-hmo', min: 0, max: 1, short: 'Extension: Israel Core HMO (קופת חולים)', type: Extension, mustSupport: true, index: 1}
  parentName: {url: 'http://fhir.health.gov.il/StructureDefinition/ext-administrative-parent-name', min: 0, short: 'Extension: Administrative Parent Name', type: Extension, mustSupport: true, index: 2}
  birthPlace: {url: 'http://hl7.org/fhir/StructureDefinition/patient-birthPlace', min: 0, max: 1, type: Extension, short: 'Extension: Place of Birth for patient', index: 3}
  immigration: {url: 'http://fhir.health.gov.il/StructureDefinition/ext-patient-immigration', min: 0, type: Extension, short: 'Extension: Patient Immigration', index: 4}
  birthSex: {url: 'http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex', min: 0, max: 1, type: Extension, short: 'Extension: US Core Birth Sex Extension', index: 5}
class: profile
kind: resource
url: http://fhir.health.gov.il/StructureDefinition/il-core-patient
base: http://hl7.org/fhir/StructureDefinition/Patient
version: 0.12.1
required: [birthDate, gender, identifier, name]