PackagesCanonicalsLogsProblems
    Packages
    de.medizininformatikinitiative.kerndatensatz.person@2024.0.0
    https://www.medizininformatik-initiative.de/fhir/core/modul-person/StructureDefinition/Patient
description: Dieses Profil beschreibt eine Patient*in in der Medizininformatik-Initiative.
package_name: de.medizininformatikinitiative.kerndatensatz.person
derivation: constraint
name: MII_PR_Person_Patient
type: Patient
elements:
  address:
    mustSupport: true
    index: 54
    slicing:
      rules: open
      discriminator:
      - {path: $this, type: pattern}
      min: null
      slices:
        Strassenanschrift:
          match: {type: both}
          schema:
            constraint:
              pat-cnt-2or3-char: {human: 'The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.', source: 'https://www.medizininformatik-initiative.de/fhir/core/modul-person/StructureDefinition/Patient', severity: warning, expression: 'country.empty() or (country.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-2'') or country.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-3''))'}
            index: 55
            type: Address
            mustSupport: true
            array: true
            elements:
              extension:
                mustSupport: true
                index: 56
                slicing:
                  slices:
                    Stadtteil:
                      match: {}
                      schema: {mustSupport: true, index: 56}
              type: {mustSupport: true, index: 57}
              line:
                mustSupport: true
                index: 58
                extensions:
                  Strasse: {url: null, mustSupport: true, index: 59}
                  Hausnummer: {url: null, mustSupport: true, index: 60}
                  Adresszusatz: {url: null, mustSupport: true, index: 61}
                  Postfach: {url: null, max: 0, mustSupport: true, index: 62}
                elements:
                  extension:
                    mustSupport: true
                    index: 59
                    slicing:
                      slices:
                        Strasse:
                          match: {}
                          schema: {mustSupport: true, index: 59}
                        Hausnummer:
                          match: {}
                          schema: {mustSupport: true, index: 60}
                        Adresszusatz:
                          match: {}
                          schema: {mustSupport: true, index: 61}
                        Postfach:
                          match: {}
                          schema: {mustSupport: true, index: 62}
                          max: 0
              city:
                mustSupport: true
                index: 63
                extensions:
                  gemeindeschluessel: {url: 'http://fhir.de/StructureDefinition/destatis/ags', min: 0, max: 1, type: Extension, mustSupport: true, index: 64}
                elements:
                  extension:
                    type: Extension
                    mustSupport: true
                    url: http://fhir.de/StructureDefinition/destatis/ags
                    index: 64
                    slicing:
                      slices:
                        gemeindeschluessel:
                          match: {}
                          schema: {type: Extension, mustSupport: true, url: 'http://fhir.de/StructureDefinition/destatis/ags', index: 64}
                          min: 0
                          max: 1
              postalCode: {mustSupport: true, index: 65}
              country: {mustSupport: true, index: 66}
            extensions:
              Stadtteil: {url: null, mustSupport: true, index: 56}
            required: [country, city, postalCode, line, type]
            pattern:
              type: Address
              value: {type: both}
        Postfach:
          match: {type: postal}
          schema:
            constraint:
              pat-cnt-2or3-char: {human: 'The content of the country element (if present) SHALL be selected EITHER from ValueSet ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2 OR MAY be selected from ISO Country Alpha-3 Value Set http://hl7.org/fhir/ValueSet/iso3166-1-3, IF the country is not specified in value Set ISO Country Alpha-2 http://hl7.org/fhir/ValueSet/iso3166-1-2.', source: 'https://www.medizininformatik-initiative.de/fhir/core/modul-person/StructureDefinition/Patient', severity: warning, expression: 'country.empty() or (country.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-2'') or country.memberOf(''http://hl7.org/fhir/ValueSet/iso3166-1-3''))'}
            index: 67
            type: Address
            mustSupport: true
            array: true
            elements:
              extension:
                mustSupport: true
                index: 68
                slicing:
                  slices:
                    Stadtteil:
                      match: {}
                      schema: {mustSupport: true, index: 68}
              type: {mustSupport: true, index: 69}
              line:
                mustSupport: true
                index: 70
                extensions:
                  Strasse: {url: null, max: 0, index: 71}
                  Hausnummer: {url: null, max: 0, index: 72}
                  Adresszusatz: {url: null, max: 0, index: 73}
                  Postfach: {url: null, mustSupport: true, index: 74}
                elements:
                  extension:
                    index: 71
                    slicing:
                      slices:
                        Strasse:
                          match: {}
                          schema: {index: 71}
                          max: 0
                        Hausnummer:
                          match: {}
                          schema: {index: 72}
                          max: 0
                        Adresszusatz:
                          match: {}
                          schema: {index: 73}
                          max: 0
                        Postfach:
                          match: {}
                          schema: {mustSupport: true, index: 74}
              city:
                mustSupport: true
                index: 75
                extensions:
                  gemeindeschluessel: {url: 'http://fhir.de/StructureDefinition/destatis/ags', min: 0, max: 1, type: Extension, mustSupport: true, index: 76}
                elements:
                  extension:
                    type: Extension
                    mustSupport: true
                    url: http://fhir.de/StructureDefinition/destatis/ags
                    index: 76
                    slicing:
                      slices:
                        gemeindeschluessel:
                          match: {}
                          schema: {type: Extension, mustSupport: true, url: 'http://fhir.de/StructureDefinition/destatis/ags', index: 76}
                          min: 0
                          max: 1
              postalCode: {mustSupport: true, index: 77}
              country: {mustSupport: true, index: 78}
            extensions:
              Stadtteil: {url: null, mustSupport: true, index: 68}
            required: [country, city, postalCode, line, type]
            pattern:
              type: Address
              value: {type: postal}
  meta:
    mustSupport: true
    index: 1
    elements:
      profile: {mustSupport: true, index: 2}
  name:
    mustSupport: true
    index: 29
    slicing:
      rules: open
      discriminator:
      - {path: $this, type: pattern}
      min: null
      slices:
        name:
          match: {use: official}
          schema:
            type: HumanName
            mustSupport: true
            pattern:
              type: HumanName
              value: {use: official}
            index: 30
            elements:
              use: {mustSupport: true, index: 31}
              family:
                mustSupport: true
                index: 32
                extensions:
                  namenszusatz: {url: null, mustSupport: true, index: 33}
                  nachname: {url: null, mustSupport: true, index: 34}
                  vorsatzwort: {url: null, mustSupport: true, index: 35}
                elements:
                  extension:
                    mustSupport: true
                    index: 33
                    slicing:
                      slices:
                        namenszusatz:
                          match: {}
                          schema: {mustSupport: true, index: 33}
                        nachname:
                          match: {}
                          schema: {mustSupport: true, index: 34}
                        vorsatzwort:
                          match: {}
                          schema: {mustSupport: true, index: 35}
              given: {mustSupport: true, index: 36}
              prefix:
                mustSupport: true
                index: 37
                extensions:
                  prefix-qualifier: {url: null, mustSupport: true, index: 38}
                elements:
                  extension:
                    mustSupport: true
                    index: 38
                    slicing:
                      slices:
                        prefix-qualifier:
                          match: {}
                          schema: {mustSupport: true, index: 38}
            required: [given, family, use]
        geburtsname:
          match: {use: maiden}
          schema:
            type: HumanName
            mustSupport: true
            pattern:
              type: HumanName
              value: {use: maiden}
            index: 39
            elements:
              use: {mustSupport: true, index: 40}
              family:
                mustSupport: true
                index: 41
                extensions:
                  namenszusatz: {url: null, mustSupport: true, index: 42}
                  nachname: {url: null, mustSupport: true, index: 43}
                  vorsatzwort: {url: null, mustSupport: true, index: 44}
                elements:
                  extension:
                    mustSupport: true
                    index: 42
                    slicing:
                      slices:
                        namenszusatz:
                          match: {}
                          schema: {mustSupport: true, index: 42}
                        nachname:
                          match: {}
                          schema: {mustSupport: true, index: 43}
                        vorsatzwort:
                          match: {}
                          schema: {mustSupport: true, index: 44}
              given: {index: 45}
              prefix:
                index: 46
                extensions:
                  prefix-qualifier: {url: null, mustSupport: true, index: 47}
                elements:
                  extension:
                    mustSupport: true
                    index: 47
                    slicing:
                      slices:
                        prefix-qualifier:
                          match: {}
                          schema: {mustSupport: true, index: 47}
            required: [family, use]
  birthDate:
    mustSupport: true
    index: 50
    extensions:
      data-absent-reason: {url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', min: 0, max: 1, type: Extension, mustSupport: true, index: 51}
    elements:
      extension:
        type: Extension
        mustSupport: true
        url: http://hl7.org/fhir/StructureDefinition/data-absent-reason
        index: 51
        slicing:
          slices:
            data-absent-reason:
              match: {}
              schema: {type: Extension, mustSupport: true, url: 'http://hl7.org/fhir/StructureDefinition/data-absent-reason', index: 51}
              min: 0
              max: 1
  deceased:
    mustSupport: true
    choices: []
    index: 53
  link:
    mustSupport: true
    index: 79
    elements:
      other: {mustSupport: true, index: 80}
      type: {mustSupport: true, index: 81}
  id: {mustSupport: true, index: 0}
  identifier:
    mustSupport: true
    index: 3
    slicing:
      rules: open
      discriminator:
      - {path: $this, type: pattern}
      min: null
      slices:
        versichertenId_GKV:
          match:
            type:
              coding:
              - {code: GKV, system: 'http://fhir.de/CodeSystem/identifier-type-de-basis'}
          schema:
            type: Identifier
            mustSupport: true
            pattern:
              type: Identifier
              value:
                type:
                  coding:
                  - {code: GKV, system: 'http://fhir.de/CodeSystem/identifier-type-de-basis'}
            index: 4
            elements:
              type: {mustSupport: true, index: 5}
              system: {mustSupport: true, index: 6}
              value: {mustSupport: true, index: 7}
              assigner:
                mustSupport: true
                index: 8
                elements:
                  identifier:
                    type: Identifier
                    mustSupport: true
                    index: 9
                    elements:
                      type: {mustSupport: true, index: 10}
                      system: {mustSupport: true, index: 11}
                      value: {mustSupport: true, index: 12}
                required: [identifier]
            required: [assigner, type]
        pid:
          match:
            type:
              coding:
              - {code: MR, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
          schema:
            type: Identifier
            mustSupport: true
            pattern:
              type: Identifier
              value:
                type:
                  coding:
                  - {code: MR, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
            array: true
            index: 13
            elements:
              type: {mustSupport: true, index: 14}
              system: {mustSupport: true, index: 15}
              value: {mustSupport: true, index: 16}
              assigner:
                mustSupport: true
                index: 17
                elements:
                  identifier:
                    elements:
                      type:
                        mustSupport: true
                        pattern:
                          type: CodeableConcept
                          value:
                            coding:
                            - {code: XX, system: 'http://terminology.hl7.org/CodeSystem/v2-0203'}
                        index: 18
                      system:
                        constraint:
                          mii-pat-2: {human: Entweder IKNR oder MII Core Location Identifier muss verwendet werden, source: 'https://www.medizininformatik-initiative.de/fhir/core/modul-person/StructureDefinition/Patient', severity: error, expression: '$this = ''http://fhir.de/sid/arge-ik/iknr'' or $this = ''https://www.medizininformatik-initiative.de/fhir/core/CodeSystem/core-location-identifier'''}
                        index: 19
        versichertennummer_pkv:
          match:
            type:
              coding:
              - {code: PKV, system: 'http://fhir.de/CodeSystem/identifier-type-de-basis'}
          schema:
            type: Identifier
            mustSupport: true
            pattern:
              type: Identifier
              value:
                type:
                  coding:
                  - {code: PKV, system: 'http://fhir.de/CodeSystem/identifier-type-de-basis'}
            index: 20
            elements:
              use: {mustSupport: true, index: 21}
              type: {mustSupport: true, index: 22}
              value: {mustSupport: true, index: 23}
              assigner:
                mustSupport: true
                index: 24
                elements:
                  identifier:
                    elements:
                      type: {mustSupport: true, index: 25}
                      system: {mustSupport: true, index: 26}
                      value: {mustSupport: true, index: 27}
                  display: {mustSupport: true, index: 28}
            required: [type]
  gender:
    mustSupport: true
    index: 48
    extensions:
      other-amtlich: {url: 'http://fhir.de/StructureDefinition/gender-amtlich-de', min: 0, max: 1, type: Extension, mustSupport: true, index: 49}
    elements:
      extension:
        type: Extension
        mustSupport: true
        url: http://fhir.de/StructureDefinition/gender-amtlich-de
        index: 49
        slicing:
          slices:
            other-amtlich:
              match: {}
              schema: {type: Extension, mustSupport: true, url: 'http://fhir.de/StructureDefinition/gender-amtlich-de', index: 49}
              min: 0
              max: 1
package_version: 2024.0.0
class: profile
kind: resource
url: https://www.medizininformatik-initiative.de/fhir/core/modul-person/StructureDefinition/Patient
base: http://hl7.org/fhir/StructureDefinition/Patient
version: 2024.0.0