PackagesCanonicalsLogsProblems
    Packages
    rs/hl7.fhir.uv.xver@r4b.r4-0.0.1-snapshot-1
    http://hl7.org/fhir/4.3/StructureDefinition/extension-SubstanceDefinition
description: This cross-version extension represents SubstanceDefinition from http://hl7.org/fhir/StructureDefinition/SubstanceDefinition|4.3.0 for use in FHIR R4.
package_name: rs/hl7.fhir.uv.xver
derivation: constraint
name: ext_R4B_SubstanceDefinition
type: Extension
elements:
  extension:
    array: true
    index: 0
    slicing:
      rules: closed
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 0
      slices:
        description:
          match: {url: null}
          schema:
            short: Textual description of the substance
            isModifier: false
            index: 21
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: Textual description of the substance
                choices: [valueMarkdown]
                index: 23
              valueMarkdown:
                base: {path: 'Extension.value[x]'}
                type: markdown
                short: Textual description of the substance
                choiceOf: value
                index: 24
        supplier:
          match: {url: null}
          schema:
            short: An entity that is the source for the substance. It may be different from the manufacturer
            isModifier: false
            array: true
            index: 37
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: An entity that is the source for the substance. It may be different from the manufacturer
                choices: [valueReference]
                index: 39
              valueReference:
                base: {path: 'Extension.value[x]'}
                type: Reference
                short: An entity that is the source for the substance. It may be different from the manufacturer
                choiceOf: value
                refers: ['http://hl7.org/fhir/StructureDefinition/Organization']
                index: 40
        property:
          match: {url: null}
          schema:
            short: General specifications for this substance
            isModifier: false
            array: true
            index: 76
            extensions:
              type:
                url: null
                short: A code expressing the type of property
                isModifier: false
                _required: true
                index: 78
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A code expressing the type of property
                    choices: [valueCodeableConcept]
                    index: 80
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: A code expressing the type of property
                    choiceOf: value
                    index: 81
              value[x]:
                url: null
                short: A value for the property
                isModifier: false
                index: 82
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A value for the property
                    choices: [valueCodeableConcept, valueQuantity, valueDate, valueBoolean, valueAttachment]
                    index: 84
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: A value for the property
                    choiceOf: value
                    index: 85
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: A value for the property
                    choiceOf: value
                    index: 86
                  valueDate:
                    base: {path: 'Extension.value[x]'}
                    type: date
                    short: A value for the property
                    choiceOf: value
                    index: 87
                  valueBoolean:
                    base: {path: 'Extension.value[x]'}
                    type: boolean
                    short: A value for the property
                    choiceOf: value
                    index: 88
                  valueAttachment:
                    base: {path: 'Extension.value[x]'}
                    type: Attachment
                    short: A value for the property
                    choiceOf: value
                    index: 89
            elements:
              extension:
                array: true
                min: 1
                index: 77
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    type:
                      match: {url: null}
                      schema:
                        short: A code expressing the type of property
                        isModifier: false
                        _required: true
                        index: 78
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: A code expressing the type of property
                            choices: [valueCodeableConcept]
                            index: 80
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: A code expressing the type of property
                            choiceOf: value
                            index: 81
                    value[x]:
                      match: {url: null}
                      schema:
                        short: A value for the property
                        isModifier: false
                        index: 82
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: A value for the property
                            choices: [valueCodeableConcept, valueQuantity, valueDate, valueBoolean, valueAttachment]
                            index: 84
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: A value for the property
                            choiceOf: value
                            index: 85
                          valueQuantity:
                            base: {path: 'Extension.value[x]'}
                            type: Quantity
                            short: A value for the property
                            choiceOf: value
                            index: 86
                          valueDate:
                            base: {path: 'Extension.value[x]'}
                            type: date
                            short: A value for the property
                            choiceOf: value
                            index: 87
                          valueBoolean:
                            base: {path: 'Extension.value[x]'}
                            type: boolean
                            short: A value for the property
                            choiceOf: value
                            index: 88
                          valueAttachment:
                            base: {path: 'Extension.value[x]'}
                            type: Attachment
                            short: A value for the property
                            choiceOf: value
                            index: 89
            required: [extension]
        name:
          match: {url: null}
          schema:
            short: Names applicable to this substance
            isModifier: false
            array: true
            index: 153
            extensions:
              official:
                url: null
                short: Details of the official nature of this name
                isModifier: false
                array: true
                index: 193
                extensions:
                  authority:
                    url: null
                    short: Which authority uses this official name
                    isModifier: false
                    index: 195
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: Which authority uses this official name
                        choices: [valueCodeableConcept]
                        index: 197
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: Which authority uses this official name
                        choiceOf: value
                        index: 198
                  status:
                    url: null
                    short: The status of the official name, for example 'draft', 'active'
                    isModifier: false
                    index: 199
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The status of the official name, for example 'draft', 'active'
                        choices: [valueCodeableConcept]
                        index: 201
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The status of the official name, for example 'draft', 'active'
                        choiceOf: value
                        index: 202
                  date:
                    url: null
                    short: Date of official name change
                    isModifier: false
                    index: 203
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: Date of official name change
                        choices: [valueDateTime]
                        index: 205
                      valueDateTime:
                        base: {path: 'Extension.value[x]'}
                        type: dateTime
                        short: Date of official name change
                        choiceOf: value
                        index: 206
                elements:
                  extension:
                    array: true
                    index: 194
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        authority:
                          match: {url: null}
                          schema:
                            short: Which authority uses this official name
                            isModifier: false
                            index: 195
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: Which authority uses this official name
                                choices: [valueCodeableConcept]
                                index: 197
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: Which authority uses this official name
                                choiceOf: value
                                index: 198
                        status:
                          match: {url: null}
                          schema:
                            short: The status of the official name, for example 'draft', 'active'
                            isModifier: false
                            index: 199
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The status of the official name, for example 'draft', 'active'
                                choices: [valueCodeableConcept]
                                index: 201
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The status of the official name, for example 'draft', 'active'
                                choiceOf: value
                                index: 202
                        date:
                          match: {url: null}
                          schema:
                            short: Date of official name change
                            isModifier: false
                            index: 203
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: Date of official name change
                                choices: [valueDateTime]
                                index: 205
                              valueDateTime:
                                base: {path: 'Extension.value[x]'}
                                type: dateTime
                                short: Date of official name change
                                choiceOf: value
                                index: 206
              jurisdiction:
                url: null
                short: The jurisdiction where this name applies
                isModifier: false
                array: true
                index: 179
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The jurisdiction where this name applies
                    choices: [valueCodeableConcept]
                    index: 181
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The jurisdiction where this name applies
                    choiceOf: value
                    index: 182
              name:
                url: null
                short: The actual name
                isModifier: false
                _required: true
                index: 155
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The actual name
                    choices: [valueString]
                    index: 157
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: The actual name
                    choiceOf: value
                    index: 158
              type:
                url: null
                short: Name type e.g. 'systematic',  'scientific, 'brand'
                isModifier: false
                index: 159
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Name type e.g. 'systematic',  'scientific, 'brand'
                    choices: [valueCodeableConcept]
                    index: 161
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Name type e.g. 'systematic',  'scientific, 'brand'
                    choiceOf: value
                    index: 162
              source:
                url: null
                short: Supporting literature
                isModifier: false
                array: true
                index: 207
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Supporting literature
                    choices: [valueReference]
                    index: 209
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: Supporting literature
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                    index: 210
              status:
                url: null
                short: The status of the name e.g. 'current', 'proposed'
                isModifier: false
                index: 163
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The status of the name e.g. 'current', 'proposed'
                    choices: [valueCodeableConcept]
                    index: 165
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The status of the name e.g. 'current', 'proposed'
                    choiceOf: value
                    index: 166
              language:
                url: null
                short: Human language that the name is written in
                isModifier: false
                array: true
                index: 171
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Human language that the name is written in
                    choices: [valueCodeableConcept]
                    index: 173
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Human language that the name is written in
                    choiceOf: value
                    index: 174
              synonym:
                url: null
                short: A synonym of this particular name, by which the substance is also known
                isModifier: false
                array: true
                index: 183
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                    index: 184
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.name}
                        choices: [valueString]
                        type: string
                        index: 186
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.name}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 187
                    required: [value, valueString]
                elements:
                  extension:
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 184
                    slicing:
                      slices:
                        _datatype:
                          match: {}
                          schema:
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 184
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.name}
                                choices: [valueString]
                                type: string
                                index: 186
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.name}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 187
                            required: [value, valueString]
              translation:
                url: null
                short: A translation for this name into another human language
                isModifier: false
                array: true
                index: 188
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                    index: 189
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.name}
                        choices: [valueString]
                        type: string
                        index: 191
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.name}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 192
                    required: [value, valueString]
                elements:
                  extension:
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 189
                    slicing:
                      slices:
                        _datatype:
                          match: {}
                          schema:
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 189
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.name}
                                choices: [valueString]
                                type: string
                                index: 191
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.name}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 192
                            required: [value, valueString]
              preferred:
                url: null
                short: If this is the preferred name for this substance
                isModifier: false
                index: 167
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: If this is the preferred name for this substance
                    choices: [valueBoolean]
                    index: 169
                  valueBoolean:
                    base: {path: 'Extension.value[x]'}
                    type: boolean
                    short: If this is the preferred name for this substance
                    choiceOf: value
                    index: 170
              domain:
                url: null
                short: The use context of this name e.g. as an active ingredient or as a food colour additive
                isModifier: false
                array: true
                index: 175
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The use context of this name e.g. as an active ingredient or as a food colour additive
                    choices: [valueCodeableConcept]
                    index: 177
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The use context of this name e.g. as an active ingredient or as a food colour additive
                    choiceOf: value
                    index: 178
            elements:
              extension:
                array: true
                min: 1
                index: 154
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    official:
                      match: {url: null}
                      schema:
                        short: Details of the official nature of this name
                        isModifier: false
                        array: true
                        index: 193
                        extensions:
                          authority:
                            url: null
                            short: Which authority uses this official name
                            isModifier: false
                            index: 195
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: Which authority uses this official name
                                choices: [valueCodeableConcept]
                                index: 197
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: Which authority uses this official name
                                choiceOf: value
                                index: 198
                          status:
                            url: null
                            short: The status of the official name, for example 'draft', 'active'
                            isModifier: false
                            index: 199
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The status of the official name, for example 'draft', 'active'
                                choices: [valueCodeableConcept]
                                index: 201
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The status of the official name, for example 'draft', 'active'
                                choiceOf: value
                                index: 202
                          date:
                            url: null
                            short: Date of official name change
                            isModifier: false
                            index: 203
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: Date of official name change
                                choices: [valueDateTime]
                                index: 205
                              valueDateTime:
                                base: {path: 'Extension.value[x]'}
                                type: dateTime
                                short: Date of official name change
                                choiceOf: value
                                index: 206
                        elements:
                          extension:
                            array: true
                            index: 194
                            slicing:
                              rules: closed
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                authority:
                                  match: {url: null}
                                  schema:
                                    short: Which authority uses this official name
                                    isModifier: false
                                    index: 195
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: Which authority uses this official name
                                        choices: [valueCodeableConcept]
                                        index: 197
                                      valueCodeableConcept:
                                        base: {path: 'Extension.value[x]'}
                                        type: CodeableConcept
                                        short: Which authority uses this official name
                                        choiceOf: value
                                        index: 198
                                status:
                                  match: {url: null}
                                  schema:
                                    short: The status of the official name, for example 'draft', 'active'
                                    isModifier: false
                                    index: 199
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: The status of the official name, for example 'draft', 'active'
                                        choices: [valueCodeableConcept]
                                        index: 201
                                      valueCodeableConcept:
                                        base: {path: 'Extension.value[x]'}
                                        type: CodeableConcept
                                        short: The status of the official name, for example 'draft', 'active'
                                        choiceOf: value
                                        index: 202
                                date:
                                  match: {url: null}
                                  schema:
                                    short: Date of official name change
                                    isModifier: false
                                    index: 203
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: Date of official name change
                                        choices: [valueDateTime]
                                        index: 205
                                      valueDateTime:
                                        base: {path: 'Extension.value[x]'}
                                        type: dateTime
                                        short: Date of official name change
                                        choiceOf: value
                                        index: 206
                    jurisdiction:
                      match: {url: null}
                      schema:
                        short: The jurisdiction where this name applies
                        isModifier: false
                        array: true
                        index: 179
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The jurisdiction where this name applies
                            choices: [valueCodeableConcept]
                            index: 181
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The jurisdiction where this name applies
                            choiceOf: value
                            index: 182
                    name:
                      match: {url: null}
                      schema:
                        short: The actual name
                        isModifier: false
                        _required: true
                        index: 155
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The actual name
                            choices: [valueString]
                            index: 157
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: The actual name
                            choiceOf: value
                            index: 158
                    type:
                      match: {url: null}
                      schema:
                        short: Name type e.g. 'systematic',  'scientific, 'brand'
                        isModifier: false
                        index: 159
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Name type e.g. 'systematic',  'scientific, 'brand'
                            choices: [valueCodeableConcept]
                            index: 161
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Name type e.g. 'systematic',  'scientific, 'brand'
                            choiceOf: value
                            index: 162
                    source:
                      match: {url: null}
                      schema:
                        short: Supporting literature
                        isModifier: false
                        array: true
                        index: 207
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Supporting literature
                            choices: [valueReference]
                            index: 209
                          valueReference:
                            base: {path: 'Extension.value[x]'}
                            type: Reference
                            short: Supporting literature
                            choiceOf: value
                            refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                            index: 210
                    status:
                      match: {url: null}
                      schema:
                        short: The status of the name e.g. 'current', 'proposed'
                        isModifier: false
                        index: 163
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The status of the name e.g. 'current', 'proposed'
                            choices: [valueCodeableConcept]
                            index: 165
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The status of the name e.g. 'current', 'proposed'
                            choiceOf: value
                            index: 166
                    language:
                      match: {url: null}
                      schema:
                        short: Human language that the name is written in
                        isModifier: false
                        array: true
                        index: 171
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Human language that the name is written in
                            choices: [valueCodeableConcept]
                            index: 173
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Human language that the name is written in
                            choiceOf: value
                            index: 174
                    synonym:
                      match: {url: null}
                      schema:
                        short: A synonym of this particular name, by which the substance is also known
                        isModifier: false
                        array: true
                        index: 183
                        extensions:
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                            index: 184
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.name}
                                choices: [valueString]
                                type: string
                                index: 186
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.name}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 187
                            required: [value, valueString]
                        elements:
                          extension:
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 184
                            slicing:
                              slices:
                                _datatype:
                                  match: {}
                                  schema:
                                    type: Extension
                                    short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                                    index: 184
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        pattern: {type: string, value: SubstanceDefinition.name}
                                        choices: [valueString]
                                        type: string
                                        index: 186
                                      valueString:
                                        type: string
                                        pattern: {type: string, value: SubstanceDefinition.name}
                                        base: {path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 187
                                    required: [value, valueString]
                    translation:
                      match: {url: null}
                      schema:
                        short: A translation for this name into another human language
                        isModifier: false
                        array: true
                        index: 188
                        extensions:
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                            index: 189
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.name}
                                choices: [valueString]
                                type: string
                                index: 191
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.name}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 192
                            required: [value, valueString]
                        elements:
                          extension:
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 189
                            slicing:
                              slices:
                                _datatype:
                                  match: {}
                                  schema:
                                    type: Extension
                                    short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                                    index: 189
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        pattern: {type: string, value: SubstanceDefinition.name}
                                        choices: [valueString]
                                        type: string
                                        index: 191
                                      valueString:
                                        type: string
                                        pattern: {type: string, value: SubstanceDefinition.name}
                                        base: {path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 192
                                    required: [value, valueString]
                    preferred:
                      match: {url: null}
                      schema:
                        short: If this is the preferred name for this substance
                        isModifier: false
                        index: 167
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: If this is the preferred name for this substance
                            choices: [valueBoolean]
                            index: 169
                          valueBoolean:
                            base: {path: 'Extension.value[x]'}
                            type: boolean
                            short: If this is the preferred name for this substance
                            choiceOf: value
                            index: 170
                    domain:
                      match: {url: null}
                      schema:
                        short: The use context of this name e.g. as an active ingredient or as a food colour additive
                        isModifier: false
                        array: true
                        index: 175
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The use context of this name e.g. as an active ingredient or as a food colour additive
                            choices: [valueCodeableConcept]
                            index: 177
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The use context of this name e.g. as an active ingredient or as a food colour additive
                            choiceOf: value
                            index: 178
            required: [extension]
        relationship:
          match: {url: null}
          schema:
            short: A link between this substance and another
            isModifier: false
            array: true
            index: 211
            extensions:
              substanceDefinition[x]:
                url: null
                short: A pointer to another substance, as a resource or a representational code
                isModifier: false
                index: 213
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A pointer to another substance, as a resource or a representational code
                    choices: [valueReference, valueCodeableConcept]
                    index: 215
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: A pointer to another substance, as a resource or a representational code
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/SubstanceDefinition']
                    index: 216
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: A pointer to another substance, as a resource or a representational code
                    choiceOf: value
                    index: 217
              type:
                url: null
                short: For example "salt to parent", "active moiety"
                isModifier: false
                _required: true
                index: 218
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: For example "salt to parent", "active moiety"
                    choices: [valueCodeableConcept]
                    index: 220
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: For example "salt to parent", "active moiety"
                    choiceOf: value
                    index: 221
              isDefining:
                url: null
                short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                isModifier: false
                index: 222
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                    choices: [valueBoolean]
                    index: 224
                  valueBoolean:
                    base: {path: 'Extension.value[x]'}
                    type: boolean
                    short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                    choiceOf: value
                    index: 225
              amount[x]:
                url: null
                short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                isModifier: false
                index: 226
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choices: [valueQuantity, valueRatio, valueString]
                    index: 228
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choiceOf: value
                    index: 229
                  valueRatio:
                    base: {path: 'Extension.value[x]'}
                    type: Ratio
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choiceOf: value
                    index: 230
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choiceOf: value
                    index: 231
              ratioHighLimitAmount:
                url: null
                short: For use when the numeric has an uncertain range
                isModifier: false
                index: 232
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: For use when the numeric has an uncertain range
                    choices: [valueRatio]
                    index: 234
                  valueRatio:
                    base: {path: 'Extension.value[x]'}
                    type: Ratio
                    short: For use when the numeric has an uncertain range
                    choiceOf: value
                    index: 235
              comparator:
                url: null
                short: An operator for the amount, for example "average", "approximately", "less than"
                isModifier: false
                index: 236
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: An operator for the amount, for example "average", "approximately", "less than"
                    choices: [valueCodeableConcept]
                    index: 238
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: An operator for the amount, for example "average", "approximately", "less than"
                    choiceOf: value
                    index: 239
              source:
                url: null
                short: Supporting literature
                isModifier: false
                array: true
                index: 240
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Supporting literature
                    choices: [valueReference]
                    index: 242
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: Supporting literature
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                    index: 243
            elements:
              extension:
                array: true
                min: 1
                index: 212
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    substanceDefinition[x]:
                      match: {url: null}
                      schema:
                        short: A pointer to another substance, as a resource or a representational code
                        isModifier: false
                        index: 213
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: A pointer to another substance, as a resource or a representational code
                            choices: [valueReference, valueCodeableConcept]
                            index: 215
                          valueReference:
                            base: {path: 'Extension.value[x]'}
                            type: Reference
                            short: A pointer to another substance, as a resource or a representational code
                            choiceOf: value
                            refers: ['http://hl7.org/fhir/StructureDefinition/SubstanceDefinition']
                            index: 216
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: A pointer to another substance, as a resource or a representational code
                            choiceOf: value
                            index: 217
                    type:
                      match: {url: null}
                      schema:
                        short: For example "salt to parent", "active moiety"
                        isModifier: false
                        _required: true
                        index: 218
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: For example "salt to parent", "active moiety"
                            choices: [valueCodeableConcept]
                            index: 220
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: For example "salt to parent", "active moiety"
                            choiceOf: value
                            index: 221
                    isDefining:
                      match: {url: null}
                      schema:
                        short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                        isModifier: false
                        index: 222
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                            choices: [valueBoolean]
                            index: 224
                          valueBoolean:
                            base: {path: 'Extension.value[x]'}
                            type: boolean
                            short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                            choiceOf: value
                            index: 225
                    amount[x]:
                      match: {url: null}
                      schema:
                        short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                        isModifier: false
                        index: 226
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                            choices: [valueQuantity, valueRatio, valueString]
                            index: 228
                          valueQuantity:
                            base: {path: 'Extension.value[x]'}
                            type: Quantity
                            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                            choiceOf: value
                            index: 229
                          valueRatio:
                            base: {path: 'Extension.value[x]'}
                            type: Ratio
                            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                            choiceOf: value
                            index: 230
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                            choiceOf: value
                            index: 231
                    ratioHighLimitAmount:
                      match: {url: null}
                      schema:
                        short: For use when the numeric has an uncertain range
                        isModifier: false
                        index: 232
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: For use when the numeric has an uncertain range
                            choices: [valueRatio]
                            index: 234
                          valueRatio:
                            base: {path: 'Extension.value[x]'}
                            type: Ratio
                            short: For use when the numeric has an uncertain range
                            choiceOf: value
                            index: 235
                    comparator:
                      match: {url: null}
                      schema:
                        short: An operator for the amount, for example "average", "approximately", "less than"
                        isModifier: false
                        index: 236
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: An operator for the amount, for example "average", "approximately", "less than"
                            choices: [valueCodeableConcept]
                            index: 238
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: An operator for the amount, for example "average", "approximately", "less than"
                            choiceOf: value
                            index: 239
                    source:
                      match: {url: null}
                      schema:
                        short: Supporting literature
                        isModifier: false
                        array: true
                        index: 240
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Supporting literature
                            choices: [valueReference]
                            index: 242
                          valueReference:
                            base: {path: 'Extension.value[x]'}
                            type: Reference
                            short: Supporting literature
                            choiceOf: value
                            refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                            index: 243
            required: [extension]
        moiety:
          match: {url: null}
          schema:
            short: Moiety, for structural modifications
            isModifier: false
            array: true
            index: 41
            extensions:
              role:
                url: null
                short: Role that the moiety is playing
                isModifier: false
                index: 43
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Role that the moiety is playing
                    choices: [valueCodeableConcept]
                    index: 45
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Role that the moiety is playing
                    choiceOf: value
                    index: 46
              identifier:
                url: null
                short: Identifier by which this moiety substance is known
                isModifier: false
                index: 47
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Identifier by which this moiety substance is known
                    choices: [valueIdentifier]
                    index: 49
                  valueIdentifier:
                    base: {path: 'Extension.value[x]'}
                    type: Identifier
                    short: Identifier by which this moiety substance is known
                    choiceOf: value
                    index: 50
              name:
                url: null
                short: Textual name for this moiety substance
                isModifier: false
                index: 51
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Textual name for this moiety substance
                    choices: [valueString]
                    index: 53
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Textual name for this moiety substance
                    choiceOf: value
                    index: 54
              stereochemistry:
                url: null
                short: Stereochemistry type
                isModifier: false
                index: 55
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Stereochemistry type
                    choices: [valueCodeableConcept]
                    index: 57
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Stereochemistry type
                    choiceOf: value
                    index: 58
              opticalActivity:
                url: null
                short: Optical activity type
                isModifier: false
                index: 59
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Optical activity type
                    choices: [valueCodeableConcept]
                    index: 61
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Optical activity type
                    choiceOf: value
                    index: 62
              molecularFormula:
                url: null
                short: Molecular formula for this moiety (e.g. with the Hill system)
                isModifier: false
                index: 63
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Molecular formula for this moiety (e.g. with the Hill system)
                    choices: [valueString]
                    index: 65
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Molecular formula for this moiety (e.g. with the Hill system)
                    choiceOf: value
                    index: 66
              amount[x]:
                url: null
                short: Quantitative value for this moiety
                isModifier: false
                index: 67
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Quantitative value for this moiety
                    choices: [valueQuantity, valueString]
                    index: 69
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: Quantitative value for this moiety
                    choiceOf: value
                    index: 70
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Quantitative value for this moiety
                    choiceOf: value
                    index: 71
              measurementType:
                url: null
                short: The measurement type of the quantitative value
                isModifier: false
                index: 72
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The measurement type of the quantitative value
                    choices: [valueCodeableConcept]
                    index: 74
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The measurement type of the quantitative value
                    choiceOf: value
                    index: 75
            elements:
              extension:
                array: true
                index: 42
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    role:
                      match: {url: null}
                      schema:
                        short: Role that the moiety is playing
                        isModifier: false
                        index: 43
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Role that the moiety is playing
                            choices: [valueCodeableConcept]
                            index: 45
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Role that the moiety is playing
                            choiceOf: value
                            index: 46
                    identifier:
                      match: {url: null}
                      schema:
                        short: Identifier by which this moiety substance is known
                        isModifier: false
                        index: 47
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Identifier by which this moiety substance is known
                            choices: [valueIdentifier]
                            index: 49
                          valueIdentifier:
                            base: {path: 'Extension.value[x]'}
                            type: Identifier
                            short: Identifier by which this moiety substance is known
                            choiceOf: value
                            index: 50
                    name:
                      match: {url: null}
                      schema:
                        short: Textual name for this moiety substance
                        isModifier: false
                        index: 51
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Textual name for this moiety substance
                            choices: [valueString]
                            index: 53
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: Textual name for this moiety substance
                            choiceOf: value
                            index: 54
                    stereochemistry:
                      match: {url: null}
                      schema:
                        short: Stereochemistry type
                        isModifier: false
                        index: 55
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Stereochemistry type
                            choices: [valueCodeableConcept]
                            index: 57
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Stereochemistry type
                            choiceOf: value
                            index: 58
                    opticalActivity:
                      match: {url: null}
                      schema:
                        short: Optical activity type
                        isModifier: false
                        index: 59
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Optical activity type
                            choices: [valueCodeableConcept]
                            index: 61
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Optical activity type
                            choiceOf: value
                            index: 62
                    molecularFormula:
                      match: {url: null}
                      schema:
                        short: Molecular formula for this moiety (e.g. with the Hill system)
                        isModifier: false
                        index: 63
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Molecular formula for this moiety (e.g. with the Hill system)
                            choices: [valueString]
                            index: 65
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: Molecular formula for this moiety (e.g. with the Hill system)
                            choiceOf: value
                            index: 66
                    amount[x]:
                      match: {url: null}
                      schema:
                        short: Quantitative value for this moiety
                        isModifier: false
                        index: 67
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Quantitative value for this moiety
                            choices: [valueQuantity, valueString]
                            index: 69
                          valueQuantity:
                            base: {path: 'Extension.value[x]'}
                            type: Quantity
                            short: Quantitative value for this moiety
                            choiceOf: value
                            index: 70
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: Quantitative value for this moiety
                            choiceOf: value
                            index: 71
                    measurementType:
                      match: {url: null}
                      schema:
                        short: The measurement type of the quantitative value
                        isModifier: false
                        index: 72
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The measurement type of the quantitative value
                            choices: [valueCodeableConcept]
                            index: 74
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The measurement type of the quantitative value
                            choiceOf: value
                            index: 75
        classification:
          match: {url: null}
          schema:
            short: A categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
            isModifier: false
            array: true
            index: 9
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: A categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
                choices: [valueCodeableConcept]
                index: 11
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: A categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
                choiceOf: value
                index: 12
        note:
          match: {url: null}
          schema:
            short: Textual comment about the substance's catalogue or registry record
            isModifier: false
            array: true
            index: 29
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: Textual comment about the substance's catalogue or registry record
                choices: [valueAnnotation]
                index: 31
              valueAnnotation:
                base: {path: 'Extension.value[x]'}
                type: Annotation
                short: Textual comment about the substance's catalogue or registry record
                choiceOf: value
                index: 32
        grade:
          match: {url: null}
          schema:
            short: The quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
            isModifier: false
            array: true
            index: 17
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: The quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
                choices: [valueCodeableConcept]
                index: 19
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: The quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
                choiceOf: value
                index: 20
        structure:
          match: {url: null}
          schema:
            short: Structural information
            isModifier: false
            index: 104
            extensions:
              stereochemistry:
                url: null
                short: Stereochemistry type
                isModifier: false
                index: 106
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Stereochemistry type
                    choices: [valueCodeableConcept]
                    index: 108
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Stereochemistry type
                    choiceOf: value
                    index: 109
              opticalActivity:
                url: null
                short: Optical activity type
                isModifier: false
                index: 110
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Optical activity type
                    choices: [valueCodeableConcept]
                    index: 112
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Optical activity type
                    choiceOf: value
                    index: 113
              molecularFormula:
                url: null
                short: Molecular formula (e.g. using the Hill system)
                isModifier: false
                index: 114
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Molecular formula (e.g. using the Hill system)
                    choices: [valueString]
                    index: 116
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Molecular formula (e.g. using the Hill system)
                    choiceOf: value
                    index: 117
              molecularFormulaByMoiety:
                url: null
                short: Specified per moiety according to the Hill system
                isModifier: false
                index: 118
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Specified per moiety according to the Hill system
                    choices: [valueString]
                    index: 120
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Specified per moiety according to the Hill system
                    choiceOf: value
                    index: 121
              molecularWeight:
                url: null
                short: The molecular weight or weight range
                isModifier: false
                index: 122
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    type: Extension
                    short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                    index: 123
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                        choices: [valueString]
                        type: string
                        index: 125
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 126
                    required: [value, valueString]
                elements:
                  extension:
                    type: Extension
                    short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 123
                    slicing:
                      slices:
                        _datatype:
                          match: {}
                          schema:
                            type: Extension
                            short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 123
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                choices: [valueString]
                                type: string
                                index: 125
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 126
                            required: [value, valueString]
              technique:
                url: null
                short: The method used to find the structure e.g. X-ray, NMR
                isModifier: false
                array: true
                index: 127
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The method used to find the structure e.g. X-ray, NMR
                    choices: [valueCodeableConcept]
                    index: 129
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The method used to find the structure e.g. X-ray, NMR
                    choiceOf: value
                    index: 130
              sourceDocument:
                url: null
                short: Source of information for the structure
                isModifier: false
                array: true
                index: 131
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Source of information for the structure
                    choices: [valueReference]
                    index: 133
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: Source of information for the structure
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                    index: 134
              representation:
                url: null
                short: A depiction of the structure or characterization of the substance
                isModifier: false
                array: true
                index: 135
                extensions:
                  type:
                    url: null
                    short: The kind of structural representation (e.g. full, partial)
                    isModifier: false
                    index: 137
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The kind of structural representation (e.g. full, partial)
                        choices: [valueCodeableConcept]
                        index: 139
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The kind of structural representation (e.g. full, partial)
                        choiceOf: value
                        index: 140
                  representation:
                    url: null
                    short: The structural representation or characterization as a text string in a standard format
                    isModifier: false
                    index: 141
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The structural representation or characterization as a text string in a standard format
                        choices: [valueString]
                        index: 143
                      valueString:
                        base: {path: 'Extension.value[x]'}
                        type: string
                        short: The structural representation or characterization as a text string in a standard format
                        choiceOf: value
                        index: 144
                  format:
                    url: null
                    short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                    isModifier: false
                    index: 145
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                        choices: [valueCodeableConcept]
                        index: 147
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                        choiceOf: value
                        index: 148
                  document:
                    url: null
                    short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                    isModifier: false
                    index: 149
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                        choices: [valueReference]
                        index: 151
                      valueReference:
                        base: {path: 'Extension.value[x]'}
                        type: Reference
                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                        choiceOf: value
                        refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                        index: 152
                elements:
                  extension:
                    array: true
                    index: 136
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        type:
                          match: {url: null}
                          schema:
                            short: The kind of structural representation (e.g. full, partial)
                            isModifier: false
                            index: 137
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The kind of structural representation (e.g. full, partial)
                                choices: [valueCodeableConcept]
                                index: 139
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The kind of structural representation (e.g. full, partial)
                                choiceOf: value
                                index: 140
                        representation:
                          match: {url: null}
                          schema:
                            short: The structural representation or characterization as a text string in a standard format
                            isModifier: false
                            index: 141
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The structural representation or characterization as a text string in a standard format
                                choices: [valueString]
                                index: 143
                              valueString:
                                base: {path: 'Extension.value[x]'}
                                type: string
                                short: The structural representation or characterization as a text string in a standard format
                                choiceOf: value
                                index: 144
                        format:
                          match: {url: null}
                          schema:
                            short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                            isModifier: false
                            index: 145
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                choices: [valueCodeableConcept]
                                index: 147
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                choiceOf: value
                                index: 148
                        document:
                          match: {url: null}
                          schema:
                            short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                            isModifier: false
                            index: 149
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                choices: [valueReference]
                                index: 151
                              valueReference:
                                base: {path: 'Extension.value[x]'}
                                type: Reference
                                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                choiceOf: value
                                refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                                index: 152
            elements:
              extension:
                array: true
                index: 105
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    stereochemistry:
                      match: {url: null}
                      schema:
                        short: Stereochemistry type
                        isModifier: false
                        index: 106
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Stereochemistry type
                            choices: [valueCodeableConcept]
                            index: 108
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Stereochemistry type
                            choiceOf: value
                            index: 109
                    opticalActivity:
                      match: {url: null}
                      schema:
                        short: Optical activity type
                        isModifier: false
                        index: 110
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Optical activity type
                            choices: [valueCodeableConcept]
                            index: 112
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Optical activity type
                            choiceOf: value
                            index: 113
                    molecularFormula:
                      match: {url: null}
                      schema:
                        short: Molecular formula (e.g. using the Hill system)
                        isModifier: false
                        index: 114
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Molecular formula (e.g. using the Hill system)
                            choices: [valueString]
                            index: 116
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: Molecular formula (e.g. using the Hill system)
                            choiceOf: value
                            index: 117
                    molecularFormulaByMoiety:
                      match: {url: null}
                      schema:
                        short: Specified per moiety according to the Hill system
                        isModifier: false
                        index: 118
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Specified per moiety according to the Hill system
                            choices: [valueString]
                            index: 120
                          valueString:
                            base: {path: 'Extension.value[x]'}
                            type: string
                            short: Specified per moiety according to the Hill system
                            choiceOf: value
                            index: 121
                    molecularWeight:
                      match: {url: null}
                      schema:
                        short: The molecular weight or weight range
                        isModifier: false
                        index: 122
                        extensions:
                          _datatype:
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            type: Extension
                            short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                            index: 123
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                choices: [valueString]
                                type: string
                                index: 125
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 126
                            required: [value, valueString]
                        elements:
                          extension:
                            type: Extension
                            short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 123
                            slicing:
                              slices:
                                _datatype:
                                  match: {}
                                  schema:
                                    type: Extension
                                    short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                                    index: 123
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                        choices: [valueString]
                                        type: string
                                        index: 125
                                      valueString:
                                        type: string
                                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                        base: {path: 'Extension.value[x]'}
                                        choiceOf: value
                                        index: 126
                                    required: [value, valueString]
                    technique:
                      match: {url: null}
                      schema:
                        short: The method used to find the structure e.g. X-ray, NMR
                        isModifier: false
                        array: true
                        index: 127
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The method used to find the structure e.g. X-ray, NMR
                            choices: [valueCodeableConcept]
                            index: 129
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The method used to find the structure e.g. X-ray, NMR
                            choiceOf: value
                            index: 130
                    sourceDocument:
                      match: {url: null}
                      schema:
                        short: Source of information for the structure
                        isModifier: false
                        array: true
                        index: 131
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Source of information for the structure
                            choices: [valueReference]
                            index: 133
                          valueReference:
                            base: {path: 'Extension.value[x]'}
                            type: Reference
                            short: Source of information for the structure
                            choiceOf: value
                            refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                            index: 134
                    representation:
                      match: {url: null}
                      schema:
                        short: A depiction of the structure or characterization of the substance
                        isModifier: false
                        array: true
                        index: 135
                        extensions:
                          type:
                            url: null
                            short: The kind of structural representation (e.g. full, partial)
                            isModifier: false
                            index: 137
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The kind of structural representation (e.g. full, partial)
                                choices: [valueCodeableConcept]
                                index: 139
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The kind of structural representation (e.g. full, partial)
                                choiceOf: value
                                index: 140
                          representation:
                            url: null
                            short: The structural representation or characterization as a text string in a standard format
                            isModifier: false
                            index: 141
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The structural representation or characterization as a text string in a standard format
                                choices: [valueString]
                                index: 143
                              valueString:
                                base: {path: 'Extension.value[x]'}
                                type: string
                                short: The structural representation or characterization as a text string in a standard format
                                choiceOf: value
                                index: 144
                          format:
                            url: null
                            short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                            isModifier: false
                            index: 145
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                choices: [valueCodeableConcept]
                                index: 147
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                choiceOf: value
                                index: 148
                          document:
                            url: null
                            short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                            isModifier: false
                            index: 149
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                choices: [valueReference]
                                index: 151
                              valueReference:
                                base: {path: 'Extension.value[x]'}
                                type: Reference
                                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                choiceOf: value
                                refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                                index: 152
                        elements:
                          extension:
                            array: true
                            index: 136
                            slicing:
                              rules: closed
                              ordered: false
                              discriminator:
                              - {path: url, type: value}
                              min: 0
                              slices:
                                type:
                                  match: {url: null}
                                  schema:
                                    short: The kind of structural representation (e.g. full, partial)
                                    isModifier: false
                                    index: 137
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: The kind of structural representation (e.g. full, partial)
                                        choices: [valueCodeableConcept]
                                        index: 139
                                      valueCodeableConcept:
                                        base: {path: 'Extension.value[x]'}
                                        type: CodeableConcept
                                        short: The kind of structural representation (e.g. full, partial)
                                        choiceOf: value
                                        index: 140
                                representation:
                                  match: {url: null}
                                  schema:
                                    short: The structural representation or characterization as a text string in a standard format
                                    isModifier: false
                                    index: 141
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: The structural representation or characterization as a text string in a standard format
                                        choices: [valueString]
                                        index: 143
                                      valueString:
                                        base: {path: 'Extension.value[x]'}
                                        type: string
                                        short: The structural representation or characterization as a text string in a standard format
                                        choiceOf: value
                                        index: 144
                                format:
                                  match: {url: null}
                                  schema:
                                    short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                    isModifier: false
                                    index: 145
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                        choices: [valueCodeableConcept]
                                        index: 147
                                      valueCodeableConcept:
                                        base: {path: 'Extension.value[x]'}
                                        type: CodeableConcept
                                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                        choiceOf: value
                                        index: 148
                                document:
                                  match: {url: null}
                                  schema:
                                    short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                    isModifier: false
                                    index: 149
                                    elements:
                                      value:
                                        base: {path: 'Extension.value[x]'}
                                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                        choices: [valueReference]
                                        index: 151
                                      valueReference:
                                        base: {path: 'Extension.value[x]'}
                                        type: Reference
                                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                        choiceOf: value
                                        refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                                        index: 152
        status:
          match: {url: null}
          schema:
            short: Status of substance within the catalogue e.g. active, retired
            isModifier: false
            index: 5
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: Status of substance within the catalogue e.g. active, retired
                choices: [valueCodeableConcept]
                index: 7
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: Status of substance within the catalogue e.g. active, retired
                choiceOf: value
                index: 8
        molecularWeight:
          match: {url: null}
          schema:
            short: The molecular weight or weight range
            isModifier: false
            array: true
            index: 90
            extensions:
              method:
                url: null
                short: The method by which the weight was determined
                isModifier: false
                index: 92
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The method by which the weight was determined
                    choices: [valueCodeableConcept]
                    index: 94
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The method by which the weight was determined
                    choiceOf: value
                    index: 95
              type:
                url: null
                short: Type of molecular weight e.g. exact, average, weight average
                isModifier: false
                index: 96
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Type of molecular weight e.g. exact, average, weight average
                    choices: [valueCodeableConcept]
                    index: 98
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Type of molecular weight e.g. exact, average, weight average
                    choiceOf: value
                    index: 99
              amount:
                url: null
                short: Used to capture quantitative values for a variety of elements
                isModifier: false
                _required: true
                index: 100
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Used to capture quantitative values for a variety of elements
                    choices: [valueQuantity]
                    index: 102
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: Used to capture quantitative values for a variety of elements
                    choiceOf: value
                    index: 103
            elements:
              extension:
                array: true
                min: 1
                index: 91
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    method:
                      match: {url: null}
                      schema:
                        short: The method by which the weight was determined
                        isModifier: false
                        index: 92
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The method by which the weight was determined
                            choices: [valueCodeableConcept]
                            index: 94
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The method by which the weight was determined
                            choiceOf: value
                            index: 95
                    type:
                      match: {url: null}
                      schema:
                        short: Type of molecular weight e.g. exact, average, weight average
                        isModifier: false
                        index: 96
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Type of molecular weight e.g. exact, average, weight average
                            choices: [valueCodeableConcept]
                            index: 98
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Type of molecular weight e.g. exact, average, weight average
                            choiceOf: value
                            index: 99
                    amount:
                      match: {url: null}
                      schema:
                        short: Used to capture quantitative values for a variety of elements
                        isModifier: false
                        _required: true
                        index: 100
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Used to capture quantitative values for a variety of elements
                            choices: [valueQuantity]
                            index: 102
                          valueQuantity:
                            base: {path: 'Extension.value[x]'}
                            type: Quantity
                            short: Used to capture quantitative values for a variety of elements
                            choiceOf: value
                            index: 103
            required: [extension]
        manufacturer:
          match: {url: null}
          schema:
            short: The entity that creates, makes, produces or fabricates the substance
            isModifier: false
            array: true
            index: 33
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: The entity that creates, makes, produces or fabricates the substance
                choices: [valueReference]
                index: 35
              valueReference:
                base: {path: 'Extension.value[x]'}
                type: Reference
                short: The entity that creates, makes, produces or fabricates the substance
                choiceOf: value
                refers: ['http://hl7.org/fhir/StructureDefinition/Organization']
                index: 36
        domain:
          match: {url: null}
          schema:
            short: If the substance applies to human or veterinary use
            isModifier: false
            index: 13
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: If the substance applies to human or veterinary use
                choices: [valueCodeableConcept]
                index: 15
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: If the substance applies to human or veterinary use
                choiceOf: value
                index: 16
        version:
          match: {url: null}
          schema:
            short: A business level version identifier of the substance
            isModifier: false
            index: 1
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: A business level version identifier of the substance
                choices: [valueString]
                index: 3
              valueString:
                base: {path: 'Extension.value[x]'}
                type: string
                short: A business level version identifier of the substance
                choiceOf: value
                index: 4
        informationSource:
          match: {url: null}
          schema:
            short: Supporting literature
            isModifier: false
            array: true
            index: 25
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: Supporting literature
                choices: [valueReference]
                index: 27
              valueReference:
                base: {path: 'Extension.value[x]'}
                type: Reference
                short: Supporting literature
                choiceOf: value
                refers: ['http://hl7.org/fhir/StructureDefinition/Citation']
                index: 28
        sourceMaterial:
          match: {url: null}
          schema:
            short: Material or taxonomic/anatomical source
            isModifier: false
            index: 244
            extensions:
              type:
                url: null
                short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                isModifier: false
                index: 246
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                    choices: [valueCodeableConcept]
                    index: 248
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                    choiceOf: value
                    index: 249
              genus:
                url: null
                short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                isModifier: false
                index: 250
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                    choices: [valueCodeableConcept]
                    index: 252
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                    choiceOf: value
                    index: 253
              species:
                url: null
                short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                isModifier: false
                index: 254
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                    choices: [valueCodeableConcept]
                    index: 256
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                    choiceOf: value
                    index: 257
              part:
                url: null
                short: An anatomical origin of the source material within an organism
                isModifier: false
                index: 258
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: An anatomical origin of the source material within an organism
                    choices: [valueCodeableConcept]
                    index: 260
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: An anatomical origin of the source material within an organism
                    choiceOf: value
                    index: 261
              countryOfOrigin:
                url: null
                short: The country or countries where the material is harvested
                isModifier: false
                array: true
                index: 262
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The country or countries where the material is harvested
                    choices: [valueCodeableConcept]
                    index: 264
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The country or countries where the material is harvested
                    choiceOf: value
                    index: 265
            elements:
              extension:
                array: true
                index: 245
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    type:
                      match: {url: null}
                      schema:
                        short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                        isModifier: false
                        index: 246
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                            choices: [valueCodeableConcept]
                            index: 248
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                            choiceOf: value
                            index: 249
                    genus:
                      match: {url: null}
                      schema:
                        short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                        isModifier: false
                        index: 250
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                            choices: [valueCodeableConcept]
                            index: 252
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                            choiceOf: value
                            index: 253
                    species:
                      match: {url: null}
                      schema:
                        short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                        isModifier: false
                        index: 254
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                            choices: [valueCodeableConcept]
                            index: 256
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                            choiceOf: value
                            index: 257
                    part:
                      match: {url: null}
                      schema:
                        short: An anatomical origin of the source material within an organism
                        isModifier: false
                        index: 258
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: An anatomical origin of the source material within an organism
                            choices: [valueCodeableConcept]
                            index: 260
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: An anatomical origin of the source material within an organism
                            choiceOf: value
                            index: 261
                    countryOfOrigin:
                      match: {url: null}
                      schema:
                        short: The country or countries where the material is harvested
                        isModifier: false
                        array: true
                        index: 262
                        elements:
                          value:
                            base: {path: 'Extension.value[x]'}
                            short: The country or countries where the material is harvested
                            choices: [valueCodeableConcept]
                            index: 264
                          valueCodeableConcept:
                            base: {path: 'Extension.value[x]'}
                            type: CodeableConcept
                            short: The country or countries where the material is harvested
                            choiceOf: value
                            index: 265
  url:
    pattern: {type: uri, value: 'http://hl7.org/fhir/4.3/StructureDefinition/extension-SubstanceDefinition'}
    type: uri
    index: 266
package_version: r4b.r4-0.0.1-snapshot-1
extensions:
  description:
    url: null
    short: Textual description of the substance
    isModifier: false
    index: 21
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: Textual description of the substance
        choices: [valueMarkdown]
        index: 23
      valueMarkdown:
        base: {path: 'Extension.value[x]'}
        type: markdown
        short: Textual description of the substance
        choiceOf: value
        index: 24
  supplier:
    url: null
    short: An entity that is the source for the substance. It may be different from the manufacturer
    isModifier: false
    array: true
    index: 37
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: An entity that is the source for the substance. It may be different from the manufacturer
        choices: [valueReference]
        index: 39
      valueReference:
        base: {path: 'Extension.value[x]'}
        type: Reference
        short: An entity that is the source for the substance. It may be different from the manufacturer
        choiceOf: value
        refers: ['http://hl7.org/fhir/StructureDefinition/Organization']
        index: 40
  property:
    url: null
    short: General specifications for this substance
    isModifier: false
    array: true
    index: 76
    extensions:
      type:
        url: null
        short: A code expressing the type of property
        isModifier: false
        _required: true
        index: 78
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: A code expressing the type of property
            choices: [valueCodeableConcept]
            index: 80
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: A code expressing the type of property
            choiceOf: value
            index: 81
      value[x]:
        url: null
        short: A value for the property
        isModifier: false
        index: 82
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: A value for the property
            choices: [valueCodeableConcept, valueQuantity, valueDate, valueBoolean, valueAttachment]
            index: 84
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: A value for the property
            choiceOf: value
            index: 85
          valueQuantity:
            base: {path: 'Extension.value[x]'}
            type: Quantity
            short: A value for the property
            choiceOf: value
            index: 86
          valueDate:
            base: {path: 'Extension.value[x]'}
            type: date
            short: A value for the property
            choiceOf: value
            index: 87
          valueBoolean:
            base: {path: 'Extension.value[x]'}
            type: boolean
            short: A value for the property
            choiceOf: value
            index: 88
          valueAttachment:
            base: {path: 'Extension.value[x]'}
            type: Attachment
            short: A value for the property
            choiceOf: value
            index: 89
    elements:
      extension:
        array: true
        min: 1
        index: 77
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            type:
              match: {url: null}
              schema:
                short: A code expressing the type of property
                isModifier: false
                _required: true
                index: 78
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A code expressing the type of property
                    choices: [valueCodeableConcept]
                    index: 80
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: A code expressing the type of property
                    choiceOf: value
                    index: 81
            value[x]:
              match: {url: null}
              schema:
                short: A value for the property
                isModifier: false
                index: 82
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A value for the property
                    choices: [valueCodeableConcept, valueQuantity, valueDate, valueBoolean, valueAttachment]
                    index: 84
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: A value for the property
                    choiceOf: value
                    index: 85
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: A value for the property
                    choiceOf: value
                    index: 86
                  valueDate:
                    base: {path: 'Extension.value[x]'}
                    type: date
                    short: A value for the property
                    choiceOf: value
                    index: 87
                  valueBoolean:
                    base: {path: 'Extension.value[x]'}
                    type: boolean
                    short: A value for the property
                    choiceOf: value
                    index: 88
                  valueAttachment:
                    base: {path: 'Extension.value[x]'}
                    type: Attachment
                    short: A value for the property
                    choiceOf: value
                    index: 89
    required: [extension]
  name:
    url: null
    short: Names applicable to this substance
    isModifier: false
    array: true
    index: 153
    extensions:
      official:
        url: null
        short: Details of the official nature of this name
        isModifier: false
        array: true
        index: 193
        extensions:
          authority:
            url: null
            short: Which authority uses this official name
            isModifier: false
            index: 195
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: Which authority uses this official name
                choices: [valueCodeableConcept]
                index: 197
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: Which authority uses this official name
                choiceOf: value
                index: 198
          status:
            url: null
            short: The status of the official name, for example 'draft', 'active'
            isModifier: false
            index: 199
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: The status of the official name, for example 'draft', 'active'
                choices: [valueCodeableConcept]
                index: 201
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: The status of the official name, for example 'draft', 'active'
                choiceOf: value
                index: 202
          date:
            url: null
            short: Date of official name change
            isModifier: false
            index: 203
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: Date of official name change
                choices: [valueDateTime]
                index: 205
              valueDateTime:
                base: {path: 'Extension.value[x]'}
                type: dateTime
                short: Date of official name change
                choiceOf: value
                index: 206
        elements:
          extension:
            array: true
            index: 194
            slicing:
              rules: closed
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                authority:
                  match: {url: null}
                  schema:
                    short: Which authority uses this official name
                    isModifier: false
                    index: 195
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: Which authority uses this official name
                        choices: [valueCodeableConcept]
                        index: 197
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: Which authority uses this official name
                        choiceOf: value
                        index: 198
                status:
                  match: {url: null}
                  schema:
                    short: The status of the official name, for example 'draft', 'active'
                    isModifier: false
                    index: 199
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The status of the official name, for example 'draft', 'active'
                        choices: [valueCodeableConcept]
                        index: 201
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The status of the official name, for example 'draft', 'active'
                        choiceOf: value
                        index: 202
                date:
                  match: {url: null}
                  schema:
                    short: Date of official name change
                    isModifier: false
                    index: 203
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: Date of official name change
                        choices: [valueDateTime]
                        index: 205
                      valueDateTime:
                        base: {path: 'Extension.value[x]'}
                        type: dateTime
                        short: Date of official name change
                        choiceOf: value
                        index: 206
      jurisdiction:
        url: null
        short: The jurisdiction where this name applies
        isModifier: false
        array: true
        index: 179
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The jurisdiction where this name applies
            choices: [valueCodeableConcept]
            index: 181
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The jurisdiction where this name applies
            choiceOf: value
            index: 182
      name:
        url: null
        short: The actual name
        isModifier: false
        _required: true
        index: 155
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The actual name
            choices: [valueString]
            index: 157
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: The actual name
            choiceOf: value
            index: 158
      type:
        url: null
        short: Name type e.g. 'systematic',  'scientific, 'brand'
        isModifier: false
        index: 159
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Name type e.g. 'systematic',  'scientific, 'brand'
            choices: [valueCodeableConcept]
            index: 161
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Name type e.g. 'systematic',  'scientific, 'brand'
            choiceOf: value
            index: 162
      source:
        url: null
        short: Supporting literature
        isModifier: false
        array: true
        index: 207
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Supporting literature
            choices: [valueReference]
            index: 209
          valueReference:
            base: {path: 'Extension.value[x]'}
            type: Reference
            short: Supporting literature
            choiceOf: value
            refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
            index: 210
      status:
        url: null
        short: The status of the name e.g. 'current', 'proposed'
        isModifier: false
        index: 163
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The status of the name e.g. 'current', 'proposed'
            choices: [valueCodeableConcept]
            index: 165
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The status of the name e.g. 'current', 'proposed'
            choiceOf: value
            index: 166
      language:
        url: null
        short: Human language that the name is written in
        isModifier: false
        array: true
        index: 171
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Human language that the name is written in
            choices: [valueCodeableConcept]
            index: 173
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Human language that the name is written in
            choiceOf: value
            index: 174
      synonym:
        url: null
        short: A synonym of this particular name, by which the substance is also known
        isModifier: false
        array: true
        index: 183
        extensions:
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            type: Extension
            short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
            index: 184
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                pattern: {type: string, value: SubstanceDefinition.name}
                choices: [valueString]
                type: string
                index: 186
              valueString:
                type: string
                pattern: {type: string, value: SubstanceDefinition.name}
                base: {path: 'Extension.value[x]'}
                choiceOf: value
                index: 187
            required: [value, valueString]
        elements:
          extension:
            type: Extension
            short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            index: 184
            slicing:
              slices:
                _datatype:
                  match: {}
                  schema:
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 184
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.name}
                        choices: [valueString]
                        type: string
                        index: 186
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.name}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 187
                    required: [value, valueString]
      translation:
        url: null
        short: A translation for this name into another human language
        isModifier: false
        array: true
        index: 188
        extensions:
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            type: Extension
            short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
            index: 189
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                pattern: {type: string, value: SubstanceDefinition.name}
                choices: [valueString]
                type: string
                index: 191
              valueString:
                type: string
                pattern: {type: string, value: SubstanceDefinition.name}
                base: {path: 'Extension.value[x]'}
                choiceOf: value
                index: 192
            required: [value, valueString]
        elements:
          extension:
            type: Extension
            short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            index: 189
            slicing:
              slices:
                _datatype:
                  match: {}
                  schema:
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 189
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.name}
                        choices: [valueString]
                        type: string
                        index: 191
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.name}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 192
                    required: [value, valueString]
      preferred:
        url: null
        short: If this is the preferred name for this substance
        isModifier: false
        index: 167
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: If this is the preferred name for this substance
            choices: [valueBoolean]
            index: 169
          valueBoolean:
            base: {path: 'Extension.value[x]'}
            type: boolean
            short: If this is the preferred name for this substance
            choiceOf: value
            index: 170
      domain:
        url: null
        short: The use context of this name e.g. as an active ingredient or as a food colour additive
        isModifier: false
        array: true
        index: 175
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The use context of this name e.g. as an active ingredient or as a food colour additive
            choices: [valueCodeableConcept]
            index: 177
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The use context of this name e.g. as an active ingredient or as a food colour additive
            choiceOf: value
            index: 178
    elements:
      extension:
        array: true
        min: 1
        index: 154
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            official:
              match: {url: null}
              schema:
                short: Details of the official nature of this name
                isModifier: false
                array: true
                index: 193
                extensions:
                  authority:
                    url: null
                    short: Which authority uses this official name
                    isModifier: false
                    index: 195
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: Which authority uses this official name
                        choices: [valueCodeableConcept]
                        index: 197
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: Which authority uses this official name
                        choiceOf: value
                        index: 198
                  status:
                    url: null
                    short: The status of the official name, for example 'draft', 'active'
                    isModifier: false
                    index: 199
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The status of the official name, for example 'draft', 'active'
                        choices: [valueCodeableConcept]
                        index: 201
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The status of the official name, for example 'draft', 'active'
                        choiceOf: value
                        index: 202
                  date:
                    url: null
                    short: Date of official name change
                    isModifier: false
                    index: 203
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: Date of official name change
                        choices: [valueDateTime]
                        index: 205
                      valueDateTime:
                        base: {path: 'Extension.value[x]'}
                        type: dateTime
                        short: Date of official name change
                        choiceOf: value
                        index: 206
                elements:
                  extension:
                    array: true
                    index: 194
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        authority:
                          match: {url: null}
                          schema:
                            short: Which authority uses this official name
                            isModifier: false
                            index: 195
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: Which authority uses this official name
                                choices: [valueCodeableConcept]
                                index: 197
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: Which authority uses this official name
                                choiceOf: value
                                index: 198
                        status:
                          match: {url: null}
                          schema:
                            short: The status of the official name, for example 'draft', 'active'
                            isModifier: false
                            index: 199
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The status of the official name, for example 'draft', 'active'
                                choices: [valueCodeableConcept]
                                index: 201
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The status of the official name, for example 'draft', 'active'
                                choiceOf: value
                                index: 202
                        date:
                          match: {url: null}
                          schema:
                            short: Date of official name change
                            isModifier: false
                            index: 203
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: Date of official name change
                                choices: [valueDateTime]
                                index: 205
                              valueDateTime:
                                base: {path: 'Extension.value[x]'}
                                type: dateTime
                                short: Date of official name change
                                choiceOf: value
                                index: 206
            jurisdiction:
              match: {url: null}
              schema:
                short: The jurisdiction where this name applies
                isModifier: false
                array: true
                index: 179
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The jurisdiction where this name applies
                    choices: [valueCodeableConcept]
                    index: 181
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The jurisdiction where this name applies
                    choiceOf: value
                    index: 182
            name:
              match: {url: null}
              schema:
                short: The actual name
                isModifier: false
                _required: true
                index: 155
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The actual name
                    choices: [valueString]
                    index: 157
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: The actual name
                    choiceOf: value
                    index: 158
            type:
              match: {url: null}
              schema:
                short: Name type e.g. 'systematic',  'scientific, 'brand'
                isModifier: false
                index: 159
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Name type e.g. 'systematic',  'scientific, 'brand'
                    choices: [valueCodeableConcept]
                    index: 161
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Name type e.g. 'systematic',  'scientific, 'brand'
                    choiceOf: value
                    index: 162
            source:
              match: {url: null}
              schema:
                short: Supporting literature
                isModifier: false
                array: true
                index: 207
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Supporting literature
                    choices: [valueReference]
                    index: 209
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: Supporting literature
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                    index: 210
            status:
              match: {url: null}
              schema:
                short: The status of the name e.g. 'current', 'proposed'
                isModifier: false
                index: 163
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The status of the name e.g. 'current', 'proposed'
                    choices: [valueCodeableConcept]
                    index: 165
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The status of the name e.g. 'current', 'proposed'
                    choiceOf: value
                    index: 166
            language:
              match: {url: null}
              schema:
                short: Human language that the name is written in
                isModifier: false
                array: true
                index: 171
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Human language that the name is written in
                    choices: [valueCodeableConcept]
                    index: 173
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Human language that the name is written in
                    choiceOf: value
                    index: 174
            synonym:
              match: {url: null}
              schema:
                short: A synonym of this particular name, by which the substance is also known
                isModifier: false
                array: true
                index: 183
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                    index: 184
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.name}
                        choices: [valueString]
                        type: string
                        index: 186
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.name}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 187
                    required: [value, valueString]
                elements:
                  extension:
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 184
                    slicing:
                      slices:
                        _datatype:
                          match: {}
                          schema:
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.synonym from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 184
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.name}
                                choices: [valueString]
                                type: string
                                index: 186
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.name}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 187
                            required: [value, valueString]
            translation:
              match: {url: null}
              schema:
                short: A translation for this name into another human language
                isModifier: false
                array: true
                index: 188
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                    index: 189
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.name}
                        choices: [valueString]
                        type: string
                        index: 191
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.name}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 192
                    required: [value, valueString]
                elements:
                  extension:
                    type: Extension
                    short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 189
                    slicing:
                      slices:
                        _datatype:
                          match: {}
                          schema:
                            type: Extension
                            short: Data type name for SubstanceDefinition.name.translation from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 189
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.name}
                                choices: [valueString]
                                type: string
                                index: 191
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.name}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 192
                            required: [value, valueString]
            preferred:
              match: {url: null}
              schema:
                short: If this is the preferred name for this substance
                isModifier: false
                index: 167
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: If this is the preferred name for this substance
                    choices: [valueBoolean]
                    index: 169
                  valueBoolean:
                    base: {path: 'Extension.value[x]'}
                    type: boolean
                    short: If this is the preferred name for this substance
                    choiceOf: value
                    index: 170
            domain:
              match: {url: null}
              schema:
                short: The use context of this name e.g. as an active ingredient or as a food colour additive
                isModifier: false
                array: true
                index: 175
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The use context of this name e.g. as an active ingredient or as a food colour additive
                    choices: [valueCodeableConcept]
                    index: 177
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The use context of this name e.g. as an active ingredient or as a food colour additive
                    choiceOf: value
                    index: 178
    required: [extension]
  relationship:
    url: null
    short: A link between this substance and another
    isModifier: false
    array: true
    index: 211
    extensions:
      substanceDefinition[x]:
        url: null
        short: A pointer to another substance, as a resource or a representational code
        isModifier: false
        index: 213
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: A pointer to another substance, as a resource or a representational code
            choices: [valueReference, valueCodeableConcept]
            index: 215
          valueReference:
            base: {path: 'Extension.value[x]'}
            type: Reference
            short: A pointer to another substance, as a resource or a representational code
            choiceOf: value
            refers: ['http://hl7.org/fhir/StructureDefinition/SubstanceDefinition']
            index: 216
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: A pointer to another substance, as a resource or a representational code
            choiceOf: value
            index: 217
      type:
        url: null
        short: For example "salt to parent", "active moiety"
        isModifier: false
        _required: true
        index: 218
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: For example "salt to parent", "active moiety"
            choices: [valueCodeableConcept]
            index: 220
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: For example "salt to parent", "active moiety"
            choiceOf: value
            index: 221
      isDefining:
        url: null
        short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
        isModifier: false
        index: 222
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
            choices: [valueBoolean]
            index: 224
          valueBoolean:
            base: {path: 'Extension.value[x]'}
            type: boolean
            short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
            choiceOf: value
            index: 225
      amount[x]:
        url: null
        short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
        isModifier: false
        index: 226
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
            choices: [valueQuantity, valueRatio, valueString]
            index: 228
          valueQuantity:
            base: {path: 'Extension.value[x]'}
            type: Quantity
            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
            choiceOf: value
            index: 229
          valueRatio:
            base: {path: 'Extension.value[x]'}
            type: Ratio
            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
            choiceOf: value
            index: 230
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
            choiceOf: value
            index: 231
      ratioHighLimitAmount:
        url: null
        short: For use when the numeric has an uncertain range
        isModifier: false
        index: 232
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: For use when the numeric has an uncertain range
            choices: [valueRatio]
            index: 234
          valueRatio:
            base: {path: 'Extension.value[x]'}
            type: Ratio
            short: For use when the numeric has an uncertain range
            choiceOf: value
            index: 235
      comparator:
        url: null
        short: An operator for the amount, for example "average", "approximately", "less than"
        isModifier: false
        index: 236
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: An operator for the amount, for example "average", "approximately", "less than"
            choices: [valueCodeableConcept]
            index: 238
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: An operator for the amount, for example "average", "approximately", "less than"
            choiceOf: value
            index: 239
      source:
        url: null
        short: Supporting literature
        isModifier: false
        array: true
        index: 240
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Supporting literature
            choices: [valueReference]
            index: 242
          valueReference:
            base: {path: 'Extension.value[x]'}
            type: Reference
            short: Supporting literature
            choiceOf: value
            refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
            index: 243
    elements:
      extension:
        array: true
        min: 1
        index: 212
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            substanceDefinition[x]:
              match: {url: null}
              schema:
                short: A pointer to another substance, as a resource or a representational code
                isModifier: false
                index: 213
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A pointer to another substance, as a resource or a representational code
                    choices: [valueReference, valueCodeableConcept]
                    index: 215
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: A pointer to another substance, as a resource or a representational code
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/SubstanceDefinition']
                    index: 216
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: A pointer to another substance, as a resource or a representational code
                    choiceOf: value
                    index: 217
            type:
              match: {url: null}
              schema:
                short: For example "salt to parent", "active moiety"
                isModifier: false
                _required: true
                index: 218
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: For example "salt to parent", "active moiety"
                    choices: [valueCodeableConcept]
                    index: 220
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: For example "salt to parent", "active moiety"
                    choiceOf: value
                    index: 221
            isDefining:
              match: {url: null}
              schema:
                short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                isModifier: false
                index: 222
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                    choices: [valueBoolean]
                    index: 224
                  valueBoolean:
                    base: {path: 'Extension.value[x]'}
                    type: boolean
                    short: For example where an enzyme strongly bonds with a particular substance, this is a defining relationship for that enzyme, out of several possible relationships
                    choiceOf: value
                    index: 225
            amount[x]:
              match: {url: null}
              schema:
                short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                isModifier: false
                index: 226
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choices: [valueQuantity, valueRatio, valueString]
                    index: 228
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choiceOf: value
                    index: 229
                  valueRatio:
                    base: {path: 'Extension.value[x]'}
                    type: Ratio
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choiceOf: value
                    index: 230
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: A numeric factor for the relationship, e.g. that a substance salt has some percentage of active substance in relation to some other
                    choiceOf: value
                    index: 231
            ratioHighLimitAmount:
              match: {url: null}
              schema:
                short: For use when the numeric has an uncertain range
                isModifier: false
                index: 232
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: For use when the numeric has an uncertain range
                    choices: [valueRatio]
                    index: 234
                  valueRatio:
                    base: {path: 'Extension.value[x]'}
                    type: Ratio
                    short: For use when the numeric has an uncertain range
                    choiceOf: value
                    index: 235
            comparator:
              match: {url: null}
              schema:
                short: An operator for the amount, for example "average", "approximately", "less than"
                isModifier: false
                index: 236
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: An operator for the amount, for example "average", "approximately", "less than"
                    choices: [valueCodeableConcept]
                    index: 238
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: An operator for the amount, for example "average", "approximately", "less than"
                    choiceOf: value
                    index: 239
            source:
              match: {url: null}
              schema:
                short: Supporting literature
                isModifier: false
                array: true
                index: 240
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Supporting literature
                    choices: [valueReference]
                    index: 242
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: Supporting literature
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                    index: 243
    required: [extension]
  moiety:
    url: null
    short: Moiety, for structural modifications
    isModifier: false
    array: true
    index: 41
    extensions:
      role:
        url: null
        short: Role that the moiety is playing
        isModifier: false
        index: 43
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Role that the moiety is playing
            choices: [valueCodeableConcept]
            index: 45
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Role that the moiety is playing
            choiceOf: value
            index: 46
      identifier:
        url: null
        short: Identifier by which this moiety substance is known
        isModifier: false
        index: 47
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Identifier by which this moiety substance is known
            choices: [valueIdentifier]
            index: 49
          valueIdentifier:
            base: {path: 'Extension.value[x]'}
            type: Identifier
            short: Identifier by which this moiety substance is known
            choiceOf: value
            index: 50
      name:
        url: null
        short: Textual name for this moiety substance
        isModifier: false
        index: 51
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Textual name for this moiety substance
            choices: [valueString]
            index: 53
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: Textual name for this moiety substance
            choiceOf: value
            index: 54
      stereochemistry:
        url: null
        short: Stereochemistry type
        isModifier: false
        index: 55
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Stereochemistry type
            choices: [valueCodeableConcept]
            index: 57
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Stereochemistry type
            choiceOf: value
            index: 58
      opticalActivity:
        url: null
        short: Optical activity type
        isModifier: false
        index: 59
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Optical activity type
            choices: [valueCodeableConcept]
            index: 61
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Optical activity type
            choiceOf: value
            index: 62
      molecularFormula:
        url: null
        short: Molecular formula for this moiety (e.g. with the Hill system)
        isModifier: false
        index: 63
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Molecular formula for this moiety (e.g. with the Hill system)
            choices: [valueString]
            index: 65
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: Molecular formula for this moiety (e.g. with the Hill system)
            choiceOf: value
            index: 66
      amount[x]:
        url: null
        short: Quantitative value for this moiety
        isModifier: false
        index: 67
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Quantitative value for this moiety
            choices: [valueQuantity, valueString]
            index: 69
          valueQuantity:
            base: {path: 'Extension.value[x]'}
            type: Quantity
            short: Quantitative value for this moiety
            choiceOf: value
            index: 70
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: Quantitative value for this moiety
            choiceOf: value
            index: 71
      measurementType:
        url: null
        short: The measurement type of the quantitative value
        isModifier: false
        index: 72
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The measurement type of the quantitative value
            choices: [valueCodeableConcept]
            index: 74
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The measurement type of the quantitative value
            choiceOf: value
            index: 75
    elements:
      extension:
        array: true
        index: 42
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            role:
              match: {url: null}
              schema:
                short: Role that the moiety is playing
                isModifier: false
                index: 43
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Role that the moiety is playing
                    choices: [valueCodeableConcept]
                    index: 45
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Role that the moiety is playing
                    choiceOf: value
                    index: 46
            identifier:
              match: {url: null}
              schema:
                short: Identifier by which this moiety substance is known
                isModifier: false
                index: 47
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Identifier by which this moiety substance is known
                    choices: [valueIdentifier]
                    index: 49
                  valueIdentifier:
                    base: {path: 'Extension.value[x]'}
                    type: Identifier
                    short: Identifier by which this moiety substance is known
                    choiceOf: value
                    index: 50
            name:
              match: {url: null}
              schema:
                short: Textual name for this moiety substance
                isModifier: false
                index: 51
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Textual name for this moiety substance
                    choices: [valueString]
                    index: 53
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Textual name for this moiety substance
                    choiceOf: value
                    index: 54
            stereochemistry:
              match: {url: null}
              schema:
                short: Stereochemistry type
                isModifier: false
                index: 55
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Stereochemistry type
                    choices: [valueCodeableConcept]
                    index: 57
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Stereochemistry type
                    choiceOf: value
                    index: 58
            opticalActivity:
              match: {url: null}
              schema:
                short: Optical activity type
                isModifier: false
                index: 59
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Optical activity type
                    choices: [valueCodeableConcept]
                    index: 61
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Optical activity type
                    choiceOf: value
                    index: 62
            molecularFormula:
              match: {url: null}
              schema:
                short: Molecular formula for this moiety (e.g. with the Hill system)
                isModifier: false
                index: 63
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Molecular formula for this moiety (e.g. with the Hill system)
                    choices: [valueString]
                    index: 65
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Molecular formula for this moiety (e.g. with the Hill system)
                    choiceOf: value
                    index: 66
            amount[x]:
              match: {url: null}
              schema:
                short: Quantitative value for this moiety
                isModifier: false
                index: 67
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Quantitative value for this moiety
                    choices: [valueQuantity, valueString]
                    index: 69
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: Quantitative value for this moiety
                    choiceOf: value
                    index: 70
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Quantitative value for this moiety
                    choiceOf: value
                    index: 71
            measurementType:
              match: {url: null}
              schema:
                short: The measurement type of the quantitative value
                isModifier: false
                index: 72
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The measurement type of the quantitative value
                    choices: [valueCodeableConcept]
                    index: 74
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The measurement type of the quantitative value
                    choiceOf: value
                    index: 75
  classification:
    url: null
    short: A categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
    isModifier: false
    array: true
    index: 9
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: A categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
        choices: [valueCodeableConcept]
        index: 11
      valueCodeableConcept:
        base: {path: 'Extension.value[x]'}
        type: CodeableConcept
        short: A categorization, high level e.g. polymer or nucleic acid, or food, chemical, biological, or lower e.g. polymer linear or branch chain, or type of impurity
        choiceOf: value
        index: 12
  note:
    url: null
    short: Textual comment about the substance's catalogue or registry record
    isModifier: false
    array: true
    index: 29
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: Textual comment about the substance's catalogue or registry record
        choices: [valueAnnotation]
        index: 31
      valueAnnotation:
        base: {path: 'Extension.value[x]'}
        type: Annotation
        short: Textual comment about the substance's catalogue or registry record
        choiceOf: value
        index: 32
  grade:
    url: null
    short: The quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
    isModifier: false
    array: true
    index: 17
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: The quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
        choices: [valueCodeableConcept]
        index: 19
      valueCodeableConcept:
        base: {path: 'Extension.value[x]'}
        type: CodeableConcept
        short: The quality standard, established benchmark, to which substance complies (e.g. USP/NF, BP)
        choiceOf: value
        index: 20
  structure:
    url: null
    short: Structural information
    isModifier: false
    index: 104
    extensions:
      stereochemistry:
        url: null
        short: Stereochemistry type
        isModifier: false
        index: 106
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Stereochemistry type
            choices: [valueCodeableConcept]
            index: 108
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Stereochemistry type
            choiceOf: value
            index: 109
      opticalActivity:
        url: null
        short: Optical activity type
        isModifier: false
        index: 110
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Optical activity type
            choices: [valueCodeableConcept]
            index: 112
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Optical activity type
            choiceOf: value
            index: 113
      molecularFormula:
        url: null
        short: Molecular formula (e.g. using the Hill system)
        isModifier: false
        index: 114
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Molecular formula (e.g. using the Hill system)
            choices: [valueString]
            index: 116
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: Molecular formula (e.g. using the Hill system)
            choiceOf: value
            index: 117
      molecularFormulaByMoiety:
        url: null
        short: Specified per moiety according to the Hill system
        isModifier: false
        index: 118
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Specified per moiety according to the Hill system
            choices: [valueString]
            index: 120
          valueString:
            base: {path: 'Extension.value[x]'}
            type: string
            short: Specified per moiety according to the Hill system
            choiceOf: value
            index: 121
      molecularWeight:
        url: null
        short: The molecular weight or weight range
        isModifier: false
        index: 122
        extensions:
          _datatype:
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            type: Extension
            short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
            index: 123
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                choices: [valueString]
                type: string
                index: 125
              valueString:
                type: string
                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                base: {path: 'Extension.value[x]'}
                choiceOf: value
                index: 126
            required: [value, valueString]
        elements:
          extension:
            type: Extension
            short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
            url: http://hl7.org/fhir/StructureDefinition/_datatype
            index: 123
            slicing:
              slices:
                _datatype:
                  match: {}
                  schema:
                    type: Extension
                    short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 123
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                        choices: [valueString]
                        type: string
                        index: 125
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 126
                    required: [value, valueString]
      technique:
        url: null
        short: The method used to find the structure e.g. X-ray, NMR
        isModifier: false
        array: true
        index: 127
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The method used to find the structure e.g. X-ray, NMR
            choices: [valueCodeableConcept]
            index: 129
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The method used to find the structure e.g. X-ray, NMR
            choiceOf: value
            index: 130
      sourceDocument:
        url: null
        short: Source of information for the structure
        isModifier: false
        array: true
        index: 131
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Source of information for the structure
            choices: [valueReference]
            index: 133
          valueReference:
            base: {path: 'Extension.value[x]'}
            type: Reference
            short: Source of information for the structure
            choiceOf: value
            refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
            index: 134
      representation:
        url: null
        short: A depiction of the structure or characterization of the substance
        isModifier: false
        array: true
        index: 135
        extensions:
          type:
            url: null
            short: The kind of structural representation (e.g. full, partial)
            isModifier: false
            index: 137
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: The kind of structural representation (e.g. full, partial)
                choices: [valueCodeableConcept]
                index: 139
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: The kind of structural representation (e.g. full, partial)
                choiceOf: value
                index: 140
          representation:
            url: null
            short: The structural representation or characterization as a text string in a standard format
            isModifier: false
            index: 141
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: The structural representation or characterization as a text string in a standard format
                choices: [valueString]
                index: 143
              valueString:
                base: {path: 'Extension.value[x]'}
                type: string
                short: The structural representation or characterization as a text string in a standard format
                choiceOf: value
                index: 144
          format:
            url: null
            short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
            isModifier: false
            index: 145
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                choices: [valueCodeableConcept]
                index: 147
              valueCodeableConcept:
                base: {path: 'Extension.value[x]'}
                type: CodeableConcept
                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                choiceOf: value
                index: 148
          document:
            url: null
            short: An attachment with the structural representation e.g. a structure graphic or AnIML file
            isModifier: false
            index: 149
            elements:
              value:
                base: {path: 'Extension.value[x]'}
                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                choices: [valueReference]
                index: 151
              valueReference:
                base: {path: 'Extension.value[x]'}
                type: Reference
                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                choiceOf: value
                refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                index: 152
        elements:
          extension:
            array: true
            index: 136
            slicing:
              rules: closed
              ordered: false
              discriminator:
              - {path: url, type: value}
              min: 0
              slices:
                type:
                  match: {url: null}
                  schema:
                    short: The kind of structural representation (e.g. full, partial)
                    isModifier: false
                    index: 137
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The kind of structural representation (e.g. full, partial)
                        choices: [valueCodeableConcept]
                        index: 139
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The kind of structural representation (e.g. full, partial)
                        choiceOf: value
                        index: 140
                representation:
                  match: {url: null}
                  schema:
                    short: The structural representation or characterization as a text string in a standard format
                    isModifier: false
                    index: 141
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The structural representation or characterization as a text string in a standard format
                        choices: [valueString]
                        index: 143
                      valueString:
                        base: {path: 'Extension.value[x]'}
                        type: string
                        short: The structural representation or characterization as a text string in a standard format
                        choiceOf: value
                        index: 144
                format:
                  match: {url: null}
                  schema:
                    short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                    isModifier: false
                    index: 145
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                        choices: [valueCodeableConcept]
                        index: 147
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                        choiceOf: value
                        index: 148
                document:
                  match: {url: null}
                  schema:
                    short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                    isModifier: false
                    index: 149
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                        choices: [valueReference]
                        index: 151
                      valueReference:
                        base: {path: 'Extension.value[x]'}
                        type: Reference
                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                        choiceOf: value
                        refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                        index: 152
    elements:
      extension:
        array: true
        index: 105
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            stereochemistry:
              match: {url: null}
              schema:
                short: Stereochemistry type
                isModifier: false
                index: 106
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Stereochemistry type
                    choices: [valueCodeableConcept]
                    index: 108
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Stereochemistry type
                    choiceOf: value
                    index: 109
            opticalActivity:
              match: {url: null}
              schema:
                short: Optical activity type
                isModifier: false
                index: 110
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Optical activity type
                    choices: [valueCodeableConcept]
                    index: 112
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Optical activity type
                    choiceOf: value
                    index: 113
            molecularFormula:
              match: {url: null}
              schema:
                short: Molecular formula (e.g. using the Hill system)
                isModifier: false
                index: 114
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Molecular formula (e.g. using the Hill system)
                    choices: [valueString]
                    index: 116
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Molecular formula (e.g. using the Hill system)
                    choiceOf: value
                    index: 117
            molecularFormulaByMoiety:
              match: {url: null}
              schema:
                short: Specified per moiety according to the Hill system
                isModifier: false
                index: 118
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Specified per moiety according to the Hill system
                    choices: [valueString]
                    index: 120
                  valueString:
                    base: {path: 'Extension.value[x]'}
                    type: string
                    short: Specified per moiety according to the Hill system
                    choiceOf: value
                    index: 121
            molecularWeight:
              match: {url: null}
              schema:
                short: The molecular weight or weight range
                isModifier: false
                index: 122
                extensions:
                  _datatype:
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    type: Extension
                    short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                    index: 123
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                        choices: [valueString]
                        type: string
                        index: 125
                      valueString:
                        type: string
                        pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                        base: {path: 'Extension.value[x]'}
                        choiceOf: value
                        index: 126
                    required: [value, valueString]
                elements:
                  extension:
                    type: Extension
                    short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                    url: http://hl7.org/fhir/StructureDefinition/_datatype
                    index: 123
                    slicing:
                      slices:
                        _datatype:
                          match: {}
                          schema:
                            type: Extension
                            short: Data type name for SubstanceDefinition.structure.molecularWeight from FHIR R4B
                            url: http://hl7.org/fhir/StructureDefinition/_datatype
                            index: 123
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                choices: [valueString]
                                type: string
                                index: 125
                              valueString:
                                type: string
                                pattern: {type: string, value: SubstanceDefinition.molecularWeight}
                                base: {path: 'Extension.value[x]'}
                                choiceOf: value
                                index: 126
                            required: [value, valueString]
            technique:
              match: {url: null}
              schema:
                short: The method used to find the structure e.g. X-ray, NMR
                isModifier: false
                array: true
                index: 127
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The method used to find the structure e.g. X-ray, NMR
                    choices: [valueCodeableConcept]
                    index: 129
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The method used to find the structure e.g. X-ray, NMR
                    choiceOf: value
                    index: 130
            sourceDocument:
              match: {url: null}
              schema:
                short: Source of information for the structure
                isModifier: false
                array: true
                index: 131
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Source of information for the structure
                    choices: [valueReference]
                    index: 133
                  valueReference:
                    base: {path: 'Extension.value[x]'}
                    type: Reference
                    short: Source of information for the structure
                    choiceOf: value
                    refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                    index: 134
            representation:
              match: {url: null}
              schema:
                short: A depiction of the structure or characterization of the substance
                isModifier: false
                array: true
                index: 135
                extensions:
                  type:
                    url: null
                    short: The kind of structural representation (e.g. full, partial)
                    isModifier: false
                    index: 137
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The kind of structural representation (e.g. full, partial)
                        choices: [valueCodeableConcept]
                        index: 139
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: The kind of structural representation (e.g. full, partial)
                        choiceOf: value
                        index: 140
                  representation:
                    url: null
                    short: The structural representation or characterization as a text string in a standard format
                    isModifier: false
                    index: 141
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: The structural representation or characterization as a text string in a standard format
                        choices: [valueString]
                        index: 143
                      valueString:
                        base: {path: 'Extension.value[x]'}
                        type: string
                        short: The structural representation or characterization as a text string in a standard format
                        choiceOf: value
                        index: 144
                  format:
                    url: null
                    short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                    isModifier: false
                    index: 145
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                        choices: [valueCodeableConcept]
                        index: 147
                      valueCodeableConcept:
                        base: {path: 'Extension.value[x]'}
                        type: CodeableConcept
                        short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                        choiceOf: value
                        index: 148
                  document:
                    url: null
                    short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                    isModifier: false
                    index: 149
                    elements:
                      value:
                        base: {path: 'Extension.value[x]'}
                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                        choices: [valueReference]
                        index: 151
                      valueReference:
                        base: {path: 'Extension.value[x]'}
                        type: Reference
                        short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                        choiceOf: value
                        refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                        index: 152
                elements:
                  extension:
                    array: true
                    index: 136
                    slicing:
                      rules: closed
                      ordered: false
                      discriminator:
                      - {path: url, type: value}
                      min: 0
                      slices:
                        type:
                          match: {url: null}
                          schema:
                            short: The kind of structural representation (e.g. full, partial)
                            isModifier: false
                            index: 137
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The kind of structural representation (e.g. full, partial)
                                choices: [valueCodeableConcept]
                                index: 139
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: The kind of structural representation (e.g. full, partial)
                                choiceOf: value
                                index: 140
                        representation:
                          match: {url: null}
                          schema:
                            short: The structural representation or characterization as a text string in a standard format
                            isModifier: false
                            index: 141
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: The structural representation or characterization as a text string in a standard format
                                choices: [valueString]
                                index: 143
                              valueString:
                                base: {path: 'Extension.value[x]'}
                                type: string
                                short: The structural representation or characterization as a text string in a standard format
                                choiceOf: value
                                index: 144
                        format:
                          match: {url: null}
                          schema:
                            short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                            isModifier: false
                            index: 145
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                choices: [valueCodeableConcept]
                                index: 147
                              valueCodeableConcept:
                                base: {path: 'Extension.value[x]'}
                                type: CodeableConcept
                                short: 'The format of the representation e.g. InChI, SMILES, MOLFILE (note: not the physical file format)'
                                choiceOf: value
                                index: 148
                        document:
                          match: {url: null}
                          schema:
                            short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                            isModifier: false
                            index: 149
                            elements:
                              value:
                                base: {path: 'Extension.value[x]'}
                                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                choices: [valueReference]
                                index: 151
                              valueReference:
                                base: {path: 'Extension.value[x]'}
                                type: Reference
                                short: An attachment with the structural representation e.g. a structure graphic or AnIML file
                                choiceOf: value
                                refers: ['http://hl7.org/fhir/StructureDefinition/DocumentReference']
                                index: 152
  status:
    url: null
    short: Status of substance within the catalogue e.g. active, retired
    isModifier: false
    index: 5
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: Status of substance within the catalogue e.g. active, retired
        choices: [valueCodeableConcept]
        index: 7
      valueCodeableConcept:
        base: {path: 'Extension.value[x]'}
        type: CodeableConcept
        short: Status of substance within the catalogue e.g. active, retired
        choiceOf: value
        index: 8
  molecularWeight:
    url: null
    short: The molecular weight or weight range
    isModifier: false
    array: true
    index: 90
    extensions:
      method:
        url: null
        short: The method by which the weight was determined
        isModifier: false
        index: 92
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The method by which the weight was determined
            choices: [valueCodeableConcept]
            index: 94
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The method by which the weight was determined
            choiceOf: value
            index: 95
      type:
        url: null
        short: Type of molecular weight e.g. exact, average, weight average
        isModifier: false
        index: 96
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Type of molecular weight e.g. exact, average, weight average
            choices: [valueCodeableConcept]
            index: 98
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Type of molecular weight e.g. exact, average, weight average
            choiceOf: value
            index: 99
      amount:
        url: null
        short: Used to capture quantitative values for a variety of elements
        isModifier: false
        _required: true
        index: 100
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Used to capture quantitative values for a variety of elements
            choices: [valueQuantity]
            index: 102
          valueQuantity:
            base: {path: 'Extension.value[x]'}
            type: Quantity
            short: Used to capture quantitative values for a variety of elements
            choiceOf: value
            index: 103
    elements:
      extension:
        array: true
        min: 1
        index: 91
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            method:
              match: {url: null}
              schema:
                short: The method by which the weight was determined
                isModifier: false
                index: 92
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The method by which the weight was determined
                    choices: [valueCodeableConcept]
                    index: 94
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The method by which the weight was determined
                    choiceOf: value
                    index: 95
            type:
              match: {url: null}
              schema:
                short: Type of molecular weight e.g. exact, average, weight average
                isModifier: false
                index: 96
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Type of molecular weight e.g. exact, average, weight average
                    choices: [valueCodeableConcept]
                    index: 98
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Type of molecular weight e.g. exact, average, weight average
                    choiceOf: value
                    index: 99
            amount:
              match: {url: null}
              schema:
                short: Used to capture quantitative values for a variety of elements
                isModifier: false
                _required: true
                index: 100
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Used to capture quantitative values for a variety of elements
                    choices: [valueQuantity]
                    index: 102
                  valueQuantity:
                    base: {path: 'Extension.value[x]'}
                    type: Quantity
                    short: Used to capture quantitative values for a variety of elements
                    choiceOf: value
                    index: 103
    required: [extension]
  manufacturer:
    url: null
    short: The entity that creates, makes, produces or fabricates the substance
    isModifier: false
    array: true
    index: 33
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: The entity that creates, makes, produces or fabricates the substance
        choices: [valueReference]
        index: 35
      valueReference:
        base: {path: 'Extension.value[x]'}
        type: Reference
        short: The entity that creates, makes, produces or fabricates the substance
        choiceOf: value
        refers: ['http://hl7.org/fhir/StructureDefinition/Organization']
        index: 36
  domain:
    url: null
    short: If the substance applies to human or veterinary use
    isModifier: false
    index: 13
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: If the substance applies to human or veterinary use
        choices: [valueCodeableConcept]
        index: 15
      valueCodeableConcept:
        base: {path: 'Extension.value[x]'}
        type: CodeableConcept
        short: If the substance applies to human or veterinary use
        choiceOf: value
        index: 16
  version:
    url: null
    short: A business level version identifier of the substance
    isModifier: false
    index: 1
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: A business level version identifier of the substance
        choices: [valueString]
        index: 3
      valueString:
        base: {path: 'Extension.value[x]'}
        type: string
        short: A business level version identifier of the substance
        choiceOf: value
        index: 4
  informationSource:
    url: null
    short: Supporting literature
    isModifier: false
    array: true
    index: 25
    elements:
      value:
        base: {path: 'Extension.value[x]'}
        short: Supporting literature
        choices: [valueReference]
        index: 27
      valueReference:
        base: {path: 'Extension.value[x]'}
        type: Reference
        short: Supporting literature
        choiceOf: value
        refers: ['http://hl7.org/fhir/StructureDefinition/Citation']
        index: 28
  sourceMaterial:
    url: null
    short: Material or taxonomic/anatomical source
    isModifier: false
    index: 244
    extensions:
      type:
        url: null
        short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
        isModifier: false
        index: 246
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
            choices: [valueCodeableConcept]
            index: 248
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
            choiceOf: value
            index: 249
      genus:
        url: null
        short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
        isModifier: false
        index: 250
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
            choices: [valueCodeableConcept]
            index: 252
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
            choiceOf: value
            index: 253
      species:
        url: null
        short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
        isModifier: false
        index: 254
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
            choices: [valueCodeableConcept]
            index: 256
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
            choiceOf: value
            index: 257
      part:
        url: null
        short: An anatomical origin of the source material within an organism
        isModifier: false
        index: 258
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: An anatomical origin of the source material within an organism
            choices: [valueCodeableConcept]
            index: 260
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: An anatomical origin of the source material within an organism
            choiceOf: value
            index: 261
      countryOfOrigin:
        url: null
        short: The country or countries where the material is harvested
        isModifier: false
        array: true
        index: 262
        elements:
          value:
            base: {path: 'Extension.value[x]'}
            short: The country or countries where the material is harvested
            choices: [valueCodeableConcept]
            index: 264
          valueCodeableConcept:
            base: {path: 'Extension.value[x]'}
            type: CodeableConcept
            short: The country or countries where the material is harvested
            choiceOf: value
            index: 265
    elements:
      extension:
        array: true
        index: 245
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            type:
              match: {url: null}
              schema:
                short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                isModifier: false
                index: 246
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                    choices: [valueCodeableConcept]
                    index: 248
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: Classification of the origin of the raw material. e.g. cat hair is an Animal source type
                    choiceOf: value
                    index: 249
            genus:
              match: {url: null}
              schema:
                short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                isModifier: false
                index: 250
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                    choices: [valueCodeableConcept]
                    index: 252
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The genus of an organism e.g. the Latin epithet of the plant/animal scientific name
                    choiceOf: value
                    index: 253
            species:
              match: {url: null}
              schema:
                short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                isModifier: false
                index: 254
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                    choices: [valueCodeableConcept]
                    index: 256
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The species of an organism e.g. the Latin epithet of the species of the plant/animal
                    choiceOf: value
                    index: 257
            part:
              match: {url: null}
              schema:
                short: An anatomical origin of the source material within an organism
                isModifier: false
                index: 258
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: An anatomical origin of the source material within an organism
                    choices: [valueCodeableConcept]
                    index: 260
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: An anatomical origin of the source material within an organism
                    choiceOf: value
                    index: 261
            countryOfOrigin:
              match: {url: null}
              schema:
                short: The country or countries where the material is harvested
                isModifier: false
                array: true
                index: 262
                elements:
                  value:
                    base: {path: 'Extension.value[x]'}
                    short: The country or countries where the material is harvested
                    choices: [valueCodeableConcept]
                    index: 264
                  valueCodeableConcept:
                    base: {path: 'Extension.value[x]'}
                    type: CodeableConcept
                    short: The country or countries where the material is harvested
                    choiceOf: value
                    index: 265
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.3/StructureDefinition/extension-SubstanceDefinition
base: http://hl7.org/fhir/StructureDefinition/Extension
version: 0.0.1-snapshot-1
required: [url]