FHIR Extensions Pack
5.4.0 - May 2026 International flag

FHIR Extensions Pack, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 5.4.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-extensions/ and changes regularly. See the Directory of published versions

Extension: Medication Characteristic

Official URL: http://hl7.org/fhir/StructureDefinition/medication-characteristic Version: 5.4.0
Standards status: Trial-use Maturity Level: 1 Responsible: HL7 International / Pharmacy Computable Name: MedicationCharacteristic
Other Identifiers: OID:2.16.840.1.113883.4.642.40.97.42.36

Provides additional characteristics of a medication, such as physical properties, storage requirements, or other distinguishing attributes. This extension mirrors the pattern of characteristic backbone elements found in other definitional resources, allowing a Medication resource to carry typed key-value pairs that describe observable or defining haracteristics of the medication.

Context of Use

This extension may be used on the following element(s)

Usage info

Usages:

  • This Extension is not used by any profiles in this Specification

You can also check for usages in the FHIR IG Statistics

Changes since version 5.3.0:

  • No changes
  • Formal Views of Extension Content

    Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

    This structure is derived from Extension

    Summary

    Complex Extension: Provides additional characteristics of a medication, such as physical properties, storage requirements, or other distinguishing attributes. This extension mirrors the pattern of characteristic backbone elements found in other definitional resources, allowing a Medication resource to carry typed key-value pairs that describe observable or defining haracteristics of the medication.

    • type: CodeableConcept: Identifies which observable or defining characteristic of the medication is being described (for example colour, shape, size, imprint, coating, storage temperature). The characteristic itself is named here; the actual value is carried in the value component of the extension.
    • value: boolean, dateTime, decimal, integer, string, CodeableConcept, Quantity, Ratio: The value corresponding to the characteristic named in type. The chosen datatype should match the characteristic — e.g., CodeableConcept for colour or shape, Quantity for storage temperature or size, string for free-text imprint, Ratio for concentration-like characteristics, or boolean for yes/no characteristics.

    Maturity: 1

    This structure is derived from Extension

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Extension 0..* Extension A named observable or defining characteristic of the medication
    Extension.extension 2..* Extension Extension
    Extension.Slices for extension Content/Rules for all slices
    Extension.Slices for extension.extension:type 1..1 Extension The characteristic (e.g., colour, shape, storage temperature)
    Extension.Slices for extension.extension:type.extension 0..0 Extension
    Extension.Slices for extension.extension:type.url 1..1 uri "type"
    Extension.Slices for extension.extension:type.value[x] 0..1 CodeableConcept Value of extension
    Binding: MedicationCharacteristicTypeVS (example)
    Extension.Slices for extension.extension:value 1..1 Extension The value of the characteristic
    Extension.Slices for extension.extension:value.extension 0..0 Extension
    Extension.Slices for extension.extension:value.url 1..1 uri "value"
    Extension.Slices for extension.extension:value.value[x] 0..1 Value of extension
    Extension.Slices for extension.extension:value.value[x].valueBoolean boolean
    Extension.Slices for extension.extension:value.value[x].valueDateTime dateTime
    Extension.Slices for extension.extension:value.value[x].valueDecimal decimal
    Extension.Slices for extension.extension:value.value[x].valueInteger integer
    Extension.Slices for extension.extension:value.value[x].valueString string
    Extension.Slices for extension.extension:value.value[x].valueCodeableConcept CodeableConcept
    Extension.Slices for extension.extension:value.value[x].valueQuantity Quantity
    Extension.Slices for extension.extension:value.value[x].valueRatio Ratio
    Extension.url 1..1 uri "http://hl7.org/fhir/StructureDefinition/medication-characteristic"

    doco Documentation for this format
    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Extension 0..* Extension A named observable or defining characteristic of the medication
    Extension.id 0..1 id Unique id for inter-element referencing
    Extension.Slices for extension 2..* Extension Extension
    Slice: Unordered, Open by value:url

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Extension.Slices for extension.extension:type 1..1 Extension The characteristic (e.g., colour, shape, storage temperature)
    Extension.Slices for extension.extension:type.id 0..1 id Unique id for inter-element referencing
    Extension.Slices for extension.extension:type.extension 0..0 Extension
    Slice: Unordered, Open by value:url

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Extension.Slices for extension.extension:type.url 1..1 uri "type"
    Extension.Slices for extension.extension:type.value[x] 0..1 CodeableConcept Value of extension
    Binding: MedicationCharacteristicTypeVS (example)
    Extension.Slices for extension.extension:value 1..1 Extension The value of the characteristic
    Extension.Slices for extension.extension:value.id 0..1 id Unique id for inter-element referencing
    Extension.Slices for extension.extension:value.extension 0..0 Extension
    Slice: Unordered, Open by value:url

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Extension.Slices for extension.extension:value.url 1..1 uri "value"
    Extension.Slices for extension.extension:value.value[x] 0..1 Value of extension
    Extension.Slices for extension.extension:value.value[x].valueBoolean boolean
    Extension.Slices for extension.extension:value.value[x].valueDateTime dateTime
    Extension.Slices for extension.extension:value.value[x].valueDecimal decimal
    Extension.Slices for extension.extension:value.value[x].valueInteger integer
    Extension.Slices for extension.extension:value.value[x].valueString string
    Extension.Slices for extension.extension:value.value[x].valueCodeableConcept CodeableConcept
    Extension.Slices for extension.extension:value.value[x].valueQuantity Quantity
    Extension.Slices for extension.extension:value.value[x].valueRatio Ratio
    Extension.url 1..1 uri "http://hl7.org/fhir/StructureDefinition/medication-characteristic"

    doco Documentation for this format

    This structure is derived from Extension

    Summary

    Complex Extension: Provides additional characteristics of a medication, such as physical properties, storage requirements, or other distinguishing attributes. This extension mirrors the pattern of characteristic backbone elements found in other definitional resources, allowing a Medication resource to carry typed key-value pairs that describe observable or defining haracteristics of the medication.

    • type: CodeableConcept: Identifies which observable or defining characteristic of the medication is being described (for example colour, shape, size, imprint, coating, storage temperature). The characteristic itself is named here; the actual value is carried in the value component of the extension.
    • value: boolean, dateTime, decimal, integer, string, CodeableConcept, Quantity, Ratio: The value corresponding to the characteristic named in type. The chosen datatype should match the characteristic — e.g., CodeableConcept for colour or shape, Quantity for storage temperature or size, string for free-text imprint, Ratio for concentration-like characteristics, or boolean for yes/no characteristics.

    Maturity: 1

    Differential View

    This structure is derived from Extension

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Extension 0..* Extension A named observable or defining characteristic of the medication
    Extension.extension 2..* Extension Extension
    Extension.Slices for extension Content/Rules for all slices
    Extension.Slices for extension.extension:type 1..1 Extension The characteristic (e.g., colour, shape, storage temperature)
    Extension.Slices for extension.extension:type.extension 0..0 Extension
    Extension.Slices for extension.extension:type.url 1..1 uri "type"
    Extension.Slices for extension.extension:type.value[x] 0..1 CodeableConcept Value of extension
    Binding: MedicationCharacteristicTypeVS (example)
    Extension.Slices for extension.extension:value 1..1 Extension The value of the characteristic
    Extension.Slices for extension.extension:value.extension 0..0 Extension
    Extension.Slices for extension.extension:value.url 1..1 uri "value"
    Extension.Slices for extension.extension:value.value[x] 0..1 Value of extension
    Extension.Slices for extension.extension:value.value[x].valueBoolean boolean
    Extension.Slices for extension.extension:value.value[x].valueDateTime dateTime
    Extension.Slices for extension.extension:value.value[x].valueDecimal decimal
    Extension.Slices for extension.extension:value.value[x].valueInteger integer
    Extension.Slices for extension.extension:value.value[x].valueString string
    Extension.Slices for extension.extension:value.value[x].valueCodeableConcept CodeableConcept
    Extension.Slices for extension.extension:value.value[x].valueQuantity Quantity
    Extension.Slices for extension.extension:value.value[x].valueRatio Ratio
    Extension.url 1..1 uri "http://hl7.org/fhir/StructureDefinition/medication-characteristic"
    Extension.value[x] 0..0 Value of extension

    doco Documentation for this format

    Snapshot View

    NameFlagsCard.TypeDescription & Constraints    Filter: doco
    Extension 0..* Extension A named observable or defining characteristic of the medication
    Extension.id 0..1 id Unique id for inter-element referencing
    Extension.Slices for extension 2..* Extension Extension
    Slice: Unordered, Open by value:url

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Extension.Slices for extension.extension:type 1..1 Extension The characteristic (e.g., colour, shape, storage temperature)
    Extension.Slices for extension.extension:type.id 0..1 id Unique id for inter-element referencing
    Extension.Slices for extension.extension:type.extension 0..0 Extension
    Slice: Unordered, Open by value:url

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Extension.Slices for extension.extension:type.url 1..1 uri "type"
    Extension.Slices for extension.extension:type.value[x] 0..1 CodeableConcept Value of extension
    Binding: MedicationCharacteristicTypeVS (example)
    Extension.Slices for extension.extension:value 1..1 Extension The value of the characteristic
    Extension.Slices for extension.extension:value.id 0..1 id Unique id for inter-element referencing
    Extension.Slices for extension.extension:value.extension 0..0 Extension
    Slice: Unordered, Open by value:url

    Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
    Extension.Slices for extension.extension:value.url 1..1 uri "value"
    Extension.Slices for extension.extension:value.value[x] 0..1 Value of extension
    Extension.Slices for extension.extension:value.value[x].valueBoolean boolean
    Extension.Slices for extension.extension:value.value[x].valueDateTime dateTime
    Extension.Slices for extension.extension:value.value[x].valueDecimal decimal
    Extension.Slices for extension.extension:value.value[x].valueInteger integer
    Extension.Slices for extension.extension:value.value[x].valueString string
    Extension.Slices for extension.extension:value.value[x].valueCodeableConcept CodeableConcept
    Extension.Slices for extension.extension:value.value[x].valueQuantity Quantity
    Extension.Slices for extension.extension:value.value[x].valueRatio Ratio
    Extension.url 1..1 uri "http://hl7.org/fhir/StructureDefinition/medication-characteristic"

    doco Documentation for this format

     

    Other representations of profile: CSV, Excel, Schematron

    Terminology Bindings

    Path Status Usage ValueSet Version Source
    Extension.extension:type.​value[x] Base example Medication Characteristic Type VS 📦5.4.0 This IG

    Constraints

    Id Grade Path(s) Description Expression
    ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
    ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

    R4B

    The extension is unchanged in R4B

    R4

    The extension is unchanged in R4

    R3

    The extension is unchanged in R3

    Search Parameters for this Extension

    (none found)