PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.xver-r4.r4b@0.0.1-snapshot-2
    http://hl7.org/fhir/4.0/StructureDefinition/extension-MedicinalProductIngredient
description: This cross-version extension represents MedicinalProductIngredient from http://hl7.org/fhir/StructureDefinition/MedicinalProductIngredient|4.0.1 for use in FHIR R4B.
package_name: hl7.fhir.uv.xver-r4.r4b
derivation: constraint
name: Ext_R4_MedicinalProductIngredient
type: Extension
elements:
  extension:
    base: {max: '*', min: 0, path: Extension.extension}
    array: true
    min: 1
    index: 0
    slicing:
      rules: closed
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 1
      slices:
        role:
          match: {url: role}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Ingredient role e.g. Active ingredient, excipient
            _required: true
            index: 1
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: role}
                index: 2
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Ingredient role e.g. Active ingredient, excipient
                choices: [valueCodeableConcept]
                index: 4
              valueCodeableConcept:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: CodeableConcept
                short: Ingredient role e.g. Active ingredient, excipient
                choiceOf: value
                index: 5
            required: [url]
        allergenicIndicator:
          match: {url: allergenicIndicator}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: If the ingredient is a known or suspected allergen
            index: 6
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: allergenicIndicator}
                index: 7
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: If the ingredient is a known or suspected allergen
                choices: [valueBoolean]
                index: 9
              valueBoolean:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: boolean
                short: If the ingredient is a known or suspected allergen
                choiceOf: value
                index: 10
            required: [url]
        manufacturer:
          match: {url: manufacturer}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Manufacturer of this Ingredient
            array: true
            index: 11
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: manufacturer}
                index: 12
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Manufacturer of this Ingredient
                choices: [valueReference]
                index: 14
              valueReference:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Reference
                short: Manufacturer of this Ingredient
                choiceOf: value
                index: 15
            required: [url]
        specifiedSubstance:
          match: {url: specifiedSubstance}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: A specified substance that comprises this ingredient
            array: true
            index: 16
            extensions:
              code:
                url: code
                base: {max: '*', min: 0, path: Extension.extension}
                short: The specified substance
                _required: true
                index: 18
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 19
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The specified substance
                    choices: [valueCodeableConcept]
                    index: 21
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The specified substance
                    choiceOf: value
                    index: 22
                required: [url]
              group:
                url: group
                base: {max: '*', min: 0, path: Extension.extension}
                short: The group of specified substance, e.g. group 1 to 4
                _required: true
                index: 23
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: group}
                    index: 24
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The group of specified substance, e.g. group 1 to 4
                    choices: [valueCodeableConcept]
                    index: 26
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The group of specified substance, e.g. group 1 to 4
                    choiceOf: value
                    index: 27
                required: [url]
              confidentiality:
                url: confidentiality
                base: {max: '*', min: 0, path: Extension.extension}
                short: Confidentiality level of the specified substance as the ingredient
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: confidentiality}
                    index: 29
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Confidentiality level of the specified substance as the ingredient
                    choices: [valueCodeableConcept]
                    index: 31
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Confidentiality level of the specified substance as the ingredient
                    choiceOf: value
                    index: 32
                required: [url]
              strength:
                url: strength
                base: {max: '*', min: 0, path: Extension.extension}
                short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
                array: true
                index: 33
                extensions:
                  presentation:
                    url: presentation
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                    _required: true
                    index: 35
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: presentation}
                        index: 36
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                        choices: [valueRatio]
                        index: 38
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                        choiceOf: value
                        index: 39
                    required: [url]
                  presentationLowLimit:
                    url: presentationLowLimit
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                    index: 40
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: presentationLowLimit}
                        index: 41
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                        choices: [valueRatio]
                        index: 43
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                        choiceOf: value
                        index: 44
                    required: [url]
                  concentration:
                    url: concentration
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The strength per unitary volume (or mass)
                    index: 45
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: concentration}
                        index: 46
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The strength per unitary volume (or mass)
                        choices: [valueRatio]
                        index: 48
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: The strength per unitary volume (or mass)
                        choiceOf: value
                        index: 49
                    required: [url]
                  concentrationLowLimit:
                    url: concentrationLowLimit
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                    index: 50
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: concentrationLowLimit}
                        index: 51
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                        choices: [valueRatio]
                        index: 53
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                        choiceOf: value
                        index: 54
                    required: [url]
                  measurementPoint:
                    url: measurementPoint
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: For when strength is measured at a particular point or distance
                    index: 55
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: measurementPoint}
                        index: 56
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: For when strength is measured at a particular point or distance
                        choices: [valueString]
                        index: 58
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: For when strength is measured at a particular point or distance
                        choiceOf: value
                        index: 59
                    required: [url]
                  country:
                    url: country
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The country or countries for which the strength range applies
                    array: true
                    index: 60
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: country}
                        index: 61
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The country or countries for which the strength range applies
                        choices: [valueCodeableConcept]
                        index: 63
                      valueCodeableConcept:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The country or countries for which the strength range applies
                        choiceOf: value
                        index: 64
                    required: [url]
                  referenceStrength:
                    url: referenceStrength
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Strength expressed in terms of a reference substance
                    array: true
                    index: 65
                    extensions:
                      substance:
                        url: substance
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Relevant reference substance
                        index: 67
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: substance}
                            index: 68
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Relevant reference substance
                            choices: [valueCodeableConcept]
                            index: 70
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Relevant reference substance
                            choiceOf: value
                            index: 71
                        required: [url]
                      strength:
                        url: strength
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        _required: true
                        index: 72
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strength}
                            index: 73
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 75
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 76
                        required: [url]
                      strengthLowLimit:
                        url: strengthLowLimit
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        index: 77
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strengthLowLimit}
                            index: 78
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 80
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 81
                        required: [url]
                      measurementPoint:
                        url: measurementPoint
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: For when strength is measured at a particular point or distance
                        index: 82
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: measurementPoint}
                            index: 83
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: For when strength is measured at a particular point or distance
                            choices: [valueString]
                            index: 85
                          valueString:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: string
                            short: For when strength is measured at a particular point or distance
                            choiceOf: value
                            index: 86
                        required: [url]
                      country:
                        url: country
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The country or countries for which the strength range applies
                        array: true
                        index: 87
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: country}
                            index: 88
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The country or countries for which the strength range applies
                            choices: [valueCodeableConcept]
                            index: 90
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The country or countries for which the strength range applies
                            choiceOf: value
                            index: 91
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        min: 1
                        index: 66
                        slicing:
                          rules: closed
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 1
                          slices:
                            substance:
                              match: {url: substance}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Relevant reference substance
                                index: 67
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: substance}
                                    index: 68
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Relevant reference substance
                                    choices: [valueCodeableConcept]
                                    index: 70
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: Relevant reference substance
                                    choiceOf: value
                                    index: 71
                                required: [url]
                            strength:
                              match: {url: strength}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                _required: true
                                index: 72
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strength}
                                    index: 73
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 75
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 76
                                required: [url]
                            strengthLowLimit:
                              match: {url: strengthLowLimit}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                index: 77
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strengthLowLimit}
                                    index: 78
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 80
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 81
                                required: [url]
                            measurementPoint:
                              match: {url: measurementPoint}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: For when strength is measured at a particular point or distance
                                index: 82
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: measurementPoint}
                                    index: 83
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: For when strength is measured at a particular point or distance
                                    choices: [valueString]
                                    index: 85
                                  valueString:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: string
                                    short: For when strength is measured at a particular point or distance
                                    choiceOf: value
                                    index: 86
                                required: [url]
                            country:
                              match: {url: country}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: The country or countries for which the strength range applies
                                array: true
                                index: 87
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: country}
                                    index: 88
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The country or countries for which the strength range applies
                                    choices: [valueCodeableConcept]
                                    index: 90
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: The country or countries for which the strength range applies
                                    choiceOf: value
                                    index: 91
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: referenceStrength}
                        index: 92
                    required: [url, extension]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    min: 1
                    index: 34
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 1
                      slices:
                        presentation:
                          match: {url: presentation}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                            _required: true
                            index: 35
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: presentation}
                                index: 36
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                choices: [valueRatio]
                                index: 38
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                choiceOf: value
                                index: 39
                            required: [url]
                        presentationLowLimit:
                          match: {url: presentationLowLimit}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                            index: 40
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: presentationLowLimit}
                                index: 41
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                choices: [valueRatio]
                                index: 43
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                choiceOf: value
                                index: 44
                            required: [url]
                        concentration:
                          match: {url: concentration}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The strength per unitary volume (or mass)
                            index: 45
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: concentration}
                                index: 46
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The strength per unitary volume (or mass)
                                choices: [valueRatio]
                                index: 48
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: The strength per unitary volume (or mass)
                                choiceOf: value
                                index: 49
                            required: [url]
                        concentrationLowLimit:
                          match: {url: concentrationLowLimit}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                            index: 50
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: concentrationLowLimit}
                                index: 51
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                choices: [valueRatio]
                                index: 53
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                choiceOf: value
                                index: 54
                            required: [url]
                        measurementPoint:
                          match: {url: measurementPoint}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: For when strength is measured at a particular point or distance
                            index: 55
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: measurementPoint}
                                index: 56
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: For when strength is measured at a particular point or distance
                                choices: [valueString]
                                index: 58
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: For when strength is measured at a particular point or distance
                                choiceOf: value
                                index: 59
                            required: [url]
                        country:
                          match: {url: country}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The country or countries for which the strength range applies
                            array: true
                            index: 60
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: country}
                                index: 61
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The country or countries for which the strength range applies
                                choices: [valueCodeableConcept]
                                index: 63
                              valueCodeableConcept:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The country or countries for which the strength range applies
                                choiceOf: value
                                index: 64
                            required: [url]
                        referenceStrength:
                          match: {url: referenceStrength}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Strength expressed in terms of a reference substance
                            array: true
                            index: 65
                            extensions:
                              substance:
                                url: substance
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Relevant reference substance
                                index: 67
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: substance}
                                    index: 68
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Relevant reference substance
                                    choices: [valueCodeableConcept]
                                    index: 70
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: Relevant reference substance
                                    choiceOf: value
                                    index: 71
                                required: [url]
                              strength:
                                url: strength
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                _required: true
                                index: 72
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strength}
                                    index: 73
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 75
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 76
                                required: [url]
                              strengthLowLimit:
                                url: strengthLowLimit
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                index: 77
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strengthLowLimit}
                                    index: 78
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 80
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 81
                                required: [url]
                              measurementPoint:
                                url: measurementPoint
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: For when strength is measured at a particular point or distance
                                index: 82
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: measurementPoint}
                                    index: 83
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: For when strength is measured at a particular point or distance
                                    choices: [valueString]
                                    index: 85
                                  valueString:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: string
                                    short: For when strength is measured at a particular point or distance
                                    choiceOf: value
                                    index: 86
                                required: [url]
                              country:
                                url: country
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: The country or countries for which the strength range applies
                                array: true
                                index: 87
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: country}
                                    index: 88
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The country or countries for which the strength range applies
                                    choices: [valueCodeableConcept]
                                    index: 90
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: The country or countries for which the strength range applies
                                    choiceOf: value
                                    index: 91
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                min: 1
                                index: 66
                                slicing:
                                  rules: closed
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 1
                                  slices:
                                    substance:
                                      match: {url: substance}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Relevant reference substance
                                        index: 67
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: substance}
                                            index: 68
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Relevant reference substance
                                            choices: [valueCodeableConcept]
                                            index: 70
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: Relevant reference substance
                                            choiceOf: value
                                            index: 71
                                        required: [url]
                                    strength:
                                      match: {url: strength}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        _required: true
                                        index: 72
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strength}
                                            index: 73
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 75
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 76
                                        required: [url]
                                    strengthLowLimit:
                                      match: {url: strengthLowLimit}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        index: 77
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strengthLowLimit}
                                            index: 78
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 80
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 81
                                        required: [url]
                                    measurementPoint:
                                      match: {url: measurementPoint}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: For when strength is measured at a particular point or distance
                                        index: 82
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: measurementPoint}
                                            index: 83
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: For when strength is measured at a particular point or distance
                                            choices: [valueString]
                                            index: 85
                                          valueString:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: string
                                            short: For when strength is measured at a particular point or distance
                                            choiceOf: value
                                            index: 86
                                        required: [url]
                                    country:
                                      match: {url: country}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: The country or countries for which the strength range applies
                                        array: true
                                        index: 87
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: country}
                                            index: 88
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The country or countries for which the strength range applies
                                            choices: [valueCodeableConcept]
                                            index: 90
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: The country or countries for which the strength range applies
                                            choiceOf: value
                                            index: 91
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: referenceStrength}
                                index: 92
                            required: [url, extension]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: strength}
                    index: 93
                required: [url, extension]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                min: 2
                index: 17
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 2
                  slices:
                    code:
                      match: {url: code}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The specified substance
                        _required: true
                        index: 18
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 19
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The specified substance
                            choices: [valueCodeableConcept]
                            index: 21
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The specified substance
                            choiceOf: value
                            index: 22
                        required: [url]
                    group:
                      match: {url: group}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The group of specified substance, e.g. group 1 to 4
                        _required: true
                        index: 23
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: group}
                            index: 24
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The group of specified substance, e.g. group 1 to 4
                            choices: [valueCodeableConcept]
                            index: 26
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The group of specified substance, e.g. group 1 to 4
                            choiceOf: value
                            index: 27
                        required: [url]
                    confidentiality:
                      match: {url: confidentiality}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Confidentiality level of the specified substance as the ingredient
                        index: 28
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: confidentiality}
                            index: 29
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Confidentiality level of the specified substance as the ingredient
                            choices: [valueCodeableConcept]
                            index: 31
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Confidentiality level of the specified substance as the ingredient
                            choiceOf: value
                            index: 32
                        required: [url]
                    strength:
                      match: {url: strength}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
                        array: true
                        index: 33
                        extensions:
                          presentation:
                            url: presentation
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                            _required: true
                            index: 35
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: presentation}
                                index: 36
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                choices: [valueRatio]
                                index: 38
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                choiceOf: value
                                index: 39
                            required: [url]
                          presentationLowLimit:
                            url: presentationLowLimit
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                            index: 40
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: presentationLowLimit}
                                index: 41
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                choices: [valueRatio]
                                index: 43
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                choiceOf: value
                                index: 44
                            required: [url]
                          concentration:
                            url: concentration
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The strength per unitary volume (or mass)
                            index: 45
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: concentration}
                                index: 46
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The strength per unitary volume (or mass)
                                choices: [valueRatio]
                                index: 48
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: The strength per unitary volume (or mass)
                                choiceOf: value
                                index: 49
                            required: [url]
                          concentrationLowLimit:
                            url: concentrationLowLimit
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                            index: 50
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: concentrationLowLimit}
                                index: 51
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                choices: [valueRatio]
                                index: 53
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                choiceOf: value
                                index: 54
                            required: [url]
                          measurementPoint:
                            url: measurementPoint
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: For when strength is measured at a particular point or distance
                            index: 55
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: measurementPoint}
                                index: 56
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: For when strength is measured at a particular point or distance
                                choices: [valueString]
                                index: 58
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: For when strength is measured at a particular point or distance
                                choiceOf: value
                                index: 59
                            required: [url]
                          country:
                            url: country
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The country or countries for which the strength range applies
                            array: true
                            index: 60
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: country}
                                index: 61
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The country or countries for which the strength range applies
                                choices: [valueCodeableConcept]
                                index: 63
                              valueCodeableConcept:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The country or countries for which the strength range applies
                                choiceOf: value
                                index: 64
                            required: [url]
                          referenceStrength:
                            url: referenceStrength
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Strength expressed in terms of a reference substance
                            array: true
                            index: 65
                            extensions:
                              substance:
                                url: substance
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Relevant reference substance
                                index: 67
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: substance}
                                    index: 68
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Relevant reference substance
                                    choices: [valueCodeableConcept]
                                    index: 70
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: Relevant reference substance
                                    choiceOf: value
                                    index: 71
                                required: [url]
                              strength:
                                url: strength
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                _required: true
                                index: 72
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strength}
                                    index: 73
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 75
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 76
                                required: [url]
                              strengthLowLimit:
                                url: strengthLowLimit
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                index: 77
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strengthLowLimit}
                                    index: 78
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 80
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 81
                                required: [url]
                              measurementPoint:
                                url: measurementPoint
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: For when strength is measured at a particular point or distance
                                index: 82
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: measurementPoint}
                                    index: 83
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: For when strength is measured at a particular point or distance
                                    choices: [valueString]
                                    index: 85
                                  valueString:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: string
                                    short: For when strength is measured at a particular point or distance
                                    choiceOf: value
                                    index: 86
                                required: [url]
                              country:
                                url: country
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: The country or countries for which the strength range applies
                                array: true
                                index: 87
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: country}
                                    index: 88
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The country or countries for which the strength range applies
                                    choices: [valueCodeableConcept]
                                    index: 90
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: The country or countries for which the strength range applies
                                    choiceOf: value
                                    index: 91
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                min: 1
                                index: 66
                                slicing:
                                  rules: closed
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 1
                                  slices:
                                    substance:
                                      match: {url: substance}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Relevant reference substance
                                        index: 67
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: substance}
                                            index: 68
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Relevant reference substance
                                            choices: [valueCodeableConcept]
                                            index: 70
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: Relevant reference substance
                                            choiceOf: value
                                            index: 71
                                        required: [url]
                                    strength:
                                      match: {url: strength}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        _required: true
                                        index: 72
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strength}
                                            index: 73
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 75
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 76
                                        required: [url]
                                    strengthLowLimit:
                                      match: {url: strengthLowLimit}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        index: 77
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strengthLowLimit}
                                            index: 78
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 80
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 81
                                        required: [url]
                                    measurementPoint:
                                      match: {url: measurementPoint}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: For when strength is measured at a particular point or distance
                                        index: 82
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: measurementPoint}
                                            index: 83
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: For when strength is measured at a particular point or distance
                                            choices: [valueString]
                                            index: 85
                                          valueString:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: string
                                            short: For when strength is measured at a particular point or distance
                                            choiceOf: value
                                            index: 86
                                        required: [url]
                                    country:
                                      match: {url: country}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: The country or countries for which the strength range applies
                                        array: true
                                        index: 87
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: country}
                                            index: 88
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The country or countries for which the strength range applies
                                            choices: [valueCodeableConcept]
                                            index: 90
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: The country or countries for which the strength range applies
                                            choiceOf: value
                                            index: 91
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: referenceStrength}
                                index: 92
                            required: [url, extension]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            min: 1
                            index: 34
                            slicing:
                              rules: closed
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 1
                              slices:
                                presentation:
                                  match: {url: presentation}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                    _required: true
                                    index: 35
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: presentation}
                                        index: 36
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                        choices: [valueRatio]
                                        index: 38
                                      valueRatio:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: Ratio
                                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                        choiceOf: value
                                        index: 39
                                    required: [url]
                                presentationLowLimit:
                                  match: {url: presentationLowLimit}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                    index: 40
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: presentationLowLimit}
                                        index: 41
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                        choices: [valueRatio]
                                        index: 43
                                      valueRatio:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: Ratio
                                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                        choiceOf: value
                                        index: 44
                                    required: [url]
                                concentration:
                                  match: {url: concentration}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: The strength per unitary volume (or mass)
                                    index: 45
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: concentration}
                                        index: 46
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: The strength per unitary volume (or mass)
                                        choices: [valueRatio]
                                        index: 48
                                      valueRatio:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: Ratio
                                        short: The strength per unitary volume (or mass)
                                        choiceOf: value
                                        index: 49
                                    required: [url]
                                concentrationLowLimit:
                                  match: {url: concentrationLowLimit}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                    index: 50
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: concentrationLowLimit}
                                        index: 51
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                        choices: [valueRatio]
                                        index: 53
                                      valueRatio:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: Ratio
                                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                        choiceOf: value
                                        index: 54
                                    required: [url]
                                measurementPoint:
                                  match: {url: measurementPoint}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: For when strength is measured at a particular point or distance
                                    index: 55
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: measurementPoint}
                                        index: 56
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: For when strength is measured at a particular point or distance
                                        choices: [valueString]
                                        index: 58
                                      valueString:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: string
                                        short: For when strength is measured at a particular point or distance
                                        choiceOf: value
                                        index: 59
                                    required: [url]
                                country:
                                  match: {url: country}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: The country or countries for which the strength range applies
                                    array: true
                                    index: 60
                                    elements:
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: country}
                                        index: 61
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        short: The country or countries for which the strength range applies
                                        choices: [valueCodeableConcept]
                                        index: 63
                                      valueCodeableConcept:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        type: CodeableConcept
                                        short: The country or countries for which the strength range applies
                                        choiceOf: value
                                        index: 64
                                    required: [url]
                                referenceStrength:
                                  match: {url: referenceStrength}
                                  schema:
                                    base: {max: '*', min: 0, path: Extension.extension}
                                    short: Strength expressed in terms of a reference substance
                                    array: true
                                    index: 65
                                    extensions:
                                      substance:
                                        url: substance
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Relevant reference substance
                                        index: 67
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: substance}
                                            index: 68
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Relevant reference substance
                                            choices: [valueCodeableConcept]
                                            index: 70
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: Relevant reference substance
                                            choiceOf: value
                                            index: 71
                                        required: [url]
                                      strength:
                                        url: strength
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        _required: true
                                        index: 72
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strength}
                                            index: 73
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 75
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 76
                                        required: [url]
                                      strengthLowLimit:
                                        url: strengthLowLimit
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        index: 77
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strengthLowLimit}
                                            index: 78
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 80
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 81
                                        required: [url]
                                      measurementPoint:
                                        url: measurementPoint
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: For when strength is measured at a particular point or distance
                                        index: 82
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: measurementPoint}
                                            index: 83
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: For when strength is measured at a particular point or distance
                                            choices: [valueString]
                                            index: 85
                                          valueString:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: string
                                            short: For when strength is measured at a particular point or distance
                                            choiceOf: value
                                            index: 86
                                        required: [url]
                                      country:
                                        url: country
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: The country or countries for which the strength range applies
                                        array: true
                                        index: 87
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: country}
                                            index: 88
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The country or countries for which the strength range applies
                                            choices: [valueCodeableConcept]
                                            index: 90
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: The country or countries for which the strength range applies
                                            choiceOf: value
                                            index: 91
                                        required: [url]
                                    elements:
                                      extension:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        array: true
                                        min: 1
                                        index: 66
                                        slicing:
                                          rules: closed
                                          ordered: false
                                          discriminator:
                                          - {path: url, type: value}
                                          min: 1
                                          slices:
                                            substance:
                                              match: {url: substance}
                                              schema:
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                short: Relevant reference substance
                                                index: 67
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: substance}
                                                    index: 68
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: Relevant reference substance
                                                    choices: [valueCodeableConcept]
                                                    index: 70
                                                  valueCodeableConcept:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    type: CodeableConcept
                                                    short: Relevant reference substance
                                                    choiceOf: value
                                                    index: 71
                                                required: [url]
                                            strength:
                                              match: {url: strength}
                                              schema:
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                short: Strength expressed in terms of a reference substance
                                                _required: true
                                                index: 72
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: strength}
                                                    index: 73
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: Strength expressed in terms of a reference substance
                                                    choices: [valueRatio]
                                                    index: 75
                                                  valueRatio:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    type: Ratio
                                                    short: Strength expressed in terms of a reference substance
                                                    choiceOf: value
                                                    index: 76
                                                required: [url]
                                            strengthLowLimit:
                                              match: {url: strengthLowLimit}
                                              schema:
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                short: Strength expressed in terms of a reference substance
                                                index: 77
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: strengthLowLimit}
                                                    index: 78
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: Strength expressed in terms of a reference substance
                                                    choices: [valueRatio]
                                                    index: 80
                                                  valueRatio:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    type: Ratio
                                                    short: Strength expressed in terms of a reference substance
                                                    choiceOf: value
                                                    index: 81
                                                required: [url]
                                            measurementPoint:
                                              match: {url: measurementPoint}
                                              schema:
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                short: For when strength is measured at a particular point or distance
                                                index: 82
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: measurementPoint}
                                                    index: 83
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: For when strength is measured at a particular point or distance
                                                    choices: [valueString]
                                                    index: 85
                                                  valueString:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    type: string
                                                    short: For when strength is measured at a particular point or distance
                                                    choiceOf: value
                                                    index: 86
                                                required: [url]
                                            country:
                                              match: {url: country}
                                              schema:
                                                base: {max: '*', min: 0, path: Extension.extension}
                                                short: The country or countries for which the strength range applies
                                                array: true
                                                index: 87
                                                elements:
                                                  url:
                                                    base: {max: '1', min: 1, path: Extension.url}
                                                    pattern: {type: Uri, value: country}
                                                    index: 88
                                                  value:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    short: The country or countries for which the strength range applies
                                                    choices: [valueCodeableConcept]
                                                    index: 90
                                                  valueCodeableConcept:
                                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                                    type: CodeableConcept
                                                    short: The country or countries for which the strength range applies
                                                    choiceOf: value
                                                    index: 91
                                                required: [url]
                                      url:
                                        base: {max: '1', min: 1, path: Extension.url}
                                        pattern: {type: Uri, value: referenceStrength}
                                        index: 92
                                    required: [url, extension]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strength}
                            index: 93
                        required: [url, extension]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: specifiedSubstance}
                index: 94
            required: [url]
        substance:
          match: {url: substance}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: The ingredient substance
            index: 95
            extensions:
              code:
                url: code
                base: {max: '*', min: 0, path: Extension.extension}
                short: The ingredient substance
                _required: true
                index: 97
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 98
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The ingredient substance
                    choices: [valueCodeableConcept]
                    index: 100
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The ingredient substance
                    choiceOf: value
                    index: 101
                required: [url]
              strength:
                url: strength
                base: {max: '*', min: 0, path: Extension.extension}
                short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
                array: true
                index: 102
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                    type: Extension
                    short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                    index: 104
                    elements:
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                        choices: [valueString]
                        index: 106
                      valueString:
                        type: string
                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 107
                    required: [valueString, value]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 103
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        _datatype:
                          match: {url: null}
                          schema:
                            type: Extension
                            short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                            url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                            index: 104
                            elements:
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                choices: [valueString]
                                index: 106
                              valueString:
                                type: string
                                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 107
                            required: [valueString, value]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: strength}
                    index: 108
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                min: 1
                index: 96
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    code:
                      match: {url: code}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The ingredient substance
                        _required: true
                        index: 97
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: code}
                            index: 98
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The ingredient substance
                            choices: [valueCodeableConcept]
                            index: 100
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The ingredient substance
                            choiceOf: value
                            index: 101
                        required: [url]
                    strength:
                      match: {url: strength}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
                        array: true
                        index: 102
                        extensions:
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                            type: Extension
                            short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                            index: 104
                            elements:
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                choices: [valueString]
                                index: 106
                              valueString:
                                type: string
                                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 107
                            required: [valueString, value]
                        elements:
                          extension:
                            base: {max: '*', min: 0, path: Extension.extension}
                            array: true
                            index: 103
                            slicing:
                              rules: closed
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                _datatype:
                                  match: {url: null}
                                  schema:
                                    type: Extension
                                    short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                                    url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                                    index: 104
                                    elements:
                                      value:
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                        choices: [valueString]
                                        index: 106
                                      valueString:
                                        type: string
                                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 107
                                    required: [valueString, value]
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strength}
                            index: 108
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: substance}
                index: 109
            required: [url, extension]
  url:
    base: {max: '1', min: 1, path: Extension.url}
    pattern: {type: Uri, value: 'http://hl7.org/fhir/4.0/StructureDefinition/extension-MedicinalProductIngredient'}
    index: 110
