This
page
is
part
of
the
FHIR
Specification
(v1.8.0:
STU
3
Draft).
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
Orders
and
Observations
Work
Group
|
Maturity Level : 1 | Compartments : Device |
This resource identifies an instance or a type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device. Medical devices includes durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Non-medical devices may include items such as a machine, cellphone, computer, application, etc.
This resource an administrative resource that tracks individual device types or instances of a device and their location. It is referenced by other resource for recording which device performed an action such as a procedure or an observation. It is also referenced when prescribing and dispensing devices for patient use or for ordering supplies. It is used to record and transmit Unique Device Identifer (UDI) information about a device such as a patient's implant.
These are the device related resources
In FHIR, the "Device" is the "administrative" resource for the device (it does not change much and has manufacturer information etc.), whereas the DeviceComponent and DeviceMetric (which is really a kind of DeviceComponent) model the physical part, including operation status and is much more volatile. The physical composition of a Device is done by the DeviceComponents pointing to their "parent" component using DeviceComponent.parent , e.g. channel to VMD and VMD to the MDS. All components point to the "logical" Device they belong to, using DeviceComponent.source . Similarly, if for example you want to express which logical device your observation came from, you can just use Device, but if you need to be more specific observation can point to DeviceMetric which in turn points to the "logical" Device it belongs to, using DeviceMetric.source .
Devices differ from medications because they are not "used up" - they remain active in a patient in an ongoing fashion. However, the specific boundary between medications and devices is defined at the implementation level and this standard does not enforce a boundary with the exception of devices that are implanted in a patient. The Medication resource should not be used to represent implanted devices.
This resource is referenced by Account , Appointment , AppointmentResponse , AuditEvent , Claim , Communication , CommunicationRequest , Composition , Consent , Contract , DetectedIssue , DeviceComponent , DeviceMetric , DeviceUseRequest , DeviceUseStatement , DiagnosticReport , DiagnosticRequest , DocumentManifest , DocumentReference , ExplanationOfBenefit , Flag , Group , GuidanceResponse , ImagingManifest , List , Media , MedicationAdministration , MedicationRequest , MessageHeader , Observation , Procedure , ProcedureRequest , Provenance , QuestionnaireResponse , RequestGroup , RiskAssessment , Schedule , Sequence , Specimen , SupplyDelivery , SupplyRequest and Task
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
DomainResource | Item used in healthcare | ||
|
0..* | Identifier | Instance identifier | |
|
0..1 | Identifier | Unique Device Identifier (UDI) Barcode string | |
|
?! Σ | 0..1 | code |
available
|
not-available
|
entered-in-error
DeviceStatus ( Required ) |
|
0..1 | CodeableConcept |
What
kind
of
device
this
is
Device Types ( Example ) |
|
|
0..1 | string | Lot number of manufacture | |
|
0..1 | string | Name of device manufacturer | |
|
0..1 | dateTime | Date when the device was made | |
|
0..1 | dateTime | Date and time of expiry of this device (if applicable) | |
|
0..1 | string | Model id assigned by the manufacturer | |
|
0..1 | string | Version number (i.e. software) | |
|
0..1 | Reference ( Patient ) | Patient to whom Device is affixed | |
|
0..1 | Reference ( Organization ) | Organization responsible for device | |
|
0..* | ContactPoint | Details for human/organization for support | |
|
0..1 | Reference ( Location ) | Where the resource is found | |
|
0..1 | uri | Network address to contact device | |
|
0..* | Annotation | Device notes and comments | |
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
<Device xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Instance identifier --></identifier> <udiCarrier><!-- 0..1 Identifier Unique Device Identifier (UDI) Barcode string --></udiCarrier> <status value="[code]"/><!-- 0..1 available | not-available | entered-in-error --> <type><!-- 0..1 CodeableConcept What kind of device this is --></type> <lotNumber value="[string]"/><!-- 0..1 Lot number of manufacture --> <manufacturer value="[string]"/><!-- 0..1 Name of device manufacturer --> <manufactureDate value="[dateTime]"/><!-- 0..1 Date when the device was made --> <expirationDate value="[dateTime]"/><!-- 0..1 Date and time of expiry of this device (if applicable) --> <model value="[string]"/><!-- 0..1 Model id assigned by the manufacturer --> <version value="[string]"/><!-- 0..1 Version number (i.e. software) --> <patient><!-- 0..1 Reference(Patient) Patient to whom Device is affixed --></patient> <owner><!-- 0..1 Reference(Organization) Organization responsible for device --></owner> <contact><!-- 0..* ContactPoint Details for human/organization for support --></contact> <location><!-- 0..1 Reference(Location) Where the resource is found --></location> <url value="[uri]"/><!-- 0..1 Network address to contact device --> <note><!-- 0..* Annotation Device notes and comments --></note> </Device>
JSON Template
{
"resourceType" : "Device",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"identifier" : [{ Identifier }], // Instance identifier
"udiCarrier" : { Identifier }, // Unique Device Identifier (UDI) Barcode string
"status" : "<code>", // available | not-available | entered-in-error
"type" : { CodeableConcept }, // What kind of device this is
"lotNumber" : "<string>", // Lot number of manufacture
"manufacturer" : "<string>", // Name of device manufacturer
"manufactureDate" : "<dateTime>", // Date when the device was made
"expirationDate" : "<dateTime>", // Date and time of expiry of this device (if applicable)
"model" : "<string>", // Model id assigned by the manufacturer
"version" : "<string>", // Version number (i.e. software)
"patient" : { Reference(Patient) }, // Patient to whom Device is affixed
"owner" : { Reference(Organization) }, // Organization responsible for device
"contact" : [{ ContactPoint }], // Details for human/organization for support
"location" : { Reference(Location) }, // Where the resource is found
"url" : "<uri>", // Network address to contact device
"note" : [{ Annotation }] // Device notes and comments
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Device; 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:Device.identifier [ Identifier ], ... ; # 0..* Instance identifier fhir:Device.udiCarrier [ Identifier ]; # 0..1 Unique Device Identifier (UDI) Barcode string fhir:Device.status [ code ]; # 0..1 available | not-available | entered-in-error fhir:Device.type [ CodeableConcept ]; # 0..1 What kind of device this is fhir:Device.lotNumber [ string ]; # 0..1 Lot number of manufacture fhir:Device.manufacturer [ string ]; # 0..1 Name of device manufacturer fhir:Device.manufactureDate [ dateTime ]; # 0..1 Date when the device was made fhir:Device.expirationDate [ dateTime ]; # 0..1 Date and time of expiry of this device (if applicable) fhir:Device.model [ string ]; # 0..1 Model id assigned by the manufacturer fhir:Device.version [ string ]; # 0..1 Version number (i.e. software) fhir:Device.patient [ Reference(Patient) ]; # 0..1 Patient to whom Device is affixed fhir:Device.owner [ Reference(Organization) ]; # 0..1 Organization responsible for device fhir:Device.contact [ ContactPoint ], ... ; # 0..* Details for human/organization for support fhir:Device.location [ Reference(Location) ]; # 0..1 Where the resource is found fhir:Device.url [ uri ]; # 0..1 Network address to contact device fhir:Device.note [ Annotation ], ... ; # 0..* Device notes and comments ]
Changes since DSTU2
| Device | |
| Device.udiCarrier |
Renamed
from
udi
to
udiCarrier
Type changed from string to Identifier |
| Device.type | Min Cardinality changed from 1 to 0 |
| Device.expirationDate | Renamed from expiry to expirationDate |
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
DomainResource | Item used in healthcare | ||
|
0..* | Identifier | Instance identifier | |
|
0..1 | Identifier | Unique Device Identifier (UDI) Barcode string | |
|
?! Σ | 0..1 | code |
available
|
not-available
|
entered-in-error
DeviceStatus ( Required ) |
|
0..1 | CodeableConcept |
What
kind
of
device
this
is
Device Types ( Example ) |
|
|
0..1 | string | Lot number of manufacture | |
|
0..1 | string | Name of device manufacturer | |
|
0..1 | dateTime | Date when the device was made | |
|
0..1 | dateTime | Date and time of expiry of this device (if applicable) | |
|
0..1 | string | Model id assigned by the manufacturer | |
|
0..1 | string | Version number (i.e. software) | |
|
0..1 | Reference ( Patient ) | Patient to whom Device is affixed | |
|
0..1 | Reference ( Organization ) | Organization responsible for device | |
|
0..* | ContactPoint | Details for human/organization for support | |
|
0..1 | Reference ( Location ) | Where the resource is found | |
|
0..1 | uri | Network address to contact device | |
|
0..* | Annotation | Device notes and comments | |
Documentation
for
this
format
|
||||
XML Template
<Device xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Instance identifier --></identifier> <udiCarrier><!-- 0..1 Identifier Unique Device Identifier (UDI) Barcode string --></udiCarrier> <status value="[code]"/><!-- 0..1 available | not-available | entered-in-error --> <type><!-- 0..1 CodeableConcept What kind of device this is --></type> <lotNumber value="[string]"/><!-- 0..1 Lot number of manufacture --> <manufacturer value="[string]"/><!-- 0..1 Name of device manufacturer --> <manufactureDate value="[dateTime]"/><!-- 0..1 Date when the device was made --> <expirationDate value="[dateTime]"/><!-- 0..1 Date and time of expiry of this device (if applicable) --> <model value="[string]"/><!-- 0..1 Model id assigned by the manufacturer --> <version value="[string]"/><!-- 0..1 Version number (i.e. software) --> <patient><!-- 0..1 Reference(Patient) Patient to whom Device is affixed --></patient> <owner><!-- 0..1 Reference(Organization) Organization responsible for device --></owner> <contact><!-- 0..* ContactPoint Details for human/organization for support --></contact> <location><!-- 0..1 Reference(Location) Where the resource is found --></location> <url value="[uri]"/><!-- 0..1 Network address to contact device --> <note><!-- 0..* Annotation Device notes and comments --></note> </Device>
JSON Template
{
"resourceType" : "Device",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"identifier" : [{ Identifier }], // Instance identifier
"udiCarrier" : { Identifier }, // Unique Device Identifier (UDI) Barcode string
"status" : "<code>", // available | not-available | entered-in-error
"type" : { CodeableConcept }, // What kind of device this is
"lotNumber" : "<string>", // Lot number of manufacture
"manufacturer" : "<string>", // Name of device manufacturer
"manufactureDate" : "<dateTime>", // Date when the device was made
"expirationDate" : "<dateTime>", // Date and time of expiry of this device (if applicable)
"model" : "<string>", // Model id assigned by the manufacturer
"version" : "<string>", // Version number (i.e. software)
"patient" : { Reference(Patient) }, // Patient to whom Device is affixed
"owner" : { Reference(Organization) }, // Organization responsible for device
"contact" : [{ ContactPoint }], // Details for human/organization for support
"location" : { Reference(Location) }, // Where the resource is found
"url" : "<uri>", // Network address to contact device
"note" : [{ Annotation }] // Device notes and comments
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:Device; 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:Device.identifier [ Identifier ], ... ; # 0..* Instance identifier fhir:Device.udiCarrier [ Identifier ]; # 0..1 Unique Device Identifier (UDI) Barcode string fhir:Device.status [ code ]; # 0..1 available | not-available | entered-in-error fhir:Device.type [ CodeableConcept ]; # 0..1 What kind of device this is fhir:Device.lotNumber [ string ]; # 0..1 Lot number of manufacture fhir:Device.manufacturer [ string ]; # 0..1 Name of device manufacturer fhir:Device.manufactureDate [ dateTime ]; # 0..1 Date when the device was made fhir:Device.expirationDate [ dateTime ]; # 0..1 Date and time of expiry of this device (if applicable) fhir:Device.model [ string ]; # 0..1 Model id assigned by the manufacturer fhir:Device.version [ string ]; # 0..1 Version number (i.e. software) fhir:Device.patient [ Reference(Patient) ]; # 0..1 Patient to whom Device is affixed fhir:Device.owner [ Reference(Organization) ]; # 0..1 Organization responsible for device fhir:Device.contact [ ContactPoint ], ... ; # 0..* Details for human/organization for support fhir:Device.location [ Reference(Location) ]; # 0..1 Where the resource is found fhir:Device.url [ uri ]; # 0..1 Network address to contact device fhir:Device.note [ Annotation ], ... ; # 0..* Device notes and comments ]
Changes since DSTU2
| Device | |
| Device.udiCarrier |
Renamed
from
udi
to
udiCarrier
Type changed from string to Identifier |
| Device.type | Min Cardinality changed from 1 to 0 |
| Device.expirationDate | Renamed from expiry to expirationDate |
See the Full Difference for further information
Alternate definitions: Master Definition ( XML , JSON ), XML Schema / Schematron (for ) + JSON Schema , ShEx (for Turtle ), JSON-LD (for RDF as JSON-LD ),
| Path | Definition | Type | Reference |
|---|---|---|---|
| Device.status | The availability status of the device. | Required | DeviceStatus |
| Device.type | Codes to identify medical devices | Example | Device Types |
The example binding used for the device element is from SNOMED CT. However, there are many other sources of possible codes for device type including:
Note that there may be translations of type code using one or more of these and other vocabularies
Nearly all devices are assigned one or more identifiers, which are usually printed or affixed to the device using either barcodes or RFIDs. The identifiers can come from the manufacturer (often called the "serial number," "reference number," or "catalog number"), various institution and registries. Any of these identifiers assigned to the device can and should be recorded in the device resource. The different identifiers are differentiated by their use, label, and system values.
The
International
Medical
Device
Regulators
Forum
IMDRF
UDI
Working
Group
published
UDI
System
for
Medical
Devices
(Version
2.0)
,
the
base
specification
for
Unique
Device
Identifiers
(UDI).
The
United
States
Food
and
Drug
Administration
has
produced
an
implementation
guide
for
Unique
Device
Identifiers
(UDI)
which
implements
the
IMDRF
specification
and
other
jurisdictions
may
produce
similar
IMDRF
implementation
guides
as
well.
The
full
UDI
string
that
represents
the
barcode
as
printed
on
the
packaging
of
the
device
or
Automatic
Identification
and
Data
Capture
(AIDC)
representation
is
called
the
"UDI
carrier".
The
UDI
has
2
components*:
*non-UDI
elements
may
also
appear
within
the
UDI
carrier.
**a
"GTIN"
(sometimes
also
called
an
EAN
number)
is
a
code
developed
by
GS1
for
the
kind
of
device
not
an
identifier
for
the
device.
A
GTIN
may
appear
on
its
own
or
it
may
appear
in
a
UDI
string
as
the
DI
component.
The
DI
of
the
UDI
may
be
stored
in
a
jurisdictional
repository
and
used
as
the
primary
key
to
access
other
device
information.
For
example,
in
the
United
States,
the
DI
of
the
UDI
is
submitted
in
a
device
record
to
the
Global
Unique
Device
Identification
Database
(GUDID)
.
the
The
UDI
may
identify
an
instance
of
a
device
uniquely
(when
the
PI
includes
a
serial
number),
or
it
may
just
identify
the
type
of
the
device.
The
UDI
is
parsed
into
its
constituent
parts
(DI,
PI
and
other
elements)
by
parsing
rules
developed
by
each
Issuing
Agency
standard.
Where
the
device
has
an
assigned
UDI,
the
other
details
carried
in
the
resource
(e.g.,
lot,
expiriation
date,
etc.)
SHALL
be
consistent
with
the
information
encoded
in
the
UDI
string
or
registered
in
the
local
repository.
Best practice guidelines for transmitting UDI data using the Device resource dictate transmitting both the UDI Carrier and all components found within the UDI as described in Device UDI Mapping . Several examples are provided for futher guidance.
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
| Name | Type | Description | Paths | In Common |
| identifier | token | Instance id from manufacturer, owner, and others | Device.identifier | |
| location | reference | A location, where the resource is found |
Device.location
( Location ) |
|
| manufacturer | string | The manufacturer of the device | Device.manufacturer | |
| model | string | The model of the device | Device.model | |
| organization | reference | The organization responsible for the device |
Device.owner
( Organization ) |
|
| patient | reference | Patient information, if the resource is affixed to a person |
Device.patient
( Patient ) |
|
| type | token | The type of the device | Device.type | |
| udicarrier | token | Barcode string (udi) | Device.udiCarrier | |
| url | uri | Network address to contact device | Device.url |