PackagesCanonicalsLogsProblems
    Packages
    de.gematik.erezept-workflow.r4@1.5.0-beta6
    https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_PAR_EU_CloseOperation_Input
description: This profile defines the parameters for receiving dispense information for a prescription that was redeemed in the EU
package_name: de.gematik.erezept-workflow.r4
derivation: constraint
name: GEM_ERP_PR_PAR_EU_CloseOperation_Input
type: Parameters
elements:
  meta:
    index: 0
    elements:
      profile:
        pattern: {type: Canonical, value: 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_PAR_EU_CloseOperation_Input|1.5'}
        index: 1
    required: [profile]
  parameter:
    mustSupport: true
    array: true
    min: 4
    index: 2
    slicing:
      rules: closed
      discriminator:
      - {path: name, type: pattern}
      min: 4
      slices:
        rxDispensation:
          match: {name: rxDispensation}
          schema:
            constraint:
              workflow-parameters-close-dispense-medication-references: {human: 'If a reference from a MedicationDispense to a Medication exists, the reference must resolve to the Medication.', source: 'https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_PAR_EU_CloseOperation_Input', severity: error, expression: 'part.where(name = ''medicationDispense'').resource.medication.ofType(Reference).reference.exists() implies ((part.where(name = ''medicationDispense'').resource.medication.reference.split(''/'').last().split('':'').last()) = (part.where(name = ''medication'').resource.id))'}
            array: true
            min: 1
            _required: true
            index: 3
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: rxDispensation}
                index: 4
              value:
                choices: []
                index: 6
              resource: {index: 7}
              part:
                mustSupport: true
                array: true
                min: 2
                index: 8
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 2
                  slices:
                    medicationDispense:
                      match: {name: medicationDispense}
                      schema:
                        type: BackboneElement
                        _required: true
                        index: 9
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: medicationDispense}
                            index: 10
                          value:
                            choices: []
                            index: 12
                          resource: {type: MedicationDispense, index: 13}
                          part: {index: 14}
                        required: [resource]
                    medication:
                      match: {name: medication}
                      schema:
                        type: BackboneElement
                        _required: true
                        index: 15
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: medication}
                            index: 16
                          value:
                            choices: []
                            index: 18
                          resource: {type: Medication, index: 19}
                          part: {index: 20}
                        required: [resource]
        practitionerData:
          match: {name: practitionerData}
          schema:
            _required: true
            index: 21
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: practitionerData}
                index: 22
              value:
                choices: []
                index: 24
              resource: {type: Practitioner, index: 25}
              part: {index: 26}
        organizationData:
          match: {name: organizationData}
          schema:
            _required: true
            index: 27
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: organizationData}
                index: 28
              value:
                choices: []
                index: 30
              resource: {type: Organization, index: 31}
              part: {index: 32}
        practitionerRoleData:
          match: {name: practitionerRoleData}
          schema:
            _required: true
            index: 33
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: practitionerRoleData}
                index: 34
              value:
                choices: []
                index: 36
              resource: {type: PractitionerRole, index: 37}
              part: {index: 38}
package_version: 1.5.0-beta6
class: profile
kind: resource
url: https://gematik.de/fhir/erp/StructureDefinition/GEM_ERP_PR_PAR_EU_CloseOperation_Input
base: http://hl7.org/fhir/StructureDefinition/Parameters
version: '1.5'
required: [meta]