package_version: 0.0.1-snapshot-2
extensions:
  role:
    url: role
    base: {max: '*', min: 0, path: Extension.extension}
    short: Ingredient role e.g. Active ingredient, excipient
    _required: true
    index: 1
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: role}
        index: 2
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Ingredient role e.g. Active ingredient, excipient
        choices: [valueCodeableConcept]
        index: 4
      valueCodeableConcept:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: CodeableConcept
        short: Ingredient role e.g. Active ingredient, excipient
        choiceOf: value
        index: 5
    required: [url]
  allergenicIndicator:
    url: allergenicIndicator
    base: {max: '*', min: 0, path: Extension.extension}
    short: If the ingredient is a known or suspected allergen
    index: 6
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: allergenicIndicator}
        index: 7
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: If the ingredient is a known or suspected allergen
        choices: [valueBoolean]
        index: 9
      valueBoolean:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: boolean
        short: If the ingredient is a known or suspected allergen
        choiceOf: value
        index: 10
    required: [url]
  manufacturer:
    url: manufacturer
    base: {max: '*', min: 0, path: Extension.extension}
    short: Manufacturer of this Ingredient
    array: true
    index: 11
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: manufacturer}
        index: 12
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Manufacturer of this Ingredient
        choices: [valueReference]
        index: 14
      valueReference:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: Reference
        short: Manufacturer of this Ingredient
        choiceOf: value
        index: 15
    required: [url]
  specifiedSubstance:
    url: specifiedSubstance
    base: {max: '*', min: 0, path: Extension.extension}
    short: A specified substance that comprises this ingredient
    array: true
    index: 16
    extensions:
      code:
        url: code
        base: {max: '*', min: 0, path: Extension.extension}
        short: The specified substance
        _required: true
        index: 18
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: code}
            index: 19
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The specified substance
            choices: [valueCodeableConcept]
            index: 21
          valueCodeableConcept:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The specified substance
            choiceOf: value
            index: 22
        required: [url]
      group:
        url: group
        base: {max: '*', min: 0, path: Extension.extension}
        short: The group of specified substance, e.g. group 1 to 4
        _required: true
        index: 23
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: group}
            index: 24
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The group of specified substance, e.g. group 1 to 4
            choices: [valueCodeableConcept]
            index: 26
          valueCodeableConcept:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The group of specified substance, e.g. group 1 to 4
            choiceOf: value
            index: 27
        required: [url]
      confidentiality:
        url: confidentiality
        base: {max: '*', min: 0, path: Extension.extension}
        short: Confidentiality level of the specified substance as the ingredient
        index: 28
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: confidentiality}
            index: 29
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Confidentiality level of the specified substance as the ingredient
            choices: [valueCodeableConcept]
            index: 31
          valueCodeableConcept:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Confidentiality level of the specified substance as the ingredient
            choiceOf: value
            index: 32
        required: [url]
      strength:
        url: strength
        base: {max: '*', min: 0, path: Extension.extension}
        short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
        array: true
        index: 33
        extensions:
          presentation:
            url: presentation
            base: {max: '*', min: 0, path: Extension.extension}
            short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
            _required: true
            index: 35
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: presentation}
                index: 36
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                choices: [valueRatio]
                index: 38
              valueRatio:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Ratio
                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                choiceOf: value
                index: 39
            required: [url]
          presentationLowLimit:
            url: presentationLowLimit
            base: {max: '*', min: 0, path: Extension.extension}
            short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
            index: 40
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: presentationLowLimit}
                index: 41
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                choices: [valueRatio]
                index: 43
              valueRatio:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Ratio
                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                choiceOf: value
                index: 44
            required: [url]
          concentration:
            url: concentration
            base: {max: '*', min: 0, path: Extension.extension}
            short: The strength per unitary volume (or mass)
            index: 45
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: concentration}
                index: 46
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The strength per unitary volume (or mass)
                choices: [valueRatio]
                index: 48
              valueRatio:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Ratio
                short: The strength per unitary volume (or mass)
                choiceOf: value
                index: 49
            required: [url]
          concentrationLowLimit:
            url: concentrationLowLimit
            base: {max: '*', min: 0, path: Extension.extension}
            short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
            index: 50
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: concentrationLowLimit}
                index: 51
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                choices: [valueRatio]
                index: 53
              valueRatio:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Ratio
                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                choiceOf: value
                index: 54
            required: [url]
          measurementPoint:
            url: measurementPoint
            base: {max: '*', min: 0, path: Extension.extension}
            short: For when strength is measured at a particular point or distance
            index: 55
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: measurementPoint}
                index: 56
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: For when strength is measured at a particular point or distance
                choices: [valueString]
                index: 58
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: For when strength is measured at a particular point or distance
                choiceOf: value
                index: 59
            required: [url]
          country:
            url: country
            base: {max: '*', min: 0, path: Extension.extension}
            short: The country or countries for which the strength range applies
            array: true
            index: 60
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: country}
                index: 61
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: The country or countries for which the strength range applies
                choices: [valueCodeableConcept]
                index: 63
              valueCodeableConcept:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: CodeableConcept
                short: The country or countries for which the strength range applies
                choiceOf: value
                index: 64
            required: [url]
          referenceStrength:
            url: referenceStrength
            base: {max: '*', min: 0, path: Extension.extension}
            short: Strength expressed in terms of a reference substance
            array: true
            index: 65
            extensions:
              substance:
                url: substance
                base: {max: '*', min: 0, path: Extension.extension}
                short: Relevant reference substance
                index: 67
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: substance}
                    index: 68
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Relevant reference substance
                    choices: [valueCodeableConcept]
                    index: 70
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Relevant reference substance
                    choiceOf: value
                    index: 71
                required: [url]
              strength:
                url: strength
                base: {max: '*', min: 0, path: Extension.extension}
                short: Strength expressed in terms of a reference substance
                _required: true
                index: 72
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: strength}
                    index: 73
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Strength expressed in terms of a reference substance
                    choices: [valueRatio]
                    index: 75
                  valueRatio:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Ratio
                    short: Strength expressed in terms of a reference substance
                    choiceOf: value
                    index: 76
                required: [url]
              strengthLowLimit:
                url: strengthLowLimit
                base: {max: '*', min: 0, path: Extension.extension}
                short: Strength expressed in terms of a reference substance
                index: 77
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: strengthLowLimit}
                    index: 78
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Strength expressed in terms of a reference substance
                    choices: [valueRatio]
                    index: 80
                  valueRatio:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Ratio
                    short: Strength expressed in terms of a reference substance
                    choiceOf: value
                    index: 81
                required: [url]
              measurementPoint:
                url: measurementPoint
                base: {max: '*', min: 0, path: Extension.extension}
                short: For when strength is measured at a particular point or distance
                index: 82
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: measurementPoint}
                    index: 83
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: For when strength is measured at a particular point or distance
                    choices: [valueString]
                    index: 85
                  valueString:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: string
                    short: For when strength is measured at a particular point or distance
                    choiceOf: value
                    index: 86
                required: [url]
              country:
                url: country
                base: {max: '*', min: 0, path: Extension.extension}
                short: The country or countries for which the strength range applies
                array: true
                index: 87
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: country}
                    index: 88
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The country or countries for which the strength range applies
                    choices: [valueCodeableConcept]
                    index: 90
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The country or countries for which the strength range applies
                    choiceOf: value
                    index: 91
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                min: 1
                index: 66
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    substance:
                      match: {url: substance}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Relevant reference substance
                        index: 67
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: substance}
                            index: 68
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Relevant reference substance
                            choices: [valueCodeableConcept]
                            index: 70
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Relevant reference substance
                            choiceOf: value
                            index: 71
                        required: [url]
                    strength:
                      match: {url: strength}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        _required: true
                        index: 72
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strength}
                            index: 73
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 75
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 76
                        required: [url]
                    strengthLowLimit:
                      match: {url: strengthLowLimit}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        index: 77
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strengthLowLimit}
                            index: 78
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 80
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 81
                        required: [url]
                    measurementPoint:
                      match: {url: measurementPoint}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: For when strength is measured at a particular point or distance
                        index: 82
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: measurementPoint}
                            index: 83
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: For when strength is measured at a particular point or distance
                            choices: [valueString]
                            index: 85
                          valueString:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: string
                            short: For when strength is measured at a particular point or distance
                            choiceOf: value
                            index: 86
                        required: [url]
                    country:
                      match: {url: country}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The country or countries for which the strength range applies
                        array: true
                        index: 87
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: country}
                            index: 88
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The country or countries for which the strength range applies
                            choices: [valueCodeableConcept]
                            index: 90
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The country or countries for which the strength range applies
                            choiceOf: value
                            index: 91
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: referenceStrength}
                index: 92
            required: [url, extension]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            min: 1
            index: 34
            slicing:
              rules: closed
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 1
              slices:
                presentation:
                  match: {url: presentation}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                    _required: true
                    index: 35
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: presentation}
                        index: 36
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                        choices: [valueRatio]
                        index: 38
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                        choiceOf: value
                        index: 39
                    required: [url]
                presentationLowLimit:
                  match: {url: presentationLowLimit}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                    index: 40
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: presentationLowLimit}
                        index: 41
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                        choices: [valueRatio]
                        index: 43
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                        choiceOf: value
                        index: 44
                    required: [url]
                concentration:
                  match: {url: concentration}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The strength per unitary volume (or mass)
                    index: 45
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: concentration}
                        index: 46
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The strength per unitary volume (or mass)
                        choices: [valueRatio]
                        index: 48
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: The strength per unitary volume (or mass)
                        choiceOf: value
                        index: 49
                    required: [url]
                concentrationLowLimit:
                  match: {url: concentrationLowLimit}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                    index: 50
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: concentrationLowLimit}
                        index: 51
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                        choices: [valueRatio]
                        index: 53
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                        choiceOf: value
                        index: 54
                    required: [url]
                measurementPoint:
                  match: {url: measurementPoint}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: For when strength is measured at a particular point or distance
                    index: 55
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: measurementPoint}
                        index: 56
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: For when strength is measured at a particular point or distance
                        choices: [valueString]
                        index: 58
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: For when strength is measured at a particular point or distance
                        choiceOf: value
                        index: 59
                    required: [url]
                country:
                  match: {url: country}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The country or countries for which the strength range applies
                    array: true
                    index: 60
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: country}
                        index: 61
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The country or countries for which the strength range applies
                        choices: [valueCodeableConcept]
                        index: 63
                      valueCodeableConcept:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The country or countries for which the strength range applies
                        choiceOf: value
                        index: 64
                    required: [url]
                referenceStrength:
                  match: {url: referenceStrength}
                  schema:
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Strength expressed in terms of a reference substance
                    array: true
                    index: 65
                    extensions:
                      substance:
                        url: substance
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Relevant reference substance
                        index: 67
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: substance}
                            index: 68
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Relevant reference substance
                            choices: [valueCodeableConcept]
                            index: 70
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Relevant reference substance
                            choiceOf: value
                            index: 71
                        required: [url]
                      strength:
                        url: strength
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        _required: true
                        index: 72
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strength}
                            index: 73
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 75
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 76
                        required: [url]
                      strengthLowLimit:
                        url: strengthLowLimit
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        index: 77
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strengthLowLimit}
                            index: 78
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 80
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 81
                        required: [url]
                      measurementPoint:
                        url: measurementPoint
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: For when strength is measured at a particular point or distance
                        index: 82
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: measurementPoint}
                            index: 83
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: For when strength is measured at a particular point or distance
                            choices: [valueString]
                            index: 85
                          valueString:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: string
                            short: For when strength is measured at a particular point or distance
                            choiceOf: value
                            index: 86
                        required: [url]
                      country:
                        url: country
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The country or countries for which the strength range applies
                        array: true
                        index: 87
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: country}
                            index: 88
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The country or countries for which the strength range applies
                            choices: [valueCodeableConcept]
                            index: 90
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The country or countries for which the strength range applies
                            choiceOf: value
                            index: 91
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        min: 1
                        index: 66
                        slicing:
                          rules: closed
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 1
                          slices:
                            substance:
                              match: {url: substance}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Relevant reference substance
                                index: 67
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: substance}
                                    index: 68
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Relevant reference substance
                                    choices: [valueCodeableConcept]
                                    index: 70
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: Relevant reference substance
                                    choiceOf: value
                                    index: 71
                                required: [url]
                            strength:
                              match: {url: strength}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                _required: true
                                index: 72
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strength}
                                    index: 73
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 75
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 76
                                required: [url]
                            strengthLowLimit:
                              match: {url: strengthLowLimit}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                index: 77
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strengthLowLimit}
                                    index: 78
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 80
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 81
                                required: [url]
                            measurementPoint:
                              match: {url: measurementPoint}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: For when strength is measured at a particular point or distance
                                index: 82
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: measurementPoint}
                                    index: 83
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: For when strength is measured at a particular point or distance
                                    choices: [valueString]
                                    index: 85
                                  valueString:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: string
                                    short: For when strength is measured at a particular point or distance
                                    choiceOf: value
                                    index: 86
                                required: [url]
                            country:
                              match: {url: country}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: The country or countries for which the strength range applies
                                array: true
                                index: 87
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: country}
                                    index: 88
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The country or countries for which the strength range applies
                                    choices: [valueCodeableConcept]
                                    index: 90
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: The country or countries for which the strength range applies
                                    choiceOf: value
                                    index: 91
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: referenceStrength}
                        index: 92
                    required: [url, extension]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: strength}
            index: 93
        required: [url, extension]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        min: 2
        index: 17
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 2
          slices:
            code:
              match: {url: code}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The specified substance
                _required: true
                index: 18
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 19
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The specified substance
                    choices: [valueCodeableConcept]
                    index: 21
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The specified substance
                    choiceOf: value
                    index: 22
                required: [url]
            group:
              match: {url: group}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The group of specified substance, e.g. group 1 to 4
                _required: true
                index: 23
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: group}
                    index: 24
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The group of specified substance, e.g. group 1 to 4
                    choices: [valueCodeableConcept]
                    index: 26
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The group of specified substance, e.g. group 1 to 4
                    choiceOf: value
                    index: 27
                required: [url]
            confidentiality:
              match: {url: confidentiality}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Confidentiality level of the specified substance as the ingredient
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: confidentiality}
                    index: 29
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Confidentiality level of the specified substance as the ingredient
                    choices: [valueCodeableConcept]
                    index: 31
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Confidentiality level of the specified substance as the ingredient
                    choiceOf: value
                    index: 32
                required: [url]
            strength:
              match: {url: strength}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
                array: true
                index: 33
                extensions:
                  presentation:
                    url: presentation
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                    _required: true
                    index: 35
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: presentation}
                        index: 36
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                        choices: [valueRatio]
                        index: 38
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                        choiceOf: value
                        index: 39
                    required: [url]
                  presentationLowLimit:
                    url: presentationLowLimit
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                    index: 40
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: presentationLowLimit}
                        index: 41
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                        choices: [valueRatio]
                        index: 43
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                        choiceOf: value
                        index: 44
                    required: [url]
                  concentration:
                    url: concentration
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The strength per unitary volume (or mass)
                    index: 45
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: concentration}
                        index: 46
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The strength per unitary volume (or mass)
                        choices: [valueRatio]
                        index: 48
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: The strength per unitary volume (or mass)
                        choiceOf: value
                        index: 49
                    required: [url]
                  concentrationLowLimit:
                    url: concentrationLowLimit
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                    index: 50
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: concentrationLowLimit}
                        index: 51
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                        choices: [valueRatio]
                        index: 53
                      valueRatio:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: Ratio
                        short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                        choiceOf: value
                        index: 54
                    required: [url]
                  measurementPoint:
                    url: measurementPoint
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: For when strength is measured at a particular point or distance
                    index: 55
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: measurementPoint}
                        index: 56
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: For when strength is measured at a particular point or distance
                        choices: [valueString]
                        index: 58
                      valueString:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: string
                        short: For when strength is measured at a particular point or distance
                        choiceOf: value
                        index: 59
                    required: [url]
                  country:
                    url: country
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: The country or countries for which the strength range applies
                    array: true
                    index: 60
                    elements:
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: country}
                        index: 61
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        short: The country or countries for which the strength range applies
                        choices: [valueCodeableConcept]
                        index: 63
                      valueCodeableConcept:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The country or countries for which the strength range applies
                        choiceOf: value
                        index: 64
                    required: [url]
                  referenceStrength:
                    url: referenceStrength
                    base: {max: '*', min: 0, path: Extension.extension}
                    short: Strength expressed in terms of a reference substance
                    array: true
                    index: 65
                    extensions:
                      substance:
                        url: substance
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Relevant reference substance
                        index: 67
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: substance}
                            index: 68
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Relevant reference substance
                            choices: [valueCodeableConcept]
                            index: 70
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Relevant reference substance
                            choiceOf: value
                            index: 71
                        required: [url]
                      strength:
                        url: strength
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        _required: true
                        index: 72
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strength}
                            index: 73
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 75
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 76
                        required: [url]
                      strengthLowLimit:
                        url: strengthLowLimit
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Strength expressed in terms of a reference substance
                        index: 77
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: strengthLowLimit}
                            index: 78
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Strength expressed in terms of a reference substance
                            choices: [valueRatio]
                            index: 80
                          valueRatio:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Ratio
                            short: Strength expressed in terms of a reference substance
                            choiceOf: value
                            index: 81
                        required: [url]
                      measurementPoint:
                        url: measurementPoint
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: For when strength is measured at a particular point or distance
                        index: 82
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: measurementPoint}
                            index: 83
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: For when strength is measured at a particular point or distance
                            choices: [valueString]
                            index: 85
                          valueString:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: string
                            short: For when strength is measured at a particular point or distance
                            choiceOf: value
                            index: 86
                        required: [url]
                      country:
                        url: country
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The country or countries for which the strength range applies
                        array: true
                        index: 87
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: country}
                            index: 88
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The country or countries for which the strength range applies
                            choices: [valueCodeableConcept]
                            index: 90
                          valueCodeableConcept:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The country or countries for which the strength range applies
                            choiceOf: value
                            index: 91
                        required: [url]
                    elements:
                      extension:
                        base: {max: '*', min: 0, path: Extension.extension}
                        array: true
                        min: 1
                        index: 66
                        slicing:
                          rules: closed
                          ordered: false
                          discriminator:
                          - {path: url, type: value}
                          min: 1
                          slices:
                            substance:
                              match: {url: substance}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Relevant reference substance
                                index: 67
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: substance}
                                    index: 68
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Relevant reference substance
                                    choices: [valueCodeableConcept]
                                    index: 70
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: Relevant reference substance
                                    choiceOf: value
                                    index: 71
                                required: [url]
                            strength:
                              match: {url: strength}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                _required: true
                                index: 72
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strength}
                                    index: 73
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 75
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 76
                                required: [url]
                            strengthLowLimit:
                              match: {url: strengthLowLimit}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                index: 77
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strengthLowLimit}
                                    index: 78
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 80
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 81
                                required: [url]
                            measurementPoint:
                              match: {url: measurementPoint}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: For when strength is measured at a particular point or distance
                                index: 82
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: measurementPoint}
                                    index: 83
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: For when strength is measured at a particular point or distance
                                    choices: [valueString]
                                    index: 85
                                  valueString:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: string
                                    short: For when strength is measured at a particular point or distance
                                    choiceOf: value
                                    index: 86
                                required: [url]
                            country:
                              match: {url: country}
                              schema:
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: The country or countries for which the strength range applies
                                array: true
                                index: 87
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: country}
                                    index: 88
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The country or countries for which the strength range applies
                                    choices: [valueCodeableConcept]
                                    index: 90
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: The country or countries for which the strength range applies
                                    choiceOf: value
                                    index: 91
                                required: [url]
                      url:
                        base: {max: '1', min: 1, path: Extension.url}
                        pattern: {type: Uri, value: referenceStrength}
                        index: 92
                    required: [url, extension]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    min: 1
                    index: 34
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 1
                      slices:
                        presentation:
                          match: {url: presentation}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                            _required: true
                            index: 35
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: presentation}
                                index: 36
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                choices: [valueRatio]
                                index: 38
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item
                                choiceOf: value
                                index: 39
                            required: [url]
                        presentationLowLimit:
                          match: {url: presentationLowLimit}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                            index: 40
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: presentationLowLimit}
                                index: 41
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                choices: [valueRatio]
                                index: 43
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: A lower limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the lower limit, with the presentation attribute becoming the upper limit
                                choiceOf: value
                                index: 44
                            required: [url]
                        concentration:
                          match: {url: concentration}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The strength per unitary volume (or mass)
                            index: 45
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: concentration}
                                index: 46
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The strength per unitary volume (or mass)
                                choices: [valueRatio]
                                index: 48
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: The strength per unitary volume (or mass)
                                choiceOf: value
                                index: 49
                            required: [url]
                        concentrationLowLimit:
                          match: {url: concentrationLowLimit}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                            index: 50
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: concentrationLowLimit}
                                index: 51
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                choices: [valueRatio]
                                index: 53
                              valueRatio:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: Ratio
                                short: A lower limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the upper limit
                                choiceOf: value
                                index: 54
                            required: [url]
                        measurementPoint:
                          match: {url: measurementPoint}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: For when strength is measured at a particular point or distance
                            index: 55
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: measurementPoint}
                                index: 56
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: For when strength is measured at a particular point or distance
                                choices: [valueString]
                                index: 58
                              valueString:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: string
                                short: For when strength is measured at a particular point or distance
                                choiceOf: value
                                index: 59
                            required: [url]
                        country:
                          match: {url: country}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: The country or countries for which the strength range applies
                            array: true
                            index: 60
                            elements:
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: country}
                                index: 61
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                short: The country or countries for which the strength range applies
                                choices: [valueCodeableConcept]
                                index: 63
                              valueCodeableConcept:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The country or countries for which the strength range applies
                                choiceOf: value
                                index: 64
                            required: [url]
                        referenceStrength:
                          match: {url: referenceStrength}
                          schema:
                            base: {max: '*', min: 0, path: Extension.extension}
                            short: Strength expressed in terms of a reference substance
                            array: true
                            index: 65
                            extensions:
                              substance:
                                url: substance
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Relevant reference substance
                                index: 67
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: substance}
                                    index: 68
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Relevant reference substance
                                    choices: [valueCodeableConcept]
                                    index: 70
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: Relevant reference substance
                                    choiceOf: value
                                    index: 71
                                required: [url]
                              strength:
                                url: strength
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                _required: true
                                index: 72
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strength}
                                    index: 73
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 75
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 76
                                required: [url]
                              strengthLowLimit:
                                url: strengthLowLimit
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: Strength expressed in terms of a reference substance
                                index: 77
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: strengthLowLimit}
                                    index: 78
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: Strength expressed in terms of a reference substance
                                    choices: [valueRatio]
                                    index: 80
                                  valueRatio:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: Ratio
                                    short: Strength expressed in terms of a reference substance
                                    choiceOf: value
                                    index: 81
                                required: [url]
                              measurementPoint:
                                url: measurementPoint
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: For when strength is measured at a particular point or distance
                                index: 82
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: measurementPoint}
                                    index: 83
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: For when strength is measured at a particular point or distance
                                    choices: [valueString]
                                    index: 85
                                  valueString:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: string
                                    short: For when strength is measured at a particular point or distance
                                    choiceOf: value
                                    index: 86
                                required: [url]
                              country:
                                url: country
                                base: {max: '*', min: 0, path: Extension.extension}
                                short: The country or countries for which the strength range applies
                                array: true
                                index: 87
                                elements:
                                  url:
                                    base: {max: '1', min: 1, path: Extension.url}
                                    pattern: {type: Uri, value: country}
                                    index: 88
                                  value:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    short: The country or countries for which the strength range applies
                                    choices: [valueCodeableConcept]
                                    index: 90
                                  valueCodeableConcept:
                                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                    type: CodeableConcept
                                    short: The country or countries for which the strength range applies
                                    choiceOf: value
                                    index: 91
                                required: [url]
                            elements:
                              extension:
                                base: {max: '*', min: 0, path: Extension.extension}
                                array: true
                                min: 1
                                index: 66
                                slicing:
                                  rules: closed
                                  ordered: false
                                  discriminator:
                                  - {path: url, type: value}
                                  min: 1
                                  slices:
                                    substance:
                                      match: {url: substance}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Relevant reference substance
                                        index: 67
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: substance}
                                            index: 68
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Relevant reference substance
                                            choices: [valueCodeableConcept]
                                            index: 70
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: Relevant reference substance
                                            choiceOf: value
                                            index: 71
                                        required: [url]
                                    strength:
                                      match: {url: strength}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        _required: true
                                        index: 72
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strength}
                                            index: 73
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 75
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 76
                                        required: [url]
                                    strengthLowLimit:
                                      match: {url: strengthLowLimit}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: Strength expressed in terms of a reference substance
                                        index: 77
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: strengthLowLimit}
                                            index: 78
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: Strength expressed in terms of a reference substance
                                            choices: [valueRatio]
                                            index: 80
                                          valueRatio:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: Ratio
                                            short: Strength expressed in terms of a reference substance
                                            choiceOf: value
                                            index: 81
                                        required: [url]
                                    measurementPoint:
                                      match: {url: measurementPoint}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: For when strength is measured at a particular point or distance
                                        index: 82
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: measurementPoint}
                                            index: 83
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: For when strength is measured at a particular point or distance
                                            choices: [valueString]
                                            index: 85
                                          valueString:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: string
                                            short: For when strength is measured at a particular point or distance
                                            choiceOf: value
                                            index: 86
                                        required: [url]
                                    country:
                                      match: {url: country}
                                      schema:
                                        base: {max: '*', min: 0, path: Extension.extension}
                                        short: The country or countries for which the strength range applies
                                        array: true
                                        index: 87
                                        elements:
                                          url:
                                            base: {max: '1', min: 1, path: Extension.url}
                                            pattern: {type: Uri, value: country}
                                            index: 88
                                          value:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            short: The country or countries for which the strength range applies
                                            choices: [valueCodeableConcept]
                                            index: 90
                                          valueCodeableConcept:
                                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                            type: CodeableConcept
                                            short: The country or countries for which the strength range applies
                                            choiceOf: value
                                            index: 91
                                        required: [url]
                              url:
                                base: {max: '1', min: 1, path: Extension.url}
                                pattern: {type: Uri, value: referenceStrength}
                                index: 92
                            required: [url, extension]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: strength}
                    index: 93
                required: [url, extension]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: specifiedSubstance}
        index: 94
    required: [url]
  substance:
    url: substance
    base: {max: '*', min: 0, path: Extension.extension}
    short: The ingredient substance
    index: 95
    extensions:
      code:
        url: code
        base: {max: '*', min: 0, path: Extension.extension}
        short: The ingredient substance
        _required: true
        index: 97
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: code}
            index: 98
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The ingredient substance
            choices: [valueCodeableConcept]
            index: 100
          valueCodeableConcept:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The ingredient substance
            choiceOf: value
            index: 101
        required: [url]
      strength:
        url: strength
        base: {max: '*', min: 0, path: Extension.extension}
        short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
        array: true
        index: 102
        extensions:
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
            type: Extension
            short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
            index: 104
            elements:
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                choices: [valueString]
                index: 106
              valueString:
                type: string
                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                choiceOf: value
                index: 107
            required: [valueString, value]
        elements:
          extension:
            base: {max: '*', min: 0, path: Extension.extension}
            array: true
            index: 103
            slicing:
              rules: closed
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                _datatype:
                  match: {url: null}
                  schema:
                    type: Extension
                    short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                    url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                    index: 104
                    elements:
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                        choices: [valueString]
                        index: 106
                      valueString:
                        type: string
                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 107
                    required: [valueString, value]
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: strength}
            index: 108
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        min: 1
        index: 96
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            code:
              match: {url: code}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The ingredient substance
                _required: true
                index: 97
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: code}
                    index: 98
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The ingredient substance
                    choices: [valueCodeableConcept]
                    index: 100
                  valueCodeableConcept:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The ingredient substance
                    choiceOf: value
                    index: 101
                required: [url]
            strength:
              match: {url: strength}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Quantity of the substance or specified substance present in the manufactured item or pharmaceutical product
                array: true
                index: 102
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                    type: Extension
                    short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                    index: 104
                    elements:
                      value:
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                        choices: [valueString]
                        index: 106
                      valueString:
                        type: string
                        pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                        base: {max: '1', min: 0, path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 107
                    required: [valueString, value]
                elements:
                  extension:
                    base: {max: '*', min: 0, path: Extension.extension}
                    array: true
                    index: 103
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        _datatype:
                          match: {url: null}
                          schema:
                            type: Extension
                            short: Data type name for MedicinalProductIngredient.substance.strength from FHIR R4
                            url: http://hl7.org/fhir/StructureDefinition/_datatype|5.2.0
                            index: 104
                            elements:
                              value:
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                choices: [valueString]
                                index: 106
                              valueString:
                                type: string
                                pattern: {type: String, value: MedicinalProductIngredient.specifiedSubstance.strength}
                                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 107
                            required: [valueString, value]
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: strength}
                    index: 108
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: substance}
        index: 109
    required: [url, extension]
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.0/StructureDefinition/extension-MedicinalProductIngredient
base: http://hl7.org/fhir/StructureDefinition/Extension|4.3.0
version: 0.0.1-snapshot-2
required: [url, extension]