PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.xver-r4.r3@0.1.0
    http://hl7.org/fhir/4.0/StructureDefinition/extension-Task.output.value
description: 'R4: `Task.output.value[x]` additional types (uuid, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage)'
package_name: hl7.fhir.uv.xver-r4.r3
derivation: constraint
name: ExtensionTask_Output_Value
type: Extension
elements:
  extension:
    base: {max: '*', min: 0, path: Extension.extension}
    array: true
    min: 1
    index: 0
    slicing:
      rules: open
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 1
      slices:
        valueParameterDefinition:
          match: {url: valueParameterDefinition}
          schema:
            short: 'R4: ParameterDefinition'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 190
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `ParameterDefinition` value
                _required: true
                index: 191
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 192
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: ParameterDefinition}
                    choices: [valueString]
                    index: 194
                  valueString:
                    type: string
                    pattern: {type: String, value: ParameterDefinition}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 195
                required: [url, valueString, value]
              name:
                url: name
                short: 'R4: name'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 197
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 198
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Name used to access the parameter value
                    choices: [valueCode]
                    index: 200
                  valueCode:
                    short: Name used to access the parameter value
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 201
                required: [url]
              use:
                url: use
                short: 'R4: use'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 202
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: use}
                    index: 203
                  value:
                    short: in | out
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 205
                  valueCode:
                    short: in | out
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 206
                required: [url, valueCode, value]
              min:
                url: min
                short: 'R4: min'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 207
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: min}
                    index: 208
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Minimum cardinality
                    choices: [valueInteger]
                    index: 210
                  valueInteger:
                    short: Minimum cardinality
                    type: integer
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 211
                required: [url]
              max:
                url: max
                short: 'R4: max'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 212
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: max}
                    index: 213
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Maximum cardinality (a number of *)
                    choices: [valueString]
                    index: 215
                  valueString:
                    short: Maximum cardinality (a number of *)
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 216
                required: [url]
              documentation:
                url: documentation
                short: 'R4: documentation'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 217
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: documentation}
                    index: 218
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: A brief description of the parameter
                    choices: [valueString]
                    index: 220
                  valueString:
                    short: A brief description of the parameter
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 221
                required: [url]
              type:
                url: type
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 222
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 223
                  value:
                    short: What type of value
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 225
                  valueCode:
                    short: What type of value
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 226
                required: [url, valueCode, value]
              profile:
                url: profile
                short: 'R4: profile additional types'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 227
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: profile}
                    index: 228
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: What profile the value is expected to be
                    choices: [valueUri]
                    index: 230
                  valueUri:
                    short: What profile the value is expected to be
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 231
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `ParameterDefinition` value
                index: 191
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 2
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `ParameterDefinition` value
                        _required: true
                        index: 191
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 192
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: ParameterDefinition}
                            choices: [valueString]
                            index: 194
                          valueString:
                            type: string
                            pattern: {type: String, value: ParameterDefinition}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 195
                        required: [url, valueString, value]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: name'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 197
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 198
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Name used to access the parameter value
                            choices: [valueCode]
                            index: 200
                          valueCode:
                            short: Name used to access the parameter value
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 201
                        required: [url]
                    use:
                      match: {url: use}
                      schema:
                        short: 'R4: use'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 202
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: use}
                            index: 203
                          value:
                            short: in | out
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 205
                          valueCode:
                            short: in | out
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 206
                        required: [url, valueCode, value]
                    min:
                      match: {url: min}
                      schema:
                        short: 'R4: min'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 207
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: min}
                            index: 208
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Minimum cardinality
                            choices: [valueInteger]
                            index: 210
                          valueInteger:
                            short: Minimum cardinality
                            type: integer
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 211
                        required: [url]
                    max:
                      match: {url: max}
                      schema:
                        short: 'R4: max'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 212
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: max}
                            index: 213
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Maximum cardinality (a number of *)
                            choices: [valueString]
                            index: 215
                          valueString:
                            short: Maximum cardinality (a number of *)
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 216
                        required: [url]
                    documentation:
                      match: {url: documentation}
                      schema:
                        short: 'R4: documentation'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 217
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: documentation}
                            index: 218
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A brief description of the parameter
                            choices: [valueString]
                            index: 220
                          valueString:
                            short: A brief description of the parameter
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 221
                        required: [url]
                    type:
                      match: {url: type}
                      schema:
                        short: 'R4: type'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 222
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: type}
                            index: 223
                          value:
                            short: What type of value
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 225
                          valueCode:
                            short: What type of value
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 226
                        required: [url, valueCode, value]
                    profile:
                      match: {url: profile}
                      schema:
                        short: 'R4: profile additional types'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 227
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: profile}
                            index: 228
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: What profile the value is expected to be
                            choices: [valueUri]
                            index: 230
                          valueUri:
                            short: What profile the value is expected to be
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 231
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueParameterDefinition}
                index: 232
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 234
            required: [url, extension]
        valueContributor:
          match: {url: valueContributor}
          schema:
            short: 'R4: Contributor'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 21
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Contributor` value
                _required: true
                index: 22
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 23
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: Contributor}
                    choices: [valueString]
                    index: 25
                  valueString:
                    type: string
                    pattern: {type: String, value: Contributor}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 26
                required: [url, valueString, value]
              type:
                url: type
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 29
                  value:
                    short: author | editor | reviewer | endorser
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 31
                  valueCode:
                    short: author | editor | reviewer | endorser
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 32
                required: [url, valueCode, value]
              name:
                url: name
                short: 'R4: name'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Who contributed the content
                    choices: [valueString]
                    index: 36
                  valueString:
                    short: Who contributed the content
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 37
                required: [url, valueString, value]
              contact:
                url: contact
                short: 'R4: contact'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 38
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `ContactDetail` value
                    _required: true
                    index: 40
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 41
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: ContactDetail}
                        choices: [valueString]
                        index: 43
                      valueString:
                        type: string
                        pattern: {type: String, value: ContactDetail}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 44
                    required: [url, valueString, value]
                  name:
                    url: name
                    short: 'R4: name'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 45
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 46
                      value:
                        short: Name of an individual to contact
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 48
                      valueString:
                        short: Name of an individual to contact
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 49
                    required: [url]
                  telecom:
                    url: telecom
                    short: 'R4: telecom'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 50
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: telecom}
                        index: 51
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Contact details for individual or organization
                        choices: [valueContactPoint]
                        index: 53
                      valueContactPoint:
                        short: Contact details for individual or organization
                        type: ContactPoint
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 54
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 39
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        _datatype:
                          match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `ContactDetail` value
                            _required: true
                            index: 40
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 41
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: ContactDetail}
                                choices: [valueString]
                                index: 43
                              valueString:
                                type: string
                                pattern: {type: String, value: ContactDetail}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 44
                            required: [url, valueString, value]
                        name:
                          match: {url: name}
                          schema:
                            short: 'R4: name'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 45
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 46
                              value:
                                short: Name of an individual to contact
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 48
                              valueString:
                                short: Name of an individual to contact
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 49
                            required: [url]
                        telecom:
                          match: {url: telecom}
                          schema:
                            short: 'R4: telecom'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 50
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: telecom}
                                index: 51
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Contact details for individual or organization
                                choices: [valueContactPoint]
                                index: 53
                              valueContactPoint:
                                short: Contact details for individual or organization
                                type: ContactPoint
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 54
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: contact}
                    index: 55
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 57
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Contributor` value
                index: 22
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 2
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `Contributor` value
                        _required: true
                        index: 22
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 23
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: Contributor}
                            choices: [valueString]
                            index: 25
                          valueString:
                            type: string
                            pattern: {type: String, value: Contributor}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 26
                        required: [url, valueString, value]
                    type:
                      match: {url: type}
                      schema:
                        short: 'R4: type'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 28
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: type}
                            index: 29
                          value:
                            short: author | editor | reviewer | endorser
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 31
                          valueCode:
                            short: author | editor | reviewer | endorser
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 32
                        required: [url, valueCode, value]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: name'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 33
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 34
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Who contributed the content
                            choices: [valueString]
                            index: 36
                          valueString:
                            short: Who contributed the content
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 37
                        required: [url, valueString, value]
                    contact:
                      match: {url: contact}
                      schema:
                        short: 'R4: contact'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 38
                        extensions:
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `ContactDetail` value
                            _required: true
                            index: 40
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 41
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: ContactDetail}
                                choices: [valueString]
                                index: 43
                              valueString:
                                type: string
                                pattern: {type: String, value: ContactDetail}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 44
                            required: [url, valueString, value]
                          name:
                            url: name
                            short: 'R4: name'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 45
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 46
                              value:
                                short: Name of an individual to contact
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 48
                              valueString:
                                short: Name of an individual to contact
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 49
                            required: [url]
                          telecom:
                            url: telecom
                            short: 'R4: telecom'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 50
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: telecom}
                                index: 51
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Contact details for individual or organization
                                choices: [valueContactPoint]
                                index: 53
                              valueContactPoint:
                                short: Contact details for individual or organization
                                type: ContactPoint
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 54
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 39
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                _datatype:
                                  match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: DataType slice for a FHIR R4 `ContactDetail` value
                                    _required: true
                                    index: 40
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                        index: 41
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        pattern: {type: String, value: ContactDetail}
                                        choices: [valueString]
                                        index: 43
                                      valueString:
                                        type: string
                                        pattern: {type: String, value: ContactDetail}
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 44
                                    required: [url, valueString, value]
                                name:
                                  match: {url: name}
                                  schema:
                                    short: 'R4: name'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 45
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: name}
                                        index: 46
                                      value:
                                        short: Name of an individual to contact
                                        choices: [valueString]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 48
                                      valueString:
                                        short: Name of an individual to contact
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 49
                                    required: [url]
                                telecom:
                                  match: {url: telecom}
                                  schema:
                                    short: 'R4: telecom'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 50
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: telecom}
                                        index: 51
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: Contact details for individual or organization
                                        choices: [valueContactPoint]
                                        index: 53
                                      valueContactPoint:
                                        short: Contact details for individual or organization
                                        type: ContactPoint
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 54
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: contact}
                            index: 55
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 57
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueContributor}
                index: 58
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 60
            required: [url, extension]
        valueContactDetail:
          match: {url: valueContactDetail}
          schema:
            short: 'R4: ContactDetail'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 1
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `ContactDetail` value
                _required: true
                index: 2
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 3
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: ContactDetail}
                    choices: [valueString]
                    index: 5
                  valueString:
                    type: string
                    pattern: {type: String, value: ContactDetail}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 6
                required: [url, valueString, value]
              name:
                url: name
                short: 'R4: name'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 8
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 9
                  value:
                    short: Name of an individual to contact
                    choices: [valueString]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 11
                  valueString:
                    short: Name of an individual to contact
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 12
                required: [url]
              telecom:
                url: telecom
                short: 'R4: telecom'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 13
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: telecom}
                    index: 14
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Contact details for individual or organization
                    choices: [valueContactPoint]
                    index: 16
                  valueContactPoint:
                    short: Contact details for individual or organization
                    type: ContactPoint
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 17
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `ContactDetail` value
                index: 2
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `ContactDetail` value
                        _required: true
                        index: 2
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 3
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: ContactDetail}
                            choices: [valueString]
                            index: 5
                          valueString:
                            type: string
                            pattern: {type: String, value: ContactDetail}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 6
                        required: [url, valueString, value]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: name'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 8
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 9
                          value:
                            short: Name of an individual to contact
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 11
                          valueString:
                            short: Name of an individual to contact
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 12
                        required: [url]
                    telecom:
                      match: {url: telecom}
                      schema:
                        short: 'R4: telecom'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 13
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: telecom}
                            index: 14
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Contact details for individual or organization
                            choices: [valueContactPoint]
                            index: 16
                          valueContactPoint:
                            short: Contact details for individual or organization
                            type: ContactPoint
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 17
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueContactDetail}
                index: 18
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 20
            required: [url, extension]
        valueUsageContext:
          match: {url: valueUsageContext}
          schema:
            short: 'R4: UsageContext'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 443
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `UsageContext` value
                _required: true
                index: 444
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 445
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: UsageContext}
                    choices: [valueString]
                    index: 447
                  valueString:
                    type: string
                    pattern: {type: String, value: UsageContext}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 448
                required: [url, valueString, value]
              code:
                url: code
                short: 'R4: code'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 450
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 451
                  value:
                    short: Type of context being specified
                    choices: [valueCoding]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 453
                  valueCoding:
                    short: Type of context being specified
                    type: Coding
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 454
                required: [valueCoding, url, value]
              value:
                url: value
                short: 'R4: value additional types'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 455
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: value}
                    index: 456
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Value that defines the context
                    choices: [valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference]
                    index: 458
                  valueReference:
                    short: Value that defines the context
                    refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-PlanDefinition|0.1.0']
                    type: Reference
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 459
                required: [url, valueReference, value]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `UsageContext` value
                index: 444
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 2
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `UsageContext` value
                        _required: true
                        index: 444
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 445
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: UsageContext}
                            choices: [valueString]
                            index: 447
                          valueString:
                            type: string
                            pattern: {type: String, value: UsageContext}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 448
                        required: [url, valueString, value]
                    code:
                      match: {url: code}
                      schema:
                        short: 'R4: code'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 450
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 451
                          value:
                            short: Type of context being specified
                            choices: [valueCoding]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 453
                          valueCoding:
                            short: Type of context being specified
                            type: Coding
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 454
                        required: [valueCoding, url, value]
                    value:
                      match: {url: value}
                      schema:
                        short: 'R4: value additional types'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 455
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: value}
                            index: 456
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Value that defines the context
                            choices: [valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference]
                            index: 458
                          valueReference:
                            short: Value that defines the context
                            refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-PlanDefinition|0.1.0']
                            type: Reference
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 459
                        required: [url, valueReference, value]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueUsageContext}
                index: 473
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 475
            required: [url, extension]
        valueTriggerDefinition:
          match: {url: valueTriggerDefinition}
          schema:
            short: 'R4: TriggerDefinition'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 280
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `TriggerDefinition` value
                _required: true
                index: 281
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 282
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: TriggerDefinition}
                    choices: [valueString]
                    index: 284
                  valueString:
                    type: string
                    pattern: {type: String, value: TriggerDefinition}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 285
                required: [url, valueString, value]
              type:
                url: type
                short: 'R4: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 287
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 288
                  value:
                    short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 290
                  valueCode:
                    short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 291
                required: [url, valueCode, value]
              name:
                url: name
                short: 'R4: Name or URI that identifies the event'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 292
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 293
                  value:
                    short: Name or URI that identifies the event
                    choices: [valueString]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 295
                  valueString:
                    short: Name or URI that identifies the event
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 296
                required: [url]
              timing:
                url: timing
                short: 'R4: timing'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 297
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: timing}
                    index: 298
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Timing of the event
                    choices: [valueTiming, valueReference, valueReference, valueDate, valueDateTime]
                    index: 300
                  valueTiming:
                    short: Timing of the event
                    type: Timing
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 301
                  valueReference:
                    short: Timing of the event
                    refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Schedule|0.1.0']
                    type: Reference
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 302
                  valueDate:
                    short: Timing of the event
                    type: date
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 304
                  valueDateTime:
                    short: Timing of the event
                    type: dateTime
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 305
                required: [url]
              data:
                url: data
                short: 'R4: Triggering data of the event (multiple = ''and'')'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 306
                extensions:
                  limit:
                    url: limit
                    short: 'R4: Number of results (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 382
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: limit}
                        index: 383
                      value:
                        short: Number of results
                        choices: [valuePositiveInt]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 385
                      valuePositiveInt:
                        short: Number of results
                        type: positiveInt
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 386
                    required: [url]
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `DataRequirement` value
                    _required: true
                    index: 308
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 309
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: DataRequirement}
                        choices: [valueString]
                        index: 311
                      valueString:
                        type: string
                        pattern: {type: String, value: DataRequirement}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 312
                    required: [url, valueString, value]
                  type:
                    url: type
                    short: 'R4: type'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 313
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: type}
                        index: 314
                      value:
                        short: The type of the required data
                        choices: [valueCode]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 316
                      valueCode:
                        short: The type of the required data
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 317
                    required: [url, valueCode, value]
                  mustSupport:
                    url: mustSupport
                    short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 330
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: mustSupport}
                        index: 331
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Indicates specific structure elements that are referenced by the knowledge module
                        choices: [valueString]
                        index: 333
                      valueString:
                        short: Indicates specific structure elements that are referenced by the knowledge module
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 334
                    required: [url]
                  codeFilter:
                    url: codeFilter
                    short: 'R4: codeFilter'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 335
                    extensions:
                      path:
                        url: path
                        short: 'R4: A code-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 337
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 338
                          value:
                            short: A code-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 340
                          valueString:
                            short: A code-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 341
                        required: [url]
                      searchParam:
                        url: searchParam
                        short: 'R4: A coded (token) parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 342
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 343
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A coded (token) parameter to search on
                            choices: [valueString]
                            index: 345
                          valueString:
                            short: A coded (token) parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 346
                        required: [url]
                      valueSet:
                        url: valueSet
                        short: 'R4: valueSet'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 347
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: valueSet}
                            index: 348
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Valueset for the filter
                            choices: [valueUri]
                            index: 350
                          valueUri:
                            short: Valueset for the filter
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 351
                        required: [url]
                      code:
                        url: code
                        short: 'R4: What code is expected'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 352
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 353
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: What code is expected
                            choices: [valueCoding]
                            index: 355
                          valueCoding:
                            short: What code is expected
                            type: Coding
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 356
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        index: 336
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 0
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: A code-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 337
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 338
                                  value:
                                    short: A code-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 340
                                  valueString:
                                    short: A code-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 341
                                required: [url]
                            searchParam:
                              match: {url: searchParam}
                              schema:
                                short: 'R4: A coded (token) parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 342
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 343
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A coded (token) parameter to search on
                                    choices: [valueString]
                                    index: 345
                                  valueString:
                                    short: A coded (token) parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 346
                                required: [url]
                            valueSet:
                              match: {url: valueSet}
                              schema:
                                short: 'R4: valueSet'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 347
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: valueSet}
                                    index: 348
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Valueset for the filter
                                    choices: [valueUri]
                                    index: 350
                                  valueUri:
                                    short: Valueset for the filter
                                    type: uri
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 351
                                required: [url]
                            code:
                              match: {url: code}
                              schema:
                                short: 'R4: What code is expected'
                                array: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 352
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: code}
                                    index: 353
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: What code is expected
                                    choices: [valueCoding]
                                    index: 355
                                  valueCoding:
                                    short: What code is expected
                                    type: Coding
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 356
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: codeFilter}
                        index: 357
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 359
                    required: [url]
                  subject:
                    url: subject
                    short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 323
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: subject}
                        index: 324
                      value:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        choices: [valueCodeableConcept, valueReference, valueReference]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 326
                      valueCodeableConcept:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        type: CodeableConcept
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 327
                      valueReference:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                        type: Reference
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 328
                    required: [url]
                  dateFilter:
                    url: dateFilter
                    short: 'R4: dateFilter'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 360
                    extensions:
                      path:
                        url: path
                        short: 'R4: A date-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 362
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 363
                          value:
                            short: A date-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 365
                          valueString:
                            short: A date-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 366
                        required: [url]
                      searchParam:
                        url: searchParam
                        short: 'R4: A date valued parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 367
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 368
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A date valued parameter to search on
                            choices: [valueString]
                            index: 370
                          valueString:
                            short: A date valued parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 371
                        required: [url]
                      value:
                        url: value
                        short: 'R4: value'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 372
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: value}
                            index: 373
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            choices: [valueDateTime, valuePeriod, valueDuration]
                            index: 375
                          valueDateTime:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: dateTime
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 376
                          valuePeriod:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Period
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 377
                          valueDuration:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Duration
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 378
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        index: 361
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 0
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: A date-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 362
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 363
                                  value:
                                    short: A date-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 365
                                  valueString:
                                    short: A date-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 366
                                required: [url]
                            searchParam:
                              match: {url: searchParam}
                              schema:
                                short: 'R4: A date valued parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 367
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 368
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A date valued parameter to search on
                                    choices: [valueString]
                                    index: 370
                                  valueString:
                                    short: A date valued parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 371
                                required: [url]
                            value:
                              match: {url: value}
                              schema:
                                short: 'R4: value'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 372
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: value}
                                    index: 373
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                    index: 375
                                  valueDateTime:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: dateTime
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 376
                                  valuePeriod:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Period
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 377
                                  valueDuration:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Duration
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 378
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: dateFilter}
                        index: 379
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 381
                    required: [url]
                  sort:
                    url: sort
                    short: 'R4: Order of the results (new)'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 387
                    extensions:
                      path:
                        url: path
                        short: 'R4: The name of the attribute to perform the sort (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 389
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 390
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The name of the attribute to perform the sort
                            choices: [valueString]
                            index: 392
                          valueString:
                            short: The name of the attribute to perform the sort
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 393
                        required: [url, valueString, value]
                      direction:
                        url: direction
                        short: 'R4: ascending | descending (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 394
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: direction}
                            index: 395
                          value:
                            short: ascending | descending
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 397
                          valueCode:
                            short: ascending | descending
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 398
                        required: [url, valueCode, value]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        min: 2
                        index: 388
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 2
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: The name of the attribute to perform the sort (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 389
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 390
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The name of the attribute to perform the sort
                                    choices: [valueString]
                                    index: 392
                                  valueString:
                                    short: The name of the attribute to perform the sort
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 393
                                required: [url, valueString, value]
                            direction:
                              match: {url: direction}
                              schema:
                                short: 'R4: ascending | descending (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 394
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: direction}
                                    index: 395
                                  value:
                                    short: ascending | descending
                                    choices: [valueCode]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 397
                                  valueCode:
                                    short: ascending | descending
                                    type: code
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 398
                                required: [url, valueCode, value]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: sort}
                        index: 399
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 401
                    required: [url]
                  profile:
                    url: profile
                    short: 'R4: profile'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 318
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: profile}
                        index: 319
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The profile of the required data
                        choices: [valueUri]
                        index: 321
                      valueUri:
                        short: The profile of the required data
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 322
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 307
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        limit:
                          match: {url: limit}
                          schema:
                            short: 'R4: Number of results (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 382
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: limit}
                                index: 383
                              value:
                                short: Number of results
                                choices: [valuePositiveInt]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 385
                              valuePositiveInt:
                                short: Number of results
                                type: positiveInt
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 386
                            required: [url]
                        _datatype:
                          match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `DataRequirement` value
                            _required: true
                            index: 308
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 309
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: DataRequirement}
                                choices: [valueString]
                                index: 311
                              valueString:
                                type: string
                                pattern: {type: String, value: DataRequirement}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 312
                            required: [url, valueString, value]
                        type:
                          match: {url: type}
                          schema:
                            short: 'R4: type'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 313
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: type}
                                index: 314
                              value:
                                short: The type of the required data
                                choices: [valueCode]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 316
                              valueCode:
                                short: The type of the required data
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 317
                            required: [url, valueCode, value]
                        mustSupport:
                          match: {url: mustSupport}
                          schema:
                            short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 330
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: mustSupport}
                                index: 331
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Indicates specific structure elements that are referenced by the knowledge module
                                choices: [valueString]
                                index: 333
                              valueString:
                                short: Indicates specific structure elements that are referenced by the knowledge module
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 334
                            required: [url]
                        codeFilter:
                          match: {url: codeFilter}
                          schema:
                            short: 'R4: codeFilter'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 335
                            extensions:
                              path:
                                url: path
                                short: 'R4: A code-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 337
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 338
                                  value:
                                    short: A code-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 340
                                  valueString:
                                    short: A code-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 341
                                required: [url]
                              searchParam:
                                url: searchParam
                                short: 'R4: A coded (token) parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 342
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 343
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A coded (token) parameter to search on
                                    choices: [valueString]
                                    index: 345
                                  valueString:
                                    short: A coded (token) parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 346
                                required: [url]
                              valueSet:
                                url: valueSet
                                short: 'R4: valueSet'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 347
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: valueSet}
                                    index: 348
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Valueset for the filter
                                    choices: [valueUri]
                                    index: 350
                                  valueUri:
                                    short: Valueset for the filter
                                    type: uri
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 351
                                required: [url]
                              code:
                                url: code
                                short: 'R4: What code is expected'
                                array: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 352
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: code}
                                    index: 353
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: What code is expected
                                    choices: [valueCoding]
                                    index: 355
                                  valueCoding:
                                    short: What code is expected
                                    type: Coding
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 356
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                index: 336
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 0
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: A code-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 337
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 338
                                          value:
                                            short: A code-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 340
                                          valueString:
                                            short: A code-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 341
                                        required: [url]
                                    searchParam:
                                      match: {url: searchParam}
                                      schema:
                                        short: 'R4: A coded (token) parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 342
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 343
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A coded (token) parameter to search on
                                            choices: [valueString]
                                            index: 345
                                          valueString:
                                            short: A coded (token) parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 346
                                        required: [url]
                                    valueSet:
                                      match: {url: valueSet}
                                      schema:
                                        short: 'R4: valueSet'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 347
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: valueSet}
                                            index: 348
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Valueset for the filter
                                            choices: [valueUri]
                                            index: 350
                                          valueUri:
                                            short: Valueset for the filter
                                            type: uri
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 351
                                        required: [url]
                                    code:
                                      match: {url: code}
                                      schema:
                                        short: 'R4: What code is expected'
                                        array: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 352
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: code}
                                            index: 353
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: What code is expected
                                            choices: [valueCoding]
                                            index: 355
                                          valueCoding:
                                            short: What code is expected
                                            type: Coding
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 356
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: codeFilter}
                                index: 357
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 359
                            required: [url]
                        subject:
                          match: {url: subject}
                          schema:
                            short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 323
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: subject}
                                index: 324
                              value:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                choices: [valueCodeableConcept, valueReference, valueReference]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 326
                              valueCodeableConcept:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                type: CodeableConcept
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 327
                              valueReference:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                                type: Reference
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 328
                            required: [url]
                        dateFilter:
                          match: {url: dateFilter}
                          schema:
                            short: 'R4: dateFilter'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 360
                            extensions:
                              path:
                                url: path
                                short: 'R4: A date-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 362
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 363
                                  value:
                                    short: A date-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 365
                                  valueString:
                                    short: A date-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 366
                                required: [url]
                              searchParam:
                                url: searchParam
                                short: 'R4: A date valued parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 367
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 368
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A date valued parameter to search on
                                    choices: [valueString]
                                    index: 370
                                  valueString:
                                    short: A date valued parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 371
                                required: [url]
                              value:
                                url: value
                                short: 'R4: value'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 372
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: value}
                                    index: 373
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                    index: 375
                                  valueDateTime:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: dateTime
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 376
                                  valuePeriod:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Period
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 377
                                  valueDuration:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Duration
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 378
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                index: 361
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 0
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: A date-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 362
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 363
                                          value:
                                            short: A date-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 365
                                          valueString:
                                            short: A date-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 366
                                        required: [url]
                                    searchParam:
                                      match: {url: searchParam}
                                      schema:
                                        short: 'R4: A date valued parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 367
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 368
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A date valued parameter to search on
                                            choices: [valueString]
                                            index: 370
                                          valueString:
                                            short: A date valued parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 371
                                        required: [url]
                                    value:
                                      match: {url: value}
                                      schema:
                                        short: 'R4: value'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 372
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: value}
                                            index: 373
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            choices: [valueDateTime, valuePeriod, valueDuration]
                                            index: 375
                                          valueDateTime:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: dateTime
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 376
                                          valuePeriod:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Period
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 377
                                          valueDuration:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Duration
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 378
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: dateFilter}
                                index: 379
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 381
                            required: [url]
                        sort:
                          match: {url: sort}
                          schema:
                            short: 'R4: Order of the results (new)'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 387
                            extensions:
                              path:
                                url: path
                                short: 'R4: The name of the attribute to perform the sort (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 389
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 390
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The name of the attribute to perform the sort
                                    choices: [valueString]
                                    index: 392
                                  valueString:
                                    short: The name of the attribute to perform the sort
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 393
                                required: [url, valueString, value]
                              direction:
                                url: direction
                                short: 'R4: ascending | descending (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 394
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: direction}
                                    index: 395
                                  value:
                                    short: ascending | descending
                                    choices: [valueCode]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 397
                                  valueCode:
                                    short: ascending | descending
                                    type: code
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 398
                                required: [url, valueCode, value]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                min: 2
                                index: 388
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 2
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: The name of the attribute to perform the sort (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 389
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 390
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The name of the attribute to perform the sort
                                            choices: [valueString]
                                            index: 392
                                          valueString:
                                            short: The name of the attribute to perform the sort
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 393
                                        required: [url, valueString, value]
                                    direction:
                                      match: {url: direction}
                                      schema:
                                        short: 'R4: ascending | descending (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 394
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: direction}
                                            index: 395
                                          value:
                                            short: ascending | descending
                                            choices: [valueCode]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 397
                                          valueCode:
                                            short: ascending | descending
                                            type: code
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 398
                                        required: [url, valueCode, value]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: sort}
                                index: 399
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 401
                            required: [url]
                        profile:
                          match: {url: profile}
                          schema:
                            short: 'R4: profile'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 318
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: profile}
                                index: 319
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The profile of the required data
                                choices: [valueUri]
                                index: 321
                              valueUri:
                                short: The profile of the required data
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 322
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: data}
                    index: 402
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 404
                required: [url]
              condition:
                url: condition
                short: 'R4: Whether the event triggers (boolean expression) (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 405
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `Expression` value
                    _required: true
                    index: 407
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 408
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: Expression}
                        choices: [valueString]
                        index: 410
                      valueString:
                        type: string
                        pattern: {type: String, value: Expression}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 411
                    required: [url, valueString, value]
                  description:
                    url: description
                    short: 'R4: Natural language description of the condition (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 412
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: description}
                        index: 413
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Natural language description of the condition
                        choices: [valueString]
                        index: 415
                      valueString:
                        short: Natural language description of the condition
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 416
                    required: [url]
                  name:
                    url: name
                    short: 'R4: Short name assigned to expression for reuse (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 417
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 418
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Short name assigned to expression for reuse
                        choices: [valueId]
                        index: 420
                      valueId:
                        short: Short name assigned to expression for reuse
                        type: id
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 421
                    required: [url]
                  language:
                    url: language
                    short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 422
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: language}
                        index: 423
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                        choices: [valueCode]
                        index: 425
                      valueCode:
                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 426
                    required: [url, valueCode, value]
                  expression:
                    url: expression
                    short: 'R4: Expression in specified language (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 427
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: expression}
                        index: 428
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Expression in specified language
                        choices: [valueString]
                        index: 430
                      valueString:
                        short: Expression in specified language
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 431
                    required: [url]
                  reference:
                    url: reference
                    short: 'R4: Where the expression is found (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 432
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: reference}
                        index: 433
                      value:
                        short: Where the expression is found
                        choices: [valueUri]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 435
                      valueUri:
                        short: Where the expression is found
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 436
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 406
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        _datatype:
                          match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `Expression` value
                            _required: true
                            index: 407
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 408
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: Expression}
                                choices: [valueString]
                                index: 410
                              valueString:
                                type: string
                                pattern: {type: String, value: Expression}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 411
                            required: [url, valueString, value]
                        description:
                          match: {url: description}
                          schema:
                            short: 'R4: Natural language description of the condition (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 412
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: description}
                                index: 413
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Natural language description of the condition
                                choices: [valueString]
                                index: 415
                              valueString:
                                short: Natural language description of the condition
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 416
                            required: [url]
                        name:
                          match: {url: name}
                          schema:
                            short: 'R4: Short name assigned to expression for reuse (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 417
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 418
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Short name assigned to expression for reuse
                                choices: [valueId]
                                index: 420
                              valueId:
                                short: Short name assigned to expression for reuse
                                type: id
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 421
                            required: [url]
                        language:
                          match: {url: language}
                          schema:
                            short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 422
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: language}
                                index: 423
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                choices: [valueCode]
                                index: 425
                              valueCode:
                                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 426
                            required: [url, valueCode, value]
                        expression:
                          match: {url: expression}
                          schema:
                            short: 'R4: Expression in specified language (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 427
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: expression}
                                index: 428
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Expression in specified language
                                choices: [valueString]
                                index: 430
                              valueString:
                                short: Expression in specified language
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 431
                            required: [url]
                        reference:
                          match: {url: reference}
                          schema:
                            short: 'R4: Where the expression is found (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 432
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: reference}
                                index: 433
                              value:
                                short: Where the expression is found
                                choices: [valueUri]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 435
                              valueUri:
                                short: Where the expression is found
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 436
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: condition}
                    index: 437
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 439
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `TriggerDefinition` value
                index: 281
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `TriggerDefinition` value
                        _required: true
                        index: 281
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 282
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: TriggerDefinition}
                            choices: [valueString]
                            index: 284
                          valueString:
                            type: string
                            pattern: {type: String, value: TriggerDefinition}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 285
                        required: [url, valueString, value]
                    type:
                      match: {url: type}
                      schema:
                        short: 'R4: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 287
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: type}
                            index: 288
                          value:
                            short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 290
                          valueCode:
                            short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 291
                        required: [url, valueCode, value]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: Name or URI that identifies the event'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 292
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 293
                          value:
                            short: Name or URI that identifies the event
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 295
                          valueString:
                            short: Name or URI that identifies the event
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 296
                        required: [url]
                    timing:
                      match: {url: timing}
                      schema:
                        short: 'R4: timing'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 297
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: timing}
                            index: 298
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Timing of the event
                            choices: [valueTiming, valueReference, valueReference, valueDate, valueDateTime]
                            index: 300
                          valueTiming:
                            short: Timing of the event
                            type: Timing
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 301
                          valueReference:
                            short: Timing of the event
                            refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Schedule|0.1.0']
                            type: Reference
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 302
                          valueDate:
                            short: Timing of the event
                            type: date
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 304
                          valueDateTime:
                            short: Timing of the event
                            type: dateTime
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 305
                        required: [url]
                    data:
                      match: {url: data}
                      schema:
                        short: 'R4: Triggering data of the event (multiple = ''and'')'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 306
                        extensions:
                          limit:
                            url: limit
                            short: 'R4: Number of results (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 382
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: limit}
                                index: 383
                              value:
                                short: Number of results
                                choices: [valuePositiveInt]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 385
                              valuePositiveInt:
                                short: Number of results
                                type: positiveInt
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 386
                            required: [url]
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `DataRequirement` value
                            _required: true
                            index: 308
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 309
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: DataRequirement}
                                choices: [valueString]
                                index: 311
                              valueString:
                                type: string
                                pattern: {type: String, value: DataRequirement}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 312
                            required: [url, valueString, value]
                          type:
                            url: type
                            short: 'R4: type'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 313
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: type}
                                index: 314
                              value:
                                short: The type of the required data
                                choices: [valueCode]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 316
                              valueCode:
                                short: The type of the required data
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 317
                            required: [url, valueCode, value]
                          mustSupport:
                            url: mustSupport
                            short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 330
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: mustSupport}
                                index: 331
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Indicates specific structure elements that are referenced by the knowledge module
                                choices: [valueString]
                                index: 333
                              valueString:
                                short: Indicates specific structure elements that are referenced by the knowledge module
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 334
                            required: [url]
                          codeFilter:
                            url: codeFilter
                            short: 'R4: codeFilter'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 335
                            extensions:
                              path:
                                url: path
                                short: 'R4: A code-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 337
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 338
                                  value:
                                    short: A code-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 340
                                  valueString:
                                    short: A code-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 341
                                required: [url]
                              searchParam:
                                url: searchParam
                                short: 'R4: A coded (token) parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 342
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 343
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A coded (token) parameter to search on
                                    choices: [valueString]
                                    index: 345
                                  valueString:
                                    short: A coded (token) parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 346
                                required: [url]
                              valueSet:
                                url: valueSet
                                short: 'R4: valueSet'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 347
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: valueSet}
                                    index: 348
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Valueset for the filter
                                    choices: [valueUri]
                                    index: 350
                                  valueUri:
                                    short: Valueset for the filter
                                    type: uri
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 351
                                required: [url]
                              code:
                                url: code
                                short: 'R4: What code is expected'
                                array: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 352
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: code}
                                    index: 353
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: What code is expected
                                    choices: [valueCoding]
                                    index: 355
                                  valueCoding:
                                    short: What code is expected
                                    type: Coding
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 356
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                index: 336
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 0
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: A code-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 337
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 338
                                          value:
                                            short: A code-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 340
                                          valueString:
                                            short: A code-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 341
                                        required: [url]
                                    searchParam:
                                      match: {url: searchParam}
                                      schema:
                                        short: 'R4: A coded (token) parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 342
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 343
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A coded (token) parameter to search on
                                            choices: [valueString]
                                            index: 345
                                          valueString:
                                            short: A coded (token) parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 346
                                        required: [url]
                                    valueSet:
                                      match: {url: valueSet}
                                      schema:
                                        short: 'R4: valueSet'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 347
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: valueSet}
                                            index: 348
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Valueset for the filter
                                            choices: [valueUri]
                                            index: 350
                                          valueUri:
                                            short: Valueset for the filter
                                            type: uri
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 351
                                        required: [url]
                                    code:
                                      match: {url: code}
                                      schema:
                                        short: 'R4: What code is expected'
                                        array: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 352
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: code}
                                            index: 353
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: What code is expected
                                            choices: [valueCoding]
                                            index: 355
                                          valueCoding:
                                            short: What code is expected
                                            type: Coding
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 356
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: codeFilter}
                                index: 357
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 359
                            required: [url]
                          subject:
                            url: subject
                            short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 323
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: subject}
                                index: 324
                              value:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                choices: [valueCodeableConcept, valueReference, valueReference]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 326
                              valueCodeableConcept:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                type: CodeableConcept
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 327
                              valueReference:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                                type: Reference
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 328
                            required: [url]
                          dateFilter:
                            url: dateFilter
                            short: 'R4: dateFilter'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 360
                            extensions:
                              path:
                                url: path
                                short: 'R4: A date-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 362
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 363
                                  value:
                                    short: A date-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 365
                                  valueString:
                                    short: A date-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 366
                                required: [url]
                              searchParam:
                                url: searchParam
                                short: 'R4: A date valued parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 367
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 368
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A date valued parameter to search on
                                    choices: [valueString]
                                    index: 370
                                  valueString:
                                    short: A date valued parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 371
                                required: [url]
                              value:
                                url: value
                                short: 'R4: value'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 372
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: value}
                                    index: 373
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                    index: 375
                                  valueDateTime:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: dateTime
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 376
                                  valuePeriod:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Period
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 377
                                  valueDuration:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Duration
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 378
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                index: 361
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 0
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: A date-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 362
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 363
                                          value:
                                            short: A date-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 365
                                          valueString:
                                            short: A date-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 366
                                        required: [url]
                                    searchParam:
                                      match: {url: searchParam}
                                      schema:
                                        short: 'R4: A date valued parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 367
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 368
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A date valued parameter to search on
                                            choices: [valueString]
                                            index: 370
                                          valueString:
                                            short: A date valued parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 371
                                        required: [url]
                                    value:
                                      match: {url: value}
                                      schema:
                                        short: 'R4: value'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 372
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: value}
                                            index: 373
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            choices: [valueDateTime, valuePeriod, valueDuration]
                                            index: 375
                                          valueDateTime:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: dateTime
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 376
                                          valuePeriod:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Period
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 377
                                          valueDuration:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Duration
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 378
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: dateFilter}
                                index: 379
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 381
                            required: [url]
                          sort:
                            url: sort
                            short: 'R4: Order of the results (new)'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 387
                            extensions:
                              path:
                                url: path
                                short: 'R4: The name of the attribute to perform the sort (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 389
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 390
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The name of the attribute to perform the sort
                                    choices: [valueString]
                                    index: 392
                                  valueString:
                                    short: The name of the attribute to perform the sort
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 393
                                required: [url, valueString, value]
                              direction:
                                url: direction
                                short: 'R4: ascending | descending (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 394
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: direction}
                                    index: 395
                                  value:
                                    short: ascending | descending
                                    choices: [valueCode]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 397
                                  valueCode:
                                    short: ascending | descending
                                    type: code
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 398
                                required: [url, valueCode, value]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                min: 2
                                index: 388
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 2
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: The name of the attribute to perform the sort (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 389
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 390
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The name of the attribute to perform the sort
                                            choices: [valueString]
                                            index: 392
                                          valueString:
                                            short: The name of the attribute to perform the sort
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 393
                                        required: [url, valueString, value]
                                    direction:
                                      match: {url: direction}
                                      schema:
                                        short: 'R4: ascending | descending (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 394
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: direction}
                                            index: 395
                                          value:
                                            short: ascending | descending
                                            choices: [valueCode]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 397
                                          valueCode:
                                            short: ascending | descending
                                            type: code
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 398
                                        required: [url, valueCode, value]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: sort}
                                index: 399
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 401
                            required: [url]
                          profile:
                            url: profile
                            short: 'R4: profile'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 318
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: profile}
                                index: 319
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The profile of the required data
                                choices: [valueUri]
                                index: 321
                              valueUri:
                                short: The profile of the required data
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 322
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 307
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                limit:
                                  match: {url: limit}
                                  schema:
                                    short: 'R4: Number of results (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 382
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: limit}
                                        index: 383
                                      value:
                                        short: Number of results
                                        choices: [valuePositiveInt]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 385
                                      valuePositiveInt:
                                        short: Number of results
                                        type: positiveInt
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 386
                                    required: [url]
                                _datatype:
                                  match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: DataType slice for a FHIR R4 `DataRequirement` value
                                    _required: true
                                    index: 308
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                        index: 309
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        pattern: {type: String, value: DataRequirement}
                                        choices: [valueString]
                                        index: 311
                                      valueString:
                                        type: string
                                        pattern: {type: String, value: DataRequirement}
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 312
                                    required: [url, valueString, value]
                                type:
                                  match: {url: type}
                                  schema:
                                    short: 'R4: type'
                                    _required: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 313
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: type}
                                        index: 314
                                      value:
                                        short: The type of the required data
                                        choices: [valueCode]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 316
                                      valueCode:
                                        short: The type of the required data
                                        type: code
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 317
                                    required: [url, valueCode, value]
                                mustSupport:
                                  match: {url: mustSupport}
                                  schema:
                                    short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 330
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: mustSupport}
                                        index: 331
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: Indicates specific structure elements that are referenced by the knowledge module
                                        choices: [valueString]
                                        index: 333
                                      valueString:
                                        short: Indicates specific structure elements that are referenced by the knowledge module
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 334
                                    required: [url]
                                codeFilter:
                                  match: {url: codeFilter}
                                  schema:
                                    short: 'R4: codeFilter'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 335
                                    extensions:
                                      path:
                                        url: path
                                        short: 'R4: A code-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 337
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 338
                                          value:
                                            short: A code-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 340
                                          valueString:
                                            short: A code-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 341
                                        required: [url]
                                      searchParam:
                                        url: searchParam
                                        short: 'R4: A coded (token) parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 342
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 343
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A coded (token) parameter to search on
                                            choices: [valueString]
                                            index: 345
                                          valueString:
                                            short: A coded (token) parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 346
                                        required: [url]
                                      valueSet:
                                        url: valueSet
                                        short: 'R4: valueSet'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 347
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: valueSet}
                                            index: 348
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Valueset for the filter
                                            choices: [valueUri]
                                            index: 350
                                          valueUri:
                                            short: Valueset for the filter
                                            type: uri
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 351
                                        required: [url]
                                      code:
                                        url: code
                                        short: 'R4: What code is expected'
                                        array: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 352
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: code}
                                            index: 353
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: What code is expected
                                            choices: [valueCoding]
                                            index: 355
                                          valueCoding:
                                            short: What code is expected
                                            type: Coding
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 356
                                        required: [url]
                                    elements:
                                      extension:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        array: true
                                        index: 336
                                        slicing:
                                          rules: open
                                          ordered: false
                                          discriminator:
                                          - {path: url, type: value}
                                          min: 0
                                          slices:
                                            path:
                                              match: {url: path}
                                              schema:
                                                short: 'R4: A code-valued attribute to filter on'
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 337
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: path}
                                                    index: 338
                                                  value:
                                                    short: A code-valued attribute to filter on
                                                    choices: [valueString]
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    index: 340
                                                  valueString:
                                                    short: A code-valued attribute to filter on
                                                    type: string
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 341
                                                required: [url]
                                            searchParam:
                                              match: {url: searchParam}
                                              schema:
                                                short: 'R4: A coded (token) parameter to search on (new)'
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 342
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: searchParam}
                                                    index: 343
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: A coded (token) parameter to search on
                                                    choices: [valueString]
                                                    index: 345
                                                  valueString:
                                                    short: A coded (token) parameter to search on
                                                    type: string
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 346
                                                required: [url]
                                            valueSet:
                                              match: {url: valueSet}
                                              schema:
                                                short: 'R4: valueSet'
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 347
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: valueSet}
                                                    index: 348
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: Valueset for the filter
                                                    choices: [valueUri]
                                                    index: 350
                                                  valueUri:
                                                    short: Valueset for the filter
                                                    type: uri
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 351
                                                required: [url]
                                            code:
                                              match: {url: code}
                                              schema:
                                                short: 'R4: What code is expected'
                                                array: true
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 352
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: code}
                                                    index: 353
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: What code is expected
                                                    choices: [valueCoding]
                                                    index: 355
                                                  valueCoding:
                                                    short: What code is expected
                                                    type: Coding
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 356
                                                required: [url]
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: codeFilter}
                                        index: 357
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choices: []
                                        index: 359
                                    required: [url]
                                subject:
                                  match: {url: subject}
                                  schema:
                                    short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 323
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: subject}
                                        index: 324
                                      value:
                                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                        choices: [valueCodeableConcept, valueReference, valueReference]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 326
                                      valueCodeableConcept:
                                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                        type: CodeableConcept
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 327
                                      valueReference:
                                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                        refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                                        type: Reference
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 328
                                    required: [url]
                                dateFilter:
                                  match: {url: dateFilter}
                                  schema:
                                    short: 'R4: dateFilter'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 360
                                    extensions:
                                      path:
                                        url: path
                                        short: 'R4: A date-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 362
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 363
                                          value:
                                            short: A date-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 365
                                          valueString:
                                            short: A date-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 366
                                        required: [url]
                                      searchParam:
                                        url: searchParam
                                        short: 'R4: A date valued parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 367
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 368
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A date valued parameter to search on
                                            choices: [valueString]
                                            index: 370
                                          valueString:
                                            short: A date valued parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 371
                                        required: [url]
                                      value:
                                        url: value
                                        short: 'R4: value'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 372
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: value}
                                            index: 373
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            choices: [valueDateTime, valuePeriod, valueDuration]
                                            index: 375
                                          valueDateTime:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: dateTime
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 376
                                          valuePeriod:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Period
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 377
                                          valueDuration:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Duration
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 378
                                        required: [url]
                                    elements:
                                      extension:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        array: true
                                        index: 361
                                        slicing:
                                          rules: open
                                          ordered: false
                                          discriminator:
                                          - {path: url, type: value}
                                          min: 0
                                          slices:
                                            path:
                                              match: {url: path}
                                              schema:
                                                short: 'R4: A date-valued attribute to filter on'
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 362
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: path}
                                                    index: 363
                                                  value:
                                                    short: A date-valued attribute to filter on
                                                    choices: [valueString]
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    index: 365
                                                  valueString:
                                                    short: A date-valued attribute to filter on
                                                    type: string
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 366
                                                required: [url]
                                            searchParam:
                                              match: {url: searchParam}
                                              schema:
                                                short: 'R4: A date valued parameter to search on (new)'
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 367
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: searchParam}
                                                    index: 368
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: A date valued parameter to search on
                                                    choices: [valueString]
                                                    index: 370
                                                  valueString:
                                                    short: A date valued parameter to search on
                                                    type: string
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 371
                                                required: [url]
                                            value:
                                              match: {url: value}
                                              schema:
                                                short: 'R4: value'
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 372
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: value}
                                                    index: 373
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                                    index: 375
                                                  valueDateTime:
                                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                                    type: dateTime
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 376
                                                  valuePeriod:
                                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                                    type: Period
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 377
                                                  valueDuration:
                                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                                    type: Duration
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 378
                                                required: [url]
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: dateFilter}
                                        index: 379
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choices: []
                                        index: 381
                                    required: [url]
                                sort:
                                  match: {url: sort}
                                  schema:
                                    short: 'R4: Order of the results (new)'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 387
                                    extensions:
                                      path:
                                        url: path
                                        short: 'R4: The name of the attribute to perform the sort (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 389
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 390
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The name of the attribute to perform the sort
                                            choices: [valueString]
                                            index: 392
                                          valueString:
                                            short: The name of the attribute to perform the sort
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 393
                                        required: [url, valueString, value]
                                      direction:
                                        url: direction
                                        short: 'R4: ascending | descending (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 394
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: direction}
                                            index: 395
                                          value:
                                            short: ascending | descending
                                            choices: [valueCode]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 397
                                          valueCode:
                                            short: ascending | descending
                                            type: code
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 398
                                        required: [url, valueCode, value]
                                    elements:
                                      extension:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        array: true
                                        min: 2
                                        index: 388
                                        slicing:
                                          rules: open
                                          ordered: false
                                          discriminator:
                                          - {path: url, type: value}
                                          min: 2
                                          slices:
                                            path:
                                              match: {url: path}
                                              schema:
                                                short: 'R4: The name of the attribute to perform the sort (new)'
                                                _required: true
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 389
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: path}
                                                    index: 390
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: The name of the attribute to perform the sort
                                                    choices: [valueString]
                                                    index: 392
                                                  valueString:
                                                    short: The name of the attribute to perform the sort
                                                    type: string
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 393
                                                required: [url, valueString, value]
                                            direction:
                                              match: {url: direction}
                                              schema:
                                                short: 'R4: ascending | descending (new)'
                                                _required: true
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                index: 394
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: direction}
                                                    index: 395
                                                  value:
                                                    short: ascending | descending
                                                    choices: [valueCode]
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    index: 397
                                                  valueCode:
                                                    short: ascending | descending
                                                    type: code
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    choiceOf: value
                                                    index: 398
                                                required: [url, valueCode, value]
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: sort}
                                        index: 399
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choices: []
                                        index: 401
                                    required: [url]
                                profile:
                                  match: {url: profile}
                                  schema:
                                    short: 'R4: profile'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 318
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: profile}
                                        index: 319
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: The profile of the required data
                                        choices: [valueUri]
                                        index: 321
                                      valueUri:
                                        short: The profile of the required data
                                        type: uri
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 322
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: data}
                            index: 402
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 404
                        required: [url]
                    condition:
                      match: {url: condition}
                      schema:
                        short: 'R4: Whether the event triggers (boolean expression) (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 405
                        extensions:
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `Expression` value
                            _required: true
                            index: 407
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 408
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: Expression}
                                choices: [valueString]
                                index: 410
                              valueString:
                                type: string
                                pattern: {type: String, value: Expression}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 411
                            required: [url, valueString, value]
                          description:
                            url: description
                            short: 'R4: Natural language description of the condition (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 412
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: description}
                                index: 413
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Natural language description of the condition
                                choices: [valueString]
                                index: 415
                              valueString:
                                short: Natural language description of the condition
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 416
                            required: [url]
                          name:
                            url: name
                            short: 'R4: Short name assigned to expression for reuse (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 417
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 418
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Short name assigned to expression for reuse
                                choices: [valueId]
                                index: 420
                              valueId:
                                short: Short name assigned to expression for reuse
                                type: id
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 421
                            required: [url]
                          language:
                            url: language
                            short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 422
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: language}
                                index: 423
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                choices: [valueCode]
                                index: 425
                              valueCode:
                                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 426
                            required: [url, valueCode, value]
                          expression:
                            url: expression
                            short: 'R4: Expression in specified language (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 427
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: expression}
                                index: 428
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Expression in specified language
                                choices: [valueString]
                                index: 430
                              valueString:
                                short: Expression in specified language
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 431
                            required: [url]
                          reference:
                            url: reference
                            short: 'R4: Where the expression is found (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 432
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: reference}
                                index: 433
                              value:
                                short: Where the expression is found
                                choices: [valueUri]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 435
                              valueUri:
                                short: Where the expression is found
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 436
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 406
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                _datatype:
                                  match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: DataType slice for a FHIR R4 `Expression` value
                                    _required: true
                                    index: 407
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                        index: 408
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        pattern: {type: String, value: Expression}
                                        choices: [valueString]
                                        index: 410
                                      valueString:
                                        type: string
                                        pattern: {type: String, value: Expression}
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 411
                                    required: [url, valueString, value]
                                description:
                                  match: {url: description}
                                  schema:
                                    short: 'R4: Natural language description of the condition (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 412
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: description}
                                        index: 413
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: Natural language description of the condition
                                        choices: [valueString]
                                        index: 415
                                      valueString:
                                        short: Natural language description of the condition
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 416
                                    required: [url]
                                name:
                                  match: {url: name}
                                  schema:
                                    short: 'R4: Short name assigned to expression for reuse (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 417
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: name}
                                        index: 418
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: Short name assigned to expression for reuse
                                        choices: [valueId]
                                        index: 420
                                      valueId:
                                        short: Short name assigned to expression for reuse
                                        type: id
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 421
                                    required: [url]
                                language:
                                  match: {url: language}
                                  schema:
                                    short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                                    _required: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 422
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: language}
                                        index: 423
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                        choices: [valueCode]
                                        index: 425
                                      valueCode:
                                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                        type: code
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 426
                                    required: [url, valueCode, value]
                                expression:
                                  match: {url: expression}
                                  schema:
                                    short: 'R4: Expression in specified language (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 427
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: expression}
                                        index: 428
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: Expression in specified language
                                        choices: [valueString]
                                        index: 430
                                      valueString:
                                        short: Expression in specified language
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 431
                                    required: [url]
                                reference:
                                  match: {url: reference}
                                  schema:
                                    short: 'R4: Where the expression is found (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 432
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: reference}
                                        index: 433
                                      value:
                                        short: Where the expression is found
                                        choices: [valueUri]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 435
                                      valueUri:
                                        short: Where the expression is found
                                        type: uri
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 436
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: condition}
                            index: 437
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 439
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueTriggerDefinition}
                index: 440
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 442
            required: [url, extension]
        valueDataRequirement:
          match: {url: valueDataRequirement}
          schema:
            short: 'R4: DataRequirement'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 61
            extensions:
              limit:
                url: limit
                short: 'R4: Number of results (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 137
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: limit}
                    index: 138
                  value:
                    short: Number of results
                    choices: [valuePositiveInt]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 140
                  valuePositiveInt:
                    short: Number of results
                    type: positiveInt
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 141
                required: [url]
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `DataRequirement` value
                _required: true
                index: 62
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 63
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: DataRequirement}
                    choices: [valueString]
                    index: 65
                  valueString:
                    type: string
                    pattern: {type: String, value: DataRequirement}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 66
                required: [url, valueString, value]
              type:
                url: type
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 68
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 69
                  value:
                    short: The type of the required data
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 71
                  valueCode:
                    short: The type of the required data
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 72
                required: [url, valueCode, value]
              mustSupport:
                url: mustSupport
                short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 85
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: mustSupport}
                    index: 86
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Indicates specific structure elements that are referenced by the knowledge module
                    choices: [valueString]
                    index: 88
                  valueString:
                    short: Indicates specific structure elements that are referenced by the knowledge module
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 89
                required: [url]
              codeFilter:
                url: codeFilter
                short: 'R4: codeFilter'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 90
                extensions:
                  path:
                    url: path
                    short: 'R4: A code-valued attribute to filter on'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 92
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 93
                      value:
                        short: A code-valued attribute to filter on
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 95
                      valueString:
                        short: A code-valued attribute to filter on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 96
                    required: [url]
                  searchParam:
                    url: searchParam
                    short: 'R4: A coded (token) parameter to search on (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 97
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: searchParam}
                        index: 98
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A coded (token) parameter to search on
                        choices: [valueString]
                        index: 100
                      valueString:
                        short: A coded (token) parameter to search on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 101
                    required: [url]
                  valueSet:
                    url: valueSet
                    short: 'R4: valueSet'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 102
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: valueSet}
                        index: 103
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Valueset for the filter
                        choices: [valueUri]
                        index: 105
                      valueUri:
                        short: Valueset for the filter
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 106
                    required: [url]
                  code:
                    url: code
                    short: 'R4: What code is expected'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 107
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: code}
                        index: 108
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: What code is expected
                        choices: [valueCoding]
                        index: 110
                      valueCoding:
                        short: What code is expected
                        type: Coding
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 111
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 91
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        path:
                          match: {url: path}
                          schema:
                            short: 'R4: A code-valued attribute to filter on'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 92
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 93
                              value:
                                short: A code-valued attribute to filter on
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 95
                              valueString:
                                short: A code-valued attribute to filter on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 96
                            required: [url]
                        searchParam:
                          match: {url: searchParam}
                          schema:
                            short: 'R4: A coded (token) parameter to search on (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 97
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: searchParam}
                                index: 98
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A coded (token) parameter to search on
                                choices: [valueString]
                                index: 100
                              valueString:
                                short: A coded (token) parameter to search on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 101
                            required: [url]
                        valueSet:
                          match: {url: valueSet}
                          schema:
                            short: 'R4: valueSet'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 102
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: valueSet}
                                index: 103
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Valueset for the filter
                                choices: [valueUri]
                                index: 105
                              valueUri:
                                short: Valueset for the filter
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 106
                            required: [url]
                        code:
                          match: {url: code}
                          schema:
                            short: 'R4: What code is expected'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 107
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: code}
                                index: 108
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: What code is expected
                                choices: [valueCoding]
                                index: 110
                              valueCoding:
                                short: What code is expected
                                type: Coding
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 111
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: codeFilter}
                    index: 112
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 114
                required: [url]
              subject:
                url: subject
                short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 78
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: subject}
                    index: 79
                  value:
                    short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                    choices: [valueCodeableConcept, valueReference, valueReference]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 81
                  valueCodeableConcept:
                    short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 82
                  valueReference:
                    short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                    refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                    type: Reference
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 83
                required: [url]
              dateFilter:
                url: dateFilter
                short: 'R4: dateFilter'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 115
                extensions:
                  path:
                    url: path
                    short: 'R4: A date-valued attribute to filter on'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 117
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 118
                      value:
                        short: A date-valued attribute to filter on
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 120
                      valueString:
                        short: A date-valued attribute to filter on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 121
                    required: [url]
                  searchParam:
                    url: searchParam
                    short: 'R4: A date valued parameter to search on (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 122
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: searchParam}
                        index: 123
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A date valued parameter to search on
                        choices: [valueString]
                        index: 125
                      valueString:
                        short: A date valued parameter to search on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 126
                    required: [url]
                  value:
                    url: value
                    short: 'R4: value'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 127
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: value}
                        index: 128
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        choices: [valueDateTime, valuePeriod, valueDuration]
                        index: 130
                      valueDateTime:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: dateTime
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 131
                      valuePeriod:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: Period
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 132
                      valueDuration:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: Duration
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 133
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 116
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        path:
                          match: {url: path}
                          schema:
                            short: 'R4: A date-valued attribute to filter on'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 117
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 118
                              value:
                                short: A date-valued attribute to filter on
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 120
                              valueString:
                                short: A date-valued attribute to filter on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 121
                            required: [url]
                        searchParam:
                          match: {url: searchParam}
                          schema:
                            short: 'R4: A date valued parameter to search on (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 122
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: searchParam}
                                index: 123
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A date valued parameter to search on
                                choices: [valueString]
                                index: 125
                              valueString:
                                short: A date valued parameter to search on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 126
                            required: [url]
                        value:
                          match: {url: value}
                          schema:
                            short: 'R4: value'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 127
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: value}
                                index: 128
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                choices: [valueDateTime, valuePeriod, valueDuration]
                                index: 130
                              valueDateTime:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: dateTime
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 131
                              valuePeriod:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: Period
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 132
                              valueDuration:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: Duration
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 133
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: dateFilter}
                    index: 134
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 136
                required: [url]
              sort:
                url: sort
                short: 'R4: Order of the results (new)'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 142
                extensions:
                  path:
                    url: path
                    short: 'R4: The name of the attribute to perform the sort (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 144
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 145
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The name of the attribute to perform the sort
                        choices: [valueString]
                        index: 147
                      valueString:
                        short: The name of the attribute to perform the sort
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 148
                    required: [url, valueString, value]
                  direction:
                    url: direction
                    short: 'R4: ascending | descending (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 149
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: direction}
                        index: 150
                      value:
                        short: ascending | descending
                        choices: [valueCode]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 152
                      valueCode:
                        short: ascending | descending
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 153
                    required: [url, valueCode, value]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    min: 2
                    index: 143
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 2
                      slices:
                        path:
                          match: {url: path}
                          schema:
                            short: 'R4: The name of the attribute to perform the sort (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 144
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 145
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The name of the attribute to perform the sort
                                choices: [valueString]
                                index: 147
                              valueString:
                                short: The name of the attribute to perform the sort
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 148
                            required: [url, valueString, value]
                        direction:
                          match: {url: direction}
                          schema:
                            short: 'R4: ascending | descending (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 149
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: direction}
                                index: 150
                              value:
                                short: ascending | descending
                                choices: [valueCode]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 152
                              valueCode:
                                short: ascending | descending
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 153
                            required: [url, valueCode, value]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sort}
                    index: 154
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 156
                required: [url]
              profile:
                url: profile
                short: 'R4: profile'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 73
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: profile}
                    index: 74
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The profile of the required data
                    choices: [valueUri]
                    index: 76
                  valueUri:
                    short: The profile of the required data
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 77
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `DataRequirement` value
                index: 62
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    limit:
                      match: {url: limit}
                      schema:
                        short: 'R4: Number of results (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 137
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: limit}
                            index: 138
                          value:
                            short: Number of results
                            choices: [valuePositiveInt]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 140
                          valuePositiveInt:
                            short: Number of results
                            type: positiveInt
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 141
                        required: [url]
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `DataRequirement` value
                        _required: true
                        index: 62
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 63
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: DataRequirement}
                            choices: [valueString]
                            index: 65
                          valueString:
                            type: string
                            pattern: {type: String, value: DataRequirement}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 66
                        required: [url, valueString, value]
                    type:
                      match: {url: type}
                      schema:
                        short: 'R4: type'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 68
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: type}
                            index: 69
                          value:
                            short: The type of the required data
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 71
                          valueCode:
                            short: The type of the required data
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 72
                        required: [url, valueCode, value]
                    mustSupport:
                      match: {url: mustSupport}
                      schema:
                        short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 85
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: mustSupport}
                            index: 86
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Indicates specific structure elements that are referenced by the knowledge module
                            choices: [valueString]
                            index: 88
                          valueString:
                            short: Indicates specific structure elements that are referenced by the knowledge module
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 89
                        required: [url]
                    codeFilter:
                      match: {url: codeFilter}
                      schema:
                        short: 'R4: codeFilter'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 90
                        extensions:
                          path:
                            url: path
                            short: 'R4: A code-valued attribute to filter on'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 92
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 93
                              value:
                                short: A code-valued attribute to filter on
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 95
                              valueString:
                                short: A code-valued attribute to filter on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 96
                            required: [url]
                          searchParam:
                            url: searchParam
                            short: 'R4: A coded (token) parameter to search on (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 97
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: searchParam}
                                index: 98
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A coded (token) parameter to search on
                                choices: [valueString]
                                index: 100
                              valueString:
                                short: A coded (token) parameter to search on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 101
                            required: [url]
                          valueSet:
                            url: valueSet
                            short: 'R4: valueSet'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 102
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: valueSet}
                                index: 103
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Valueset for the filter
                                choices: [valueUri]
                                index: 105
                              valueUri:
                                short: Valueset for the filter
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 106
                            required: [url]
                          code:
                            url: code
                            short: 'R4: What code is expected'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 107
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: code}
                                index: 108
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: What code is expected
                                choices: [valueCoding]
                                index: 110
                              valueCoding:
                                short: What code is expected
                                type: Coding
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 111
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 91
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                path:
                                  match: {url: path}
                                  schema:
                                    short: 'R4: A code-valued attribute to filter on'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 92
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: path}
                                        index: 93
                                      value:
                                        short: A code-valued attribute to filter on
                                        choices: [valueString]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 95
                                      valueString:
                                        short: A code-valued attribute to filter on
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 96
                                    required: [url]
                                searchParam:
                                  match: {url: searchParam}
                                  schema:
                                    short: 'R4: A coded (token) parameter to search on (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 97
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: searchParam}
                                        index: 98
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: A coded (token) parameter to search on
                                        choices: [valueString]
                                        index: 100
                                      valueString:
                                        short: A coded (token) parameter to search on
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 101
                                    required: [url]
                                valueSet:
                                  match: {url: valueSet}
                                  schema:
                                    short: 'R4: valueSet'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 102
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: valueSet}
                                        index: 103
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: Valueset for the filter
                                        choices: [valueUri]
                                        index: 105
                                      valueUri:
                                        short: Valueset for the filter
                                        type: uri
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 106
                                    required: [url]
                                code:
                                  match: {url: code}
                                  schema:
                                    short: 'R4: What code is expected'
                                    array: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 107
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: code}
                                        index: 108
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: What code is expected
                                        choices: [valueCoding]
                                        index: 110
                                      valueCoding:
                                        short: What code is expected
                                        type: Coding
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 111
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: codeFilter}
                            index: 112
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 114
                        required: [url]
                    subject:
                      match: {url: subject}
                      schema:
                        short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 78
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: subject}
                            index: 79
                          value:
                            short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                            choices: [valueCodeableConcept, valueReference, valueReference]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 81
                          valueCodeableConcept:
                            short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                            type: CodeableConcept
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 82
                          valueReference:
                            short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                            refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                            type: Reference
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 83
                        required: [url]
                    dateFilter:
                      match: {url: dateFilter}
                      schema:
                        short: 'R4: dateFilter'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 115
                        extensions:
                          path:
                            url: path
                            short: 'R4: A date-valued attribute to filter on'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 117
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 118
                              value:
                                short: A date-valued attribute to filter on
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 120
                              valueString:
                                short: A date-valued attribute to filter on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 121
                            required: [url]
                          searchParam:
                            url: searchParam
                            short: 'R4: A date valued parameter to search on (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 122
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: searchParam}
                                index: 123
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A date valued parameter to search on
                                choices: [valueString]
                                index: 125
                              valueString:
                                short: A date valued parameter to search on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 126
                            required: [url]
                          value:
                            url: value
                            short: 'R4: value'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 127
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: value}
                                index: 128
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                choices: [valueDateTime, valuePeriod, valueDuration]
                                index: 130
                              valueDateTime:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: dateTime
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 131
                              valuePeriod:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: Period
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 132
                              valueDuration:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: Duration
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 133
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 116
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                path:
                                  match: {url: path}
                                  schema:
                                    short: 'R4: A date-valued attribute to filter on'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 117
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: path}
                                        index: 118
                                      value:
                                        short: A date-valued attribute to filter on
                                        choices: [valueString]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 120
                                      valueString:
                                        short: A date-valued attribute to filter on
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 121
                                    required: [url]
                                searchParam:
                                  match: {url: searchParam}
                                  schema:
                                    short: 'R4: A date valued parameter to search on (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 122
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: searchParam}
                                        index: 123
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: A date valued parameter to search on
                                        choices: [valueString]
                                        index: 125
                                      valueString:
                                        short: A date valued parameter to search on
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 126
                                    required: [url]
                                value:
                                  match: {url: value}
                                  schema:
                                    short: 'R4: value'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 127
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: value}
                                        index: 128
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: The value of the filter, as a Period, DateTime, or Duration value
                                        choices: [valueDateTime, valuePeriod, valueDuration]
                                        index: 130
                                      valueDateTime:
                                        short: The value of the filter, as a Period, DateTime, or Duration value
                                        type: dateTime
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 131
                                      valuePeriod:
                                        short: The value of the filter, as a Period, DateTime, or Duration value
                                        type: Period
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 132
                                      valueDuration:
                                        short: The value of the filter, as a Period, DateTime, or Duration value
                                        type: Duration
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 133
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: dateFilter}
                            index: 134
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 136
                        required: [url]
                    sort:
                      match: {url: sort}
                      schema:
                        short: 'R4: Order of the results (new)'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 142
                        extensions:
                          path:
                            url: path
                            short: 'R4: The name of the attribute to perform the sort (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 144
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 145
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The name of the attribute to perform the sort
                                choices: [valueString]
                                index: 147
                              valueString:
                                short: The name of the attribute to perform the sort
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 148
                            required: [url, valueString, value]
                          direction:
                            url: direction
                            short: 'R4: ascending | descending (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 149
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: direction}
                                index: 150
                              value:
                                short: ascending | descending
                                choices: [valueCode]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 152
                              valueCode:
                                short: ascending | descending
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 153
                            required: [url, valueCode, value]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            min: 2
                            index: 143
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 2
                              slices:
                                path:
                                  match: {url: path}
                                  schema:
                                    short: 'R4: The name of the attribute to perform the sort (new)'
                                    _required: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 144
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: path}
                                        index: 145
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: The name of the attribute to perform the sort
                                        choices: [valueString]
                                        index: 147
                                      valueString:
                                        short: The name of the attribute to perform the sort
                                        type: string
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 148
                                    required: [url, valueString, value]
                                direction:
                                  match: {url: direction}
                                  schema:
                                    short: 'R4: ascending | descending (new)'
                                    _required: true
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 149
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: direction}
                                        index: 150
                                      value:
                                        short: ascending | descending
                                        choices: [valueCode]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 152
                                      valueCode:
                                        short: ascending | descending
                                        type: code
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 153
                                    required: [url, valueCode, value]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: sort}
                            index: 154
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 156
                        required: [url]
                    profile:
                      match: {url: profile}
                      schema:
                        short: 'R4: profile'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 73
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: profile}
                            index: 74
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The profile of the required data
                            choices: [valueUri]
                            index: 76
                          valueUri:
                            short: The profile of the required data
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 77
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueDataRequirement}
                index: 157
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 159
            required: [url, extension]
        valueExpression:
          match: {url: valueExpression}
          schema:
            short: 'R4: An expression that can be used to generate a value (new)'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 160
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Expression` value
                _required: true
                index: 161
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 162
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: Expression}
                    choices: [valueString]
                    index: 164
                  valueString:
                    type: string
                    pattern: {type: String, value: Expression}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 165
                required: [url, valueString, value]
              description:
                url: description
                short: 'R4: Natural language description of the condition (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 167
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: description}
                    index: 168
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Natural language description of the condition
                    choices: [valueString]
                    index: 170
                  valueString:
                    short: Natural language description of the condition
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 171
                required: [url]
              name:
                url: name
                short: 'R4: Short name assigned to expression for reuse (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 172
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 173
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Short name assigned to expression for reuse
                    choices: [valueId]
                    index: 175
                  valueId:
                    short: Short name assigned to expression for reuse
                    type: id
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 176
                required: [url]
              expression:
                url: expression
                short: 'R4: Expression in specified language (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 177
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: expression}
                    index: 178
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Expression in specified language
                    choices: [valueString]
                    index: 180
                  valueString:
                    short: Expression in specified language
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 181
                required: [url]
              reference:
                url: reference
                short: 'R4: Where the expression is found (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 182
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: reference}
                    index: 183
                  value:
                    short: Where the expression is found
                    choices: [valueUri]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 185
                  valueUri:
                    short: Where the expression is found
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 186
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Expression` value
                index: 161
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `Expression` value
                        _required: true
                        index: 161
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 162
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: Expression}
                            choices: [valueString]
                            index: 164
                          valueString:
                            type: string
                            pattern: {type: String, value: Expression}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 165
                        required: [url, valueString, value]
                    description:
                      match: {url: description}
                      schema:
                        short: 'R4: Natural language description of the condition (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 167
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: description}
                            index: 168
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Natural language description of the condition
                            choices: [valueString]
                            index: 170
                          valueString:
                            short: Natural language description of the condition
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 171
                        required: [url]
                    name:
                      match: {url: name}
                      schema:
                        short: 'R4: Short name assigned to expression for reuse (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 172
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: name}
                            index: 173
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Short name assigned to expression for reuse
                            choices: [valueId]
                            index: 175
                          valueId:
                            short: Short name assigned to expression for reuse
                            type: id
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 176
                        required: [url]
                    expression:
                      match: {url: expression}
                      schema:
                        short: 'R4: Expression in specified language (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 177
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: expression}
                            index: 178
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Expression in specified language
                            choices: [valueString]
                            index: 180
                          valueString:
                            short: Expression in specified language
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 181
                        required: [url]
                    reference:
                      match: {url: reference}
                      schema:
                        short: 'R4: Where the expression is found (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 182
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: reference}
                            index: 183
                          value:
                            short: Where the expression is found
                            choices: [valueUri]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 185
                          valueUri:
                            short: Where the expression is found
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 186
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueExpression}
                index: 187
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 189
            required: [url, extension]
        valueDosage:
          match: {url: valueDosage}
          schema:
            short: 'R4: Dosage'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 476
            extensions:
              site:
                url: site
                short: 'R4: site'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 514
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: site}
                    index: 515
                  value:
                    short: Body site to administer to
                    choices: [valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 517
                  valueCodeableConcept:
                    short: Body site to administer to
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 518
                required: [url]
              asNeeded:
                url: asNeeded
                short: 'R4: asNeeded'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 508
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: asNeeded}
                    index: 509
                  value:
                    short: Take "as needed" (for x)
                    choices: [valueBoolean, valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 511
                  valueBoolean:
                    short: Take "as needed" (for x)
                    type: boolean
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 512
                  valueCodeableConcept:
                    short: Take "as needed" (for x)
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 513
                required: [url]
              method:
                url: method
                short: 'R4: method'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 524
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: method}
                    index: 525
                  value:
                    short: Technique for administering medication
                    choices: [valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 527
                  valueCodeableConcept:
                    short: Technique for administering medication
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 528
                required: [url]
              patientInstruction:
                url: patientInstruction
                short: 'R4: patientInstruction'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 498
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: patientInstruction}
                    index: 499
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Patient or consumer oriented instructions
                    choices: [valueString]
                    index: 501
                  valueString:
                    short: Patient or consumer oriented instructions
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 502
                required: [url]
              maxDosePerLifetime:
                url: maxDosePerLifetime
                short: 'R4: maxDosePerLifetime'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 562
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: maxDosePerLifetime}
                    index: 563
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Upper limit on medication per lifetime of the patient
                    choices: [valueQuantity]
                    index: 565
                  valueQuantity:
                    short: Upper limit on medication per lifetime of the patient
                    type: Quantity
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 566
                required: [url]
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Dosage` value
                _required: true
                index: 477
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 478
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: Dosage}
                    choices: [valueString]
                    index: 480
                  valueString:
                    type: string
                    pattern: {type: String, value: Dosage}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 481
                required: [url, valueString, value]
              maxDosePerAdministration:
                url: maxDosePerAdministration
                short: 'R4: maxDosePerAdministration'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 557
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: maxDosePerAdministration}
                    index: 558
                  value:
                    short: Upper limit on medication per administration
                    choices: [valueQuantity]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 560
                  valueQuantity:
                    short: Upper limit on medication per administration
                    type: Quantity
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 561
                required: [url]
              route:
                url: route
                short: 'R4: route'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 519
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: route}
                    index: 520
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: How drug should enter body
                    choices: [valueCodeableConcept]
                    index: 522
                  valueCodeableConcept:
                    short: How drug should enter body
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 523
                required: [url]
              timing:
                url: timing
                short: 'R4: timing'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 503
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: timing}
                    index: 504
                  value:
                    short: When medication should be administered
                    choices: [valueTiming]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 506
                  valueTiming:
                    short: When medication should be administered
                    type: Timing
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 507
                required: [url]
              additionalInstruction:
                url: additionalInstruction
                short: 'R4: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 493
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: additionalInstruction}
                    index: 494
                  value:
                    short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                    choices: [valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 496
                  valueCodeableConcept:
                    short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 497
                required: [url]
              sequence:
                url: sequence
                short: 'R4: sequence'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 483
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sequence}
                    index: 484
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The order of the dosage instructions
                    choices: [valueInteger]
                    index: 486
                  valueInteger:
                    short: The order of the dosage instructions
                    type: integer
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 487
                required: [url]
              maxDosePerPeriod:
                url: maxDosePerPeriod
                short: 'R4: maxDosePerPeriod'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 552
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: maxDosePerPeriod}
                    index: 553
                  value:
                    short: Upper limit on medication per unit of time
                    choices: [valueRatio]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 555
                  valueRatio:
                    short: Upper limit on medication per unit of time
                    type: Ratio
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 556
                required: [url]
              doseAndRate:
                url: doseAndRate
                short: 'R4: Amount of medication administered (new)'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 529
                extensions:
                  type:
                    url: type
                    short: 'R4: The kind of dose or rate specified (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 531
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: type}
                        index: 532
                      value:
                        short: The kind of dose or rate specified
                        choices: [valueCodeableConcept]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 534
                      valueCodeableConcept:
                        short: The kind of dose or rate specified
                        type: CodeableConcept
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 535
                    required: [url]
                  dose:
                    url: dose
                    short: 'R4: dose'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 536
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: dose}
                        index: 537
                      value:
                        short: Amount of medication per dose
                        choices: [valueRange, valueQuantity]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 539
                      valueRange:
                        short: Amount of medication per dose
                        type: Range
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 540
                      valueQuantity:
                        short: Amount of medication per dose
                        type: Quantity
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 541
                    required: [url]
                  rate:
                    url: rate
                    short: 'R4: rate'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 542
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: rate}
                        index: 543
                      value:
                        short: Amount of medication per unit of time
                        choices: [valueRatio, valueRange, valueQuantity]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 545
                      valueRatio:
                        short: Amount of medication per unit of time
                        type: Ratio
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 546
                      valueRange:
                        short: Amount of medication per unit of time
                        type: Range
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 547
                      valueQuantity:
                        short: Amount of medication per unit of time
                        type: Quantity
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 548
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 530
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        type:
                          match: {url: type}
                          schema:
                            short: 'R4: The kind of dose or rate specified (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 531
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: type}
                                index: 532
                              value:
                                short: The kind of dose or rate specified
                                choices: [valueCodeableConcept]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 534
                              valueCodeableConcept:
                                short: The kind of dose or rate specified
                                type: CodeableConcept
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 535
                            required: [url]
                        dose:
                          match: {url: dose}
                          schema:
                            short: 'R4: dose'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 536
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: dose}
                                index: 537
                              value:
                                short: Amount of medication per dose
                                choices: [valueRange, valueQuantity]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 539
                              valueRange:
                                short: Amount of medication per dose
                                type: Range
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 540
                              valueQuantity:
                                short: Amount of medication per dose
                                type: Quantity
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 541
                            required: [url]
                        rate:
                          match: {url: rate}
                          schema:
                            short: 'R4: rate'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 542
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: rate}
                                index: 543
                              value:
                                short: Amount of medication per unit of time
                                choices: [valueRatio, valueRange, valueQuantity]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 545
                              valueRatio:
                                short: Amount of medication per unit of time
                                type: Ratio
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 546
                              valueRange:
                                short: Amount of medication per unit of time
                                type: Range
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 547
                              valueQuantity:
                                short: Amount of medication per unit of time
                                type: Quantity
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 548
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: doseAndRate}
                    index: 549
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 551
                required: [url]
              text:
                url: text
                short: 'R4: text'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 488
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: text}
                    index: 489
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Free text dosage instructions e.g. SIG
                    choices: [valueString]
                    index: 491
                  valueString:
                    short: Free text dosage instructions e.g. SIG
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 492
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Dosage` value
                index: 477
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    site:
                      match: {url: site}
                      schema:
                        short: 'R4: site'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 514
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: site}
                            index: 515
                          value:
                            short: Body site to administer to
                            choices: [valueCodeableConcept]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 517
                          valueCodeableConcept:
                            short: Body site to administer to
                            type: CodeableConcept
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 518
                        required: [url]
                    asNeeded:
                      match: {url: asNeeded}
                      schema:
                        short: 'R4: asNeeded'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 508
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: asNeeded}
                            index: 509
                          value:
                            short: Take "as needed" (for x)
                            choices: [valueBoolean, valueCodeableConcept]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 511
                          valueBoolean:
                            short: Take "as needed" (for x)
                            type: boolean
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 512
                          valueCodeableConcept:
                            short: Take "as needed" (for x)
                            type: CodeableConcept
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 513
                        required: [url]
                    method:
                      match: {url: method}
                      schema:
                        short: 'R4: method'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 524
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: method}
                            index: 525
                          value:
                            short: Technique for administering medication
                            choices: [valueCodeableConcept]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 527
                          valueCodeableConcept:
                            short: Technique for administering medication
                            type: CodeableConcept
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 528
                        required: [url]
                    patientInstruction:
                      match: {url: patientInstruction}
                      schema:
                        short: 'R4: patientInstruction'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 498
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: patientInstruction}
                            index: 499
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Patient or consumer oriented instructions
                            choices: [valueString]
                            index: 501
                          valueString:
                            short: Patient or consumer oriented instructions
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 502
                        required: [url]
                    maxDosePerLifetime:
                      match: {url: maxDosePerLifetime}
                      schema:
                        short: 'R4: maxDosePerLifetime'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 562
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: maxDosePerLifetime}
                            index: 563
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Upper limit on medication per lifetime of the patient
                            choices: [valueQuantity]
                            index: 565
                          valueQuantity:
                            short: Upper limit on medication per lifetime of the patient
                            type: Quantity
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 566
                        required: [url]
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `Dosage` value
                        _required: true
                        index: 477
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 478
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: Dosage}
                            choices: [valueString]
                            index: 480
                          valueString:
                            type: string
                            pattern: {type: String, value: Dosage}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 481
                        required: [url, valueString, value]
                    maxDosePerAdministration:
                      match: {url: maxDosePerAdministration}
                      schema:
                        short: 'R4: maxDosePerAdministration'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 557
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: maxDosePerAdministration}
                            index: 558
                          value:
                            short: Upper limit on medication per administration
                            choices: [valueQuantity]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 560
                          valueQuantity:
                            short: Upper limit on medication per administration
                            type: Quantity
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 561
                        required: [url]
                    route:
                      match: {url: route}
                      schema:
                        short: 'R4: route'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 519
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: route}
                            index: 520
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: How drug should enter body
                            choices: [valueCodeableConcept]
                            index: 522
                          valueCodeableConcept:
                            short: How drug should enter body
                            type: CodeableConcept
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 523
                        required: [url]
                    timing:
                      match: {url: timing}
                      schema:
                        short: 'R4: timing'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 503
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: timing}
                            index: 504
                          value:
                            short: When medication should be administered
                            choices: [valueTiming]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 506
                          valueTiming:
                            short: When medication should be administered
                            type: Timing
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 507
                        required: [url]
                    additionalInstruction:
                      match: {url: additionalInstruction}
                      schema:
                        short: 'R4: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 493
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: additionalInstruction}
                            index: 494
                          value:
                            short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                            choices: [valueCodeableConcept]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 496
                          valueCodeableConcept:
                            short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                            type: CodeableConcept
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 497
                        required: [url]
                    sequence:
                      match: {url: sequence}
                      schema:
                        short: 'R4: sequence'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 483
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: sequence}
                            index: 484
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The order of the dosage instructions
                            choices: [valueInteger]
                            index: 486
                          valueInteger:
                            short: The order of the dosage instructions
                            type: integer
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 487
                        required: [url]
                    maxDosePerPeriod:
                      match: {url: maxDosePerPeriod}
                      schema:
                        short: 'R4: maxDosePerPeriod'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 552
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: maxDosePerPeriod}
                            index: 553
                          value:
                            short: Upper limit on medication per unit of time
                            choices: [valueRatio]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 555
                          valueRatio:
                            short: Upper limit on medication per unit of time
                            type: Ratio
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 556
                        required: [url]
                    doseAndRate:
                      match: {url: doseAndRate}
                      schema:
                        short: 'R4: Amount of medication administered (new)'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 529
                        extensions:
                          type:
                            url: type
                            short: 'R4: The kind of dose or rate specified (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 531
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: type}
                                index: 532
                              value:
                                short: The kind of dose or rate specified
                                choices: [valueCodeableConcept]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 534
                              valueCodeableConcept:
                                short: The kind of dose or rate specified
                                type: CodeableConcept
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 535
                            required: [url]
                          dose:
                            url: dose
                            short: 'R4: dose'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 536
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: dose}
                                index: 537
                              value:
                                short: Amount of medication per dose
                                choices: [valueRange, valueQuantity]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 539
                              valueRange:
                                short: Amount of medication per dose
                                type: Range
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 540
                              valueQuantity:
                                short: Amount of medication per dose
                                type: Quantity
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 541
                            required: [url]
                          rate:
                            url: rate
                            short: 'R4: rate'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 542
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: rate}
                                index: 543
                              value:
                                short: Amount of medication per unit of time
                                choices: [valueRatio, valueRange, valueQuantity]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 545
                              valueRatio:
                                short: Amount of medication per unit of time
                                type: Ratio
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 546
                              valueRange:
                                short: Amount of medication per unit of time
                                type: Range
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 547
                              valueQuantity:
                                short: Amount of medication per unit of time
                                type: Quantity
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 548
                            required: [url]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 530
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                type:
                                  match: {url: type}
                                  schema:
                                    short: 'R4: The kind of dose or rate specified (new)'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 531
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: type}
                                        index: 532
                                      value:
                                        short: The kind of dose or rate specified
                                        choices: [valueCodeableConcept]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 534
                                      valueCodeableConcept:
                                        short: The kind of dose or rate specified
                                        type: CodeableConcept
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 535
                                    required: [url]
                                dose:
                                  match: {url: dose}
                                  schema:
                                    short: 'R4: dose'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 536
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: dose}
                                        index: 537
                                      value:
                                        short: Amount of medication per dose
                                        choices: [valueRange, valueQuantity]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 539
                                      valueRange:
                                        short: Amount of medication per dose
                                        type: Range
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 540
                                      valueQuantity:
                                        short: Amount of medication per dose
                                        type: Quantity
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 541
                                    required: [url]
                                rate:
                                  match: {url: rate}
                                  schema:
                                    short: 'R4: rate'
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    index: 542
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: rate}
                                        index: 543
                                      value:
                                        short: Amount of medication per unit of time
                                        choices: [valueRatio, valueRange, valueQuantity]
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        index: 545
                                      valueRatio:
                                        short: Amount of medication per unit of time
                                        type: Ratio
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 546
                                      valueRange:
                                        short: Amount of medication per unit of time
                                        type: Range
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 547
                                      valueQuantity:
                                        short: Amount of medication per unit of time
                                        type: Quantity
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 548
                                    required: [url]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: doseAndRate}
                            index: 549
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choices: []
                            index: 551
                        required: [url]
                    text:
                      match: {url: text}
                      schema:
                        short: 'R4: text'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 488
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: text}
                            index: 489
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Free text dosage instructions e.g. SIG
                            choices: [valueString]
                            index: 491
                          valueString:
                            short: Free text dosage instructions e.g. SIG
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 492
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueDosage}
                index: 567
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 569
            required: [url, extension]
        valueRelatedArtifact:
          match: {url: valueRelatedArtifact}
          schema:
            short: 'R4: RelatedArtifact'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 235
            extensions:
              _datatype:
                url: http://hl7.org/fhir/StructureDefinition/_datatype
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `RelatedArtifact` value
                _required: true
                index: 236
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 237
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: RelatedArtifact}
                    choices: [valueString]
                    index: 239
                  valueString:
                    type: string
                    pattern: {type: String, value: RelatedArtifact}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 240
                required: [url, valueString, value]
              type:
                url: type
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 242
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 243
                  value:
                    short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 245
                  valueCode:
                    short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 246
                required: [url, valueCode, value]
              label:
                url: label
                short: 'R4: Short label (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 247
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: label}
                    index: 248
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Short label
                    choices: [valueString]
                    index: 250
                  valueString:
                    short: Short label
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 251
                required: [url]
              display:
                url: display
                short: 'R4: display'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 252
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: display}
                    index: 253
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Brief description of the related artifact
                    choices: [valueString]
                    index: 255
                  valueString:
                    short: Brief description of the related artifact
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 256
                required: [url]
              citation:
                url: citation
                short: 'R4: citation'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 257
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: citation}
                    index: 258
                  value:
                    short: Bibliographic citation for the artifact
                    choices: [valueMarkdown]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 260
                  valueMarkdown:
                    short: Bibliographic citation for the artifact
                    type: markdown
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 261
                required: [url]
              url:
                url: url
                short: 'R4: url'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 262
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: url}
                    index: 263
                  value:
                    short: Where the artifact can be accessed
                    choices: [valueUri]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 265
                  valueUri:
                    short: Where the artifact can be accessed
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 266
                required: [url]
              document:
                url: document
                short: 'R4: document'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 267
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: document}
                    index: 268
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: What document is being referenced
                    choices: [valueAttachment]
                    index: 270
                  valueAttachment:
                    short: What document is being referenced
                    type: Attachment
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 271
                required: [url]
              resource:
                url: resource
                short: 'R4: resource additional types'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 272
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: resource}
                    index: 273
                  value:
                    short: What resource is being referenced
                    choices: [valueUri]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 275
                  valueUri:
                    short: What resource is being referenced
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 276
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `RelatedArtifact` value
                index: 236
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    _datatype:
                      match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: DataType slice for a FHIR R4 `RelatedArtifact` value
                        _required: true
                        index: 236
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                            index: 237
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            pattern: {type: String, value: RelatedArtifact}
                            choices: [valueString]
                            index: 239
                          valueString:
                            type: string
                            pattern: {type: String, value: RelatedArtifact}
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 240
                        required: [url, valueString, value]
                    type:
                      match: {url: type}
                      schema:
                        short: 'R4: type'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 242
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: type}
                            index: 243
                          value:
                            short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 245
                          valueCode:
                            short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 246
                        required: [url, valueCode, value]
                    label:
                      match: {url: label}
                      schema:
                        short: 'R4: Short label (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 247
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: label}
                            index: 248
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Short label
                            choices: [valueString]
                            index: 250
                          valueString:
                            short: Short label
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 251
                        required: [url]
                    display:
                      match: {url: display}
                      schema:
                        short: 'R4: display'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 252
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: display}
                            index: 253
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Brief description of the related artifact
                            choices: [valueString]
                            index: 255
                          valueString:
                            short: Brief description of the related artifact
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 256
                        required: [url]
                    citation:
                      match: {url: citation}
                      schema:
                        short: 'R4: citation'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 257
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: citation}
                            index: 258
                          value:
                            short: Bibliographic citation for the artifact
                            choices: [valueMarkdown]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 260
                          valueMarkdown:
                            short: Bibliographic citation for the artifact
                            type: markdown
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 261
                        required: [url]
                    url:
                      match: {url: url}
                      schema:
                        short: 'R4: url'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 262
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: url}
                            index: 263
                          value:
                            short: Where the artifact can be accessed
                            choices: [valueUri]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 265
                          valueUri:
                            short: Where the artifact can be accessed
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 266
                        required: [url]
                    document:
                      match: {url: document}
                      schema:
                        short: 'R4: document'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 267
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: document}
                            index: 268
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: What document is being referenced
                            choices: [valueAttachment]
                            index: 270
                          valueAttachment:
                            short: What document is being referenced
                            type: Attachment
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 271
                        required: [url]
                    resource:
                      match: {url: resource}
                      schema:
                        short: 'R4: resource additional types'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 272
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: resource}
                            index: 273
                          value:
                            short: What resource is being referenced
                            choices: [valueUri]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 275
                          valueUri:
                            short: What resource is being referenced
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 276
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueRelatedArtifact}
                index: 277
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 279
            required: [url, extension]
  url:
    base: {max: '1', min: 1, path: Extension.url}
    pattern: {type: Uri, value: 'http://hl7.org/fhir/4.0/StructureDefinition/extension-Task.output.value'}
    index: 570
  value:
    base: {max: '1', min: 0, path: 'Extension.value[x]'}
    short: Result of output
    choices: [valueUri]
    index: 572
  valueUri:
    short: Result of output
    type: uri
    base: {max: '1', min: 0, path: 'Extension.value[x]'}
    choiceOf: value
    index: 573
