IHE Pharmacy Medication Overview
1.0.0-preview - Preview International flag

This page is part of the IHE Pharmacy Medication Overview (v1.0.0-preview: QA Preview) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: Medicinal product

Official URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/IHEMedication Version: 1.0.0-preview
Active as of 2026-06-26 Computable Name: IHEMedication

Copyright/Legal: IHE http://www.ihe.net/Governance/#Intellectual_Property

Medication for clinical use cases. This could be a branded product or a generic concept, also allowing describing pack size and components of complex products.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:productName 0..* (Complex) Name of the medicinal product. Names of different types (full name, short name, etc) and in different languages can be provided if relevant.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-productname
.... extension:classification 0..* CodeableConcept Classifications of the product, e.g ATC, narcotic/psychotropic, orphan drug, etc
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-classification
.... extension:sizeOfItem 0..1 Quantity Size of one item (for example, in a pack of 5 vials, this would represent the size of 1 vial)
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-sizeofitem
.... extension:device 0..1 (Complex) Device, typically an administration device, included in the product.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-device
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... code SΣ 0..1 CodeableConcept A terminology-based code for the product
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.
... form S 0..1 CodeableConcept Dose form. For a branded product, this would most likely be authorised dose form, but it could also be administrable dose form. For package items, it could be item's individual dose form.
Binding: SNOMEDCTFormCodes (example): A coded concept defining the form of a medication.
... amount SΣ 0..1 Ratio Total volume or number of package items inside a package. This element should not contain overall prescribed amount, but describe the product itself. In case of complex packages, this element could be left empty, and number of different items could be indicated in the nested Medications.
... ingredient S 0..* BackboneElement Ingredient or a part product. For combination packs, each ingredient can be a separate manufactured item with its own ingredients, dose form, and strength
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... item[x] S 1..1 Substance (Substance resource or concept from terminology) or a medicinal product (Medication resource or concept from terminology). Medicinal product can be an ingredient in case of extemporal medications or combination packs (e.g Creme + 6 tablets)
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medicinal product)
.... isActive S 0..1 boolean Active ingredient indicator
.... strength S 0..1 Ratio Quantity of ingredient present

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Medication.code Base example SNOMED CT Medication Codes 📍4.0.1 FHIR Std.
Medication.status Base required Medication status codes 📍4.0.1 FHIR Std.
Medication.form Base example SNOMED CT Form Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Medication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Medication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Medication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Medication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Medication A resource should have narrative for robust management text.`div`.exists()
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()

