PackagesCanonicalsLogsProblems
    Packages
    de.gematik.epa.medication@1.1.1
    https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-add-amts-observation-in-parameters
description: EPA Operation Add AMTS-rZI Observation Input-Parameters
package_name: de.gematik.epa.medication
derivation: constraint
name: EPAOpAddAMTSObservationInParameters
type: Parameters
elements:
  parameter:
    array: true
    min: 2
    index: 0
    slicing:
      rules: closed
      discriminator:
      - {path: name, type: pattern}
      min: 2
      slices:
        breastfeedingStatus:
          match: {name: breastfeedingStatus}
          schema:
            mustSupport: true
            index: 25
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: breastfeedingStatus}
                index: 26
              value:
                choices: []
                index: 28
              resource: {type: Observation, index: 29}
              part: {index: 30}
            required: [resource]
        enterer:
          match: {name: enterer}
          schema:
            mustSupport: true
            index: 67
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: enterer}
                index: 68
              value:
                choices: []
                index: 70
              resource: {index: 71}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 72
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        index: 73
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 74
                          value:
                            choices: []
                            index: 76
                          resource: {type: Organization, index: 77}
                          part: {index: 78}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 79
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 80
                          value:
                            choices: []
                            index: 82
                          resource: {type: Practitioner, index: 83}
                          part: {index: 84}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 85
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 86
                          value:
                            choices: []
                            index: 88
                          resource: {type: PractitionerRole, index: 89}
                          part: {index: 90}
                        required: [resource]
            required: [part]
        bodyWeight:
          match: {name: bodyWeight}
          schema:
            mustSupport: true
            index: 7
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: bodyWeight}
                index: 8
              value:
                choices: []
                index: 10
              resource: {type: Observation, index: 11}
              part: {index: 12}
            required: [resource]
        pregnancyStatus:
          match: {name: pregnancyStatus}
          schema:
            mustSupport: true
            index: 19
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: pregnancyStatus}
                index: 20
              value:
                choices: []
                index: 22
              resource: {type: Observation, index: 23}
              part: {index: 24}
            required: [resource]
        estimatedDateOfDelivery:
          match: {name: estimatedDateOfDelivery}
          schema:
            mustSupport: true
            index: 31
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: estimatedDateOfDelivery}
                index: 32
              value:
                choices: []
                index: 34
              resource: {type: Observation, index: 35}
              part: {index: 36}
            required: [resource]
        bodyHeight:
          match: {name: bodyHeight}
          schema:
            mustSupport: true
            index: 1
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: bodyHeight}
                index: 2
              value:
                choices: []
                index: 4
              resource: {type: Observation, index: 5}
              part: {index: 6}
            required: [resource]
        creatinine:
          match: {name: creatinine}
          schema:
            mustSupport: true
            index: 13
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: creatinine}
                index: 14
              value:
                choices: []
                index: 16
              resource: {type: Observation, index: 17}
              part: {index: 18}
            required: [resource]
        glomerularFiltrationRate:
          match: {name: glomerularFiltrationRate}
          schema:
            mustSupport: true
            index: 37
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: glomerularFiltrationRate}
                index: 38
              value:
                choices: []
                index: 40
              resource: {type: Observation, index: 41}
              part: {index: 42}
            required: [resource]
        author:
          match: {name: author}
          schema:
            mustSupport: true
            index: 91
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: author}
                index: 92
              value:
                choices: []
                index: 94
              resource: {index: 95}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 96
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        index: 97
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 98
                          value:
                            choices: []
                            index: 100
                          resource: {type: Organization, index: 101}
                          part: {index: 102}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 103
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 104
                          value:
                            choices: []
                            index: 106
                          resource: {type: Practitioner, index: 107}
                          part: {index: 108}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 109
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 110
                          value:
                            choices: []
                            index: 112
                          resource: {type: PractitionerRole, index: 113}
                          part: {index: 114}
                        required: [resource]
            required: [part]
        unconfirmedAuthor:
          match: {name: unconfirmedAuthor}
          schema:
            mustSupport: true
            index: 115
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: unconfirmedAuthor}
                index: 116
              value:
                choices: []
                index: 118
              resource: {index: 119}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 120
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        index: 121
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 122
                          value:
                            choices: []
                            index: 124
                          resource: {type: Organization, index: 125}
                          part: {index: 126}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 127
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 128
                          value:
                            choices: []
                            index: 130
                          resource: {type: Practitioner, index: 131}
                          part: {index: 132}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 133
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 134
                          value:
                            choices: []
                            index: 136
                          resource: {type: PractitionerRole, index: 137}
                          part: {index: 138}
                        required: [resource]
            required: [part]
        informant:
          match: {name: informant}
          schema:
            mustSupport: true
            index: 139
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: informant}
                index: 140
              value:
                choices: []
                index: 142
              resource: {index: 143}
              part:
                mustSupport: true
                index: 144
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 1
                  slices:
                    professionals:
                      match: {name: professionals}
                      schema:
                        type: BackboneElement
                        index: 145
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: professionals}
                            index: 146
                          value:
                            choices: []
                            index: 148
                          resource: {index: 149}
                          part:
                            mustSupport: true
                            array: true
                            min: 1
                            max: 3
                            index: 150
                            slicing:
                              rules: closed
                              discriminator:
                              - {path: name, type: pattern}
                              min: 1
                              max: 3
                              slices:
                                organization:
                                  match: {name: organization}
                                  schema:
                                    type: BackboneElement
                                    _required: true
                                    index: 151
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: organization}
                                        index: 152
                                      value:
                                        choices: []
                                        index: 154
                                      resource: {type: Organization, index: 155}
                                      part: {index: 156}
                                    required: [resource]
                                practitioner:
                                  match: {name: practitioner}
                                  schema:
                                    type: BackboneElement
                                    index: 157
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: practitioner}
                                        index: 158
                                      value:
                                        choices: []
                                        index: 160
                                      resource: {type: Practitioner, index: 161}
                                      part: {index: 162}
                                    required: [resource]
                                practitionerRole:
                                  match: {name: practitionerRole}
                                  schema:
                                    type: BackboneElement
                                    index: 163
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: practitionerRole}
                                        index: 164
                                      value:
                                        choices: []
                                        index: 166
                                      resource: {type: PractitionerRole, index: 167}
                                      part: {index: 168}
                                    required: [resource]
                        required: [part]
                    persons:
                      match: {name: persons}
                      schema:
                        type: BackboneElement
                        index: 169
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: persons}
                            index: 170
                          value:
                            choices: []
                            index: 172
                          resource: {index: 173}
                          part:
                            mustSupport: true
                            index: 174
                            slicing:
                              rules: closed
                              discriminator:
                              - {path: name, type: pattern}
                              min: 1
                              max: 1
                              slices:
                                patient:
                                  match: {name: patient}
                                  schema:
                                    type: BackboneElement
                                    index: 175
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: patient}
                                        index: 176
                                      value:
                                        choices: [valueIdentifier]
                                        index: 178
                                      valueIdentifier: {type: Identifier, choiceOf: value, index: 179}
                                      resource: {index: 180}
                                      part: {index: 181}
                                    required: [valueIdentifier, value]
                                relatedPerson:
                                  match: {name: relatedPerson}
                                  schema:
                                    type: BackboneElement
                                    index: 182
                                    elements:
                                      name:
                                        mustSupport: true
                                        pattern: {type: String, value: relatedPerson}
                                        index: 183
                                      value:
                                        choices: []
                                        index: 185
                                      resource: {type: RelatedPerson, index: 186}
                                      part: {index: 187}
                                    required: [resource]
                        required: [part]
            required: [part]
        performer:
          match: {name: performer}
          schema:
            mustSupport: true
            _required: true
            index: 43
            elements:
              name:
                mustSupport: true
                pattern: {type: String, value: performer}
                index: 44
              value:
                choices: []
                index: 46
              resource: {index: 47}
              part:
                mustSupport: true
                array: true
                min: 1
                max: 3
                index: 48
                slicing:
                  rules: closed
                  discriminator:
                  - {path: name, type: pattern}
                  min: 1
                  max: 3
                  slices:
                    organization:
                      match: {name: organization}
                      schema:
                        type: BackboneElement
                        _required: true
                        index: 49
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: organization}
                            index: 50
                          value:
                            choices: []
                            index: 52
                          resource: {type: Organization, index: 53}
                          part: {index: 54}
                        required: [resource]
                    practitioner:
                      match: {name: practitioner}
                      schema:
                        type: BackboneElement
                        index: 55
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitioner}
                            index: 56
                          value:
                            choices: []
                            index: 58
                          resource: {type: Practitioner, index: 59}
                          part: {index: 60}
                        required: [resource]
                    practitionerRole:
                      match: {name: practitionerRole}
                      schema:
                        type: BackboneElement
                        index: 61
                        elements:
                          name:
                            mustSupport: true
                            pattern: {type: String, value: practitionerRole}
                            index: 62
                          value:
                            choices: []
                            index: 64
                          resource: {type: PractitionerRole, index: 65}
                          part: {index: 66}
                        required: [resource]
            required: [part]
package_version: 1.1.1
class: profile
kind: resource
url: https://gematik.de/fhir/epa-medication/StructureDefinition/epa-op-add-amts-observation-in-parameters
base: http://hl7.org/fhir/StructureDefinition/Parameters
version: 1.1.1