package_version: 0.1.0
extensions:
  valueParameterDefinition:
    url: valueParameterDefinition
    short: 'R4: ParameterDefinition'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 190
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `ParameterDefinition` value
        _required: true
        index: 191
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 192
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: ParameterDefinition}
            choices: [valueString]
            index: 194
          valueString:
            type: string
            pattern: {type: String, value: ParameterDefinition}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 195
        required: [url, valueString, value]
      name:
        url: name
        short: 'R4: name'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 197
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 198
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Name used to access the parameter value
            choices: [valueCode]
            index: 200
          valueCode:
            short: Name used to access the parameter value
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 201
        required: [url]
      use:
        url: use
        short: 'R4: use'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 202
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: use}
            index: 203
          value:
            short: in | out
            choices: [valueCode]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 205
          valueCode:
            short: in | out
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 206
        required: [url, valueCode, value]
      min:
        url: min
        short: 'R4: min'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 207
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: min}
            index: 208
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Minimum cardinality
            choices: [valueInteger]
            index: 210
          valueInteger:
            short: Minimum cardinality
            type: integer
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 211
        required: [url]
      max:
        url: max
        short: 'R4: max'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 212
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: max}
            index: 213
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Maximum cardinality (a number of *)
            choices: [valueString]
            index: 215
          valueString:
            short: Maximum cardinality (a number of *)
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 216
        required: [url]
      documentation:
        url: documentation
        short: 'R4: documentation'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 217
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: documentation}
            index: 218
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: A brief description of the parameter
            choices: [valueString]
            index: 220
          valueString:
            short: A brief description of the parameter
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 221
        required: [url]
      type:
        url: type
        short: 'R4: type'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 222
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: type}
            index: 223
          value:
            short: What type of value
            choices: [valueCode]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 225
          valueCode:
            short: What type of value
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 226
        required: [url, valueCode, value]
      profile:
        url: profile
        short: 'R4: profile additional types'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 227
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: profile}
            index: 228
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: What profile the value is expected to be
            choices: [valueUri]
            index: 230
          valueUri:
            short: What profile the value is expected to be
            type: uri
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 231
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `ParameterDefinition` value
        index: 191
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 2
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `ParameterDefinition` value
                _required: true
                index: 191
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 192
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: ParameterDefinition}
                    choices: [valueString]
                    index: 194
                  valueString:
                    type: string
                    pattern: {type: String, value: ParameterDefinition}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 195
                required: [url, valueString, value]
            name:
              match: {url: name}
              schema:
                short: 'R4: name'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 197
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 198
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Name used to access the parameter value
                    choices: [valueCode]
                    index: 200
                  valueCode:
                    short: Name used to access the parameter value
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 201
                required: [url]
            use:
              match: {url: use}
              schema:
                short: 'R4: use'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 202
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: use}
                    index: 203
                  value:
                    short: in | out
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 205
                  valueCode:
                    short: in | out
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 206
                required: [url, valueCode, value]
            min:
              match: {url: min}
              schema:
                short: 'R4: min'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 207
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: min}
                    index: 208
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Minimum cardinality
                    choices: [valueInteger]
                    index: 210
                  valueInteger:
                    short: Minimum cardinality
                    type: integer
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 211
                required: [url]
            max:
              match: {url: max}
              schema:
                short: 'R4: max'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 212
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: max}
                    index: 213
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Maximum cardinality (a number of *)
                    choices: [valueString]
                    index: 215
                  valueString:
                    short: Maximum cardinality (a number of *)
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 216
                required: [url]
            documentation:
              match: {url: documentation}
              schema:
                short: 'R4: documentation'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 217
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: documentation}
                    index: 218
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: A brief description of the parameter
                    choices: [valueString]
                    index: 220
                  valueString:
                    short: A brief description of the parameter
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 221
                required: [url]
            type:
              match: {url: type}
              schema:
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 222
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 223
                  value:
                    short: What type of value
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 225
                  valueCode:
                    short: What type of value
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 226
                required: [url, valueCode, value]
            profile:
              match: {url: profile}
              schema:
                short: 'R4: profile additional types'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 227
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: profile}
                    index: 228
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: What profile the value is expected to be
                    choices: [valueUri]
                    index: 230
                  valueUri:
                    short: What profile the value is expected to be
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 231
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueParameterDefinition}
        index: 232
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 234
    required: [url, extension]
  valueContributor:
    url: valueContributor
    short: 'R4: Contributor'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 21
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `Contributor` value
        _required: true
        index: 22
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 23
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: Contributor}
            choices: [valueString]
            index: 25
          valueString:
            type: string
            pattern: {type: String, value: Contributor}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 26
        required: [url, valueString, value]
      type:
        url: type
        short: 'R4: type'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 28
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: type}
            index: 29
          value:
            short: author | editor | reviewer | endorser
            choices: [valueCode]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 31
          valueCode:
            short: author | editor | reviewer | endorser
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 32
        required: [url, valueCode, value]
      name:
        url: name
        short: 'R4: name'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 33
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 34
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Who contributed the content
            choices: [valueString]
            index: 36
          valueString:
            short: Who contributed the content
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 37
        required: [url, valueString, value]
      contact:
        url: contact
        short: 'R4: contact'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 38
        extensions:
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            base: {max: '*', min: 0, path: Extension.extension}
            short: DataType slice for a FHIR R4 `ContactDetail` value
            _required: true
            index: 40
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                index: 41
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                pattern: {type: String, value: ContactDetail}
                choices: [valueString]
                index: 43
              valueString:
                type: string
                pattern: {type: String, value: ContactDetail}
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 44
            required: [url, valueString, value]
          name:
            url: name
            short: 'R4: name'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 45
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: name}
                index: 46
              value:
                short: Name of an individual to contact
                choices: [valueString]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 48
              valueString:
                short: Name of an individual to contact
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 49
            required: [url]
          telecom:
            url: telecom
            short: 'R4: telecom'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 50
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: telecom}
                index: 51
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Contact details for individual or organization
                choices: [valueContactPoint]
                index: 53
              valueContactPoint:
                short: Contact details for individual or organization
                type: ContactPoint
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 54
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 39
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                _datatype:
                  match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `ContactDetail` value
                    _required: true
                    index: 40
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 41
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: ContactDetail}
                        choices: [valueString]
                        index: 43
                      valueString:
                        type: string
                        pattern: {type: String, value: ContactDetail}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 44
                    required: [url, valueString, value]
                name:
                  match: {url: name}
                  schema:
                    short: 'R4: name'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 45
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 46
                      value:
                        short: Name of an individual to contact
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 48
                      valueString:
                        short: Name of an individual to contact
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 49
                    required: [url]
                telecom:
                  match: {url: telecom}
                  schema:
                    short: 'R4: telecom'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 50
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: telecom}
                        index: 51
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Contact details for individual or organization
                        choices: [valueContactPoint]
                        index: 53
                      valueContactPoint:
                        short: Contact details for individual or organization
                        type: ContactPoint
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 54
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: contact}
            index: 55
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 57
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `Contributor` value
        index: 22
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 2
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Contributor` value
                _required: true
                index: 22
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 23
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: Contributor}
                    choices: [valueString]
                    index: 25
                  valueString:
                    type: string
                    pattern: {type: String, value: Contributor}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 26
                required: [url, valueString, value]
            type:
              match: {url: type}
              schema:
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 29
                  value:
                    short: author | editor | reviewer | endorser
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 31
                  valueCode:
                    short: author | editor | reviewer | endorser
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 32
                required: [url, valueCode, value]
            name:
              match: {url: name}
              schema:
                short: 'R4: name'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Who contributed the content
                    choices: [valueString]
                    index: 36
                  valueString:
                    short: Who contributed the content
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 37
                required: [url, valueString, value]
            contact:
              match: {url: contact}
              schema:
                short: 'R4: contact'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 38
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `ContactDetail` value
                    _required: true
                    index: 40
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 41
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: ContactDetail}
                        choices: [valueString]
                        index: 43
                      valueString:
                        type: string
                        pattern: {type: String, value: ContactDetail}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 44
                    required: [url, valueString, value]
                  name:
                    url: name
                    short: 'R4: name'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 45
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 46
                      value:
                        short: Name of an individual to contact
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 48
                      valueString:
                        short: Name of an individual to contact
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 49
                    required: [url]
                  telecom:
                    url: telecom
                    short: 'R4: telecom'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 50
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: telecom}
                        index: 51
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Contact details for individual or organization
                        choices: [valueContactPoint]
                        index: 53
                      valueContactPoint:
                        short: Contact details for individual or organization
                        type: ContactPoint
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 54
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 39
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        _datatype:
                          match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `ContactDetail` value
                            _required: true
                            index: 40
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 41
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: ContactDetail}
                                choices: [valueString]
                                index: 43
                              valueString:
                                type: string
                                pattern: {type: String, value: ContactDetail}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 44
                            required: [url, valueString, value]
                        name:
                          match: {url: name}
                          schema:
                            short: 'R4: name'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 45
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 46
                              value:
                                short: Name of an individual to contact
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 48
                              valueString:
                                short: Name of an individual to contact
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 49
                            required: [url]
                        telecom:
                          match: {url: telecom}
                          schema:
                            short: 'R4: telecom'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 50
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: telecom}
                                index: 51
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Contact details for individual or organization
                                choices: [valueContactPoint]
                                index: 53
                              valueContactPoint:
                                short: Contact details for individual or organization
                                type: ContactPoint
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 54
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: contact}
                    index: 55
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 57
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueContributor}
        index: 58
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 60
    required: [url, extension]
  valueContactDetail:
    url: valueContactDetail
    short: 'R4: ContactDetail'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 1
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `ContactDetail` value
        _required: true
        index: 2
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 3
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: ContactDetail}
            choices: [valueString]
            index: 5
          valueString:
            type: string
            pattern: {type: String, value: ContactDetail}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 6
        required: [url, valueString, value]
      name:
        url: name
        short: 'R4: name'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 8
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 9
          value:
            short: Name of an individual to contact
            choices: [valueString]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 11
          valueString:
            short: Name of an individual to contact
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 12
        required: [url]
      telecom:
        url: telecom
        short: 'R4: telecom'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 13
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: telecom}
            index: 14
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Contact details for individual or organization
            choices: [valueContactPoint]
            index: 16
          valueContactPoint:
            short: Contact details for individual or organization
            type: ContactPoint
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 17
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `ContactDetail` value
        index: 2
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `ContactDetail` value
                _required: true
                index: 2
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 3
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: ContactDetail}
                    choices: [valueString]
                    index: 5
                  valueString:
                    type: string
                    pattern: {type: String, value: ContactDetail}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 6
                required: [url, valueString, value]
            name:
              match: {url: name}
              schema:
                short: 'R4: name'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 8
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 9
                  value:
                    short: Name of an individual to contact
                    choices: [valueString]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 11
                  valueString:
                    short: Name of an individual to contact
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 12
                required: [url]
            telecom:
              match: {url: telecom}
              schema:
                short: 'R4: telecom'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 13
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: telecom}
                    index: 14
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Contact details for individual or organization
                    choices: [valueContactPoint]
                    index: 16
                  valueContactPoint:
                    short: Contact details for individual or organization
                    type: ContactPoint
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 17
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueContactDetail}
        index: 18
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 20
    required: [url, extension]
  valueUsageContext:
    url: valueUsageContext
    short: 'R4: UsageContext'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 443
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `UsageContext` value
        _required: true
        index: 444
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 445
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: UsageContext}
            choices: [valueString]
            index: 447
          valueString:
            type: string
            pattern: {type: String, value: UsageContext}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 448
        required: [url, valueString, value]
      code:
        url: code
        short: 'R4: code'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 450
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: code}
            index: 451
          value:
            short: Type of context being specified
            choices: [valueCoding]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 453
          valueCoding:
            short: Type of context being specified
            type: Coding
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 454
        required: [valueCoding, url, value]
      value:
        url: value
        short: 'R4: value additional types'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 455
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: value}
            index: 456
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Value that defines the context
            choices: [valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference]
            index: 458
          valueReference:
            short: Value that defines the context
            refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-PlanDefinition|0.1.0']
            type: Reference
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 459
        required: [url, valueReference, value]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `UsageContext` value
        index: 444
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 2
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `UsageContext` value
                _required: true
                index: 444
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 445
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: UsageContext}
                    choices: [valueString]
                    index: 447
                  valueString:
                    type: string
                    pattern: {type: String, value: UsageContext}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 448
                required: [url, valueString, value]
            code:
              match: {url: code}
              schema:
                short: 'R4: code'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 450
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 451
                  value:
                    short: Type of context being specified
                    choices: [valueCoding]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 453
                  valueCoding:
                    short: Type of context being specified
                    type: Coding
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 454
                required: [valueCoding, url, value]
            value:
              match: {url: value}
              schema:
                short: 'R4: value additional types'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 455
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: value}
                    index: 456
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Value that defines the context
                    choices: [valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference, valueReference]
                    index: 458
                  valueReference:
                    short: Value that defines the context
                    refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-PlanDefinition|0.1.0']
                    type: Reference
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 459
                required: [url, valueReference, value]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueUsageContext}
        index: 473
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 475
    required: [url, extension]
  valueTriggerDefinition:
    url: valueTriggerDefinition
    short: 'R4: TriggerDefinition'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 280
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `TriggerDefinition` value
        _required: true
        index: 281
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 282
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: TriggerDefinition}
            choices: [valueString]
            index: 284
          valueString:
            type: string
            pattern: {type: String, value: TriggerDefinition}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 285
        required: [url, valueString, value]
      type:
        url: type
        short: 'R4: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 287
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: type}
            index: 288
          value:
            short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
            choices: [valueCode]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 290
          valueCode:
            short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 291
        required: [url, valueCode, value]
      name:
        url: name
        short: 'R4: Name or URI that identifies the event'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 292
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 293
          value:
            short: Name or URI that identifies the event
            choices: [valueString]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 295
          valueString:
            short: Name or URI that identifies the event
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 296
        required: [url]
      timing:
        url: timing
        short: 'R4: timing'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 297
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: timing}
            index: 298
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Timing of the event
            choices: [valueTiming, valueReference, valueReference, valueDate, valueDateTime]
            index: 300
          valueTiming:
            short: Timing of the event
            type: Timing
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 301
          valueReference:
            short: Timing of the event
            refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Schedule|0.1.0']
            type: Reference
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 302
          valueDate:
            short: Timing of the event
            type: date
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 304
          valueDateTime:
            short: Timing of the event
            type: dateTime
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 305
        required: [url]
      data:
        url: data
        short: 'R4: Triggering data of the event (multiple = ''and'')'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 306
        extensions:
          limit:
            url: limit
            short: 'R4: Number of results (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 382
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: limit}
                index: 383
              value:
                short: Number of results
                choices: [valuePositiveInt]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 385
              valuePositiveInt:
                short: Number of results
                type: positiveInt
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 386
            required: [url]
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            base: {max: '*', min: 0, path: Extension.extension}
            short: DataType slice for a FHIR R4 `DataRequirement` value
            _required: true
            index: 308
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                index: 309
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                pattern: {type: String, value: DataRequirement}
                choices: [valueString]
                index: 311
              valueString:
                type: string
                pattern: {type: String, value: DataRequirement}
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 312
            required: [url, valueString, value]
          type:
            url: type
            short: 'R4: type'
            _required: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 313
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: type}
                index: 314
              value:
                short: The type of the required data
                choices: [valueCode]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 316
              valueCode:
                short: The type of the required data
                type: code
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 317
            required: [url, valueCode, value]
          mustSupport:
            url: mustSupport
            short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 330
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: mustSupport}
                index: 331
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Indicates specific structure elements that are referenced by the knowledge module
                choices: [valueString]
                index: 333
              valueString:
                short: Indicates specific structure elements that are referenced by the knowledge module
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 334
            required: [url]
          codeFilter:
            url: codeFilter
            short: 'R4: codeFilter'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 335
            extensions:
              path:
                url: path
                short: 'R4: A code-valued attribute to filter on'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 337
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: path}
                    index: 338
                  value:
                    short: A code-valued attribute to filter on
                    choices: [valueString]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 340
                  valueString:
                    short: A code-valued attribute to filter on
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 341
                required: [url]
              searchParam:
                url: searchParam
                short: 'R4: A coded (token) parameter to search on (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 342
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: searchParam}
                    index: 343
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: A coded (token) parameter to search on
                    choices: [valueString]
                    index: 345
                  valueString:
                    short: A coded (token) parameter to search on
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 346
                required: [url]
              valueSet:
                url: valueSet
                short: 'R4: valueSet'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 347
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: valueSet}
                    index: 348
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Valueset for the filter
                    choices: [valueUri]
                    index: 350
                  valueUri:
                    short: Valueset for the filter
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 351
                required: [url]
              code:
                url: code
                short: 'R4: What code is expected'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 352
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 353
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: What code is expected
                    choices: [valueCoding]
                    index: 355
                  valueCoding:
                    short: What code is expected
                    type: Coding
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 356
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                index: 336
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    path:
                      match: {url: path}
                      schema:
                        short: 'R4: A code-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 337
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 338
                          value:
                            short: A code-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 340
                          valueString:
                            short: A code-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 341
                        required: [url]
                    searchParam:
                      match: {url: searchParam}
                      schema:
                        short: 'R4: A coded (token) parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 342
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 343
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A coded (token) parameter to search on
                            choices: [valueString]
                            index: 345
                          valueString:
                            short: A coded (token) parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 346
                        required: [url]
                    valueSet:
                      match: {url: valueSet}
                      schema:
                        short: 'R4: valueSet'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 347
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: valueSet}
                            index: 348
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Valueset for the filter
                            choices: [valueUri]
                            index: 350
                          valueUri:
                            short: Valueset for the filter
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 351
                        required: [url]
                    code:
                      match: {url: code}
                      schema:
                        short: 'R4: What code is expected'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 352
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 353
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: What code is expected
                            choices: [valueCoding]
                            index: 355
                          valueCoding:
                            short: What code is expected
                            type: Coding
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 356
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: codeFilter}
                index: 357
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 359
            required: [url]
          subject:
            url: subject
            short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 323
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: subject}
                index: 324
              value:
                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                choices: [valueCodeableConcept, valueReference, valueReference]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 326
              valueCodeableConcept:
                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                type: CodeableConcept
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 327
              valueReference:
                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                type: Reference
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 328
            required: [url]
          dateFilter:
            url: dateFilter
            short: 'R4: dateFilter'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 360
            extensions:
              path:
                url: path
                short: 'R4: A date-valued attribute to filter on'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 362
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: path}
                    index: 363
                  value:
                    short: A date-valued attribute to filter on
                    choices: [valueString]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 365
                  valueString:
                    short: A date-valued attribute to filter on
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 366
                required: [url]
              searchParam:
                url: searchParam
                short: 'R4: A date valued parameter to search on (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 367
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: searchParam}
                    index: 368
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: A date valued parameter to search on
                    choices: [valueString]
                    index: 370
                  valueString:
                    short: A date valued parameter to search on
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 371
                required: [url]
              value:
                url: value
                short: 'R4: value'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 372
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: value}
                    index: 373
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The value of the filter, as a Period, DateTime, or Duration value
                    choices: [valueDateTime, valuePeriod, valueDuration]
                    index: 375
                  valueDateTime:
                    short: The value of the filter, as a Period, DateTime, or Duration value
                    type: dateTime
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 376
                  valuePeriod:
                    short: The value of the filter, as a Period, DateTime, or Duration value
                    type: Period
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 377
                  valueDuration:
                    short: The value of the filter, as a Period, DateTime, or Duration value
                    type: Duration
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 378
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                index: 361
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    path:
                      match: {url: path}
                      schema:
                        short: 'R4: A date-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 362
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 363
                          value:
                            short: A date-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 365
                          valueString:
                            short: A date-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 366
                        required: [url]
                    searchParam:
                      match: {url: searchParam}
                      schema:
                        short: 'R4: A date valued parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 367
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 368
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A date valued parameter to search on
                            choices: [valueString]
                            index: 370
                          valueString:
                            short: A date valued parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 371
                        required: [url]
                    value:
                      match: {url: value}
                      schema:
                        short: 'R4: value'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 372
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: value}
                            index: 373
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            choices: [valueDateTime, valuePeriod, valueDuration]
                            index: 375
                          valueDateTime:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: dateTime
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 376
                          valuePeriod:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Period
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 377
                          valueDuration:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Duration
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 378
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: dateFilter}
                index: 379
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 381
            required: [url]
          sort:
            url: sort
            short: 'R4: Order of the results (new)'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 387
            extensions:
              path:
                url: path
                short: 'R4: The name of the attribute to perform the sort (new)'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 389
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: path}
                    index: 390
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The name of the attribute to perform the sort
                    choices: [valueString]
                    index: 392
                  valueString:
                    short: The name of the attribute to perform the sort
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 393
                required: [url, valueString, value]
              direction:
                url: direction
                short: 'R4: ascending | descending (new)'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 394
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: direction}
                    index: 395
                  value:
                    short: ascending | descending
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 397
                  valueCode:
                    short: ascending | descending
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 398
                required: [url, valueCode, value]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                min: 2
                index: 388
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 2
                  slices:
                    path:
                      match: {url: path}
                      schema:
                        short: 'R4: The name of the attribute to perform the sort (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 389
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 390
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The name of the attribute to perform the sort
                            choices: [valueString]
                            index: 392
                          valueString:
                            short: The name of the attribute to perform the sort
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 393
                        required: [url, valueString, value]
                    direction:
                      match: {url: direction}
                      schema:
                        short: 'R4: ascending | descending (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 394
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: direction}
                            index: 395
                          value:
                            short: ascending | descending
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 397
                          valueCode:
                            short: ascending | descending
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 398
                        required: [url, valueCode, value]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: sort}
                index: 399
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choices: []
                index: 401
            required: [url]
          profile:
            url: profile
            short: 'R4: profile'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 318
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: profile}
                index: 319
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The profile of the required data
                choices: [valueUri]
                index: 321
              valueUri:
                short: The profile of the required data
                type: uri
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 322
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 307
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                limit:
                  match: {url: limit}
                  schema:
                    short: 'R4: Number of results (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 382
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: limit}
                        index: 383
                      value:
                        short: Number of results
                        choices: [valuePositiveInt]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 385
                      valuePositiveInt:
                        short: Number of results
                        type: positiveInt
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 386
                    required: [url]
                _datatype:
                  match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `DataRequirement` value
                    _required: true
                    index: 308
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 309
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: DataRequirement}
                        choices: [valueString]
                        index: 311
                      valueString:
                        type: string
                        pattern: {type: String, value: DataRequirement}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 312
                    required: [url, valueString, value]
                type:
                  match: {url: type}
                  schema:
                    short: 'R4: type'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 313
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: type}
                        index: 314
                      value:
                        short: The type of the required data
                        choices: [valueCode]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 316
                      valueCode:
                        short: The type of the required data
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 317
                    required: [url, valueCode, value]
                mustSupport:
                  match: {url: mustSupport}
                  schema:
                    short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 330
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: mustSupport}
                        index: 331
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Indicates specific structure elements that are referenced by the knowledge module
                        choices: [valueString]
                        index: 333
                      valueString:
                        short: Indicates specific structure elements that are referenced by the knowledge module
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 334
                    required: [url]
                codeFilter:
                  match: {url: codeFilter}
                  schema:
                    short: 'R4: codeFilter'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 335
                    extensions:
                      path:
                        url: path
                        short: 'R4: A code-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 337
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 338
                          value:
                            short: A code-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 340
                          valueString:
                            short: A code-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 341
                        required: [url]
                      searchParam:
                        url: searchParam
                        short: 'R4: A coded (token) parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 342
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 343
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A coded (token) parameter to search on
                            choices: [valueString]
                            index: 345
                          valueString:
                            short: A coded (token) parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 346
                        required: [url]
                      valueSet:
                        url: valueSet
                        short: 'R4: valueSet'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 347
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: valueSet}
                            index: 348
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Valueset for the filter
                            choices: [valueUri]
                            index: 350
                          valueUri:
                            short: Valueset for the filter
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 351
                        required: [url]
                      code:
                        url: code
                        short: 'R4: What code is expected'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 352
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 353
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: What code is expected
                            choices: [valueCoding]
                            index: 355
                          valueCoding:
                            short: What code is expected
                            type: Coding
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 356
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        index: 336
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 0
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: A code-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 337
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 338
                                  value:
                                    short: A code-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 340
                                  valueString:
                                    short: A code-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 341
                                required: [url]
                            searchParam:
                              match: {url: searchParam}
                              schema:
                                short: 'R4: A coded (token) parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 342
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 343
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A coded (token) parameter to search on
                                    choices: [valueString]
                                    index: 345
                                  valueString:
                                    short: A coded (token) parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 346
                                required: [url]
                            valueSet:
                              match: {url: valueSet}
                              schema:
                                short: 'R4: valueSet'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 347
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: valueSet}
                                    index: 348
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Valueset for the filter
                                    choices: [valueUri]
                                    index: 350
                                  valueUri:
                                    short: Valueset for the filter
                                    type: uri
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 351
                                required: [url]
                            code:
                              match: {url: code}
                              schema:
                                short: 'R4: What code is expected'
                                array: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 352
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: code}
                                    index: 353
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: What code is expected
                                    choices: [valueCoding]
                                    index: 355
                                  valueCoding:
                                    short: What code is expected
                                    type: Coding
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 356
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: codeFilter}
                        index: 357
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 359
                    required: [url]
                subject:
                  match: {url: subject}
                  schema:
                    short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 323
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: subject}
                        index: 324
                      value:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        choices: [valueCodeableConcept, valueReference, valueReference]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 326
                      valueCodeableConcept:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        type: CodeableConcept
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 327
                      valueReference:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                        type: Reference
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 328
                    required: [url]
                dateFilter:
                  match: {url: dateFilter}
                  schema:
                    short: 'R4: dateFilter'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 360
                    extensions:
                      path:
                        url: path
                        short: 'R4: A date-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 362
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 363
                          value:
                            short: A date-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 365
                          valueString:
                            short: A date-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 366
                        required: [url]
                      searchParam:
                        url: searchParam
                        short: 'R4: A date valued parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 367
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 368
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A date valued parameter to search on
                            choices: [valueString]
                            index: 370
                          valueString:
                            short: A date valued parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 371
                        required: [url]
                      value:
                        url: value
                        short: 'R4: value'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 372
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: value}
                            index: 373
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            choices: [valueDateTime, valuePeriod, valueDuration]
                            index: 375
                          valueDateTime:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: dateTime
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 376
                          valuePeriod:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Period
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 377
                          valueDuration:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Duration
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 378
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        index: 361
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 0
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: A date-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 362
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 363
                                  value:
                                    short: A date-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 365
                                  valueString:
                                    short: A date-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 366
                                required: [url]
                            searchParam:
                              match: {url: searchParam}
                              schema:
                                short: 'R4: A date valued parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 367
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 368
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A date valued parameter to search on
                                    choices: [valueString]
                                    index: 370
                                  valueString:
                                    short: A date valued parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 371
                                required: [url]
                            value:
                              match: {url: value}
                              schema:
                                short: 'R4: value'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 372
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: value}
                                    index: 373
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                    index: 375
                                  valueDateTime:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: dateTime
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 376
                                  valuePeriod:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Period
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 377
                                  valueDuration:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Duration
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 378
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: dateFilter}
                        index: 379
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 381
                    required: [url]
                sort:
                  match: {url: sort}
                  schema:
                    short: 'R4: Order of the results (new)'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 387
                    extensions:
                      path:
                        url: path
                        short: 'R4: The name of the attribute to perform the sort (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 389
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 390
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The name of the attribute to perform the sort
                            choices: [valueString]
                            index: 392
                          valueString:
                            short: The name of the attribute to perform the sort
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 393
                        required: [url, valueString, value]
                      direction:
                        url: direction
                        short: 'R4: ascending | descending (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 394
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: direction}
                            index: 395
                          value:
                            short: ascending | descending
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 397
                          valueCode:
                            short: ascending | descending
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 398
                        required: [url, valueCode, value]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        min: 2
                        index: 388
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 2
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: The name of the attribute to perform the sort (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 389
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 390
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The name of the attribute to perform the sort
                                    choices: [valueString]
                                    index: 392
                                  valueString:
                                    short: The name of the attribute to perform the sort
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 393
                                required: [url, valueString, value]
                            direction:
                              match: {url: direction}
                              schema:
                                short: 'R4: ascending | descending (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 394
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: direction}
                                    index: 395
                                  value:
                                    short: ascending | descending
                                    choices: [valueCode]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 397
                                  valueCode:
                                    short: ascending | descending
                                    type: code
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 398
                                required: [url, valueCode, value]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: sort}
                        index: 399
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 401
                    required: [url]
                profile:
                  match: {url: profile}
                  schema:
                    short: 'R4: profile'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 318
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: profile}
                        index: 319
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The profile of the required data
                        choices: [valueUri]
                        index: 321
                      valueUri:
                        short: The profile of the required data
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 322
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: data}
            index: 402
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 404
        required: [url]
      condition:
        url: condition
        short: 'R4: Whether the event triggers (boolean expression) (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 405
        extensions:
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            base: {max: '*', min: 0, path: Extension.extension}
            short: DataType slice for a FHIR R4 `Expression` value
            _required: true
            index: 407
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                index: 408
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                pattern: {type: String, value: Expression}
                choices: [valueString]
                index: 410
              valueString:
                type: string
                pattern: {type: String, value: Expression}
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 411
            required: [url, valueString, value]
          description:
            url: description
            short: 'R4: Natural language description of the condition (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 412
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: description}
                index: 413
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Natural language description of the condition
                choices: [valueString]
                index: 415
              valueString:
                short: Natural language description of the condition
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 416
            required: [url]
          name:
            url: name
            short: 'R4: Short name assigned to expression for reuse (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 417
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: name}
                index: 418
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Short name assigned to expression for reuse
                choices: [valueId]
                index: 420
              valueId:
                short: Short name assigned to expression for reuse
                type: id
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 421
            required: [url]
          language:
            url: language
            short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
            _required: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 422
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: language}
                index: 423
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                choices: [valueCode]
                index: 425
              valueCode:
                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                type: code
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 426
            required: [url, valueCode, value]
          expression:
            url: expression
            short: 'R4: Expression in specified language (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 427
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: expression}
                index: 428
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Expression in specified language
                choices: [valueString]
                index: 430
              valueString:
                short: Expression in specified language
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 431
            required: [url]
          reference:
            url: reference
            short: 'R4: Where the expression is found (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 432
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: reference}
                index: 433
              value:
                short: Where the expression is found
                choices: [valueUri]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 435
              valueUri:
                short: Where the expression is found
                type: uri
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 436
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 406
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                _datatype:
                  match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `Expression` value
                    _required: true
                    index: 407
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 408
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: Expression}
                        choices: [valueString]
                        index: 410
                      valueString:
                        type: string
                        pattern: {type: String, value: Expression}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 411
                    required: [url, valueString, value]
                description:
                  match: {url: description}
                  schema:
                    short: 'R4: Natural language description of the condition (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 412
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: description}
                        index: 413
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Natural language description of the condition
                        choices: [valueString]
                        index: 415
                      valueString:
                        short: Natural language description of the condition
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 416
                    required: [url]
                name:
                  match: {url: name}
                  schema:
                    short: 'R4: Short name assigned to expression for reuse (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 417
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 418
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Short name assigned to expression for reuse
                        choices: [valueId]
                        index: 420
                      valueId:
                        short: Short name assigned to expression for reuse
                        type: id
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 421
                    required: [url]
                language:
                  match: {url: language}
                  schema:
                    short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 422
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: language}
                        index: 423
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                        choices: [valueCode]
                        index: 425
                      valueCode:
                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 426
                    required: [url, valueCode, value]
                expression:
                  match: {url: expression}
                  schema:
                    short: 'R4: Expression in specified language (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 427
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: expression}
                        index: 428
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Expression in specified language
                        choices: [valueString]
                        index: 430
                      valueString:
                        short: Expression in specified language
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 431
                    required: [url]
                reference:
                  match: {url: reference}
                  schema:
                    short: 'R4: Where the expression is found (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 432
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: reference}
                        index: 433
                      value:
                        short: Where the expression is found
                        choices: [valueUri]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 435
                      valueUri:
                        short: Where the expression is found
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 436
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: condition}
            index: 437
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 439
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `TriggerDefinition` value
        index: 281
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `TriggerDefinition` value
                _required: true
                index: 281
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 282
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: TriggerDefinition}
                    choices: [valueString]
                    index: 284
                  valueString:
                    type: string
                    pattern: {type: String, value: TriggerDefinition}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 285
                required: [url, valueString, value]
            type:
              match: {url: type}
              schema:
                short: 'R4: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 287
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 288
                  value:
                    short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 290
                  valueCode:
                    short: named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 291
                required: [url, valueCode, value]
            name:
              match: {url: name}
              schema:
                short: 'R4: Name or URI that identifies the event'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 292
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 293
                  value:
                    short: Name or URI that identifies the event
                    choices: [valueString]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 295
                  valueString:
                    short: Name or URI that identifies the event
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 296
                required: [url]
            timing:
              match: {url: timing}
              schema:
                short: 'R4: timing'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 297
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: timing}
                    index: 298
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Timing of the event
                    choices: [valueTiming, valueReference, valueReference, valueDate, valueDateTime]
                    index: 300
                  valueTiming:
                    short: Timing of the event
                    type: Timing
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 301
                  valueReference:
                    short: Timing of the event
                    refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Schedule|0.1.0']
                    type: Reference
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 302
                  valueDate:
                    short: Timing of the event
                    type: date
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 304
                  valueDateTime:
                    short: Timing of the event
                    type: dateTime
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 305
                required: [url]
            data:
              match: {url: data}
              schema:
                short: 'R4: Triggering data of the event (multiple = ''and'')'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 306
                extensions:
                  limit:
                    url: limit
                    short: 'R4: Number of results (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 382
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: limit}
                        index: 383
                      value:
                        short: Number of results
                        choices: [valuePositiveInt]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 385
                      valuePositiveInt:
                        short: Number of results
                        type: positiveInt
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 386
                    required: [url]
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `DataRequirement` value
                    _required: true
                    index: 308
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 309
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: DataRequirement}
                        choices: [valueString]
                        index: 311
                      valueString:
                        type: string
                        pattern: {type: String, value: DataRequirement}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 312
                    required: [url, valueString, value]
                  type:
                    url: type
                    short: 'R4: type'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 313
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: type}
                        index: 314
                      value:
                        short: The type of the required data
                        choices: [valueCode]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 316
                      valueCode:
                        short: The type of the required data
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 317
                    required: [url, valueCode, value]
                  mustSupport:
                    url: mustSupport
                    short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 330
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: mustSupport}
                        index: 331
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Indicates specific structure elements that are referenced by the knowledge module
                        choices: [valueString]
                        index: 333
                      valueString:
                        short: Indicates specific structure elements that are referenced by the knowledge module
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 334
                    required: [url]
                  codeFilter:
                    url: codeFilter
                    short: 'R4: codeFilter'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 335
                    extensions:
                      path:
                        url: path
                        short: 'R4: A code-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 337
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 338
                          value:
                            short: A code-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 340
                          valueString:
                            short: A code-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 341
                        required: [url]
                      searchParam:
                        url: searchParam
                        short: 'R4: A coded (token) parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 342
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 343
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A coded (token) parameter to search on
                            choices: [valueString]
                            index: 345
                          valueString:
                            short: A coded (token) parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 346
                        required: [url]
                      valueSet:
                        url: valueSet
                        short: 'R4: valueSet'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 347
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: valueSet}
                            index: 348
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Valueset for the filter
                            choices: [valueUri]
                            index: 350
                          valueUri:
                            short: Valueset for the filter
                            type: uri
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 351
                        required: [url]
                      code:
                        url: code
                        short: 'R4: What code is expected'
                        array: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 352
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 353
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: What code is expected
                            choices: [valueCoding]
                            index: 355
                          valueCoding:
                            short: What code is expected
                            type: Coding
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 356
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        index: 336
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 0
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: A code-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 337
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 338
                                  value:
                                    short: A code-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 340
                                  valueString:
                                    short: A code-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 341
                                required: [url]
                            searchParam:
                              match: {url: searchParam}
                              schema:
                                short: 'R4: A coded (token) parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 342
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 343
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A coded (token) parameter to search on
                                    choices: [valueString]
                                    index: 345
                                  valueString:
                                    short: A coded (token) parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 346
                                required: [url]
                            valueSet:
                              match: {url: valueSet}
                              schema:
                                short: 'R4: valueSet'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 347
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: valueSet}
                                    index: 348
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Valueset for the filter
                                    choices: [valueUri]
                                    index: 350
                                  valueUri:
                                    short: Valueset for the filter
                                    type: uri
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 351
                                required: [url]
                            code:
                              match: {url: code}
                              schema:
                                short: 'R4: What code is expected'
                                array: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 352
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: code}
                                    index: 353
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: What code is expected
                                    choices: [valueCoding]
                                    index: 355
                                  valueCoding:
                                    short: What code is expected
                                    type: Coding
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 356
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: codeFilter}
                        index: 357
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 359
                    required: [url]
                  subject:
                    url: subject
                    short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 323
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: subject}
                        index: 324
                      value:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        choices: [valueCodeableConcept, valueReference, valueReference]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 326
                      valueCodeableConcept:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        type: CodeableConcept
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 327
                      valueReference:
                        short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                        refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                        type: Reference
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 328
                    required: [url]
                  dateFilter:
                    url: dateFilter
                    short: 'R4: dateFilter'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 360
                    extensions:
                      path:
                        url: path
                        short: 'R4: A date-valued attribute to filter on'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 362
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 363
                          value:
                            short: A date-valued attribute to filter on
                            choices: [valueString]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 365
                          valueString:
                            short: A date-valued attribute to filter on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 366
                        required: [url]
                      searchParam:
                        url: searchParam
                        short: 'R4: A date valued parameter to search on (new)'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 367
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: searchParam}
                            index: 368
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: A date valued parameter to search on
                            choices: [valueString]
                            index: 370
                          valueString:
                            short: A date valued parameter to search on
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 371
                        required: [url]
                      value:
                        url: value
                        short: 'R4: value'
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 372
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: value}
                            index: 373
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            choices: [valueDateTime, valuePeriod, valueDuration]
                            index: 375
                          valueDateTime:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: dateTime
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 376
                          valuePeriod:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Period
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 377
                          valueDuration:
                            short: The value of the filter, as a Period, DateTime, or Duration value
                            type: Duration
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 378
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        index: 361
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 0
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: A date-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 362
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 363
                                  value:
                                    short: A date-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 365
                                  valueString:
                                    short: A date-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 366
                                required: [url]
                            searchParam:
                              match: {url: searchParam}
                              schema:
                                short: 'R4: A date valued parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 367
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 368
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A date valued parameter to search on
                                    choices: [valueString]
                                    index: 370
                                  valueString:
                                    short: A date valued parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 371
                                required: [url]
                            value:
                              match: {url: value}
                              schema:
                                short: 'R4: value'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 372
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: value}
                                    index: 373
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                    index: 375
                                  valueDateTime:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: dateTime
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 376
                                  valuePeriod:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Period
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 377
                                  valueDuration:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Duration
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 378
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: dateFilter}
                        index: 379
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 381
                    required: [url]
                  sort:
                    url: sort
                    short: 'R4: Order of the results (new)'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 387
                    extensions:
                      path:
                        url: path
                        short: 'R4: The name of the attribute to perform the sort (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 389
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: path}
                            index: 390
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The name of the attribute to perform the sort
                            choices: [valueString]
                            index: 392
                          valueString:
                            short: The name of the attribute to perform the sort
                            type: string
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 393
                        required: [url, valueString, value]
                      direction:
                        url: direction
                        short: 'R4: ascending | descending (new)'
                        _required: true
                        base: {max: '*', min: 0, path: Extension.extension}
                        index: 394
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: direction}
                            index: 395
                          value:
                            short: ascending | descending
                            choices: [valueCode]
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            index: 397
                          valueCode:
                            short: ascending | descending
                            type: code
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            choiceOf: value
                            index: 398
                        required: [url, valueCode, value]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        min: 2
                        index: 388
                        slicing:
                          rules: open
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 2
                          slices:
                            path:
                              match: {url: path}
                              schema:
                                short: 'R4: The name of the attribute to perform the sort (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 389
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 390
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The name of the attribute to perform the sort
                                    choices: [valueString]
                                    index: 392
                                  valueString:
                                    short: The name of the attribute to perform the sort
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 393
                                required: [url, valueString, value]
                            direction:
                              match: {url: direction}
                              schema:
                                short: 'R4: ascending | descending (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 394
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: direction}
                                    index: 395
                                  value:
                                    short: ascending | descending
                                    choices: [valueCode]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 397
                                  valueCode:
                                    short: ascending | descending
                                    type: code
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 398
                                required: [url, valueCode, value]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: sort}
                        index: 399
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choices: []
                        index: 401
                    required: [url]
                  profile:
                    url: profile
                    short: 'R4: profile'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 318
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: profile}
                        index: 319
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The profile of the required data
                        choices: [valueUri]
                        index: 321
                      valueUri:
                        short: The profile of the required data
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 322
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 307
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        limit:
                          match: {url: limit}
                          schema:
                            short: 'R4: Number of results (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 382
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: limit}
                                index: 383
                              value:
                                short: Number of results
                                choices: [valuePositiveInt]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 385
                              valuePositiveInt:
                                short: Number of results
                                type: positiveInt
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 386
                            required: [url]
                        _datatype:
                          match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `DataRequirement` value
                            _required: true
                            index: 308
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 309
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: DataRequirement}
                                choices: [valueString]
                                index: 311
                              valueString:
                                type: string
                                pattern: {type: String, value: DataRequirement}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 312
                            required: [url, valueString, value]
                        type:
                          match: {url: type}
                          schema:
                            short: 'R4: type'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 313
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: type}
                                index: 314
                              value:
                                short: The type of the required data
                                choices: [valueCode]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 316
                              valueCode:
                                short: The type of the required data
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 317
                            required: [url, valueCode, value]
                        mustSupport:
                          match: {url: mustSupport}
                          schema:
                            short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 330
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: mustSupport}
                                index: 331
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Indicates specific structure elements that are referenced by the knowledge module
                                choices: [valueString]
                                index: 333
                              valueString:
                                short: Indicates specific structure elements that are referenced by the knowledge module
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 334
                            required: [url]
                        codeFilter:
                          match: {url: codeFilter}
                          schema:
                            short: 'R4: codeFilter'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 335
                            extensions:
                              path:
                                url: path
                                short: 'R4: A code-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 337
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 338
                                  value:
                                    short: A code-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 340
                                  valueString:
                                    short: A code-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 341
                                required: [url]
                              searchParam:
                                url: searchParam
                                short: 'R4: A coded (token) parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 342
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 343
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A coded (token) parameter to search on
                                    choices: [valueString]
                                    index: 345
                                  valueString:
                                    short: A coded (token) parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 346
                                required: [url]
                              valueSet:
                                url: valueSet
                                short: 'R4: valueSet'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 347
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: valueSet}
                                    index: 348
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Valueset for the filter
                                    choices: [valueUri]
                                    index: 350
                                  valueUri:
                                    short: Valueset for the filter
                                    type: uri
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 351
                                required: [url]
                              code:
                                url: code
                                short: 'R4: What code is expected'
                                array: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 352
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: code}
                                    index: 353
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: What code is expected
                                    choices: [valueCoding]
                                    index: 355
                                  valueCoding:
                                    short: What code is expected
                                    type: Coding
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 356
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                index: 336
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 0
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: A code-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 337
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 338
                                          value:
                                            short: A code-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 340
                                          valueString:
                                            short: A code-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 341
                                        required: [url]
                                    searchParam:
                                      match: {url: searchParam}
                                      schema:
                                        short: 'R4: A coded (token) parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 342
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 343
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A coded (token) parameter to search on
                                            choices: [valueString]
                                            index: 345
                                          valueString:
                                            short: A coded (token) parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 346
                                        required: [url]
                                    valueSet:
                                      match: {url: valueSet}
                                      schema:
                                        short: 'R4: valueSet'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 347
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: valueSet}
                                            index: 348
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Valueset for the filter
                                            choices: [valueUri]
                                            index: 350
                                          valueUri:
                                            short: Valueset for the filter
                                            type: uri
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 351
                                        required: [url]
                                    code:
                                      match: {url: code}
                                      schema:
                                        short: 'R4: What code is expected'
                                        array: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 352
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: code}
                                            index: 353
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: What code is expected
                                            choices: [valueCoding]
                                            index: 355
                                          valueCoding:
                                            short: What code is expected
                                            type: Coding
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 356
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: codeFilter}
                                index: 357
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 359
                            required: [url]
                        subject:
                          match: {url: subject}
                          schema:
                            short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 323
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: subject}
                                index: 324
                              value:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                choices: [valueCodeableConcept, valueReference, valueReference]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 326
                              valueCodeableConcept:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                type: CodeableConcept
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 327
                              valueReference:
                                short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                                refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                                type: Reference
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 328
                            required: [url]
                        dateFilter:
                          match: {url: dateFilter}
                          schema:
                            short: 'R4: dateFilter'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 360
                            extensions:
                              path:
                                url: path
                                short: 'R4: A date-valued attribute to filter on'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 362
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 363
                                  value:
                                    short: A date-valued attribute to filter on
                                    choices: [valueString]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 365
                                  valueString:
                                    short: A date-valued attribute to filter on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 366
                                required: [url]
                              searchParam:
                                url: searchParam
                                short: 'R4: A date valued parameter to search on (new)'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 367
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: searchParam}
                                    index: 368
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: A date valued parameter to search on
                                    choices: [valueString]
                                    index: 370
                                  valueString:
                                    short: A date valued parameter to search on
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 371
                                required: [url]
                              value:
                                url: value
                                short: 'R4: value'
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 372
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: value}
                                    index: 373
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    choices: [valueDateTime, valuePeriod, valueDuration]
                                    index: 375
                                  valueDateTime:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: dateTime
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 376
                                  valuePeriod:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Period
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 377
                                  valueDuration:
                                    short: The value of the filter, as a Period, DateTime, or Duration value
                                    type: Duration
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 378
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                index: 361
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 0
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: A date-valued attribute to filter on'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 362
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 363
                                          value:
                                            short: A date-valued attribute to filter on
                                            choices: [valueString]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 365
                                          valueString:
                                            short: A date-valued attribute to filter on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 366
                                        required: [url]
                                    searchParam:
                                      match: {url: searchParam}
                                      schema:
                                        short: 'R4: A date valued parameter to search on (new)'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 367
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: searchParam}
                                            index: 368
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: A date valued parameter to search on
                                            choices: [valueString]
                                            index: 370
                                          valueString:
                                            short: A date valued parameter to search on
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 371
                                        required: [url]
                                    value:
                                      match: {url: value}
                                      schema:
                                        short: 'R4: value'
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 372
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: value}
                                            index: 373
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            choices: [valueDateTime, valuePeriod, valueDuration]
                                            index: 375
                                          valueDateTime:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: dateTime
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 376
                                          valuePeriod:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Period
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 377
                                          valueDuration:
                                            short: The value of the filter, as a Period, DateTime, or Duration value
                                            type: Duration
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 378
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: dateFilter}
                                index: 379
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 381
                            required: [url]
                        sort:
                          match: {url: sort}
                          schema:
                            short: 'R4: Order of the results (new)'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 387
                            extensions:
                              path:
                                url: path
                                short: 'R4: The name of the attribute to perform the sort (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 389
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: path}
                                    index: 390
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The name of the attribute to perform the sort
                                    choices: [valueString]
                                    index: 392
                                  valueString:
                                    short: The name of the attribute to perform the sort
                                    type: string
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 393
                                required: [url, valueString, value]
                              direction:
                                url: direction
                                short: 'R4: ascending | descending (new)'
                                _required: true
                                base: {max: '*', min: 0, path: Extension.extension}
                                index: 394
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: direction}
                                    index: 395
                                  value:
                                    short: ascending | descending
                                    choices: [valueCode]
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    index: 397
                                  valueCode:
                                    short: ascending | descending
                                    type: code
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    choiceOf: value
                                    index: 398
                                required: [url, valueCode, value]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                min: 2
                                index: 388
                                slicing:
                                  rules: open
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 2
                                  slices:
                                    path:
                                      match: {url: path}
                                      schema:
                                        short: 'R4: The name of the attribute to perform the sort (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 389
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: path}
                                            index: 390
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The name of the attribute to perform the sort
                                            choices: [valueString]
                                            index: 392
                                          valueString:
                                            short: The name of the attribute to perform the sort
                                            type: string
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 393
                                        required: [url, valueString, value]
                                    direction:
                                      match: {url: direction}
                                      schema:
                                        short: 'R4: ascending | descending (new)'
                                        _required: true
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        index: 394
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: direction}
                                            index: 395
                                          value:
                                            short: ascending | descending
                                            choices: [valueCode]
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            index: 397
                                          valueCode:
                                            short: ascending | descending
                                            type: code
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            choiceOf: value
                                            index: 398
                                        required: [url, valueCode, value]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: sort}
                                index: 399
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choices: []
                                index: 401
                            required: [url]
                        profile:
                          match: {url: profile}
                          schema:
                            short: 'R4: profile'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 318
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: profile}
                                index: 319
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The profile of the required data
                                choices: [valueUri]
                                index: 321
                              valueUri:
                                short: The profile of the required data
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 322
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: data}
                    index: 402
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 404
                required: [url]
            condition:
              match: {url: condition}
              schema:
                short: 'R4: Whether the event triggers (boolean expression) (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 405
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: DataType slice for a FHIR R4 `Expression` value
                    _required: true
                    index: 407
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                        index: 408
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: Expression}
                        choices: [valueString]
                        index: 410
                      valueString:
                        type: string
                        pattern: {type: String, value: Expression}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 411
                    required: [url, valueString, value]
                  description:
                    url: description
                    short: 'R4: Natural language description of the condition (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 412
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: description}
                        index: 413
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Natural language description of the condition
                        choices: [valueString]
                        index: 415
                      valueString:
                        short: Natural language description of the condition
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 416
                    required: [url]
                  name:
                    url: name
                    short: 'R4: Short name assigned to expression for reuse (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 417
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: name}
                        index: 418
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Short name assigned to expression for reuse
                        choices: [valueId]
                        index: 420
                      valueId:
                        short: Short name assigned to expression for reuse
                        type: id
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 421
                    required: [url]
                  language:
                    url: language
                    short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 422
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: language}
                        index: 423
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                        choices: [valueCode]
                        index: 425
                      valueCode:
                        short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 426
                    required: [url, valueCode, value]
                  expression:
                    url: expression
                    short: 'R4: Expression in specified language (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 427
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: expression}
                        index: 428
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Expression in specified language
                        choices: [valueString]
                        index: 430
                      valueString:
                        short: Expression in specified language
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 431
                    required: [url]
                  reference:
                    url: reference
                    short: 'R4: Where the expression is found (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 432
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: reference}
                        index: 433
                      value:
                        short: Where the expression is found
                        choices: [valueUri]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 435
                      valueUri:
                        short: Where the expression is found
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 436
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 406
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        _datatype:
                          match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: DataType slice for a FHIR R4 `Expression` value
                            _required: true
                            index: 407
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                                index: 408
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: Expression}
                                choices: [valueString]
                                index: 410
                              valueString:
                                type: string
                                pattern: {type: String, value: Expression}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 411
                            required: [url, valueString, value]
                        description:
                          match: {url: description}
                          schema:
                            short: 'R4: Natural language description of the condition (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 412
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: description}
                                index: 413
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Natural language description of the condition
                                choices: [valueString]
                                index: 415
                              valueString:
                                short: Natural language description of the condition
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 416
                            required: [url]
                        name:
                          match: {url: name}
                          schema:
                            short: 'R4: Short name assigned to expression for reuse (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 417
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: name}
                                index: 418
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Short name assigned to expression for reuse
                                choices: [valueId]
                                index: 420
                              valueId:
                                short: Short name assigned to expression for reuse
                                type: id
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 421
                            required: [url]
                        language:
                          match: {url: language}
                          schema:
                            short: 'R4: text/cql | text/fhirpath | application/x-fhir-query | etc. (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 422
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: language}
                                index: 423
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                choices: [valueCode]
                                index: 425
                              valueCode:
                                short: text/cql | text/fhirpath | application/x-fhir-query | etc.
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 426
                            required: [url, valueCode, value]
                        expression:
                          match: {url: expression}
                          schema:
                            short: 'R4: Expression in specified language (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 427
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: expression}
                                index: 428
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Expression in specified language
                                choices: [valueString]
                                index: 430
                              valueString:
                                short: Expression in specified language
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 431
                            required: [url]
                        reference:
                          match: {url: reference}
                          schema:
                            short: 'R4: Where the expression is found (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 432
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: reference}
                                index: 433
                              value:
                                short: Where the expression is found
                                choices: [valueUri]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 435
                              valueUri:
                                short: Where the expression is found
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 436
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: condition}
                    index: 437
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 439
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueTriggerDefinition}
        index: 440
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 442
    required: [url, extension]
  valueDataRequirement:
    url: valueDataRequirement
    short: 'R4: DataRequirement'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 61
    extensions:
      limit:
        url: limit
        short: 'R4: Number of results (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 137
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: limit}
            index: 138
          value:
            short: Number of results
            choices: [valuePositiveInt]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 140
          valuePositiveInt:
            short: Number of results
            type: positiveInt
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 141
        required: [url]
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `DataRequirement` value
        _required: true
        index: 62
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 63
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: DataRequirement}
            choices: [valueString]
            index: 65
          valueString:
            type: string
            pattern: {type: String, value: DataRequirement}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 66
        required: [url, valueString, value]
      type:
        url: type
        short: 'R4: type'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 68
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: type}
            index: 69
          value:
            short: The type of the required data
            choices: [valueCode]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 71
          valueCode:
            short: The type of the required data
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 72
        required: [url, valueCode, value]
      mustSupport:
        url: mustSupport
        short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 85
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: mustSupport}
            index: 86
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Indicates specific structure elements that are referenced by the knowledge module
            choices: [valueString]
            index: 88
          valueString:
            short: Indicates specific structure elements that are referenced by the knowledge module
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 89
        required: [url]
      codeFilter:
        url: codeFilter
        short: 'R4: codeFilter'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 90
        extensions:
          path:
            url: path
            short: 'R4: A code-valued attribute to filter on'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 92
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: path}
                index: 93
              value:
                short: A code-valued attribute to filter on
                choices: [valueString]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 95
              valueString:
                short: A code-valued attribute to filter on
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 96
            required: [url]
          searchParam:
            url: searchParam
            short: 'R4: A coded (token) parameter to search on (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 97
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: searchParam}
                index: 98
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: A coded (token) parameter to search on
                choices: [valueString]
                index: 100
              valueString:
                short: A coded (token) parameter to search on
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 101
            required: [url]
          valueSet:
            url: valueSet
            short: 'R4: valueSet'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 102
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: valueSet}
                index: 103
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Valueset for the filter
                choices: [valueUri]
                index: 105
              valueUri:
                short: Valueset for the filter
                type: uri
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 106
            required: [url]
          code:
            url: code
            short: 'R4: What code is expected'
            array: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 107
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: code}
                index: 108
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: What code is expected
                choices: [valueCoding]
                index: 110
              valueCoding:
                short: What code is expected
                type: Coding
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 111
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 91
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                path:
                  match: {url: path}
                  schema:
                    short: 'R4: A code-valued attribute to filter on'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 92
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 93
                      value:
                        short: A code-valued attribute to filter on
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 95
                      valueString:
                        short: A code-valued attribute to filter on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 96
                    required: [url]
                searchParam:
                  match: {url: searchParam}
                  schema:
                    short: 'R4: A coded (token) parameter to search on (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 97
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: searchParam}
                        index: 98
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A coded (token) parameter to search on
                        choices: [valueString]
                        index: 100
                      valueString:
                        short: A coded (token) parameter to search on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 101
                    required: [url]
                valueSet:
                  match: {url: valueSet}
                  schema:
                    short: 'R4: valueSet'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 102
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: valueSet}
                        index: 103
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Valueset for the filter
                        choices: [valueUri]
                        index: 105
                      valueUri:
                        short: Valueset for the filter
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 106
                    required: [url]
                code:
                  match: {url: code}
                  schema:
                    short: 'R4: What code is expected'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 107
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: code}
                        index: 108
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: What code is expected
                        choices: [valueCoding]
                        index: 110
                      valueCoding:
                        short: What code is expected
                        type: Coding
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 111
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: codeFilter}
            index: 112
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 114
        required: [url]
      subject:
        url: subject
        short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 78
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: subject}
            index: 79
          value:
            short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
            choices: [valueCodeableConcept, valueReference, valueReference]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 81
          valueCodeableConcept:
            short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
            type: CodeableConcept
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 82
          valueReference:
            short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
            refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
            type: Reference
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 83
        required: [url]
      dateFilter:
        url: dateFilter
        short: 'R4: dateFilter'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 115
        extensions:
          path:
            url: path
            short: 'R4: A date-valued attribute to filter on'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 117
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: path}
                index: 118
              value:
                short: A date-valued attribute to filter on
                choices: [valueString]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 120
              valueString:
                short: A date-valued attribute to filter on
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 121
            required: [url]
          searchParam:
            url: searchParam
            short: 'R4: A date valued parameter to search on (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 122
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: searchParam}
                index: 123
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: A date valued parameter to search on
                choices: [valueString]
                index: 125
              valueString:
                short: A date valued parameter to search on
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 126
            required: [url]
          value:
            url: value
            short: 'R4: value'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 127
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: value}
                index: 128
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The value of the filter, as a Period, DateTime, or Duration value
                choices: [valueDateTime, valuePeriod, valueDuration]
                index: 130
              valueDateTime:
                short: The value of the filter, as a Period, DateTime, or Duration value
                type: dateTime
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 131
              valuePeriod:
                short: The value of the filter, as a Period, DateTime, or Duration value
                type: Period
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 132
              valueDuration:
                short: The value of the filter, as a Period, DateTime, or Duration value
                type: Duration
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 133
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 116
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                path:
                  match: {url: path}
                  schema:
                    short: 'R4: A date-valued attribute to filter on'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 117
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 118
                      value:
                        short: A date-valued attribute to filter on
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 120
                      valueString:
                        short: A date-valued attribute to filter on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 121
                    required: [url]
                searchParam:
                  match: {url: searchParam}
                  schema:
                    short: 'R4: A date valued parameter to search on (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 122
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: searchParam}
                        index: 123
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A date valued parameter to search on
                        choices: [valueString]
                        index: 125
                      valueString:
                        short: A date valued parameter to search on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 126
                    required: [url]
                value:
                  match: {url: value}
                  schema:
                    short: 'R4: value'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 127
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: value}
                        index: 128
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        choices: [valueDateTime, valuePeriod, valueDuration]
                        index: 130
                      valueDateTime:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: dateTime
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 131
                      valuePeriod:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: Period
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 132
                      valueDuration:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: Duration
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 133
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: dateFilter}
            index: 134
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 136
        required: [url]
      sort:
        url: sort
        short: 'R4: Order of the results (new)'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 142
        extensions:
          path:
            url: path
            short: 'R4: The name of the attribute to perform the sort (new)'
            _required: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 144
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: path}
                index: 145
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The name of the attribute to perform the sort
                choices: [valueString]
                index: 147
              valueString:
                short: The name of the attribute to perform the sort
                type: string
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 148
            required: [url, valueString, value]
          direction:
            url: direction
            short: 'R4: ascending | descending (new)'
            _required: true
            base: {max: '*', min: 0, path: Extension.extension}
            index: 149
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: direction}
                index: 150
              value:
                short: ascending | descending
                choices: [valueCode]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 152
              valueCode:
                short: ascending | descending
                type: code
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 153
            required: [url, valueCode, value]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            min: 2
            index: 143
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 2
              slices:
                path:
                  match: {url: path}
                  schema:
                    short: 'R4: The name of the attribute to perform the sort (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 144
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 145
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The name of the attribute to perform the sort
                        choices: [valueString]
                        index: 147
                      valueString:
                        short: The name of the attribute to perform the sort
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 148
                    required: [url, valueString, value]
                direction:
                  match: {url: direction}
                  schema:
                    short: 'R4: ascending | descending (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 149
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: direction}
                        index: 150
                      value:
                        short: ascending | descending
                        choices: [valueCode]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 152
                      valueCode:
                        short: ascending | descending
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 153
                    required: [url, valueCode, value]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: sort}
            index: 154
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 156
        required: [url]
      profile:
        url: profile
        short: 'R4: profile'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 73
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: profile}
            index: 74
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The profile of the required data
            choices: [valueUri]
            index: 76
          valueUri:
            short: The profile of the required data
            type: uri
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 77
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `DataRequirement` value
        index: 62
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            limit:
              match: {url: limit}
              schema:
                short: 'R4: Number of results (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 137
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: limit}
                    index: 138
                  value:
                    short: Number of results
                    choices: [valuePositiveInt]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 140
                  valuePositiveInt:
                    short: Number of results
                    type: positiveInt
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 141
                required: [url]
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `DataRequirement` value
                _required: true
                index: 62
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 63
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: DataRequirement}
                    choices: [valueString]
                    index: 65
                  valueString:
                    type: string
                    pattern: {type: String, value: DataRequirement}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 66
                required: [url, valueString, value]
            type:
              match: {url: type}
              schema:
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 68
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 69
                  value:
                    short: The type of the required data
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 71
                  valueCode:
                    short: The type of the required data
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 72
                required: [url, valueCode, value]
            mustSupport:
              match: {url: mustSupport}
              schema:
                short: 'R4: Indicates specific structure elements that are referenced by the knowledge module'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 85
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: mustSupport}
                    index: 86
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Indicates specific structure elements that are referenced by the knowledge module
                    choices: [valueString]
                    index: 88
                  valueString:
                    short: Indicates specific structure elements that are referenced by the knowledge module
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 89
                required: [url]
            codeFilter:
              match: {url: codeFilter}
              schema:
                short: 'R4: codeFilter'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 90
                extensions:
                  path:
                    url: path
                    short: 'R4: A code-valued attribute to filter on'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 92
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 93
                      value:
                        short: A code-valued attribute to filter on
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 95
                      valueString:
                        short: A code-valued attribute to filter on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 96
                    required: [url]
                  searchParam:
                    url: searchParam
                    short: 'R4: A coded (token) parameter to search on (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 97
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: searchParam}
                        index: 98
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A coded (token) parameter to search on
                        choices: [valueString]
                        index: 100
                      valueString:
                        short: A coded (token) parameter to search on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 101
                    required: [url]
                  valueSet:
                    url: valueSet
                    short: 'R4: valueSet'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 102
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: valueSet}
                        index: 103
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: Valueset for the filter
                        choices: [valueUri]
                        index: 105
                      valueUri:
                        short: Valueset for the filter
                        type: uri
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 106
                    required: [url]
                  code:
                    url: code
                    short: 'R4: What code is expected'
                    array: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 107
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: code}
                        index: 108
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: What code is expected
                        choices: [valueCoding]
                        index: 110
                      valueCoding:
                        short: What code is expected
                        type: Coding
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 111
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 91
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        path:
                          match: {url: path}
                          schema:
                            short: 'R4: A code-valued attribute to filter on'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 92
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 93
                              value:
                                short: A code-valued attribute to filter on
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 95
                              valueString:
                                short: A code-valued attribute to filter on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 96
                            required: [url]
                        searchParam:
                          match: {url: searchParam}
                          schema:
                            short: 'R4: A coded (token) parameter to search on (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 97
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: searchParam}
                                index: 98
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A coded (token) parameter to search on
                                choices: [valueString]
                                index: 100
                              valueString:
                                short: A coded (token) parameter to search on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 101
                            required: [url]
                        valueSet:
                          match: {url: valueSet}
                          schema:
                            short: 'R4: valueSet'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 102
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: valueSet}
                                index: 103
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: Valueset for the filter
                                choices: [valueUri]
                                index: 105
                              valueUri:
                                short: Valueset for the filter
                                type: uri
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 106
                            required: [url]
                        code:
                          match: {url: code}
                          schema:
                            short: 'R4: What code is expected'
                            array: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 107
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: code}
                                index: 108
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: What code is expected
                                choices: [valueCoding]
                                index: 110
                              valueCoding:
                                short: What code is expected
                                type: Coding
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 111
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: codeFilter}
                    index: 112
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 114
                required: [url]
            subject:
              match: {url: subject}
              schema:
                short: 'R4: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 78
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: subject}
                    index: 79
                  value:
                    short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                    choices: [valueCodeableConcept, valueReference, valueReference]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 81
                  valueCodeableConcept:
                    short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 82
                  valueReference:
                    short: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
                    refers: ['http://hl7.org/fhir/4.0/StructureDefinition/profile-Group|0.1.0']
                    type: Reference
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 83
                required: [url]
            dateFilter:
              match: {url: dateFilter}
              schema:
                short: 'R4: dateFilter'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 115
                extensions:
                  path:
                    url: path
                    short: 'R4: A date-valued attribute to filter on'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 117
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 118
                      value:
                        short: A date-valued attribute to filter on
                        choices: [valueString]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 120
                      valueString:
                        short: A date-valued attribute to filter on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 121
                    required: [url]
                  searchParam:
                    url: searchParam
                    short: 'R4: A date valued parameter to search on (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 122
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: searchParam}
                        index: 123
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A date valued parameter to search on
                        choices: [valueString]
                        index: 125
                      valueString:
                        short: A date valued parameter to search on
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 126
                    required: [url]
                  value:
                    url: value
                    short: 'R4: value'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 127
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: value}
                        index: 128
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        choices: [valueDateTime, valuePeriod, valueDuration]
                        index: 130
                      valueDateTime:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: dateTime
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 131
                      valuePeriod:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: Period
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 132
                      valueDuration:
                        short: The value of the filter, as a Period, DateTime, or Duration value
                        type: Duration
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 133
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 116
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        path:
                          match: {url: path}
                          schema:
                            short: 'R4: A date-valued attribute to filter on'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 117
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 118
                              value:
                                short: A date-valued attribute to filter on
                                choices: [valueString]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 120
                              valueString:
                                short: A date-valued attribute to filter on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 121
                            required: [url]
                        searchParam:
                          match: {url: searchParam}
                          schema:
                            short: 'R4: A date valued parameter to search on (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 122
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: searchParam}
                                index: 123
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A date valued parameter to search on
                                choices: [valueString]
                                index: 125
                              valueString:
                                short: A date valued parameter to search on
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 126
                            required: [url]
                        value:
                          match: {url: value}
                          schema:
                            short: 'R4: value'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 127
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: value}
                                index: 128
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                choices: [valueDateTime, valuePeriod, valueDuration]
                                index: 130
                              valueDateTime:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: dateTime
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 131
                              valuePeriod:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: Period
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 132
                              valueDuration:
                                short: The value of the filter, as a Period, DateTime, or Duration value
                                type: Duration
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 133
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: dateFilter}
                    index: 134
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 136
                required: [url]
            sort:
              match: {url: sort}
              schema:
                short: 'R4: Order of the results (new)'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 142
                extensions:
                  path:
                    url: path
                    short: 'R4: The name of the attribute to perform the sort (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 144
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: path}
                        index: 145
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The name of the attribute to perform the sort
                        choices: [valueString]
                        index: 147
                      valueString:
                        short: The name of the attribute to perform the sort
                        type: string
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 148
                    required: [url, valueString, value]
                  direction:
                    url: direction
                    short: 'R4: ascending | descending (new)'
                    _required: true
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 149
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: direction}
                        index: 150
                      value:
                        short: ascending | descending
                        choices: [valueCode]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 152
                      valueCode:
                        short: ascending | descending
                        type: code
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 153
                    required: [url, valueCode, value]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    min: 2
                    index: 143
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 2
                      slices:
                        path:
                          match: {url: path}
                          schema:
                            short: 'R4: The name of the attribute to perform the sort (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 144
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: path}
                                index: 145
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The name of the attribute to perform the sort
                                choices: [valueString]
                                index: 147
                              valueString:
                                short: The name of the attribute to perform the sort
                                type: string
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 148
                            required: [url, valueString, value]
                        direction:
                          match: {url: direction}
                          schema:
                            short: 'R4: ascending | descending (new)'
                            _required: true
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 149
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: direction}
                                index: 150
                              value:
                                short: ascending | descending
                                choices: [valueCode]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 152
                              valueCode:
                                short: ascending | descending
                                type: code
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 153
                            required: [url, valueCode, value]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sort}
                    index: 154
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 156
                required: [url]
            profile:
              match: {url: profile}
              schema:
                short: 'R4: profile'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 73
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: profile}
                    index: 74
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The profile of the required data
                    choices: [valueUri]
                    index: 76
                  valueUri:
                    short: The profile of the required data
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 77
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueDataRequirement}
        index: 157
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 159
    required: [url, extension]
  valueExpression:
    url: valueExpression
    short: 'R4: An expression that can be used to generate a value (new)'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 160
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `Expression` value
        _required: true
        index: 161
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 162
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: Expression}
            choices: [valueString]
            index: 164
          valueString:
            type: string
            pattern: {type: String, value: Expression}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 165
        required: [url, valueString, value]
      description:
        url: description
        short: 'R4: Natural language description of the condition (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 167
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: description}
            index: 168
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Natural language description of the condition
            choices: [valueString]
            index: 170
          valueString:
            short: Natural language description of the condition
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 171
        required: [url]
      name:
        url: name
        short: 'R4: Short name assigned to expression for reuse (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 172
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: name}
            index: 173
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Short name assigned to expression for reuse
            choices: [valueId]
            index: 175
          valueId:
            short: Short name assigned to expression for reuse
            type: id
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 176
        required: [url]
      expression:
        url: expression
        short: 'R4: Expression in specified language (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 177
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: expression}
            index: 178
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Expression in specified language
            choices: [valueString]
            index: 180
          valueString:
            short: Expression in specified language
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 181
        required: [url]
      reference:
        url: reference
        short: 'R4: Where the expression is found (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 182
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: reference}
            index: 183
          value:
            short: Where the expression is found
            choices: [valueUri]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 185
          valueUri:
            short: Where the expression is found
            type: uri
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 186
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `Expression` value
        index: 161
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Expression` value
                _required: true
                index: 161
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 162
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: Expression}
                    choices: [valueString]
                    index: 164
                  valueString:
                    type: string
                    pattern: {type: String, value: Expression}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 165
                required: [url, valueString, value]
            description:
              match: {url: description}
              schema:
                short: 'R4: Natural language description of the condition (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 167
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: description}
                    index: 168
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Natural language description of the condition
                    choices: [valueString]
                    index: 170
                  valueString:
                    short: Natural language description of the condition
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 171
                required: [url]
            name:
              match: {url: name}
              schema:
                short: 'R4: Short name assigned to expression for reuse (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 172
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: name}
                    index: 173
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Short name assigned to expression for reuse
                    choices: [valueId]
                    index: 175
                  valueId:
                    short: Short name assigned to expression for reuse
                    type: id
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 176
                required: [url]
            expression:
              match: {url: expression}
              schema:
                short: 'R4: Expression in specified language (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 177
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: expression}
                    index: 178
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Expression in specified language
                    choices: [valueString]
                    index: 180
                  valueString:
                    short: Expression in specified language
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 181
                required: [url]
            reference:
              match: {url: reference}
              schema:
                short: 'R4: Where the expression is found (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 182
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: reference}
                    index: 183
                  value:
                    short: Where the expression is found
                    choices: [valueUri]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 185
                  valueUri:
                    short: Where the expression is found
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 186
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueExpression}
        index: 187
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 189
    required: [url, extension]
  valueDosage:
    url: valueDosage
    short: 'R4: Dosage'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 476
    extensions:
      site:
        url: site
        short: 'R4: site'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 514
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: site}
            index: 515
          value:
            short: Body site to administer to
            choices: [valueCodeableConcept]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 517
          valueCodeableConcept:
            short: Body site to administer to
            type: CodeableConcept
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 518
        required: [url]
      asNeeded:
        url: asNeeded
        short: 'R4: asNeeded'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 508
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: asNeeded}
            index: 509
          value:
            short: Take "as needed" (for x)
            choices: [valueBoolean, valueCodeableConcept]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 511
          valueBoolean:
            short: Take "as needed" (for x)
            type: boolean
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 512
          valueCodeableConcept:
            short: Take "as needed" (for x)
            type: CodeableConcept
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 513
        required: [url]
      method:
        url: method
        short: 'R4: method'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 524
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: method}
            index: 525
          value:
            short: Technique for administering medication
            choices: [valueCodeableConcept]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 527
          valueCodeableConcept:
            short: Technique for administering medication
            type: CodeableConcept
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 528
        required: [url]
      patientInstruction:
        url: patientInstruction
        short: 'R4: patientInstruction'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 498
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: patientInstruction}
            index: 499
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Patient or consumer oriented instructions
            choices: [valueString]
            index: 501
          valueString:
            short: Patient or consumer oriented instructions
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 502
        required: [url]
      maxDosePerLifetime:
        url: maxDosePerLifetime
        short: 'R4: maxDosePerLifetime'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 562
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: maxDosePerLifetime}
            index: 563
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Upper limit on medication per lifetime of the patient
            choices: [valueQuantity]
            index: 565
          valueQuantity:
            short: Upper limit on medication per lifetime of the patient
            type: Quantity
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 566
        required: [url]
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `Dosage` value
        _required: true
        index: 477
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 478
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: Dosage}
            choices: [valueString]
            index: 480
          valueString:
            type: string
            pattern: {type: String, value: Dosage}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 481
        required: [url, valueString, value]
      maxDosePerAdministration:
        url: maxDosePerAdministration
        short: 'R4: maxDosePerAdministration'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 557
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: maxDosePerAdministration}
            index: 558
          value:
            short: Upper limit on medication per administration
            choices: [valueQuantity]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 560
          valueQuantity:
            short: Upper limit on medication per administration
            type: Quantity
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 561
        required: [url]
      route:
        url: route
        short: 'R4: route'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 519
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: route}
            index: 520
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: How drug should enter body
            choices: [valueCodeableConcept]
            index: 522
          valueCodeableConcept:
            short: How drug should enter body
            type: CodeableConcept
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 523
        required: [url]
      timing:
        url: timing
        short: 'R4: timing'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 503
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: timing}
            index: 504
          value:
            short: When medication should be administered
            choices: [valueTiming]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 506
          valueTiming:
            short: When medication should be administered
            type: Timing
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 507
        required: [url]
      additionalInstruction:
        url: additionalInstruction
        short: 'R4: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 493
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: additionalInstruction}
            index: 494
          value:
            short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
            choices: [valueCodeableConcept]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 496
          valueCodeableConcept:
            short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
            type: CodeableConcept
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 497
        required: [url]
      sequence:
        url: sequence
        short: 'R4: sequence'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 483
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: sequence}
            index: 484
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The order of the dosage instructions
            choices: [valueInteger]
            index: 486
          valueInteger:
            short: The order of the dosage instructions
            type: integer
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 487
        required: [url]
      maxDosePerPeriod:
        url: maxDosePerPeriod
        short: 'R4: maxDosePerPeriod'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 552
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: maxDosePerPeriod}
            index: 553
          value:
            short: Upper limit on medication per unit of time
            choices: [valueRatio]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 555
          valueRatio:
            short: Upper limit on medication per unit of time
            type: Ratio
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 556
        required: [url]
      doseAndRate:
        url: doseAndRate
        short: 'R4: Amount of medication administered (new)'
        array: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 529
        extensions:
          type:
            url: type
            short: 'R4: The kind of dose or rate specified (new)'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 531
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: type}
                index: 532
              value:
                short: The kind of dose or rate specified
                choices: [valueCodeableConcept]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 534
              valueCodeableConcept:
                short: The kind of dose or rate specified
                type: CodeableConcept
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 535
            required: [url]
          dose:
            url: dose
            short: 'R4: dose'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 536
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: dose}
                index: 537
              value:
                short: Amount of medication per dose
                choices: [valueRange, valueQuantity]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 539
              valueRange:
                short: Amount of medication per dose
                type: Range
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 540
              valueQuantity:
                short: Amount of medication per dose
                type: Quantity
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 541
            required: [url]
          rate:
            url: rate
            short: 'R4: rate'
            base: {max: '*', min: 0, path: Extension.extension}
            index: 542
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: rate}
                index: 543
              value:
                short: Amount of medication per unit of time
                choices: [valueRatio, valueRange, valueQuantity]
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                index: 545
              valueRatio:
                short: Amount of medication per unit of time
                type: Ratio
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 546
              valueRange:
                short: Amount of medication per unit of time
                type: Range
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 547
              valueQuantity:
                short: Amount of medication per unit of time
                type: Quantity
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 548
            required: [url]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 530
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                type:
                  match: {url: type}
                  schema:
                    short: 'R4: The kind of dose or rate specified (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 531
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: type}
                        index: 532
                      value:
                        short: The kind of dose or rate specified
                        choices: [valueCodeableConcept]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 534
                      valueCodeableConcept:
                        short: The kind of dose or rate specified
                        type: CodeableConcept
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 535
                    required: [url]
                dose:
                  match: {url: dose}
                  schema:
                    short: 'R4: dose'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 536
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: dose}
                        index: 537
                      value:
                        short: Amount of medication per dose
                        choices: [valueRange, valueQuantity]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 539
                      valueRange:
                        short: Amount of medication per dose
                        type: Range
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 540
                      valueQuantity:
                        short: Amount of medication per dose
                        type: Quantity
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 541
                    required: [url]
                rate:
                  match: {url: rate}
                  schema:
                    short: 'R4: rate'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 542
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: rate}
                        index: 543
                      value:
                        short: Amount of medication per unit of time
                        choices: [valueRatio, valueRange, valueQuantity]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 545
                      valueRatio:
                        short: Amount of medication per unit of time
                        type: Ratio
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 546
                      valueRange:
                        short: Amount of medication per unit of time
                        type: Range
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 547
                      valueQuantity:
                        short: Amount of medication per unit of time
                        type: Quantity
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 548
                    required: [url]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: doseAndRate}
            index: 549
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choices: []
            index: 551
        required: [url]
      text:
        url: text
        short: 'R4: text'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 488
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: text}
            index: 489
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Free text dosage instructions e.g. SIG
            choices: [valueString]
            index: 491
          valueString:
            short: Free text dosage instructions e.g. SIG
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 492
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `Dosage` value
        index: 477
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            site:
              match: {url: site}
              schema:
                short: 'R4: site'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 514
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: site}
                    index: 515
                  value:
                    short: Body site to administer to
                    choices: [valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 517
                  valueCodeableConcept:
                    short: Body site to administer to
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 518
                required: [url]
            asNeeded:
              match: {url: asNeeded}
              schema:
                short: 'R4: asNeeded'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 508
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: asNeeded}
                    index: 509
                  value:
                    short: Take "as needed" (for x)
                    choices: [valueBoolean, valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 511
                  valueBoolean:
                    short: Take "as needed" (for x)
                    type: boolean
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 512
                  valueCodeableConcept:
                    short: Take "as needed" (for x)
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 513
                required: [url]
            method:
              match: {url: method}
              schema:
                short: 'R4: method'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 524
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: method}
                    index: 525
                  value:
                    short: Technique for administering medication
                    choices: [valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 527
                  valueCodeableConcept:
                    short: Technique for administering medication
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 528
                required: [url]
            patientInstruction:
              match: {url: patientInstruction}
              schema:
                short: 'R4: patientInstruction'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 498
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: patientInstruction}
                    index: 499
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Patient or consumer oriented instructions
                    choices: [valueString]
                    index: 501
                  valueString:
                    short: Patient or consumer oriented instructions
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 502
                required: [url]
            maxDosePerLifetime:
              match: {url: maxDosePerLifetime}
              schema:
                short: 'R4: maxDosePerLifetime'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 562
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: maxDosePerLifetime}
                    index: 563
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Upper limit on medication per lifetime of the patient
                    choices: [valueQuantity]
                    index: 565
                  valueQuantity:
                    short: Upper limit on medication per lifetime of the patient
                    type: Quantity
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 566
                required: [url]
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `Dosage` value
                _required: true
                index: 477
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 478
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: Dosage}
                    choices: [valueString]
                    index: 480
                  valueString:
                    type: string
                    pattern: {type: String, value: Dosage}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 481
                required: [url, valueString, value]
            maxDosePerAdministration:
              match: {url: maxDosePerAdministration}
              schema:
                short: 'R4: maxDosePerAdministration'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 557
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: maxDosePerAdministration}
                    index: 558
                  value:
                    short: Upper limit on medication per administration
                    choices: [valueQuantity]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 560
                  valueQuantity:
                    short: Upper limit on medication per administration
                    type: Quantity
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 561
                required: [url]
            route:
              match: {url: route}
              schema:
                short: 'R4: route'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 519
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: route}
                    index: 520
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: How drug should enter body
                    choices: [valueCodeableConcept]
                    index: 522
                  valueCodeableConcept:
                    short: How drug should enter body
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 523
                required: [url]
            timing:
              match: {url: timing}
              schema:
                short: 'R4: timing'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 503
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: timing}
                    index: 504
                  value:
                    short: When medication should be administered
                    choices: [valueTiming]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 506
                  valueTiming:
                    short: When medication should be administered
                    type: Timing
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 507
                required: [url]
            additionalInstruction:
              match: {url: additionalInstruction}
              schema:
                short: 'R4: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 493
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: additionalInstruction}
                    index: 494
                  value:
                    short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                    choices: [valueCodeableConcept]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 496
                  valueCodeableConcept:
                    short: Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"
                    type: CodeableConcept
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 497
                required: [url]
            sequence:
              match: {url: sequence}
              schema:
                short: 'R4: sequence'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 483
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: sequence}
                    index: 484
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The order of the dosage instructions
                    choices: [valueInteger]
                    index: 486
                  valueInteger:
                    short: The order of the dosage instructions
                    type: integer
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 487
                required: [url]
            maxDosePerPeriod:
              match: {url: maxDosePerPeriod}
              schema:
                short: 'R4: maxDosePerPeriod'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 552
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: maxDosePerPeriod}
                    index: 553
                  value:
                    short: Upper limit on medication per unit of time
                    choices: [valueRatio]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 555
                  valueRatio:
                    short: Upper limit on medication per unit of time
                    type: Ratio
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 556
                required: [url]
            doseAndRate:
              match: {url: doseAndRate}
              schema:
                short: 'R4: Amount of medication administered (new)'
                array: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 529
                extensions:
                  type:
                    url: type
                    short: 'R4: The kind of dose or rate specified (new)'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 531
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: type}
                        index: 532
                      value:
                        short: The kind of dose or rate specified
                        choices: [valueCodeableConcept]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 534
                      valueCodeableConcept:
                        short: The kind of dose or rate specified
                        type: CodeableConcept
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 535
                    required: [url]
                  dose:
                    url: dose
                    short: 'R4: dose'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 536
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: dose}
                        index: 537
                      value:
                        short: Amount of medication per dose
                        choices: [valueRange, valueQuantity]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 539
                      valueRange:
                        short: Amount of medication per dose
                        type: Range
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 540
                      valueQuantity:
                        short: Amount of medication per dose
                        type: Quantity
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 541
                    required: [url]
                  rate:
                    url: rate
                    short: 'R4: rate'
                    base: {max: '*', min: 0, path: Extension.extension}
                    index: 542
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: rate}
                        index: 543
                      value:
                        short: Amount of medication per unit of time
                        choices: [valueRatio, valueRange, valueQuantity]
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        index: 545
                      valueRatio:
                        short: Amount of medication per unit of time
                        type: Ratio
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 546
                      valueRange:
                        short: Amount of medication per unit of time
                        type: Range
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 547
                      valueQuantity:
                        short: Amount of medication per unit of time
                        type: Quantity
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 548
                    required: [url]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 530
                    slicing:
                      rules: open
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        type:
                          match: {url: type}
                          schema:
                            short: 'R4: The kind of dose or rate specified (new)'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 531
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: type}
                                index: 532
                              value:
                                short: The kind of dose or rate specified
                                choices: [valueCodeableConcept]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 534
                              valueCodeableConcept:
                                short: The kind of dose or rate specified
                                type: CodeableConcept
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 535
                            required: [url]
                        dose:
                          match: {url: dose}
                          schema:
                            short: 'R4: dose'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 536
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: dose}
                                index: 537
                              value:
                                short: Amount of medication per dose
                                choices: [valueRange, valueQuantity]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 539
                              valueRange:
                                short: Amount of medication per dose
                                type: Range
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 540
                              valueQuantity:
                                short: Amount of medication per dose
                                type: Quantity
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 541
                            required: [url]
                        rate:
                          match: {url: rate}
                          schema:
                            short: 'R4: rate'
                            base: {max: '*', min: 0, path: Extension.extension}
                            index: 542
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: rate}
                                index: 543
                              value:
                                short: Amount of medication per unit of time
                                choices: [valueRatio, valueRange, valueQuantity]
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                index: 545
                              valueRatio:
                                short: Amount of medication per unit of time
                                type: Ratio
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 546
                              valueRange:
                                short: Amount of medication per unit of time
                                type: Range
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 547
                              valueQuantity:
                                short: Amount of medication per unit of time
                                type: Quantity
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 548
                            required: [url]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: doseAndRate}
                    index: 549
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choices: []
                    index: 551
                required: [url]
            text:
              match: {url: text}
              schema:
                short: 'R4: text'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 488
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: text}
                    index: 489
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Free text dosage instructions e.g. SIG
                    choices: [valueString]
                    index: 491
                  valueString:
                    short: Free text dosage instructions e.g. SIG
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 492
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueDosage}
        index: 567
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 569
    required: [url, extension]
  valueRelatedArtifact:
    url: valueRelatedArtifact
    short: 'R4: RelatedArtifact'
    array: true
    base: {max: '*', min: 0, path: Extension.extension}
    index: 235
    extensions:
      _datatype:
        url: http://hl7.org/fhir/StructureDefinition/_datatype
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `RelatedArtifact` value
        _required: true
        index: 236
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
            index: 237
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            pattern: {type: String, value: RelatedArtifact}
            choices: [valueString]
            index: 239
          valueString:
            type: string
            pattern: {type: String, value: RelatedArtifact}
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 240
        required: [url, valueString, value]
      type:
        url: type
        short: 'R4: type'
        _required: true
        base: {max: '*', min: 0, path: Extension.extension}
        index: 242
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: type}
            index: 243
          value:
            short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
            choices: [valueCode]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 245
          valueCode:
            short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
            type: code
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 246
        required: [url, valueCode, value]
      label:
        url: label
        short: 'R4: Short label (new)'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 247
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: label}
            index: 248
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Short label
            choices: [valueString]
            index: 250
          valueString:
            short: Short label
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 251
        required: [url]
      display:
        url: display
        short: 'R4: display'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 252
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: display}
            index: 253
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Brief description of the related artifact
            choices: [valueString]
            index: 255
          valueString:
            short: Brief description of the related artifact
            type: string
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 256
        required: [url]
      citation:
        url: citation
        short: 'R4: citation'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 257
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: citation}
            index: 258
          value:
            short: Bibliographic citation for the artifact
            choices: [valueMarkdown]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 260
          valueMarkdown:
            short: Bibliographic citation for the artifact
            type: markdown
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 261
        required: [url]
      url:
        url: url
        short: 'R4: url'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 262
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: url}
            index: 263
          value:
            short: Where the artifact can be accessed
            choices: [valueUri]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 265
          valueUri:
            short: Where the artifact can be accessed
            type: uri
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 266
        required: [url]
      document:
        url: document
        short: 'R4: document'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 267
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: document}
            index: 268
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: What document is being referenced
            choices: [valueAttachment]
            index: 270
          valueAttachment:
            short: What document is being referenced
            type: Attachment
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 271
        required: [url]
      resource:
        url: resource
        short: 'R4: resource additional types'
        base: {max: '*', min: 0, path: Extension.extension}
        index: 272
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: resource}
            index: 273
          value:
            short: What resource is being referenced
            choices: [valueUri]
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            index: 275
          valueUri:
            short: What resource is being referenced
            type: uri
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            choiceOf: value
            index: 276
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        short: DataType slice for a FHIR R4 `RelatedArtifact` value
        index: 236
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            _datatype:
              match: {url: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: DataType slice for a FHIR R4 `RelatedArtifact` value
                _required: true
                index: 236
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/StructureDefinition/_datatype'}
                    index: 237
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    pattern: {type: String, value: RelatedArtifact}
                    choices: [valueString]
                    index: 239
                  valueString:
                    type: string
                    pattern: {type: String, value: RelatedArtifact}
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 240
                required: [url, valueString, value]
            type:
              match: {url: type}
              schema:
                short: 'R4: type'
                _required: true
                base: {max: '*', min: 0, path: Extension.extension}
                index: 242
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: type}
                    index: 243
                  value:
                    short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
                    choices: [valueCode]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 245
                  valueCode:
                    short: documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of
                    type: code
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 246
                required: [url, valueCode, value]
            label:
              match: {url: label}
              schema:
                short: 'R4: Short label (new)'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 247
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: label}
                    index: 248
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Short label
                    choices: [valueString]
                    index: 250
                  valueString:
                    short: Short label
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 251
                required: [url]
            display:
              match: {url: display}
              schema:
                short: 'R4: display'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 252
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: display}
                    index: 253
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Brief description of the related artifact
                    choices: [valueString]
                    index: 255
                  valueString:
                    short: Brief description of the related artifact
                    type: string
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 256
                required: [url]
            citation:
              match: {url: citation}
              schema:
                short: 'R4: citation'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 257
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: citation}
                    index: 258
                  value:
                    short: Bibliographic citation for the artifact
                    choices: [valueMarkdown]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 260
                  valueMarkdown:
                    short: Bibliographic citation for the artifact
                    type: markdown
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 261
                required: [url]
            url:
              match: {url: url}
              schema:
                short: 'R4: url'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 262
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: url}
                    index: 263
                  value:
                    short: Where the artifact can be accessed
                    choices: [valueUri]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 265
                  valueUri:
                    short: Where the artifact can be accessed
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 266
                required: [url]
            document:
              match: {url: document}
              schema:
                short: 'R4: document'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 267
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: document}
                    index: 268
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: What document is being referenced
                    choices: [valueAttachment]
                    index: 270
                  valueAttachment:
                    short: What document is being referenced
                    type: Attachment
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 271
                required: [url]
            resource:
              match: {url: resource}
              schema:
                short: 'R4: resource additional types'
                base: {max: '*', min: 0, path: Extension.extension}
                index: 272
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: resource}
                    index: 273
                  value:
                    short: What resource is being referenced
                    choices: [valueUri]
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    index: 275
                  valueUri:
                    short: What resource is being referenced
                    type: uri
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    choiceOf: value
                    index: 276
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: valueRelatedArtifact}
        index: 277
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        choices: []
        index: 279
    required: [url, extension]
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.0/StructureDefinition/extension-Task.output.value
base: http://hl7.org/fhir/StructureDefinition/Extension
version: 0.1.0
required: [url, extension]