This structure is derived from Medication

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:productName 0..* (Complex) Name of the medicinal product. Names of different types (full name, short name, etc) and in different languages can be provided if relevant.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-productname
.... extension:classification 0..* CodeableConcept Classifications of the product, e.g ATC, narcotic/psychotropic, orphan drug, etc
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-classification
.... extension:sizeOfItem 0..1 Quantity Size of one item (for example, in a pack of 5 vials, this would represent the size of 1 vial)
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-sizeofitem
.... extension:device 0..1 (Complex) Device, typically an administration device, included in the product.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-device
... identifier S 0..* Identifier Identifier for the medicinal product, its generic representation, or packaged product.
... code S 0..1 CodeableConcept A terminology-based code for the product
... amount S 0..1 Ratio Total volume or number of package items inside a package. This element should not contain overall prescribed amount, but describe the product itself. In case of complex packages, this element could be left empty, and number of different items could be indicated in the nested Medications.
... ingredient S 0..* BackboneElement Ingredient or a part product. For combination packs, each ingredient can be a separate manufactured item with its own ingredients, dose form, and strength
.... item[x] S 1..1 Substance (Substance resource or concept from terminology) or a medicinal product (Medication resource or concept from terminology). Medicinal product can be an ingredient in case of extemporal medications or combination packs (e.g Creme + 6 tablets)
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medicinal product)
.... isActive S 0..1 boolean Active ingredient indicator
.... strength S 0..1 Ratio Quantity of ingredient present

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:productName 0..* (Complex) Name of the medicinal product. Names of different types (full name, short name, etc) and in different languages can be provided if relevant.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-productname
.... extension:classification 0..* CodeableConcept Classifications of the product, e.g ATC, narcotic/psychotropic, orphan drug, etc
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-classification
.... extension:sizeOfItem 0..1 Quantity Size of one item (for example, in a pack of 5 vials, this would represent the size of 1 vial)
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-sizeofitem
.... extension:device 0..1 (Complex) Device, typically an administration device, included in the product.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-device
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Identifier for the medicinal product, its generic representation, or packaged product.
... code SΣ 0..1 CodeableConcept A terminology-based code for the product
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.
... manufacturer Σ 0..1 Reference(Organization) Manufacturer of the item
... form S 0..1 CodeableConcept Dose form. For a branded product, this would most likely be authorised dose form, but it could also be administrable dose form. For package items, it could be item's individual dose form.
Binding: SNOMEDCTFormCodes (example): A coded concept defining the form of a medication.
... amount SΣ 0..1 Ratio Total volume or number of package items inside a package. This element should not contain overall prescribed amount, but describe the product itself. In case of complex packages, this element could be left empty, and number of different items could be indicated in the nested Medications.
... ingredient S 0..* BackboneElement Ingredient or a part product. For combination packs, each ingredient can be a separate manufactured item with its own ingredients, dose form, and strength
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... item[x] S 1..1 Substance (Substance resource or concept from terminology) or a medicinal product (Medication resource or concept from terminology). Medicinal product can be an ingredient in case of extemporal medications or combination packs (e.g Creme + 6 tablets)
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medicinal product)
.... isActive S 0..1 boolean Active ingredient indicator
.... strength S 0..1 Ratio Quantity of ingredient present
... batch 0..1 BackboneElement Details about packaged medications
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... lotNumber 0..1 string Identifier assigned to batch
.... expirationDate 0..1 dateTime When batch will expire

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Medication.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Medication.code Base example SNOMED CT Medication Codes 📍4.0.1 FHIR Std.
Medication.status Base required Medication status codes 📍4.0.1 FHIR Std.
Medication.form Base example SNOMED CT Form Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Medication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Medication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Medication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Medication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Medication A resource should have narrative for robust management text.`div`.exists()
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()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:productName 0..* (Complex) Name of the medicinal product. Names of different types (full name, short name, etc) and in different languages can be provided if relevant.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-productname
.... extension:classification 0..* CodeableConcept Classifications of the product, e.g ATC, narcotic/psychotropic, orphan drug, etc
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-classification
.... extension:sizeOfItem 0..1 Quantity Size of one item (for example, in a pack of 5 vials, this would represent the size of 1 vial)
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-sizeofitem
.... extension:device 0..1 (Complex) Device, typically an administration device, included in the product.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-device
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... code SΣ 0..1 CodeableConcept A terminology-based code for the product
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.
... form S 0..1 CodeableConcept Dose form. For a branded product, this would most likely be authorised dose form, but it could also be administrable dose form. For package items, it could be item's individual dose form.
Binding: SNOMEDCTFormCodes (example): A coded concept defining the form of a medication.
... amount SΣ 0..1 Ratio Total volume or number of package items inside a package. This element should not contain overall prescribed amount, but describe the product itself. In case of complex packages, this element could be left empty, and number of different items could be indicated in the nested Medications.
... ingredient S 0..* BackboneElement Ingredient or a part product. For combination packs, each ingredient can be a separate manufactured item with its own ingredients, dose form, and strength
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... item[x] S 1..1 Substance (Substance resource or concept from terminology) or a medicinal product (Medication resource or concept from terminology). Medicinal product can be an ingredient in case of extemporal medications or combination packs (e.g Creme + 6 tablets)
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medicinal product)
.... isActive S 0..1 boolean Active ingredient indicator
.... strength S 0..1 Ratio Quantity of ingredient present

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Medication.code Base example SNOMED CT Medication Codes 📍4.0.1 FHIR Std.
Medication.status Base required Medication status codes 📍4.0.1 FHIR Std.
Medication.form Base example SNOMED CT Form Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Medication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Medication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Medication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Medication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Medication A resource should have narrative for robust management text.`div`.exists()
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()

Differential View

