PackagesCanonicalsLogsProblems
    Packages
    lean.sa.fhir.core@0.0.1
    http://lean.sa/fhir/lean/core/StructureDefinition/lean-core-patient
description: The Lean Core Patient Profile inherits from the FHIR [Patient](https://hl7.org/fhir/R4/patient.html) resource; refer to it for scope and usage definitions. This profile meets the requirements of the . It sets minimum expectations for the Patient resource to record, search, and fetch basic demographics and other administrative information about an individual patient. It specifies which core elements, extensions, vocabularies, and value sets **SHALL** be present and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption.
package_name: lean.sa.fhir.core
derivation: constraint
name: LeanCorePatientProfile
type: Patient
elements:
  address:
    mustSupport: true
    index: 26
    elements:
      line: {mustSupport: true, index: 27}
      city: {mustSupport: true, index: 28}
      state: {mustSupport: true, index: 29}
      postalCode: {mustSupport: true, index: 30}
  meta:
    index: 0
    elements:
      profile:
        pattern: {type: Canonical, value: 'http://lean.sa/fhir/lean/core/StructureDefinition/lean-core-patient'}
        index: 1
    required: [profile]
  name:
    mustSupport: true
    index: 12
    extensions:
      leanHumanLanguageExtension: {url: 'http://lean.sa/fhir/lean/core/StructureDefinition/extension-human-language', type: Extension, isModifier: false, index: 13}
    elements:
      extension:
        type: Extension
        isModifier: false
        url: http://lean.sa/fhir/lean/core/StructureDefinition/extension-human-language
        index: 13
        slicing:
          slices:
            leanHumanLanguageExtension:
              match: {}
              schema: {type: Extension, isModifier: false, url: 'http://lean.sa/fhir/lean/core/StructureDefinition/extension-human-language', index: 13}
      use: {mustSupport: true, index: 14}
      text: {mustSupport: true, index: 15}
      family: {mustSupport: true, index: 16}
      given: {mustSupport: true, index: 17}
    required: [text, given, family]
  birthDate: {mustSupport: true, index: 25}
  extension:
    type: Extension
    isModifier: false
    url: http://lean.sa/fhir/lean/core/StructureDefinition/extension-patient-nationality
    index: 2
    slicing:
      slices:
        leanPatientNationalityExtension:
          match: {}
          schema: {type: Extension, isModifier: false, url: 'http://lean.sa/fhir/lean/core/StructureDefinition/extension-patient-nationality', index: 2}
        leanGenderExtension:
          match: {}
          schema: {type: Extension, isModifier: false, url: 'http://lean.sa/fhir/lean/core/StructureDefinition/extension-gender', index: 3}
  active: {index: 11}
  identifier:
    mustSupport: true
    index: 4
    elements:
      system: {mustSupport: true, index: 5}
      value: {mustSupport: true, index: 6}
    required: [value, system]
    slicing:
      rules: open
      description: 'Based on the system property, differentiate various patient business identifiers. '
      discriminator:
      - {path: system, type: value}
      min: 1
      slices:
        NationalID:
          match: {system: 'http://lean.sa/fhir/moi/patidentifier/nid'}
          schema:
            mustSupport: true
            _required: true
            index: 7
            elements:
              use:
                pattern: {type: Code, value: official}
                index: 8
              system:
                pattern: {type: Uri, value: 'http://lean.sa/fhir/moi/patidentifier/nid'}
                mustSupport: true
                index: 9
              value: {mustSupport: true, index: 10}
            required: [value, system]
  telecom:
    mustSupport: true
    index: 18
    elements:
      system: {mustSupport: true, index: 19}
      value: {mustSupport: true, index: 20}
    required: [value, system]
    slicing:
      rules: open
      description: 'telecom can have email, phone number etc. At least one of the telecom repetitions shall have phone number. '
      discriminator:
      - {path: system, type: value}
      min: 1
      slices:
        PhoneNumber:
          match: {system: phone}
          schema:
            _required: true
            index: 21
            elements:
              system:
                pattern: {type: Code, value: phone}
                index: 22
              value: {index: 23}
            required: [value, system]
  gender: {mustSupport: true, index: 24}
  maritalStatus: {mustSupport: true, index: 31}
package_version: 0.0.1
extensions:
  leanPatientNationalityExtension: {url: 'http://lean.sa/fhir/lean/core/StructureDefinition/extension-patient-nationality', type: Extension, isModifier: false, index: 2}
  leanGenderExtension: {url: 'http://lean.sa/fhir/lean/core/StructureDefinition/extension-gender', type: Extension, isModifier: false, index: 3}
class: profile
kind: resource
url: http://lean.sa/fhir/lean/core/StructureDefinition/lean-core-patient
base: http://hl7.org/fhir/StructureDefinition/Patient
version: 1.0.0
required: [gender, name, identifier, birthDate, meta, telecom, active]