PackagesCanonicalsLogsProblems
    Packages
    de.gematik.dev.epa.medication@1.1.0-alpha.6
    https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-manage-medicationstatement-input-parameters
description: EPA Operation manage medicationstatement Input-Parameters
package_name: de.gematik.dev.epa.medication
derivation: constraint
name: EPAOpManageMedicationStatementInputParameters
type: Parameters
elements:
  parameter:
    array: true
    min: 2
    index: 0
    slicing:
      rules: closed
      discriminator:
      - {path: name, type: pattern}
      min: 2
      slices:
        medicationStatement:
          match: {name: medicationStatement}
          schema:
            mustSupport: true
            _required: true
            index: 1
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: medicationStatement}
                index: 2
              value:
                choices: []
                index: 4
              resource: {type: MedicationStatement, index: 5}
            required: [resource]
        performer:
          match: {name: performer}
          schema:
            mustSupport: true
            _required: true
            index: 6
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: performer}
                index: 7
              value:
                choices: []
                index: 9
              resource: {index: 10}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 11
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        _required: true
                        index: 12
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 13
                          value:
                            choices: []
                            index: 15
                          resource: {type: Organization, index: 16}
                          part: {index: 17}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 18
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 19
                          value:
                            choices: []
                            index: 21
                          resource: {type: Practitioner, index: 22}
                          part: {index: 23}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 24
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 25
                          value:
                            choices: []
                            index: 27
                          resource: {type: PractitionerRole, index: 28}
                          part: {index: 29}
                        required: [resource]
            required: [part]
        enterer:
          match: {name: enterer}
          schema:
            mustSupport: true
            index: 30
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: enterer}
                index: 31
              value:
                choices: []
                index: 33
              resource: {index: 34}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 35
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        index: 36
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 37
                          value:
                            choices: []
                            index: 39
                          resource: {type: Organization, index: 40}
                          part: {index: 41}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 42
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 43
                          value:
                            choices: []
                            index: 45
                          resource: {type: Practitioner, index: 46}
                          part: {index: 47}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 48
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 49
                          value:
                            choices: []
                            index: 51
                          resource: {type: PractitionerRole, index: 52}
                          part: {index: 53}
                        required: [resource]
            required: [part]
        author:
          match: {name: author}
          schema:
            mustSupport: true
            index: 54
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: author}
                index: 55
              value:
                choices: []
                index: 57
              resource: {index: 58}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 59
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        index: 60
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 61
                          value:
                            choices: []
                            index: 63
                          resource: {type: Organization, index: 64}
                          part: {index: 65}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 66
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 67
                          value:
                            choices: []
                            index: 69
                          resource: {type: Practitioner, index: 70}
                          part: {index: 71}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 72
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 73
                          value:
                            choices: []
                            index: 75
                          resource: {type: PractitionerRole, index: 76}
                          part: {index: 77}
                        required: [resource]
            required: [part]
        unconfirmedAuthor:
          match: {name: unconfirmedAuthor}
          schema:
            mustSupport: true
            index: 78
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: unconfirmedAuthor}
                index: 79
              value:
                choices: []
                index: 81
              resource: {index: 82}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 83
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        index: 84
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 85
                          value:
                            choices: []
                            index: 87
                          resource: {type: Organization, index: 88}
                          part: {index: 89}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 90
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 91
                          value:
                            choices: []
                            index: 93
                          resource: {type: Practitioner, index: 94}
                          part: {index: 95}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 96
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 97
                          value:
                            choices: []
                            index: 99
                          resource: {type: PractitionerRole, index: 100}
                          part: {index: 101}
                        required: [resource]
            required: [part]
        informant:
          match: {name: informant}
          schema:
            mustSupport: true
            index: 102
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: informant}
                index: 103
              value:
                choices: []
                index: 105
              resource: {index: 106}
              part:
                mustSupport: true
                index: 107
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 1
                  slices:
                    professionals:
                      match: {name: professionals}
                      schema:
                        type: BackboneElement
                        index: 108
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: professionals}
                            index: 109
                          value:
                            choices: []
                            index: 111
                          resource: {index: 112}
                          part:
                            mustSupport: true
                            array: true
                            min: 1
                            max: 3
                            index: 113
                            slicing:
                              rules: closed
                              discriminator:
                              - {path: name, type: pattern}
                              min: 1
                              max: 3
                              slices:
                                organization:
                                  match: {name: organization}
                                  schema:
                                    type: BackboneElement
                                    _required: true
                                    index: 114
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: organization}
                                        index: 115
                                      value:
                                        choices: []
                                        index: 117
                                      resource: {type: Organization, index: 118}
                                      part: {index: 119}
                                    required: [resource]
                                practitioner:
                                  match: {name: practitioner}
                                  schema:
                                    type: BackboneElement
                                    index: 120
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: practitioner}
                                        index: 121
                                      value:
                                        choices: []
                                        index: 123
                                      resource: {type: Practitioner, index: 124}
                                      part: {index: 125}
                                    required: [resource]
                                practitionerRole:
                                  match: {name: practitionerRole}
                                  schema:
                                    type: BackboneElement
                                    index: 126
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: practitionerRole}
                                        index: 127
                                      value:
                                        choices: []
                                        index: 129
                                      resource: {type: PractitionerRole, index: 130}
                                      part: {index: 131}
                                    required: [resource]
                        required: [part]
                    persons:
                      match: {name: persons}
                      schema:
                        type: BackboneElement
                        index: 132
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: persons}
                            index: 133
                          value:
                            choices: []
                            index: 135
                          resource: {index: 136}
                          part:
                            mustSupport: true
                            index: 137
                            slicing:
                              rules: closed
                              discriminator:
                              - {path: name, type: pattern}
                              min: 1
                              max: 1
                              slices:
                                patient:
                                  match: {name: patient}
                                  schema:
                                    type: BackboneElement
                                    index: 138
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: patient}
                                        index: 139
                                      value:
                                        choices: [valueIdentifier]
                                        index: 141
                                      valueIdentifier: {type: Identifier, choiceOf: value, index: 142}
                                      resource: {index: 143}
                                      part: {index: 144}
                                    required: [valueIdentifier, value]
                                relatedPerson:
                                  match: {name: relatedPerson}
                                  schema:
                                    type: BackboneElement
                                    index: 145
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: relatedPerson}
                                        index: 146
                                      value:
                                        choices: []
                                        index: 148
                                      resource: {type: RelatedPerson, index: 149}
                                      part: {index: 150}
                                    required: [resource]
                        required: [part]
            required: [part]
package_version: 1.1.0-alpha.6
class: profile
kind: resource
url: https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-manage-medicationstatement-input-parameters
base: http://hl7.org/fhir/StructureDefinition/Parameters
version: 1.1.0