This
page
is
part
of
the
FHIR
Specification
(v3.0.2:
STU
3).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
Continuous
Integration
Build
of
available
versions,
see
FHIR
(will
be
incorrect/inconsistent
at
times).
See
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
R2
Responsible
Owner:
Pharmacy
Work
Group
|
|
Security Category : Business |
Compartments
:
|
This
resource
is
primarily
used
for
the
identification
and
definition
of
a
medication.
It
covers
medication,
including
ingredients,
for
the
ingredients
purposes
of
prescribing,
dispensing,
and
the
packaging
for
administering
a
medication.
medication
as
well
as
for
making
statements
about
medication
use.
Representing
medications
in
the
majority
of
most
healthcare
settings
is
a
matter
of
identifying
an
item
from
a
list
and
then
conveying
a
reference
for
the
item
selected
either
into
a
patient
related
resource
or
to
other
applications.
selected.
Additional
information
about
the
medication
is
frequently
provided
for
human
verification,
verification
(e.g.,
the
product
name),
but
a
full
representation
of
the
details
of
composition
and
efficacy
of
the
medicine
is
conveyed
by
referring
to
drug
dictionaries
by
means
of
the
codes
they
define.
There
are
some
occasions
where
it
is
necessary
to
identify
slightly
more
detail,
such
as
when
dispensing
a
package
containing
a
particular
medicine
medication
requires
identification
both
of
the
medicine
and
the
package
at
once.
There
are
also
some
occasions
(e.g.
custom
formulations)
where
the
composition
of
a
medicine
must
be
represented.
In
these
cases
cases,
the
ingredients
of
the
medicine
have
to
must
be
specified
together
with
the
amount
contained,
though
the
medication
Medication
resource
does
not
provide
full
details.
The
Medication
resource
allows
for
medications
to
be
characterized
by
the
form
of
the
drug
and
drug,
the
ingredient
(or
ingredients),
as
well
as
and
how
it
is
packaged.
The
medication
will
include
the
ingredient(s)
ingredient(s),
and
their
strength(s)
and
the
package
can
include
the
amount
(for
example,
number
of
tablets,
volume,
etc.)
that
is
contained
in
a
particular
container
(for
example,
100
capsules
of
Amoxicillin
500mg
per
bottle).
The
medication
Medication
resource
can
be
used
to
describe
a
compounded
(aka
extemporaneous
or
magistral)
product
that
is
manufactured
by
the
pharmacy
at
the
time
of
dispensing.
In
this
case
there
will
be
multiple
ingredients
which
are
typically
base
chemicals
(for
example,
hydrocortisone
powder)
and
there
may
be
other
ingredients
that
are
manufactured
products
(for
example,
Glaxal
Base).
If
medication
includes
a
package,
further
details
about
the
composition
The
Medication
resource
can
also
be
provided.
A
package
has
a
container
(vacuum
packed
box,
jar,
etc.)
and
a
list
of
used
to
describe
combination
packaged
products.
In
this
case,
the
ingredients
will
refer
to
the
component
products
either
as
codes
or
other
packages
that
are
in
the
package.
as
references
to
Medication
resource
instances.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
TU | DomainResource |
Definition
of
a
Medication
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* |
|
Business
identifier
for
this
medication
|
|
Σ | 0..1 |
|
Codes
that
identify
this
medication
|
|
?! Σ | 0..1 |
|
active
|
inactive
|
entered-in-error
Binding: Medication Status Codes |
|
Σ | 0..1 | Reference ( Organization ) |
Organization
that
has
authorization
to
market
medication
|
|
0..1 | CodeableConcept |
powder
|
tablets
|
capsule
+
Binding: SNOMED CT Form Codes ( Example ) |
|
|
Σ
|
0..1 | BackboneElement |
When
the
code
does
not
specify
the
package
size,
this
backbone
element
can
be
used
to
specify
the
overall
amount
of
medication
in
the
package
|
|
|
0..1 | SimpleQuantity |
The
|
|
|
0..1 |
|
The
amount
per
each
item
|
|
|
0..* |
|
Components
of
a
medication.
These
can
be
ingredient
|
|
|
1..1 |
|
The
specific
substance
or
medication
that
is
the
ingredient
Binding: SNOMED CT Medication Codes ( Example ) |
|
0..1 |
|
Active
ingredient
indicator
|
|
|
0..1 | CodeableConcept |
A
code
that
defines
the
type
of
ingredient,
active,
base,
etc.
Binding: RoleClassIngredientEntity
|
|
|
|
0..1 |
|
Quantity
of
ingredient
present
Binding: Medication Ingredient Strength Codes ( Preferred ) |
|
|
Ratio |
|
|
|
CodeableConcept | |||
|
|
|||
|
0..1 |
|
Details
about
packaged
medications
|
|
|
0..* |
|
Identifier
for
the
physical
instance,
typically
a
|
|
|
0..1 | string |
Identifier
assigned
to
batch
|
|
|
0..1 | dateTime |
When
|
|
|
|
0..1 |
|
Formal
definition
of
the
medication
|
Documentation
for
this
format
|
||||
See the Extensions for this resource
UML Diagram ( Legend )
XML Template
<<Medication xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
<</code> < < < <</manufacturer> <</form> < <</item[x]> < <</amount><identifier><!-- 0..* Identifier Business identifier for this medication --></identifier> <code><!-- 0..1 CodeableConcept Codes that identify this medication --></code> <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error --> <marketingAuthorizationHolder><!-- 0..1 Reference(Organization) Organization that has authorization to market medication --></marketingAuthorizationHolder> <doseForm><!-- 0..1 CodeableConcept powder | tablets | capsule + --></doseForm> <packageSize> <!-- 0..1 When the code does not specify the package size, this backbone element can be used to specify the overall amount of medication in the package --> <numberOfItems><!-- 0..1 Quantity(SimpleQuantity) The number of items in the package that are represented by the code --></numberOfItems> <amountPerItem><!-- 0..1 Ratio The amount per each item --></amountPerItem> </packageSize> <ingredient> <!-- 0..* Components of a medication. These can be ingredient substances or other medications, in the case of combination packaged medications --> <item><!-- 1..1 CodeableReference(Medication|Substance|SubstanceDefinition) The specific substance or medication that is the ingredient --></item> <isActive value="[boolean]"/><!-- 0..1 Active ingredient indicator --> <role><!-- 0..1 CodeableConcept A code that defines the type of ingredient, active, base, etc.--></role> <strength[x]><!-- 0..1 Ratio|CodeableConcept|Quantity Quantity of ingredient present --></strength[x]> </ingredient>
< <</container> < <</item[x]> <</amount> </content> < < < </batch> </package> <</image><instance> <!-- 0..1 Details about packaged medications --> <identifier><!-- 0..* Identifier Identifier for the physical instance, typically a serial number --></identifier> <lotNumber value="[string]"/><!-- 0..1 Identifier assigned to batch --> <expirationDate value="[dateTime]"/><!-- 0..1 When instance will expire --> </instance> <definition><!-- 0..1 Reference(AdministrableProductDefinition| ManufacturedItemDefinition|MedicinalProductDefinition| PackagedProductDefinition) Formal definition of the medication --></definition> </Medication>
JSON Template
{
"resourceType" : "",
"resourceType" : "Medication",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"
"
"
"
"
"
"
" },
" },
"
"
"identifier" : [{ Identifier }], // Business identifier for this medication
"code" : { CodeableConcept }, // Codes that identify this medication
"status" : "<code>", // active | inactive | entered-in-error
"marketingAuthorizationHolder" : { Reference(Organization) }, // Organization that has authorization to market medication
"doseForm" : { CodeableConcept }, // powder | tablets | capsule +
"packageSize" : { // When the code does not specify the package size, this backbone element can be used to specify the overall amount of medication in the package
"numberOfItems" : { Quantity(SimpleQuantity) }, // The number of items in the package that are represented by the code
"amountPerItem" : { Ratio } // The amount per each item
},
"ingredient" : [{ // Components of a medication. These can be ingredient substances or other medications, in the case of combination packaged medications
"item" : { CodeableReference(Medication|Substance|SubstanceDefinition) }, // R! The specific substance or medication that is the ingredient
"isActive" : <boolean>, // Active ingredient indicator
"role" : { CodeableConcept }, // A code that defines the type of ingredient, active, base, etc.
// strength[x]: Quantity of ingredient present. One of these 3:
"strengthRatio" : { Ratio },
"strengthCodeableConcept" : { CodeableConcept },
"strengthQuantity" : { Quantity }
}],
"
"
"
" },
" },
"
}],
"
"
"
}]
"instance" : { // Details about packaged medications
"identifier" : [{ Identifier }], // Identifier for the physical instance, typically a serial number
"lotNumber" : "<string>", // Identifier assigned to batch
"expirationDate" : "<dateTime>" // When instance will expire
},
"
"definition" : { Reference(AdministrableProductDefinition|
ManufacturedItemDefinition|MedicinalProductDefinition|
PackagedProductDefinition) } // Formal definition of the medication
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .![]()
[ a fhir:;[ a fhir:Medication; fhir:nodeRole fhir:treeRoot; # if this is the parser root# from # from fhir: fhir: fhir: fhir: fhir: fhir: fhir: # . One of these 2 fhir: ] fhir:) ] fhir: fhir: ], ...; fhir: fhir: fhir: # . One of these 2 fhir: ] fhir:) ] fhir: ], ...; fhir: fhir: fhir: ], ...; ]; fhir:# from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Business identifier for this medication fhir:code [ CodeableConcept ] ; # 0..1 Codes that identify this medication fhir:status [ code ] ; # 0..1 active | inactive | entered-in-error fhir:marketingAuthorizationHolder [ Reference(Organization) ] ; # 0..1 Organization that has authorization to market medication fhir:doseForm [ CodeableConcept ] ; # 0..1 powder | tablets | capsule + fhir:packageSize [ # 0..1 When the code does not specify the package size, this backbone element can be used to specify the overall amount of medication in the package fhir:numberOfItems [ Quantity(SimpleQuantity) ] ; # 0..1 The number of items in the package that are represented by the code fhir:amountPerItem [ Ratio ] ; # 0..1 The amount per each item ] ; fhir:ingredient ( [ # 0..* Components of a medication. These can be ingredient substances or other medications, in the case of combination packaged medications fhir:item [ CodeableReference(Medication|Substance|SubstanceDefinition) ] ; # 1..1 The specific substance or medication that is the ingredient fhir:isActive [ boolean ] ; # 0..1 Active ingredient indicator fhir:role [ CodeableConcept ] ; # 0..1 A code that defines the type of ingredient, active, base, etc. # strength[x] : 0..1 Quantity of ingredient present. One of these 3 fhir:strength [ a fhir:Ratio ; Ratio ] fhir:strength [ a fhir:CodeableConcept ; CodeableConcept ] fhir:strength [ a fhir:Quantity ; Quantity ] ] ... ) ; fhir:instance [ # 0..1 Details about packaged medications fhir:identifier ( [ Identifier ] ... ) ; # 0..* Identifier for the physical instance, typically a serial number fhir:lotNumber [ string ] ; # 0..1 Identifier assigned to batch fhir:expirationDate [ dateTime ] ; # 0..1 When instance will expire ] ; fhir:definition [ Reference(AdministrableProductDefinition|ManufacturedItemDefinition| MedicinalProductDefinition|PackagedProductDefinition) ] ; # 0..1 Formal definition of the medication ]
Changes
since
DSTU2
from
both
R4
and
R4B
| Medication | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Medication.definition |
|
|
|
|
| Medication.form |
|
| Medication.amount |
|
| Medication.batch |
|
See the Full Difference for further information
This
analysis
is
available
for
R4
as
XML
or
JSON
.
See
R2
<-->
R3
Conversion
Maps
(status
=
23
tests
that
all
execute
ok.
16
fail
round-trip
testing
and
1
r3
resources
are
invalid
(1
errors).
).
for
R4B
as
XML
or
JSON
.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
TU | DomainResource |
Definition
of
a
Medication
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* |
|
Business
identifier
for
this
medication
|
|
Σ | 0..1 |
|
Codes
that
identify
this
medication
|
|
?! Σ | 0..1 |
|
active
|
inactive
|
entered-in-error
Binding: Medication Status Codes |
|
Σ | 0..1 | Reference ( Organization ) |
Organization
that
has
authorization
to
market
medication
|
|
0..1 | CodeableConcept |
powder
|
tablets
|
capsule
+
Binding: SNOMED CT Form Codes ( Example ) |
|
|
Σ
|
0..1 | BackboneElement |
When
the
code
does
not
specify
the
package
size,
this
backbone
element
can
be
used
to
specify
the
overall
amount
of
medication
in
the
package
|
|
|
0..1 | SimpleQuantity |
The
|
|
|
0..1 |
|
The
amount
per
each
item
|
|
|
0..* |
|
Components
of
a
medication.
These
can
be
ingredient
|
|
|
1..1 |
|
The
specific
substance
or
medication
that
is
the
ingredient
Binding: SNOMED CT Medication Codes ( Example ) |
|
0..1 |
|
Active
ingredient
indicator
|
|
|
0..1 | CodeableConcept |
A
code
that
defines
the
type
of
ingredient,
active,
base,
etc.
Binding: RoleClassIngredientEntity
|
|
|
|
0..1 |
|
Quantity
of
ingredient
present
Binding: Medication Ingredient Strength Codes ( Preferred ) |
|
|
Ratio |
|
|
|
CodeableConcept | |||
|
|
|||
|
0..1 |
|
Details
about
packaged
medications
|
|
|
0..* |
|
Identifier
for
the
physical
instance,
typically
a
|
|
|
0..1 | string |
Identifier
assigned
to
batch
|
|
|
0..1 | dateTime |
When
|
|
|
|
0..1 |
|
Formal
definition
of
the
medication
|
Documentation
for
this
format
|
||||
See the Extensions for this resource
XML Template
<<Medication xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
<</code> < < < <</manufacturer> <</form> < <</item[x]> < <</amount><identifier><!-- 0..* Identifier Business identifier for this medication --></identifier> <code><!-- 0..1 CodeableConcept Codes that identify this medication --></code> <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error --> <marketingAuthorizationHolder><!-- 0..1 Reference(Organization) Organization that has authorization to market medication --></marketingAuthorizationHolder> <doseForm><!-- 0..1 CodeableConcept powder | tablets | capsule + --></doseForm> <packageSize> <!-- 0..1 When the code does not specify the package size, this backbone element can be used to specify the overall amount of medication in the package --> <numberOfItems><!-- 0..1 Quantity(SimpleQuantity) The number of items in the package that are represented by the code --></numberOfItems> <amountPerItem><!-- 0..1 Ratio The amount per each item --></amountPerItem> </packageSize> <ingredient> <!-- 0..* Components of a medication. These can be ingredient substances or other medications, in the case of combination packaged medications --> <item><!-- 1..1 CodeableReference(Medication|Substance|SubstanceDefinition) The specific substance or medication that is the ingredient --></item> <isActive value="[boolean]"/><!-- 0..1 Active ingredient indicator --> <role><!-- 0..1 CodeableConcept A code that defines the type of ingredient, active, base, etc.--></role> <strength[x]><!-- 0..1 Ratio|CodeableConcept|Quantity Quantity of ingredient present --></strength[x]> </ingredient>
< <</container> < <</item[x]> <</amount> </content> < < < </batch> </package> <</image><instance> <!-- 0..1 Details about packaged medications --> <identifier><!-- 0..* Identifier Identifier for the physical instance, typically a serial number --></identifier> <lotNumber value="[string]"/><!-- 0..1 Identifier assigned to batch --> <expirationDate value="[dateTime]"/><!-- 0..1 When instance will expire --> </instance> <definition><!-- 0..1 Reference(AdministrableProductDefinition| ManufacturedItemDefinition|MedicinalProductDefinition| PackagedProductDefinition) Formal definition of the medication --></definition> </Medication>
JSON Template
{
"resourceType" : "",
"resourceType" : "Medication",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"
"
"
"
"
"
"
" },
" },
"
"
"identifier" : [{ Identifier }], // Business identifier for this medication
"code" : { CodeableConcept }, // Codes that identify this medication
"status" : "<code>", // active | inactive | entered-in-error
"marketingAuthorizationHolder" : { Reference(Organization) }, // Organization that has authorization to market medication
"doseForm" : { CodeableConcept }, // powder | tablets | capsule +
"packageSize" : { // When the code does not specify the package size, this backbone element can be used to specify the overall amount of medication in the package
"numberOfItems" : { Quantity(SimpleQuantity) }, // The number of items in the package that are represented by the code
"amountPerItem" : { Ratio } // The amount per each item
},
"ingredient" : [{ // Components of a medication. These can be ingredient substances or other medications, in the case of combination packaged medications
"item" : { CodeableReference(Medication|Substance|SubstanceDefinition) }, // R! The specific substance or medication that is the ingredient
"isActive" : <boolean>, // Active ingredient indicator
"role" : { CodeableConcept }, // A code that defines the type of ingredient, active, base, etc.
// strength[x]: Quantity of ingredient present. One of these 3:
"strengthRatio" : { Ratio },
"strengthCodeableConcept" : { CodeableConcept },
"strengthQuantity" : { Quantity }
}],
"
"
"
" },
" },
"
}],
"
"
"
}]
"instance" : { // Details about packaged medications
"identifier" : [{ Identifier }], // Identifier for the physical instance, typically a serial number
"lotNumber" : "<string>", // Identifier assigned to batch
"expirationDate" : "<dateTime>" // When instance will expire
},
"
"definition" : { Reference(AdministrableProductDefinition|
ManufacturedItemDefinition|MedicinalProductDefinition|
PackagedProductDefinition) } // Formal definition of the medication
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .![]()
[ a fhir:;[ a fhir:Medication; fhir:nodeRole fhir:treeRoot; # if this is the parser root# from # from fhir: fhir: fhir: fhir: fhir: fhir: fhir: # . One of these 2 fhir: ] fhir:) ] fhir: fhir: ], ...; fhir: fhir: fhir: # . One of these 2 fhir: ] fhir:) ] fhir: ], ...; fhir: fhir: fhir: ], ...; ]; fhir:# from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Business identifier for this medication fhir:code [ CodeableConcept ] ; # 0..1 Codes that identify this medication fhir:status [ code ] ; # 0..1 active | inactive | entered-in-error fhir:marketingAuthorizationHolder [ Reference(Organization) ] ; # 0..1 Organization that has authorization to market medication fhir:doseForm [ CodeableConcept ] ; # 0..1 powder | tablets | capsule + fhir:packageSize [ # 0..1 When the code does not specify the package size, this backbone element can be used to specify the overall amount of medication in the package fhir:numberOfItems [ Quantity(SimpleQuantity) ] ; # 0..1 The number of items in the package that are represented by the code fhir:amountPerItem [ Ratio ] ; # 0..1 The amount per each item ] ; fhir:ingredient ( [ # 0..* Components of a medication. These can be ingredient substances or other medications, in the case of combination packaged medications fhir:item [ CodeableReference(Medication|Substance|SubstanceDefinition) ] ; # 1..1 The specific substance or medication that is the ingredient fhir:isActive [ boolean ] ; # 0..1 Active ingredient indicator fhir:role [ CodeableConcept ] ; # 0..1 A code that defines the type of ingredient, active, base, etc. # strength[x] : 0..1 Quantity of ingredient present. One of these 3 fhir:strength [ a fhir:Ratio ; Ratio ] fhir:strength [ a fhir:CodeableConcept ; CodeableConcept ] fhir:strength [ a fhir:Quantity ; Quantity ] ] ... ) ; fhir:instance [ # 0..1 Details about packaged medications fhir:identifier ( [ Identifier ] ... ) ; # 0..* Identifier for the physical instance, typically a serial number fhir:lotNumber [ string ] ; # 0..1 Identifier assigned to batch fhir:expirationDate [ dateTime ] ; # 0..1 When instance will expire ] ; fhir:definition [ Reference(AdministrableProductDefinition|ManufacturedItemDefinition| MedicinalProductDefinition|PackagedProductDefinition) ] ; # 0..1 Formal definition of the medication ]
Changes
since
DSTU2
from
both
R4
and
R4B
| Medication | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Medication.definition |
|
|
|
|
| Medication.form |
|
| Medication.amount |
|
| Medication.batch |
|
See the Full Difference for further information
This
analysis
is
available
for
R4
as
XML
or
JSON
.
See
R2
<-->
R3
Conversion
Maps
(status
=
23
tests
that
all
execute
ok.
16
fail
round-trip
testing
and
1
r3
resources
are
invalid
(1
errors).
).
for
R4B
as
XML
or
JSON
.
Alternate
Additional
definitions:
Master
Definition
(
XML
,
+
JSON
),
,
XML
Schema
/
Schematron
(for
)
+
JSON
Schema
,
ShEx
(for
Turtle
)
+
see
the
extensions
,
the
spreadsheet
version
&
the
dependency
analysis
| Path |
|
Type |
|
|---|---|---|---|
| Medication.code |
|
Example |
This
value
set
includes
all
drug
or
medicament
substance
codes
and
all
pharmaceutical/biologic
products
from
SNOMED
CT
|
| Medication.status |
|
Required |
Medication Status Codes |
|
|
SNOMEDCTFormCodes | Example |
This
value
set
includes
all
dose
form
|
| Medication.ingredient.item | SNOMEDCTMedicationCodes | Example |
This
value
set
includes
all
drug
or
medicament
substance
codes
and
all
pharmaceutical/biologic
products
from
SNOMED
CT
|
| Medication.ingredient.role |
![]() |
Example |
Relates a component (player) to a mixture (scoper). E.g., Glucose and Water are ingredients of D5W, latex may be an ingredient in a tracheal tube. |
| Medication.ingredient.strength[x] |
|
Preferred | Medication Ingredient Strength Codes |
| UniqueKey | Level | Location | Description | Expression |
med-1
| Rule | Medication.packageSize | Either numberOfItems or amountPerItem must exist | numberOfItems.exists() or amountPerItem.exists() |
Search parameters for this resource. See also the full list of search parameters for this resource , and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
| Name | Type | Description | Expression | In Common |
| code | token |
|
Medication.code |
|
|
expiration-date
|
|
|
|
|
| form | token |
|
|
|
|
identifier
|
|
|
|
59 Resources |
|
|
|
|
|
|
|
ingredient-code
|
|
|
|
|
|
|
token |
|
|
|
|
|
reference |
|
( |
|
|
|
token |
|
|
|
| status | token |
|
Medication.status |