PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.xver@r4.r5-0.0.1-snapshot-2
    http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceAmount
description: This cross-version extension represents SubstanceAmount from http://hl7.org/fhir/StructureDefinition/SubstanceAmount|4.0.1 for use in FHIR R5.
package_name: hl7.fhir.uv.xver
derivation: constraint
name: Ext_R4_SubstanceAmount
type: Extension
elements:
  extension:
    base: {max: '*', min: 0, path: Extension.extension}
    array: true
    index: 0
    slicing:
      rules: closed
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 0
      slices:
        amount[x]:
          match: {url: 'amount[x]'}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
            index: 1
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: 'amount[x]'}
                index: 2
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
                choices: [valueQuantity, valueRange, valueString]
                index: 4
              valueQuantity:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Quantity
                short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
                choiceOf: value
                index: 5
              valueRange:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Range
                short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
                choiceOf: value
                index: 6
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
                choiceOf: value
                index: 7
            required: [url]
        amountType:
          match: {url: amountType}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: 'Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements'
            index: 8
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: amountType}
                index: 9
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: 'Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements'
                choices: [valueCodeableConcept]
                index: 11
              valueCodeableConcept:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: CodeableConcept
                short: 'Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements'
                choiceOf: value
                index: 12
            required: [url]
        amountText:
          match: {url: amountText}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: A textual comment on a numeric value
            index: 13
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: amountText}
                index: 14
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: A textual comment on a numeric value
                choices: [valueString]
                index: 16
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: A textual comment on a numeric value
                choiceOf: value
                index: 17
            required: [url]
        referenceRange:
          match: {url: referenceRange}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Reference range of possible or expected values
            index: 18
            extensions:
              lowLimit:
                url: lowLimit
                base: {max: '*', min: 0, path: Extension.extension}
                short: Lower limit possible or expected
                index: 20
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: lowLimit}
                    index: 21
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Lower limit possible or expected
                    choices: [valueQuantity]
                    index: 23
                  valueQuantity:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Quantity
                    short: Lower limit possible or expected
                    choiceOf: value
                    index: 24
                required: [url]
              highLimit:
                url: highLimit
                base: {max: '*', min: 0, path: Extension.extension}
                short: Upper limit possible or expected
                index: 25
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: highLimit}
                    index: 26
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Upper limit possible or expected
                    choices: [valueQuantity]
                    index: 28
                  valueQuantity:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Quantity
                    short: Upper limit possible or expected
                    choiceOf: value
                    index: 29
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                index: 19
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 0
                  slices:
                    lowLimit:
                      match: {url: lowLimit}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Lower limit possible or expected
                        index: 20
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: lowLimit}
                            index: 21
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Lower limit possible or expected
                            choices: [valueQuantity]
                            index: 23
                          valueQuantity:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Quantity
                            short: Lower limit possible or expected
                            choiceOf: value
                            index: 24
                        required: [url]
                    highLimit:
                      match: {url: highLimit}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Upper limit possible or expected
                        index: 25
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: highLimit}
                            index: 26
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Upper limit possible or expected
                            choices: [valueQuantity]
                            index: 28
                          valueQuantity:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Quantity
                            short: Upper limit possible or expected
                            choiceOf: value
                            index: 29
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: referenceRange}
                index: 30
            required: [url]
  url:
    base: {max: '1', min: 1, path: Extension.url}
    pattern: {type: Uri, value: 'http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceAmount'}
    index: 31
package_version: r4.r5-0.0.1-snapshot-2
extensions:
  amount[x]:
    url: amount[x]
    base: {max: '*', min: 0, path: Extension.extension}
    short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
    index: 1
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: 'amount[x]'}
        index: 2
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
        choices: [valueQuantity, valueRange, valueString]
        index: 4
      valueQuantity:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: Quantity
        short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
        choiceOf: value
        index: 5
      valueRange:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: Range
        short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
        choiceOf: value
        index: 6
      valueString:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: string
        short: Used to capture quantitative values for a variety of elements. If only limits are given, the arithmetic mean would be the average. If only a single definite value for a given element is given, it would be captured in this field
        choiceOf: value
        index: 7
    required: [url]
  amountType:
    url: amountType
    base: {max: '*', min: 0, path: Extension.extension}
    short: 'Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements'
    index: 8
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: amountType}
        index: 9
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: 'Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements'
        choices: [valueCodeableConcept]
        index: 11
      valueCodeableConcept:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: CodeableConcept
        short: 'Most elements that require a quantitative value will also have a field called amount type. Amount type should always be specified because the actual value of the amount is often dependent on it. EXAMPLE: In capturing the actual relative amounts of substances or molecular fragments it is essential to indicate whether the amount refers to a mole ratio or weight ratio. For any given element an effort should be made to use same the amount type for all related definitional elements'
        choiceOf: value
        index: 12
    required: [url]
  amountText:
    url: amountText
    base: {max: '*', min: 0, path: Extension.extension}
    short: A textual comment on a numeric value
    index: 13
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: amountText}
        index: 14
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: A textual comment on a numeric value
        choices: [valueString]
        index: 16
      valueString:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: string
        short: A textual comment on a numeric value
        choiceOf: value
        index: 17
    required: [url]
  referenceRange:
    url: referenceRange
    base: {max: '*', min: 0, path: Extension.extension}
    short: Reference range of possible or expected values
    index: 18
    extensions:
      lowLimit:
        url: lowLimit
        base: {max: '*', min: 0, path: Extension.extension}
        short: Lower limit possible or expected
        index: 20
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: lowLimit}
            index: 21
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Lower limit possible or expected
            choices: [valueQuantity]
            index: 23
          valueQuantity:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: Quantity
            short: Lower limit possible or expected
            choiceOf: value
            index: 24
        required: [url]
      highLimit:
        url: highLimit
        base: {max: '*', min: 0, path: Extension.extension}
        short: Upper limit possible or expected
        index: 25
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: highLimit}
            index: 26
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Upper limit possible or expected
            choices: [valueQuantity]
            index: 28
          valueQuantity:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: Quantity
            short: Upper limit possible or expected
            choiceOf: value
            index: 29
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        index: 19
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 0
          slices:
            lowLimit:
              match: {url: lowLimit}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Lower limit possible or expected
                index: 20
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: lowLimit}
                    index: 21
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Lower limit possible or expected
                    choices: [valueQuantity]
                    index: 23
                  valueQuantity:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Quantity
                    short: Lower limit possible or expected
                    choiceOf: value
                    index: 24
                required: [url]
            highLimit:
              match: {url: highLimit}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Upper limit possible or expected
                index: 25
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: highLimit}
                    index: 26
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Upper limit possible or expected
                    choices: [valueQuantity]
                    index: 28
                  valueQuantity:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Quantity
                    short: Upper limit possible or expected
                    choiceOf: value
                    index: 29
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: referenceRange}
        index: 30
    required: [url]
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.0/StructureDefinition/extension-SubstanceAmount
base: http://hl7.org/fhir/StructureDefinition/Extension|5.0.0
version: 0.0.1-snapshot-2
required: [url]