This structure is derived from Medication

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:productName 0..* (Complex) Name of the medicinal product. Names of different types (full name, short name, etc) and in different languages can be provided if relevant.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-productname
.... extension:classification 0..* CodeableConcept Classifications of the product, e.g ATC, narcotic/psychotropic, orphan drug, etc
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-classification
.... extension:sizeOfItem 0..1 Quantity Size of one item (for example, in a pack of 5 vials, this would represent the size of 1 vial)
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-sizeofitem
.... extension:device 0..1 (Complex) Device, typically an administration device, included in the product.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-device
... identifier S 0..* Identifier Identifier for the medicinal product, its generic representation, or packaged product.
... code S 0..1 CodeableConcept A terminology-based code for the product
... amount S 0..1 Ratio Total volume or number of package items inside a package. This element should not contain overall prescribed amount, but describe the product itself. In case of complex packages, this element could be left empty, and number of different items could be indicated in the nested Medications.
... ingredient S 0..* BackboneElement Ingredient or a part product. For combination packs, each ingredient can be a separate manufactured item with its own ingredients, dose form, and strength
.... item[x] S 1..1 Substance (Substance resource or concept from terminology) or a medicinal product (Medication resource or concept from terminology). Medicinal product can be an ingredient in case of extemporal medications or combination packs (e.g Creme + 6 tablets)
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medicinal product)
.... isActive S 0..1 boolean Active ingredient indicator
.... strength S 0..1 Ratio Quantity of ingredient present

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Medication 0..* Medication Definition of a Medication
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:productName 0..* (Complex) Name of the medicinal product. Names of different types (full name, short name, etc) and in different languages can be provided if relevant.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-productname
.... extension:classification 0..* CodeableConcept Classifications of the product, e.g ATC, narcotic/psychotropic, orphan drug, etc
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-classification
.... extension:sizeOfItem 0..1 Quantity Size of one item (for example, in a pack of 5 vials, this would represent the size of 1 vial)
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-sizeofitem
.... extension:device 0..1 (Complex) Device, typically an administration device, included in the product.
URL: https://profiles.ihe.net/PHARM/MEOW/StructureDefinition/ihe-ext-medication-device
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier SΣ 0..* Identifier Identifier for the medicinal product, its generic representation, or packaged product.
... code SΣ 0..1 CodeableConcept A terminology-based code for the product
Binding: SNOMEDCTMedicationCodes (example): A coded concept that defines the type of a medication.
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: Medication Status Codes (required): A coded concept defining if the medication is in active use.
... manufacturer Σ 0..1 Reference(Organization) Manufacturer of the item
... form S 0..1 CodeableConcept Dose form. For a branded product, this would most likely be authorised dose form, but it could also be administrable dose form. For package items, it could be item's individual dose form.
Binding: SNOMEDCTFormCodes (example): A coded concept defining the form of a medication.
... amount SΣ 0..1 Ratio Total volume or number of package items inside a package. This element should not contain overall prescribed amount, but describe the product itself. In case of complex packages, this element could be left empty, and number of different items could be indicated in the nested Medications.
... ingredient S 0..* BackboneElement Ingredient or a part product. For combination packs, each ingredient can be a separate manufactured item with its own ingredients, dose form, and strength
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... item[x] S 1..1 Substance (Substance resource or concept from terminology) or a medicinal product (Medication resource or concept from terminology). Medicinal product can be an ingredient in case of extemporal medications or combination packs (e.g Creme + 6 tablets)
..... itemCodeableConcept CodeableConcept
..... itemReference Reference(Substance | Medicinal product)
.... isActive S 0..1 boolean Active ingredient indicator
.... strength S 0..1 Ratio Quantity of ingredient present
... batch 0..1 BackboneElement Details about packaged medications
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... lotNumber 0..1 string Identifier assigned to batch
.... expirationDate 0..1 dateTime When batch will expire

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Medication.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Medication.code Base example SNOMED CT Medication Codes 📍4.0.1 FHIR Std.
Medication.status Base required Medication status codes 📍4.0.1 FHIR Std.
Medication.form Base example SNOMED CT Form Codes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error Medication If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Medication If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Medication If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Medication If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Medication A resource should have narrative for robust management text.`div`.exists()
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()

 

Other representations of profile: CSV, Excel, Schematron