This
page
is
part
of
the
FHIR
Specification
(v4.0.1:
R4
(v5.0.0:
R5
-
Mixed
Normative
and
STU
)
).
This
is
the
current
published
version
in
it's
permanent
home
(it
will
always
be
available
at
this
URL).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
R2
Work
Group
|
Maturity Level : 2 | Trial Use | Security Category : Business |
Compartments
:
|
A homogeneous material with a definite composition.
This
is
a
base
resource
allows
that
represents
raw
materials
used
to
represent
a
packaged
or
measured
amount
of
a
known
substance
(e.g.
bottle,
jar,
packet,
drum)
that
is
not
in
a
consumable
form
nor
associated
directly
with
a
patient.
For
example,
the
materials
used
for
a
material
to
be
represented.
medication
that
are
not
yet
in
an
administrable
form.
The
resource
can
be
used
to
represent
either
a
kind
of
a
substance
-
e.g.
a
formulation
commonly
used
for
treating
patients,
patients
(a
"definitional"
use
of
Substance),
or
it
can
be
used
to
describe
a
particular
package
of
a
known
substance
(e.g.
bottle,
jar,
packet).
(an
"instance"
use
of
Substance).
The composition of the material can be specified in terms of a mix of other materials, including with precise amounts if required.
A Substance may be identifiable as precise as the specific container it is stored in, while more commonly it would be based on a combination of lot number, quantity, and package type.
A
medication
is
a
substance
that
is
packaged
and
used
as
an
administered
medication.
The
medication
resource
uses
the
substance
resource
to
represent
the
actual
ingredients
of
a
medication.
This
resource
can
represent
an
instance
of
a
substance
or
a
definition
(type,
kind)
of
one.
See
also
the
SubstanceDefinition
resource,
which
is
referenced
by
purely
definitional.
A SubstanceDefinition describes the common characteristics of the substance, including those needed for regulatory agencies.
A NutritionProduct distinguishes from a Substance in that a nutrition product is primary consumable purpose is for its nutritional effect.
A BiologicallyDerivedProduct distinguishes from a Substance in that a BiologicallyDerivedProduct has its origins in a biological entity and needs to carry the source’s characteristics to enable matching and compatibility with the biological target to which it will be transfused or implanted, as well as traceability to the source.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
TU | DomainResource |
A
homogeneous
material
with
a
definite
composition
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* | Identifier |
Unique
identifier
|
|
?! Σ |
|
|
|
|
?! Σ |
|
|
|
|
Σ |
|
CodeableConcept |
What
class/type
of
substance
this
is
Binding: Substance |
|
Σ |
|
|
Binding: Substance Code ( Example ) |
|
Σ |
|
|
|
|
Σ | 0..1 |
|
When
no
longer
valid
to
use
|
|
Σ | 0..1 | SimpleQuantity |
Amount
of
substance
in
the
package
|
|
Σ | 0..* | BackboneElement |
Composition
information
about
the
substance
|
|
Σ | 0..1 | Ratio |
Optional
amount
(concentration)
|
|
Σ | 1..1 |
A
component
of
the
substance
Binding: Substance Code ( Example ) |
|
|
CodeableConcept | |||
|
Reference ( Substance ) | |||
Documentation
for
this
format
|
||||
See the Extensions for this resource
UML Diagram ( Legend )
XML Template
<Substance xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
<</identifier><identifier><!-- 0..* Identifier Unique identifier --></identifier> <instance value="[boolean]"/><!-- 1..1 Is this an instance of a substance or a kind of one --> <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error --> <category><!-- 0..* CodeableConcept What class/type of substance this is --></category><</code> < < <</identifier> < <</quantity> </instance><code><!-- 1..1 CodeableReference(SubstanceDefinition) What substance this is --></code> <description value="[markdown]"/><!-- 0..1 Textual description of the substance, comments --> <expiry value="[dateTime]"/><!-- 0..1 When no longer valid to use --> <quantity><!-- 0..1 Quantity(SimpleQuantity) Amount of substance in the package --></quantity> <ingredient> <!-- 0..* Composition information about the substance --> <quantity><!-- 0..1 Ratio Optional amount (concentration) --></quantity> <substance[x]><!-- 1..1 CodeableConcept|Reference(Substance) A component of the substance --></substance[x]> </ingredient> </Substance>
JSON Template
{
"resourceType" : "Substance",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"
"identifier" : [{ Identifier }], // Unique identifier
"instance" : <boolean>, // R! Is this an instance of a substance or a kind of one
"status" : "<code>", // active | inactive | entered-in-error
"category" : [{ CodeableConcept }], // What class/type of substance this is
"
"
"
"
"
"
}],
"code" : { CodeableReference(SubstanceDefinition) }, // R! What substance this is
"description" : "<markdown>", // Textual description of the substance, comments
"expiry" : "<dateTime>", // When no longer valid to use
"quantity" : { Quantity(SimpleQuantity) }, // Amount of substance in the package
"ingredient" : [{ // Composition information about the substance
"quantity" : { Ratio }, // Optional amount (concentration)
// substance[x]: A component of the substance. One of these 2:
" }
"substanceCodeableConcept" : { CodeableConcept },
"substanceReference" : { Reference(Substance) }
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Substance; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension
fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ], ...; fhir: fhir: # . One of these 2 fhir: ] fhir:) ] ], ...;fhir:identifier ( [ Identifier ] ... ) ; # 0..* Unique identifier fhir:instance [ boolean ] ; # 1..1 Is this an instance of a substance or a kind of one fhir:status [ code ] ; # 0..1 active | inactive | entered-in-error fhir:category ( [ CodeableConcept ] ... ) ; # 0..* What class/type of substance this is fhir:code [ CodeableReference(SubstanceDefinition) ] ; # 1..1 What substance this is fhir:description [ markdown ] ; # 0..1 Textual description of the substance, comments fhir:expiry [ dateTime ] ; # 0..1 When no longer valid to use fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 Amount of substance in the package fhir:ingredient ( [ # 0..* Composition information about the substance fhir:quantity [ Ratio ] ; # 0..1 Optional amount (concentration) # substance[x] : 1..1 A component of the substance. One of these 2 fhir:substance [ a fhir:CodeableConcept ; CodeableConcept ] fhir:substance [ a fhir:Reference ; Reference(Substance) ] ] ... ) ; ]
Changes
since
R3
from
both
R4
and
R4B
| Substance | |
|
|
|
|
|
|
| Substance.description |
|
| Substance.expiry |
|
| Substance.quantity |
|
| Substance.instance.identifier |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .
See
R3
<-->
R4
<-->
R5
Conversion
Maps
(status
=
6
tests
that
all
execute
ok.
All
tests
pass
round-trip
testing
and
1
r3
resources
are
invalid
(0
errors).
)
See
Conversions
Summary
.)
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
TU | DomainResource |
A
homogeneous
material
with
a
definite
composition
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
|
|
Σ | 0..* | Identifier |
Unique
identifier
|
|
?! Σ |
|
|
|
|
?! Σ |
|
|
|
|
Σ |
|
CodeableConcept |
What
class/type
of
substance
this
is
Binding: Substance |
|
Σ |
|
|
Binding: Substance Code ( Example ) |
|
Σ |
|
|
|
|
Σ | 0..1 |
|
When
no
longer
valid
to
use
|
|
Σ | 0..1 | SimpleQuantity |
Amount
of
substance
in
the
package
|
|
Σ | 0..* | BackboneElement |
Composition
information
about
the
substance
|
|
Σ | 0..1 | Ratio |
Optional
amount
(concentration)
|
|
Σ | 1..1 |
A
component
of
the
substance
Binding: Substance Code ( Example ) |
|
|
CodeableConcept | |||
|
Reference ( Substance ) | |||
Documentation
for
this
format
|
||||
See the Extensions for this resource
XML Template
<Substance xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
<</identifier><identifier><!-- 0..* Identifier Unique identifier --></identifier> <instance value="[boolean]"/><!-- 1..1 Is this an instance of a substance or a kind of one --> <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error --> <category><!-- 0..* CodeableConcept What class/type of substance this is --></category><</code> < < <</identifier> < <</quantity> </instance><code><!-- 1..1 CodeableReference(SubstanceDefinition) What substance this is --></code> <description value="[markdown]"/><!-- 0..1 Textual description of the substance, comments --> <expiry value="[dateTime]"/><!-- 0..1 When no longer valid to use --> <quantity><!-- 0..1 Quantity(SimpleQuantity) Amount of substance in the package --></quantity> <ingredient> <!-- 0..* Composition information about the substance --> <quantity><!-- 0..1 Ratio Optional amount (concentration) --></quantity> <substance[x]><!-- 1..1 CodeableConcept|Reference(Substance) A component of the substance --></substance[x]> </ingredient> </Substance>
JSON Template
{
"resourceType" : "Substance",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"
"identifier" : [{ Identifier }], // Unique identifier
"instance" : <boolean>, // R! Is this an instance of a substance or a kind of one
"status" : "<code>", // active | inactive | entered-in-error
"category" : [{ CodeableConcept }], // What class/type of substance this is
"
"
"
"
"
"
}],
"code" : { CodeableReference(SubstanceDefinition) }, // R! What substance this is
"description" : "<markdown>", // Textual description of the substance, comments
"expiry" : "<dateTime>", // When no longer valid to use
"quantity" : { Quantity(SimpleQuantity) }, // Amount of substance in the package
"ingredient" : [{ // Composition information about the substance
"quantity" : { Ratio }, // Optional amount (concentration)
// substance[x]: A component of the substance. One of these 2:
" }
"substanceCodeableConcept" : { CodeableConcept },
"substanceReference" : { Reference(Substance) }
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Substance; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension
fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ], ...; fhir: fhir: # . One of these 2 fhir: ] fhir:) ] ], ...;fhir:identifier ( [ Identifier ] ... ) ; # 0..* Unique identifier fhir:instance [ boolean ] ; # 1..1 Is this an instance of a substance or a kind of one fhir:status [ code ] ; # 0..1 active | inactive | entered-in-error fhir:category ( [ CodeableConcept ] ... ) ; # 0..* What class/type of substance this is fhir:code [ CodeableReference(SubstanceDefinition) ] ; # 1..1 What substance this is fhir:description [ markdown ] ; # 0..1 Textual description of the substance, comments fhir:expiry [ dateTime ] ; # 0..1 When no longer valid to use fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 Amount of substance in the package fhir:ingredient ( [ # 0..* Composition information about the substance fhir:quantity [ Ratio ] ; # 0..1 Optional amount (concentration) # substance[x] : 1..1 A component of the substance. One of these 2 fhir:substance [ a fhir:CodeableConcept ; CodeableConcept ] fhir:substance [ a fhir:Reference ; Reference(Substance) ] ] ... ) ; ]
Changes
since
Release
3
from
both
R4
and
R4B
| Substance | |
|
|
|
|
|
|
| Substance.description |
|
| Substance.expiry |
|
| Substance.quantity |
|
| Substance.instance.identifier |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .
See
R3
<-->
R4
<-->
R5
Conversion
Maps
(status
=
6
tests
that
all
execute
ok.
All
tests
pass
round-trip
testing
and
1
r3
resources
are
invalid
(0
errors).
)
See
Conversions
Summary
.)
See
the
Profiles
&
Extensions
and
the
alternate
Additional
definitions:
Master
Definition
XML
+
JSON
,
XML
Schema
/
Schematron
+
JSON
Schema
,
ShEx
(for
Turtle
)
+
see
the
extensions
,
the
spreadsheet
version
&
the
dependency
analysis
| Path |
|
Type |
|
|---|---|---|---|
| Substance.status |
|
Required |
A code to indicate if the substance is actively used. |
| Substance.category |
|
Extensible |
Substance category codes |
| Substance.code |
|
Example |
This
value
set
contains
concept
codes
for
specific
substances.
It
includes
codes
from
SNOMED
|
| Substance.ingredient.substance[x] |
|
Example |
This
value
set
contains
concept
codes
for
specific
substances.
It
includes
codes
from
SNOMED
|
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 |
| category | token | The category of the substance | Substance.category | |
| code | token | The code of the substance or ingredient |
|
|
|
|
|
|
|
|
| expiry | date | Expiry date of package or container of substance |
|
|
| identifier | token | Unique identifier for the substance | Substance.identifier | |
| quantity | quantity | Amount of substance in the package |
|
|
| status | token | active | inactive | entered-in-error | Substance.status | |
| substance-reference | reference | A component of the substance |
( Substance ) |