R6 Ballot (2nd Draft)

Publish-box (todo)

8.15 Resource Device - Content

Orders and Observations icon Work GroupMaturity Level: 2 Trial UseSecurity Category: Business Compartments: No defined compartments

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.

This is a base resource that tracks individual instances of a device and their location. It is referenced by other resources for recording which device performed an action such as a procedure or an observation, which device was implanted in or explanted from a patient, dispensing a device to a patient for their use, managing inventory, or when requesting a specific device for a patient's use. Medical devices include durable (reusable) medical equipment, implantable devices, as well as disposable equipment used for diagnostic, treatment, and research for healthcare and public health. Medical devices may also include some types of software.

Non-medical devices may include items such as a machine, cellphone, computer, software application or algorithm, etc. In short, a Device can range from a tongue depressor to an MRI. The fields in the Device resource must be flexible enough to cover this range.

The resource may be used to document the Unique Device Identifier (UDI) and information about a device where appropriate or necessary according to local jurisdictions over time. Additional information about UDI is provided in the Unique Device Identifier (UDI) section.

Devices may be categorized and may be associated with one or more categories. Device category examples include, but are not limited to: active, communicating, durable medical equipment, home use, implantable, InVitro diagnostics, personal health, point-of-care, single use, re-usable, and software.

'Active device' means any device, the operation of which depends on a source of energy other than that generated by the human body for that purpose, or by gravity, and which acts by changing the density of or converting that energy. Devices intended to transmit energy, substances or other elements between an active device and the patient, without any significant change, shall not be deemed to be active devices. Software shall also be deemed to be an active device. MDR (EU) 2017/745 icon

Active Implantable Medical Devices include the definition for both active devices and implantable devices (see below). Examples include: Implantable cardiac pacemakers; Implantable defibrillator; Implantable neurostimulator systems; Leads, electrodes, adaptors for implantable pulse generators; Brachytherapy systems; Ventricular Assist Devices (VADs); Cochlear implants; Implantable infusion pumps; Implantable glucose monitors; Micro Electro-Mechanical Systems (MEMS); and their accessories where applicable.

This category of devices communicates electronically to peer information systems or possibly another device. In addition to patient observations for use by clinicians in providing care and for building a health record, the device communicates metadata about its own state and the protocol used to transfer that information.

To support the use and evaluate the reliability of the patient data, it is important to to collect and record data about the identity and operational status of the device that generated the observations. The Device resource is an important locus for such information. The information it generates for clinical and other purposes goes into other resources such as the Observation or Medication resource depending upon what the device does. To support device-related information about Communicating Medical Devices the Device resource needs to have elements that describe not only the basic information like the serial number, manufacturer name and model number, but information about the protocol, its version, its certification, the properties it has to perform its purposed tasks such as internal clocks, synchronization state, resolution, etc.

Equipment and supplies that provides therapeutic benefits to a patient in need because of certain medical conditions and/or illnesses, and which are ordered by a health care provider for everyday or extended use.

Examples include: oxygen equipment, suction pumps, traction equipment, home infusion services, continuous positive airway pressure (CPAP) devices, hospital beds, wheelchairs, crutches walkers, canes, or blood testing strips and meters for diabetics.

A home use medical device is a medical device intended for users in any environment outside of a professional healthcare facility. This includes devices intended for use in both professional healthcare facilities and homes.

  • A user is a patient (care recipient), caregiver, or family member that directly uses the device or provides assistance in using the device.
  • A qualified healthcare professional is a licensed or non-licensed healthcare professional with proficient skill and experience with the use of the device so that they can aid or train care recipients and caregivers to use and maintain the device.

US Food and Drug Administration Center for Devices and Radiological Health. Home Use Devices. icon Accessed 12 May 2022

Implant means a device that is placed into a surgically or naturally formed cavity of the human body. A device is regarded as an implant for the purpose of this part only if it is intended to remain implanted continuously for a period of 30 days or more, unless the Commissioner determines otherwise to protect human health. 21CFR Part 860.3 icon Accessed 12 May 2022

'implantable device' means any device, including those that are partially or wholly absorbed, which is intended:

  • to be totally introduced into the human body, or
  • to replace an epithelial surface or the surface of the eye,

by clinical intervention and which is intended to remain in place after the procedure.

Any device intended to be partially introduced into the human body by clinical intervention and intended to remain in place after the procedure for at least 30 days shall also be deemed to be an implantable device; MDR (EU) 2017/745 icon Accessed 12 May 2022

In vitro diagnostics (IVD) are tests done on samples such as blood or tissue that have been taken from the human body. In vitro diagnostics can detect diseases or other conditions, and can be used to monitor a person 's overall health to help cure, treat, or prevent diseases.

In vitro diagnostics may also be used in precision medicine to identify patients who are likely to benefit from specific treatments or therapies. These in vitro diagnostics can include next generation sequencing tests, which scan a person 's DNA to detect genomic variations.

Some tests are used in laboratory or other health professional settings and other tests are for consumers to use at home. iconUS Food and Drug Administration Center for Devices and Radiological Health In Vitro Diagnostics icon and Drug Administration Center for Devices and Radiological Health In Vitro Diagnostics icon Accessed 12 May 2022

Patient-use, or home use devices, intended for users in any environment outside of a professional healthcare facility. This includes devices intended for use in both professional healthcare facilities and homes US Food and Drug Administration Center for Devices and Radiological Health. Home Use Devices. icon Accessed 13 March 2020. PHDs are the subset of patient-use devices that report their information to a peer via a protocol.

One class of communicating devices is the Personal Health Device or PHD. PHDs are medical devices that can be used by patients or others who are typically not medical professions, to gather patient observations and information. These devices can often be purchased in department stores or online by anyone. They may be regulated as medical devices, or not.

PHDs include the popular fitness trackers often combined with heart rate monitors, but also blood pressure monitors, weight scales, pulse oximeters, thermometers, and, for those that require them, glucose meters. Over time more sophisticated devices such as continuous glucose monitors, insulin pumps, vital signs monitors including ECGs, and even spirometers are entering the PHD consumer market. These devices communicate measurement data and data about themselves via a digital transport protocol to some peer entity, often a mobile phone or tablet. The protocol may follow a standard but most protocols are proprietary. In either case, it is common practice for manufacturers to provide free applications that run on these mobile platforms for the purpose of communicating with their devices.

The fields populated in the Device resource by PHDs, typically via a gateway, is the information a PHD reports about itself electronically. There is no input by the patient except for information the patient may enter on the device through some UI. This device reporting capability distinguishes communicating PHDs from the general set of patient-use devices.

PoCDs are of another level of complexity compared to PHDs: they include devices like multi-parameter physiological patient monitors, anesthesia workstations, infusion pumps and numerous other kinds of devices that provide near-real-time information about patient condition or therapy, potentially including dozens or hundreds of variables coming from a single device system. They may be structurally complex, involving multiple subsystems that are themselves complex, such as a ventilator or gas analyzer functioning within an anesthesia workstation, or pluggable modules in a patient monitor controlling invasive blood pressure or gathering EEG data.

Information systems using such data need to be able to understand the structure and dynamic state of the devices originating them, generally requiring access to what is in effect a dynamically changing model of the device and its subsystems and measuring capabilities. This requires more than a single Device resource - a hierarchy of Device resources is constructed carrying data about the top-level containing device (for example a monitor), and a hierarchy of contained Device resources representing subsystems (in the monitor, builtin and attached modular measurement capabilities), channels, and DeviceMetric resources representing individual measurements or computations.

A device that is intended to be used on one individual during a single procedure; MDR (EU) 2017/745 icon Accessed 12 May 2022

Reusable medical devices are devices that health care providers can reuse to diagnose and treat one or multiple patients. Examples of reusable medical devices include surgical forceps, endoscopes and laryngoscopes. US Food and Drug Administration Center for Devices and Radiological Health Reusable Medical Devices icon

The Device resource is intended to represent an instance of a software component or application. A software item like a data transformer or converter, or a clinical support algorithm, may be an independently deployed, managed and configured entity that contributes to patient care and needs to be documented just a surely as, say, a physical cardiac monitor. The FHIR Device resource can contain instance data such as version information and operational attributes. It can also represent the relationship of the software item to other device and information system components through reference linkages. This category includes software regardless of whether or not is regulated. Device resource instances documenting software items are important to traceability of data and analyzing adverse events, and so have important patient safety roles.

When referring to a specific instance, even without specific instance details, Device is to be used, not a DeviceDefinition. The context of a data exchange indicates whether the data is representing a physical instance or a "kind", not the presence of instance data such as lot and serial numbers.

Some examples:

  1. In a Procedure, reporting the use of a pump for which we have no instance data - the pump is a physical instance. Whether the lot number (for example) is known or not, depends on the circumstance - in another Procedure or in an update of the Procedure, the lot number could be added. Hence the use of Device.
  2. When a device gets replaced by another device of the same type. In this case, a procedure indicates that one instance of the device is removed/explanted/discarded, and another instance is used. These are physical instances for which instance data might exist and be known, or not.

Note to Implementers: The module pages under development by Orders and Observations will further describe the variations of device use cases across the device resources, e.g., Device, DeviceDefinition, DeviceAssociation, DeviceDispense, DeviceMetric, DeviceRequest, and Device Usage.

These are the device related resources

  • Device (this resource)
  • DeviceDefinition - Describes a "kind" of device - not a specific instance of the device. A kind of device is frequently defined and documented by the manufacturer, reseller, or regulatory. Documentation would include any information that applies to all instances of a device, and may be published through a catalog. For example, the characteristics of a test analyzer, x-ray machine, or wheelchair.
  • DeviceMetric - Describes a measurement, calculation or setting capability of a device instance. A Device may include multiple device metrics, each yielding a different observation. The DeviceMetric models the properties of the Observations generated by and/or about the device such as whether or not the Observation is a setting. A DeviceMetric describes aspects of the device that may change over time. In contrast, the Device.property is used to capture inherent, essentially fixed, characteristics of the device, such as a "large" blood pressure cuff, the bore size of an MRI, the color of a lead. (Such static characteristics may also be recorded in DeviceDefinition.)
  • DeviceAssociation - Records the association of a device with a subject (e.g. a Patient by ownership, or a Practitioner by usage during a procedure).
  • DeviceRequest/DeviceDispense
  • SupplyRequest/SupplyDelivery
  • DeviceUsage
  • NutritionOrder - An order for nutrition can request to a specific device to administer enteral feeding.
  • Observation - A measurement can be generated by many types of devices. It may be linked to and supplemented by data about the current structure and status of the device itself in one or more Device or DeviceMetric resources.
  • Procedure - A procedure can be performed using a variety of devices, or a device can be implanted or otherwise associated with a patient.
  • MedicationAdministration - A medication administration can be performed using a variety of devices.

In FHIR, the Device represents either the device in total, or a component of an encapsulating device when there is a need for individual tracking of a component. A Device as a component then points to the parent device it is part of. The top-level Device captures the actual data about the instance of the device and the instances of all its children that either provides identifying characteristics of the Device (including applicable UDI – unique device identification) and data that can vary dynamically by device, e.g., specific settings at a particular point in time.

The DeviceMetric models the properties of the Observations generated by the device, such as whether or not the Observation is a setting.

Devices differ from medications because they are not "used up" - they remain active in or for a patient for a longer duration. They also may be re-used, particularly non-implanted devices and those used for diagnostics and procedures. Frequently, when a device is packaged with a medication, the ordering, dispense, and administration processes typically focus on the medication aspects and reference the device.

In the case of an infusion pump, while some actions are focused on the device (e.g., ordering to a room or maintaining the pump), the focus is as well on the medication while the device is used for administration. However, that separation is not always as clear and may be impacted by specific implementations. Regardless, the Medication resource should not be used to represent (implanted) devices, rather reference the relationship where an actual device needs to be tracked in addition to the medication. In some sense the Medication is analogous to the Observation generated by a Blood Pressure personal health device. The Observation resource contains the blood pressure values, units and the time stamp while the Device resource contains the manufacturer name, model number, serial number, firmware and hardware versions, exchange protocol information, any clock capabilities, etc.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device TU DomainResource Item used in healthcare
+ Rule: only one Device.name.display SHALL be true when there is more than one Device.name

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..* Identifier Instance identifier

... definition 0..1 CodeableReference(DeviceDefinition) The reference to the definition for the device
Binding: Device Type (Required)
... udiCarrier Σ 0..* BackboneElement Unique Device Identifier (UDI) Barcode string

.... deviceIdentifier Σ 1..1 string Mandatory fixed portion of UDI
.... deviceIdentifierSystem 0..1 uri The namespace for the device identifier value
.... issuer Σ 1..1 uri UDI Issuing Organization
.... jurisdiction 0..1 uri Regional UDI authority
.... carrierAIDC Σ 0..1 base64Binary UDI Machine Readable Barcode String
.... carrierHRF Σ 0..1 string UDI Human Readable Barcode String
.... entryType 0..1 code barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
Binding: UDI Entry Type (Required)
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: FHIR Device Status (Required)
... availabilityStatus 0..1 CodeableConcept lost | damaged | destroyed | available
Binding: FHIR Device Availability Status (Extensible)
... biologicalSourceEvent 0..1 Identifier An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
... manufacturer 0..1 string Name of device manufacturer
... manufactureDate 0..1 dateTime Date when the device was made
... expirationDate 0..1 dateTime Date and time of expiry of this device (if applicable)
... lotNumber 0..1 string Lot number of manufacture
... serialNumber 0..1 string Serial number assigned by the manufacturer
... name C 0..* BackboneElement The name or names of the device as known to the manufacturer and/or patient

.... value Σ 1..1 string The term that names the device
.... type Σ 1..1 CodeableConcept registered-name | user-friendly-name | patient-reported-name
Binding: Device Name Type (Extensible)
.... display ?!ΣC 0..1 boolean The preferred device name
... modelNumber 0..1 string The manufacturer's model number for the device
... partNumber 0..1 string The part number or catalog number of the device
... category 0..* CodeableConcept Indicates a high-level grouping of the device
Binding: FHIR Device Category (Example)

... type 0..* CodeableConcept The kind or type of device
Binding: Device Type (Example)

... deviceVersion 0..* BackboneElement The actual design of the device or software version running on the device

.... type 0..1 CodeableConcept The type of the device version, e.g. manufacturer, approved, internal
Binding: Device Version Type (Example)
.... component 0..1 Identifier The hardware or software module of the device to which the version applies
.... installDate 0..1 dateTime The date the version was installed on the device
.... value 1..1 string The version text
... conformsTo 0..* BackboneElement Identifies the standards, specifications, or formal guidances for the capabilities supported by the device

.... category 0..1 CodeableConcept Describes the common type of the standard, specification, or formal guidance. communication | performance | measurement
Binding: Device Specification Category (Example)
.... specification 1..1 CodeableConcept Identifies the standard, specification, or formal guidance that the device adheres to
Binding: Device Specification Type (Example)
.... version 0..1 string Specific form or variant of the standard
... property 0..* BackboneElement Inherent, essentially fixed, characteristics of the device. e.g., time properties, size, material, etc.

.... type 1..1 CodeableConcept Code that specifies the property being represented
Binding: Device Property Type (Example)
.... value[x] 1..1 Value of the property
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueAttachment Attachment
... mode 0..1 CodeableConcept The designated condition for performing a task
Binding: FHIR Device Operation Mode (Example)
... cycle 0..1 Count The series of occurrences that repeats during the operation of the device
... duration 0..1 Duration A measurement of time during the device's operation (e.g., days, hours, mins, etc.)
... owner 0..1 Reference(Organization) Organization responsible for device
... contact 0..* ContactPoint Details for human/organization for support

... location 0..1 Reference(Location) Where the device is found
... url 0..1 uri Network address to contact device
... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to electronic services provided by the device

... gateway 0..* CodeableReference(Device) Linked device acting as a communication/data collector, translator or controller

... note 0..* Annotation Device notes and comments

... safety Σ 0..* CodeableConcept Safety Characteristics of Device
Binding: Device Safety (Example)

... parent 0..1 Reference(Device) The higher level or encompassing device that this device is a logical part of

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Device (DomainResource)Unique instance identifiers assigned to a device by manufacturers other organizations or ownersidentifier : Identifier [0..*]The reference to the definition for the devicedefinition : CodeableReference [0..1] « DeviceDefinition; null (Strength=Required)DeviceType! »The Device record status. This is not the status of the device like availability (this element modifies the meaning of other elements)status : code [0..1] « null (Strength=Required)FHIRDeviceStatus! »The availability of the deviceavailabilityStatus : CodeableConcept [0..1] « null (Strength=Extensible) FHIRDeviceAvailabilityStatus+ »An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooledbiologicalSourceEvent : Identifier [0..1]A name of the manufacturer or entity legally responsible for the devicemanufacturer : string [0..1]The date and time when the device was manufacturedmanufactureDate : dateTime [0..1]The date and time beyond which this device is no longer valid or should not be used (if applicable)expirationDate : dateTime [0..1]Lot number assigned by the manufacturerlotNumber : string [0..1]The serial number assigned by the organization when the device was manufacturedserialNumber : string [0..1]The manufacturer's model number for the devicemodelNumber : string [0..1]The part number or catalog number of the devicepartNumber : string [0..1]Devices may be associated with one or more categoriescategory : CodeableConcept [0..*] « null (Strength=Example)FHIRDeviceCategory?? »The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the devicetype : CodeableConcept [0..*] « null (Strength=Example)DeviceType?? »The designated condition for performing a task with the devicemode : CodeableConcept [0..1] « null (Strength=Example)FHIRDeviceOperationMode?? »The series of occurrences that repeats during the operation of the devicecycle : Count [0..1]A measurement of time during the device's operation (e.g., days, hours, mins, etc.)duration : Duration [0..1]An organization that is responsible for the provision and ongoing maintenance of the deviceowner : Reference [0..1] « Organization »Contact details for an organization or a particular human that is responsible for the devicecontact : ContactPoint [0..*]The place where the device can be foundlocation : Reference [0..1] « Location »A network address on which the device may be contacted directlyurl : uri [0..1]Technical endpoints providing access to services provided by the device defined at this resourceendpoint : Reference [0..*] « Endpoint »The linked device acting as a communication controller, data collector, translator, or concentrator for the current device (e.g., mobile phone application that relays a blood pressure device's data)gateway : CodeableReference [0..*] « Device »Descriptive information, usage information or implantation information that is not captured in an existing elementnote : Annotation [0..*]Provides additional safety characteristics about a medical device. For example devices containing latexsafety : CodeableConcept [0..*] « null (Strength=Example)DeviceSafety?? »The higher level or encompassing device that this device is a logical part ofparent : Reference [0..1] « Device »UdiCarrierThe device identifier (DI) is a mandatory, fixed portion of a UDI that identifies the labeler and the specific version or model of a devicedeviceIdentifier : string [1..1]Establishes the namespace for the device identifier value that is an URL, OID, urn or uuiddeviceIdentifierSystem : uri [0..1]Organization that is charged with issuing UDIs for devices. For example, the US FDA issuers include: 1) GS1: http://hl7.org/fhir/NamingSystem/gs1-di, 2) HIBCC: http://hl7.org/fhir/NamingSystem/hibcc-diI, 3) ICCBBA for blood containers: http://hl7.org/fhir/NamingSystem/iccbba-blood-di, 4) ICCBA for other devices: http://hl7.org/fhir/NamingSystem/iccbba-other-di # Informationsstelle für Arzneispezialitäten (IFA GmbH) (EU only): http://hl7.org/fhir/NamingSystem/ifa-gmbh-diissuer : uri [1..1]The identity of the authoritative source for UDI generation within a jurisdiction. All UDIs are globally unique within a single namespace with the appropriate repository uri as the system. For example, UDIs of devices managed in the U.S. by the FDA, the value is http://hl7.org/fhir/NamingSystem/us-fda-udi or in the European Union by the European Commission http://hl7.org/fhir/NamingSystem/eu-ec-udijurisdiction : uri [0..1]The full UDI carrier of the Automatic Identification and Data Capture (AIDC) technology representation of the barcode string as printed on the packaging of the device - e.g., a barcode or RFID. Because of limitations on character sets in XML and the need to round-trip JSON data through XML, AIDC Formats *SHALL* be base64 encodedcarrierAIDC : base64Binary [0..1]The full UDI carrier as the human readable form (HRF) representation of the barcode string as printed on the packaging of the devicecarrierHRF : string [0..1]A coded entry to indicate how the data was enteredentryType : code [0..1] « null (Strength=Required)UDIEntryType! »NameThe actual name that identifies the devicevalue : string [1..1]Indicates the kind of name. RegisteredName | UserFriendlyName | PatientReportedNametype : CodeableConcept [1..1] « null (Strength=Extensible)DeviceNameType+ »Indicates the default or preferred name to be displayed (this element modifies the meaning of other elements)display : boolean [0..1] « This element has or is affected by some invariantsC »DeviceVersionThe type of the device version, e.g. manufacturer, approved, internaltype : CodeableConcept [0..1] « null (Strength=Example)DeviceVersionType?? »The hardware or software module of the device to which the version appliescomponent : Identifier [0..1]The date the version was installed on the deviceinstallDate : dateTime [0..1]The version textvalue : string [1..1]ConformsToDescribes the type of the standard, specification, or formal guidancecategory : CodeableConcept [0..1] « null (Strength=Example)DeviceSpecificationCategory?? »Code that identifies the specific standard, specification, protocol, formal guidance, regulation, legislation, or certification scheme to which the device adheresspecification : CodeableConcept [1..1] « null (Strength=Example)DeviceSpecificationType?? »Identifies the specific form or variant of the standard, specification, or formal guidance. This may be a 'version number', release, document edition, publication year, or other labelversion : string [0..1]PropertyCode that specifies the property, such as resolution, color, size, being representedtype : CodeableConcept [1..1] « null (Strength=Example)DeviceType?? »The value of the property specified by the associated property.type codevalue[x] : DataType [1..1] « Quantity|CodeableConcept|string|boolean| integer|Range|Attachment »Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been soldudiCarrier[0..*]This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinitionname[0..*]The actual design of the device or software version running on the devicedeviceVersion[0..*]Identifies the standards, specifications, or formal guidances for the capabilities supported by the device. The device may be certified as conformant to these specifications e.g., communication, performance, process, measurement, or specialization standardsconformsTo[0..*]Static or essentially fixed characteristics or features of the device (e.g., time or timing attributes, resolution, accuracy, intended use or instructions for use, and physical attributes) that are not otherwise captured in more specific attributesproperty[0..*]

XML Template

<Device xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Instance identifier --></identifier>
 <definition><!-- 0..1 CodeableReference(DeviceDefinition) The reference to the definition for the device --></definition>
 <udiCarrier>  <!-- 0..* Unique Device Identifier (UDI) Barcode string -->
  <deviceIdentifier value="[string]"/><!-- 1..1 Mandatory fixed portion of UDI -->
  <deviceIdentifierSystem value="[uri]"/><!-- 0..1 The namespace for the device identifier value -->
  <issuer value="[uri]"/><!-- 1..1 UDI Issuing Organization -->
  <jurisdiction value="[uri]"/><!-- 0..1 Regional UDI authority -->
  <carrierAIDC value="[base64Binary]"/><!-- 0..1 UDI Machine Readable Barcode String -->
  <carrierHRF value="[string]"/><!-- 0..1 UDI Human Readable Barcode String -->
  <entryType value="[code]"/><!-- 0..1 barcode | rfid | manual | card | self-reported | electronic-transmission | unknown -->
 </udiCarrier>
 <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error -->
 <availabilityStatus><!-- 0..1 CodeableConcept lost | damaged | destroyed | available --></availabilityStatus>
 <biologicalSourceEvent><!-- 0..1 Identifier An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled --></biologicalSourceEvent>
 <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) -->
 <lotNumber value="[string]"/><!-- 0..1 Lot number of manufacture -->
 <serialNumber value="[string]"/><!-- 0..1 Serial number assigned by the manufacturer -->
 <name>  <!-- I 0..* The name or names of the device as known to the manufacturer and/or patient -->
  <value value="[string]"/><!-- 1..1 The term that names the device -->
  <type><!-- 1..1 CodeableConcept registered-name | user-friendly-name | patient-reported-name --></type>
  <display value="[boolean]"/><!-- I 0..1 The preferred device name -->
 </name>
 <modelNumber value="[string]"/><!-- 0..1 The manufacturer's model number for the device -->
 <partNumber value="[string]"/><!-- 0..1 The part number or catalog number of the device -->
 <category><!-- 0..* CodeableConcept Indicates a high-level grouping of the device --></category>
 <type><!-- 0..* CodeableConcept The kind or type of device --></type>
 <deviceVersion>  <!-- 0..* The actual design of the device or software version running on the device -->
  <type><!-- 0..1 CodeableConcept The type of the device version, e.g. manufacturer, approved, internal --></type>
  <component><!-- 0..1 Identifier The hardware or software module of the device to which the version applies --></component>
  <installDate value="[dateTime]"/><!-- 0..1 The date the version was installed on the device -->
  <value value="[string]"/><!-- 1..1 The version text -->
 </deviceVersion>
 <conformsTo>  <!-- 0..* Identifies the standards, specifications, or formal guidances for the capabilities supported by the device -->
  <category><!-- 0..1 CodeableConcept Describes the common type of the standard, specification, or formal guidance.  communication | performance | measurement --></category>
  <specification><!-- 1..1 CodeableConcept Identifies the standard, specification, or formal guidance that the device adheres to --></specification>
  <version value="[string]"/><!-- 0..1 Specific form or variant of the standard -->
 </conformsTo>
 <property>  <!-- 0..* Inherent, essentially fixed, characteristics of the device.  e.g., time properties, size, material, etc. -->
  <type><!-- 1..1 CodeableConcept Code that specifies the property being represented --></type>
  <value[x]><!-- 1..1 Quantity|CodeableConcept|string|boolean|integer|Range|
    Attachment Value of the property --></value[x]>
 </property>
 <mode><!-- 0..1 CodeableConcept The designated condition for performing a task --></mode>
 <cycle><!-- 0..1 Count The series of occurrences that repeats during the operation of the device --></cycle>
 <duration><!-- 0..1 Duration A measurement of time during the device's operation (e.g., days, hours, mins, etc.) --></duration>
 <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 device is found --></location>
 <url value="[uri]"/><!-- 0..1 Network address to contact device -->
 <endpoint><!-- 0..* Reference(Endpoint) Technical endpoints providing access to electronic services provided by the device --></endpoint>
 <gateway><!-- 0..* CodeableReference(Device) Linked device acting as a communication/data collector, translator or controller --></gateway>
 <note><!-- 0..* Annotation Device notes and comments --></note>
 <safety><!-- 0..* CodeableConcept Safety Characteristics of Device --></safety>
 <parent><!-- 0..1 Reference(Device) The higher level or encompassing device that this device is a logical part of --></parent>
</Device>

JSON Template

{doco
  "resourceType" : "Device",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Instance identifier
  "definition" : { CodeableReference(DeviceDefinition) }, // The reference to the definition for the device
  "udiCarrier" : [{ // Unique Device Identifier (UDI) Barcode string
    "deviceIdentifier" : "<string>", // R!  Mandatory fixed portion of UDI
    "deviceIdentifierSystem" : "<uri>", // The namespace for the device identifier value
    "issuer" : "<uri>", // R!  UDI Issuing Organization
    "jurisdiction" : "<uri>", // Regional UDI authority
    "carrierAIDC" : "<base64Binary>", // UDI Machine Readable Barcode String
    "carrierHRF" : "<string>", // UDI Human Readable Barcode String
    "entryType" : "<code>" // barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
  }],
  "status" : "<code>", // active | inactive | entered-in-error
  "availabilityStatus" : { CodeableConcept }, // lost | damaged | destroyed | available
  "biologicalSourceEvent" : { Identifier }, // An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
  "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)
  "lotNumber" : "<string>", // Lot number of manufacture
  "serialNumber" : "<string>", // Serial number assigned by the manufacturer
  "name" : [{ // I The name or names of the device as known to the manufacturer and/or patient
    "value" : "<string>", // R!  The term that names the device
    "type" : { CodeableConcept }, // R!  registered-name | user-friendly-name | patient-reported-name
    "display" : <boolean> // I The preferred device name
  }],
  "modelNumber" : "<string>", // The manufacturer's model number for the device
  "partNumber" : "<string>", // The part number or catalog number of the device
  "category" : [{ CodeableConcept }], // Indicates a high-level grouping of the device
  "type" : [{ CodeableConcept }], // The kind or type of device
  "deviceVersion" : [{ // The actual design of the device or software version running on the device
    "type" : { CodeableConcept }, // The type of the device version, e.g. manufacturer, approved, internal
    "component" : { Identifier }, // The hardware or software module of the device to which the version applies
    "installDate" : "<dateTime>", // The date the version was installed on the device
    "value" : "<string>" // R!  The version text
  }],
  "conformsTo" : [{ // Identifies the standards, specifications, or formal guidances for the capabilities supported by the device
    "category" : { CodeableConcept }, // Describes the common type of the standard, specification, or formal guidance.  communication | performance | measurement
    "specification" : { CodeableConcept }, // R!  Identifies the standard, specification, or formal guidance that the device adheres to
    "version" : "<string>" // Specific form or variant of the standard
  }],
  "property" : [{ // Inherent, essentially fixed, characteristics of the device.  e.g., time properties, size, material, etc.
    "type" : { CodeableConcept }, // R!  Code that specifies the property being represented
    // value[x]: Value of the property. One of these 7:
    "valueQuantity" : { Quantity },
    "valueCodeableConcept" : { CodeableConcept },
    "valueString" : "<string>",
    "valueBoolean" : <boolean>,
    "valueInteger" : <integer>,
    "valueRange" : { Range },
    "valueAttachment" : { Attachment }
  }],
  "mode" : { CodeableConcept }, // The designated condition for performing a task
  "cycle" : { Count }, // The series of occurrences that repeats during the operation of the device
  "duration" : { Duration }, // A measurement of time during the device's operation (e.g., days, hours, mins, etc.)
  "owner" : { Reference(Organization) }, // Organization responsible for device
  "contact" : [{ ContactPoint }], // Details for human/organization for support
  "location" : { Reference(Location) }, // Where the device is found
  "url" : "<uri>", // Network address to contact device
  "endpoint" : [{ Reference(Endpoint) }], // Technical endpoints providing access to electronic services provided by the device
  "gateway" : [{ CodeableReference(Device) }], // Linked device acting as a communication/data collector, translator or controller
  "note" : [{ Annotation }], // Device notes and comments
  "safety" : [{ CodeableConcept }], // Safety Characteristics of Device
  "parent" : { Reference(Device) } // The higher level or encompassing device that this device is a logical part of
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ 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:identifier  ( [ Identifier ] ... ) ; # 0..* Instance identifier
  fhir:definition [ CodeableReference(DeviceDefinition) ] ; # 0..1 The reference to the definition for the device
  fhir:udiCarrier ( [ # 0..* Unique Device Identifier (UDI) Barcode string
    fhir:deviceIdentifier [ string ] ; # 1..1 Mandatory fixed portion of UDI
    fhir:deviceIdentifierSystem [ uri ] ; # 0..1 The namespace for the device identifier value
    fhir:issuer [ uri ] ; # 1..1 UDI Issuing Organization
    fhir:jurisdiction [ uri ] ; # 0..1 Regional UDI authority
    fhir:carrierAIDC [ base64Binary ] ; # 0..1 UDI Machine Readable Barcode String
    fhir:carrierHRF [ string ] ; # 0..1 UDI Human Readable Barcode String
    fhir:entryType [ code ] ; # 0..1 barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
  ] ... ) ;
  fhir:status [ code ] ; # 0..1 active | inactive | entered-in-error
  fhir:availabilityStatus [ CodeableConcept ] ; # 0..1 lost | damaged | destroyed | available
  fhir:biologicalSourceEvent [ Identifier ] ; # 0..1 An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
  fhir:manufacturer [ string ] ; # 0..1 Name of device manufacturer
  fhir:manufactureDate [ dateTime ] ; # 0..1 Date when the device was made
  fhir:expirationDate [ dateTime ] ; # 0..1 Date and time of expiry of this device (if applicable)
  fhir:lotNumber [ string ] ; # 0..1 Lot number of manufacture
  fhir:serialNumber [ string ] ; # 0..1 Serial number assigned by the manufacturer
  fhir:name ( [ # 0..* I The name or names of the device as known to the manufacturer and/or patient
    fhir:value [ string ] ; # 1..1 The term that names the device
    fhir:type [ CodeableConcept ] ; # 1..1 registered-name | user-friendly-name | patient-reported-name
    fhir:display [ boolean ] ; # 0..1 I The preferred device name
  ] ... ) ;
  fhir:modelNumber [ string ] ; # 0..1 The manufacturer's model number for the device
  fhir:partNumber [ string ] ; # 0..1 The part number or catalog number of the device
  fhir:category  ( [ CodeableConcept ] ... ) ; # 0..* Indicates a high-level grouping of the device
  fhir:type  ( [ CodeableConcept ] ... ) ; # 0..* The kind or type of device
  fhir:deviceVersion ( [ # 0..* The actual design of the device or software version running on the device
    fhir:type [ CodeableConcept ] ; # 0..1 The type of the device version, e.g. manufacturer, approved, internal
    fhir:component [ Identifier ] ; # 0..1 The hardware or software module of the device to which the version applies
    fhir:installDate [ dateTime ] ; # 0..1 The date the version was installed on the device
    fhir:value [ string ] ; # 1..1 The version text
  ] ... ) ;
  fhir:conformsTo ( [ # 0..* Identifies the standards, specifications, or formal guidances for the capabilities supported by the device
    fhir:category [ CodeableConcept ] ; # 0..1 Describes the common type of the standard, specification, or formal guidance.  communication | performance | measurement
    fhir:specification [ CodeableConcept ] ; # 1..1 Identifies the standard, specification, or formal guidance that the device adheres to
    fhir:version [ string ] ; # 0..1 Specific form or variant of the standard
  ] ... ) ;
  fhir:property ( [ # 0..* Inherent, essentially fixed, characteristics of the device.  e.g., time properties, size, material, etc.
    fhir:type [ CodeableConcept ] ; # 1..1 Code that specifies the property being represented
    # value[x] : 1..1 Value of the property. One of these 7
      fhir:value [  a fhir:Quantity ; Quantity ]
      fhir:value [  a fhir:CodeableConcept ; CodeableConcept ]
      fhir:value [  a fhir:string ; string ]
      fhir:value [  a fhir:boolean ; boolean ]
      fhir:value [  a fhir:integer ; integer ]
      fhir:value [  a fhir:Range ; Range ]
      fhir:value [  a fhir:Attachment ; Attachment ]
  ] ... ) ;
  fhir:mode [ CodeableConcept ] ; # 0..1 The designated condition for performing a task
  fhir:cycle [ Count ] ; # 0..1 The series of occurrences that repeats during the operation of the device
  fhir:duration [ Duration ] ; # 0..1 A measurement of time during the device's operation (e.g., days, hours, mins, etc.)
  fhir:owner [ Reference(Organization) ] ; # 0..1 Organization responsible for device
  fhir:contact  ( [ ContactPoint ] ... ) ; # 0..* Details for human/organization for support
  fhir:location [ Reference(Location) ] ; # 0..1 Where the device is found
  fhir:url [ uri ] ; # 0..1 Network address to contact device
  fhir:endpoint  ( [ Reference(Endpoint) ] ... ) ; # 0..* Technical endpoints providing access to electronic services provided by the device
  fhir:gateway  ( [ CodeableReference(Device) ] ... ) ; # 0..* Linked device acting as a communication/data collector, translator or controller
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Device notes and comments
  fhir:safety  ( [ CodeableConcept ] ... ) ; # 0..* Safety Characteristics of Device
  fhir:parent [ Reference(Device) ] ; # 0..1 The higher level or encompassing device that this device is a logical part of
]

Changes from both R4 and R4B

Device
Device.definition
  • Type changed from Reference(DeviceDefinition) to CodeableReference
  • Add Binding `http://hl7.org/fhir/ValueSet/device-type|6.0.0-ballot2` (required)
Device.udiCarrier.deviceIdentifier
  • Min Cardinality changed from 0 to 1
Device.udiCarrier.deviceIdentifierSystem
  • Added Element
Device.udiCarrier.issuer
  • Min Cardinality changed from 0 to 1
Device.udiCarrier.entryType
  • Add code electronic-transmission
Device.status
  • Remove code unknown
Device.availabilityStatus
  • Added Element
Device.biologicalSourceEvent
  • Added Element
Device.name
  • Renamed from deviceName to name
Device.name.value
  • Added Mandatory Element
Device.name.type
  • Moved from Device.deviceName to Device.name
  • Type changed from code to CodeableConcept
  • Change binding strength from required to extensible
Device.name.display
  • Added Element
Device.category
  • Added Element
Device.type
  • Max Cardinality changed from 1 to *
Device.deviceVersion
  • Added Element
Device.deviceVersion.type
  • Added Element
Device.deviceVersion.component
  • Added Element
Device.deviceVersion.installDate
  • Added Element
Device.deviceVersion.value
  • Added Mandatory Element
Device.conformsTo
  • Renamed from specialization to conformsTo
Device.conformsTo.category
  • Added Element
Device.conformsTo.specification
  • Added Mandatory Element
Device.conformsTo.version
  • Moved from Device.specialization to Device.conformsTo
Device.property.value[x]
  • Added Mandatory Element
Device.mode
  • Added Element
Device.cycle
  • Added Element
Device.duration
  • Added Element
Device.endpoint
  • Added Element
Device.gateway
  • Added Element
Device.statusReason
  • Deleted (-> reason was removed. DeviceAssociation can be used)
Device.distinctIdentifier
  • Deleted
Device.deviceName.name
  • Deleted
Device.specialization.systemType
  • Deleted
Device.version
  • Deleted
Device.property.valueQuantity
  • Deleted
Device.property.valueCode
  • Deleted
Device.patient
  • Deleted (-> patient association is in DeviceAssociation)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device TU DomainResource Item used in healthcare
+ Rule: only one Device.name.display SHALL be true when there is more than one Device.name

Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier 0..* Identifier Instance identifier

... definition 0..1 CodeableReference(DeviceDefinition) The reference to the definition for the device
Binding: Device Type (Required)
... udiCarrier Σ 0..* BackboneElement Unique Device Identifier (UDI) Barcode string

.... deviceIdentifier Σ 1..1 string Mandatory fixed portion of UDI
.... deviceIdentifierSystem 0..1 uri The namespace for the device identifier value
.... issuer Σ 1..1 uri UDI Issuing Organization
.... jurisdiction 0..1 uri Regional UDI authority
.... carrierAIDC Σ 0..1 base64Binary UDI Machine Readable Barcode String
.... carrierHRF Σ 0..1 string UDI Human Readable Barcode String
.... entryType 0..1 code barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
Binding: UDI Entry Type (Required)
... status ?!Σ 0..1 code active | inactive | entered-in-error
Binding: FHIR Device Status (Required)
... availabilityStatus 0..1 CodeableConcept lost | damaged | destroyed | available
Binding: FHIR Device Availability Status (Extensible)
... biologicalSourceEvent 0..1 Identifier An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
... manufacturer 0..1 string Name of device manufacturer
... manufactureDate 0..1 dateTime Date when the device was made
... expirationDate 0..1 dateTime Date and time of expiry of this device (if applicable)
... lotNumber 0..1 string Lot number of manufacture
... serialNumber 0..1 string Serial number assigned by the manufacturer
... name C 0..* BackboneElement The name or names of the device as known to the manufacturer and/or patient

.... value Σ 1..1 string The term that names the device
.... type Σ 1..1 CodeableConcept registered-name | user-friendly-name | patient-reported-name
Binding: Device Name Type (Extensible)
.... display ?!ΣC 0..1 boolean The preferred device name
... modelNumber 0..1 string The manufacturer's model number for the device
... partNumber 0..1 string The part number or catalog number of the device
... category 0..* CodeableConcept Indicates a high-level grouping of the device
Binding: FHIR Device Category (Example)

... type 0..* CodeableConcept The kind or type of device
Binding: Device Type (Example)

... deviceVersion 0..* BackboneElement The actual design of the device or software version running on the device

.... type 0..1 CodeableConcept The type of the device version, e.g. manufacturer, approved, internal
Binding: Device Version Type (Example)
.... component 0..1 Identifier The hardware or software module of the device to which the version applies
.... installDate 0..1 dateTime The date the version was installed on the device
.... value 1..1 string The version text
... conformsTo 0..* BackboneElement Identifies the standards, specifications, or formal guidances for the capabilities supported by the device

.... category 0..1 CodeableConcept Describes the common type of the standard, specification, or formal guidance. communication | performance | measurement
Binding: Device Specification Category (Example)
.... specification 1..1 CodeableConcept Identifies the standard, specification, or formal guidance that the device adheres to
Binding: Device Specification Type (Example)
.... version 0..1 string Specific form or variant of the standard
... property 0..* BackboneElement Inherent, essentially fixed, characteristics of the device. e.g., time properties, size, material, etc.

.... type 1..1 CodeableConcept Code that specifies the property being represented
Binding: Device Property Type (Example)
.... value[x] 1..1 Value of the property
..... valueQuantity Quantity
..... valueCodeableConcept CodeableConcept
..... valueString string
..... valueBoolean boolean
..... valueInteger integer
..... valueRange Range
..... valueAttachment Attachment
... mode 0..1 CodeableConcept The designated condition for performing a task
Binding: FHIR Device Operation Mode (Example)
... cycle 0..1 Count The series of occurrences that repeats during the operation of the device
... duration 0..1 Duration A measurement of time during the device's operation (e.g., days, hours, mins, etc.)
... owner 0..1 Reference(Organization) Organization responsible for device
... contact 0..* ContactPoint Details for human/organization for support

... location 0..1 Reference(Location) Where the device is found
... url 0..1 uri Network address to contact device
... endpoint 0..* Reference(Endpoint) Technical endpoints providing access to electronic services provided by the device

... gateway 0..* CodeableReference(Device) Linked device acting as a communication/data collector, translator or controller

... note 0..* Annotation Device notes and comments

... safety Σ 0..* CodeableConcept Safety Characteristics of Device
Binding: Device Safety (Example)

... parent 0..1 Reference(Device) The higher level or encompassing device that this device is a logical part of

doco Documentation for this format icon

See the Extensions for this resource

UML Diagram (Legend)

Device (DomainResource)Unique instance identifiers assigned to a device by manufacturers other organizations or ownersidentifier : Identifier [0..*]The reference to the definition for the devicedefinition : CodeableReference [0..1] « DeviceDefinition; null (Strength=Required)DeviceType! »The Device record status. This is not the status of the device like availability (this element modifies the meaning of other elements)status : code [0..1] « null (Strength=Required)FHIRDeviceStatus! »The availability of the deviceavailabilityStatus : CodeableConcept [0..1] « null (Strength=Extensible) FHIRDeviceAvailabilityStatus+ »An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooledbiologicalSourceEvent : Identifier [0..1]A name of the manufacturer or entity legally responsible for the devicemanufacturer : string [0..1]The date and time when the device was manufacturedmanufactureDate : dateTime [0..1]The date and time beyond which this device is no longer valid or should not be used (if applicable)expirationDate : dateTime [0..1]Lot number assigned by the manufacturerlotNumber : string [0..1]The serial number assigned by the organization when the device was manufacturedserialNumber : string [0..1]The manufacturer's model number for the devicemodelNumber : string [0..1]The part number or catalog number of the devicepartNumber : string [0..1]Devices may be associated with one or more categoriescategory : CodeableConcept [0..*] « null (Strength=Example)FHIRDeviceCategory?? »The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the devicetype : CodeableConcept [0..*] « null (Strength=Example)DeviceType?? »The designated condition for performing a task with the devicemode : CodeableConcept [0..1] « null (Strength=Example)FHIRDeviceOperationMode?? »The series of occurrences that repeats during the operation of the devicecycle : Count [0..1]A measurement of time during the device's operation (e.g., days, hours, mins, etc.)duration : Duration [0..1]An organization that is responsible for the provision and ongoing maintenance of the deviceowner : Reference [0..1] « Organization »Contact details for an organization or a particular human that is responsible for the devicecontact : ContactPoint [0..*]The place where the device can be foundlocation : Reference [0..1] « Location »A network address on which the device may be contacted directlyurl : uri [0..1]Technical endpoints providing access to services provided by the device defined at this resourceendpoint : Reference [0..*] « Endpoint »The linked device acting as a communication controller, data collector, translator, or concentrator for the current device (e.g., mobile phone application that relays a blood pressure device's data)gateway : CodeableReference [0..*] « Device »Descriptive information, usage information or implantation information that is not captured in an existing elementnote : Annotation [0..*]Provides additional safety characteristics about a medical device. For example devices containing latexsafety : CodeableConcept [0..*] « null (Strength=Example)DeviceSafety?? »The higher level or encompassing device that this device is a logical part ofparent : Reference [0..1] « Device »UdiCarrierThe device identifier (DI) is a mandatory, fixed portion of a UDI that identifies the labeler and the specific version or model of a devicedeviceIdentifier : string [1..1]Establishes the namespace for the device identifier value that is an URL, OID, urn or uuiddeviceIdentifierSystem : uri [0..1]Organization that is charged with issuing UDIs for devices. For example, the US FDA issuers include: 1) GS1: http://hl7.org/fhir/NamingSystem/gs1-di, 2) HIBCC: http://hl7.org/fhir/NamingSystem/hibcc-diI, 3) ICCBBA for blood containers: http://hl7.org/fhir/NamingSystem/iccbba-blood-di, 4) ICCBA for other devices: http://hl7.org/fhir/NamingSystem/iccbba-other-di # Informationsstelle für Arzneispezialitäten (IFA GmbH) (EU only): http://hl7.org/fhir/NamingSystem/ifa-gmbh-diissuer : uri [1..1]The identity of the authoritative source for UDI generation within a jurisdiction. All UDIs are globally unique within a single namespace with the appropriate repository uri as the system. For example, UDIs of devices managed in the U.S. by the FDA, the value is http://hl7.org/fhir/NamingSystem/us-fda-udi or in the European Union by the European Commission http://hl7.org/fhir/NamingSystem/eu-ec-udijurisdiction : uri [0..1]The full UDI carrier of the Automatic Identification and Data Capture (AIDC) technology representation of the barcode string as printed on the packaging of the device - e.g., a barcode or RFID. Because of limitations on character sets in XML and the need to round-trip JSON data through XML, AIDC Formats *SHALL* be base64 encodedcarrierAIDC : base64Binary [0..1]The full UDI carrier as the human readable form (HRF) representation of the barcode string as printed on the packaging of the devicecarrierHRF : string [0..1]A coded entry to indicate how the data was enteredentryType : code [0..1] « null (Strength=Required)UDIEntryType! »NameThe actual name that identifies the devicevalue : string [1..1]Indicates the kind of name. RegisteredName | UserFriendlyName | PatientReportedNametype : CodeableConcept [1..1] « null (Strength=Extensible)DeviceNameType+ »Indicates the default or preferred name to be displayed (this element modifies the meaning of other elements)display : boolean [0..1] « This element has or is affected by some invariantsC »DeviceVersionThe type of the device version, e.g. manufacturer, approved, internaltype : CodeableConcept [0..1] « null (Strength=Example)DeviceVersionType?? »The hardware or software module of the device to which the version appliescomponent : Identifier [0..1]The date the version was installed on the deviceinstallDate : dateTime [0..1]The version textvalue : string [1..1]ConformsToDescribes the type of the standard, specification, or formal guidancecategory : CodeableConcept [0..1] « null (Strength=Example)DeviceSpecificationCategory?? »Code that identifies the specific standard, specification, protocol, formal guidance, regulation, legislation, or certification scheme to which the device adheresspecification : CodeableConcept [1..1] « null (Strength=Example)DeviceSpecificationType?? »Identifies the specific form or variant of the standard, specification, or formal guidance. This may be a 'version number', release, document edition, publication year, or other labelversion : string [0..1]PropertyCode that specifies the property, such as resolution, color, size, being representedtype : CodeableConcept [1..1] « null (Strength=Example)DeviceType?? »The value of the property specified by the associated property.type codevalue[x] : DataType [1..1] « Quantity|CodeableConcept|string|boolean| integer|Range|Attachment »Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been soldudiCarrier[0..*]This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinitionname[0..*]The actual design of the device or software version running on the devicedeviceVersion[0..*]Identifies the standards, specifications, or formal guidances for the capabilities supported by the device. The device may be certified as conformant to these specifications e.g., communication, performance, process, measurement, or specialization standardsconformsTo[0..*]Static or essentially fixed characteristics or features of the device (e.g., time or timing attributes, resolution, accuracy, intended use or instructions for use, and physical attributes) that are not otherwise captured in more specific attributesproperty[0..*]

XML Template

<Device xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Instance identifier --></identifier>
 <definition><!-- 0..1 CodeableReference(DeviceDefinition) The reference to the definition for the device --></definition>
 <udiCarrier>  <!-- 0..* Unique Device Identifier (UDI) Barcode string -->
  <deviceIdentifier value="[string]"/><!-- 1..1 Mandatory fixed portion of UDI -->
  <deviceIdentifierSystem value="[uri]"/><!-- 0..1 The namespace for the device identifier value -->
  <issuer value="[uri]"/><!-- 1..1 UDI Issuing Organization -->
  <jurisdiction value="[uri]"/><!-- 0..1 Regional UDI authority -->
  <carrierAIDC value="[base64Binary]"/><!-- 0..1 UDI Machine Readable Barcode String -->
  <carrierHRF value="[string]"/><!-- 0..1 UDI Human Readable Barcode String -->
  <entryType value="[code]"/><!-- 0..1 barcode | rfid | manual | card | self-reported | electronic-transmission | unknown -->
 </udiCarrier>
 <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error -->
 <availabilityStatus><!-- 0..1 CodeableConcept lost | damaged | destroyed | available --></availabilityStatus>
 <biologicalSourceEvent><!-- 0..1 Identifier An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled --></biologicalSourceEvent>
 <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) -->
 <lotNumber value="[string]"/><!-- 0..1 Lot number of manufacture -->
 <serialNumber value="[string]"/><!-- 0..1 Serial number assigned by the manufacturer -->
 <name>  <!-- I 0..* The name or names of the device as known to the manufacturer and/or patient -->
  <value value="[string]"/><!-- 1..1 The term that names the device -->
  <type><!-- 1..1 CodeableConcept registered-name | user-friendly-name | patient-reported-name --></type>
  <display value="[boolean]"/><!-- I 0..1 The preferred device name -->
 </name>
 <modelNumber value="[string]"/><!-- 0..1 The manufacturer's model number for the device -->
 <partNumber value="[string]"/><!-- 0..1 The part number or catalog number of the device -->
 <category><!-- 0..* CodeableConcept Indicates a high-level grouping of the device --></category>
 <type><!-- 0..* CodeableConcept The kind or type of device --></type>
 <deviceVersion>  <!-- 0..* The actual design of the device or software version running on the device -->
  <type><!-- 0..1 CodeableConcept The type of the device version, e.g. manufacturer, approved, internal --></type>
  <component><!-- 0..1 Identifier The hardware or software module of the device to which the version applies --></component>
  <installDate value="[dateTime]"/><!-- 0..1 The date the version was installed on the device -->
  <value value="[string]"/><!-- 1..1 The version text -->
 </deviceVersion>
 <conformsTo>  <!-- 0..* Identifies the standards, specifications, or formal guidances for the capabilities supported by the device -->
  <category><!-- 0..1 CodeableConcept Describes the common type of the standard, specification, or formal guidance.  communication | performance | measurement --></category>
  <specification><!-- 1..1 CodeableConcept Identifies the standard, specification, or formal guidance that the device adheres to --></specification>
  <version value="[string]"/><!-- 0..1 Specific form or variant of the standard -->
 </conformsTo>
 <property>  <!-- 0..* Inherent, essentially fixed, characteristics of the device.  e.g., time properties, size, material, etc. -->
  <type><!-- 1..1 CodeableConcept Code that specifies the property being represented --></type>
  <value[x]><!-- 1..1 Quantity|CodeableConcept|string|boolean|integer|Range|
    Attachment Value of the property --></value[x]>
 </property>
 <mode><!-- 0..1 CodeableConcept The designated condition for performing a task --></mode>
 <cycle><!-- 0..1 Count The series of occurrences that repeats during the operation of the device --></cycle>
 <duration><!-- 0..1 Duration A measurement of time during the device's operation (e.g., days, hours, mins, etc.) --></duration>
 <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 device is found --></location>
 <url value="[uri]"/><!-- 0..1 Network address to contact device -->
 <endpoint><!-- 0..* Reference(Endpoint) Technical endpoints providing access to electronic services provided by the device --></endpoint>
 <gateway><!-- 0..* CodeableReference(Device) Linked device acting as a communication/data collector, translator or controller --></gateway>
 <note><!-- 0..* Annotation Device notes and comments --></note>
 <safety><!-- 0..* CodeableConcept Safety Characteristics of Device --></safety>
 <parent><!-- 0..1 Reference(Device) The higher level or encompassing device that this device is a logical part of --></parent>
</Device>

JSON Template

{doco
  "resourceType" : "Device",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Instance identifier
  "definition" : { CodeableReference(DeviceDefinition) }, // The reference to the definition for the device
  "udiCarrier" : [{ // Unique Device Identifier (UDI) Barcode string
    "deviceIdentifier" : "<string>", // R!  Mandatory fixed portion of UDI
    "deviceIdentifierSystem" : "<uri>", // The namespace for the device identifier value
    "issuer" : "<uri>", // R!  UDI Issuing Organization
    "jurisdiction" : "<uri>", // Regional UDI authority
    "carrierAIDC" : "<base64Binary>", // UDI Machine Readable Barcode String
    "carrierHRF" : "<string>", // UDI Human Readable Barcode String
    "entryType" : "<code>" // barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
  }],
  "status" : "<code>", // active | inactive | entered-in-error
  "availabilityStatus" : { CodeableConcept }, // lost | damaged | destroyed | available
  "biologicalSourceEvent" : { Identifier }, // An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
  "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)
  "lotNumber" : "<string>", // Lot number of manufacture
  "serialNumber" : "<string>", // Serial number assigned by the manufacturer
  "name" : [{ // I The name or names of the device as known to the manufacturer and/or patient
    "value" : "<string>", // R!  The term that names the device
    "type" : { CodeableConcept }, // R!  registered-name | user-friendly-name | patient-reported-name
    "display" : <boolean> // I The preferred device name
  }],
  "modelNumber" : "<string>", // The manufacturer's model number for the device
  "partNumber" : "<string>", // The part number or catalog number of the device
  "category" : [{ CodeableConcept }], // Indicates a high-level grouping of the device
  "type" : [{ CodeableConcept }], // The kind or type of device
  "deviceVersion" : [{ // The actual design of the device or software version running on the device
    "type" : { CodeableConcept }, // The type of the device version, e.g. manufacturer, approved, internal
    "component" : { Identifier }, // The hardware or software module of the device to which the version applies
    "installDate" : "<dateTime>", // The date the version was installed on the device
    "value" : "<string>" // R!  The version text
  }],
  "conformsTo" : [{ // Identifies the standards, specifications, or formal guidances for the capabilities supported by the device
    "category" : { CodeableConcept }, // Describes the common type of the standard, specification, or formal guidance.  communication | performance | measurement
    "specification" : { CodeableConcept }, // R!  Identifies the standard, specification, or formal guidance that the device adheres to
    "version" : "<string>" // Specific form or variant of the standard
  }],
  "property" : [{ // Inherent, essentially fixed, characteristics of the device.  e.g., time properties, size, material, etc.
    "type" : { CodeableConcept }, // R!  Code that specifies the property being represented
    // value[x]: Value of the property. One of these 7:
    "valueQuantity" : { Quantity },
    "valueCodeableConcept" : { CodeableConcept },
    "valueString" : "<string>",
    "valueBoolean" : <boolean>,
    "valueInteger" : <integer>,
    "valueRange" : { Range },
    "valueAttachment" : { Attachment }
  }],
  "mode" : { CodeableConcept }, // The designated condition for performing a task
  "cycle" : { Count }, // The series of occurrences that repeats during the operation of the device
  "duration" : { Duration }, // A measurement of time during the device's operation (e.g., days, hours, mins, etc.)
  "owner" : { Reference(Organization) }, // Organization responsible for device
  "contact" : [{ ContactPoint }], // Details for human/organization for support
  "location" : { Reference(Location) }, // Where the device is found
  "url" : "<uri>", // Network address to contact device
  "endpoint" : [{ Reference(Endpoint) }], // Technical endpoints providing access to electronic services provided by the device
  "gateway" : [{ CodeableReference(Device) }], // Linked device acting as a communication/data collector, translator or controller
  "note" : [{ Annotation }], // Device notes and comments
  "safety" : [{ CodeableConcept }], // Safety Characteristics of Device
  "parent" : { Reference(Device) } // The higher level or encompassing device that this device is a logical part of
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ 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:identifier  ( [ Identifier ] ... ) ; # 0..* Instance identifier
  fhir:definition [ CodeableReference(DeviceDefinition) ] ; # 0..1 The reference to the definition for the device
  fhir:udiCarrier ( [ # 0..* Unique Device Identifier (UDI) Barcode string
    fhir:deviceIdentifier [ string ] ; # 1..1 Mandatory fixed portion of UDI
    fhir:deviceIdentifierSystem [ uri ] ; # 0..1 The namespace for the device identifier value
    fhir:issuer [ uri ] ; # 1..1 UDI Issuing Organization
    fhir:jurisdiction [ uri ] ; # 0..1 Regional UDI authority
    fhir:carrierAIDC [ base64Binary ] ; # 0..1 UDI Machine Readable Barcode String
    fhir:carrierHRF [ string ] ; # 0..1 UDI Human Readable Barcode String
    fhir:entryType [ code ] ; # 0..1 barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
  ] ... ) ;
  fhir:status [ code ] ; # 0..1 active | inactive | entered-in-error
  fhir:availabilityStatus [ CodeableConcept ] ; # 0..1 lost | damaged | destroyed | available
  fhir:biologicalSourceEvent [ Identifier ] ; # 0..1 An identifier that supports traceability to the event during which material in this product from one or more biological entities was obtained or pooled
  fhir:manufacturer [ string ] ; # 0..1 Name of device manufacturer
  fhir:manufactureDate [ dateTime ] ; # 0..1 Date when the device was made
  fhir:expirationDate [ dateTime ] ; # 0..1 Date and time of expiry of this device (if applicable)
  fhir:lotNumber [ string ] ; # 0..1 Lot number of manufacture
  fhir:serialNumber [ string ] ; # 0..1 Serial number assigned by the manufacturer
  fhir:name ( [ # 0..* I The name or names of the device as known to the manufacturer and/or patient
    fhir:value [ string ] ; # 1..1 The term that names the device
    fhir:type [ CodeableConcept ] ; # 1..1 registered-name | user-friendly-name | patient-reported-name
    fhir:display [ boolean ] ; # 0..1 I The preferred device name
  ] ... ) ;
  fhir:modelNumber [ string ] ; # 0..1 The manufacturer's model number for the device
  fhir:partNumber [ string ] ; # 0..1 The part number or catalog number of the device
  fhir:category  ( [ CodeableConcept ] ... ) ; # 0..* Indicates a high-level grouping of the device
  fhir:type  ( [ CodeableConcept ] ... ) ; # 0..* The kind or type of device
  fhir:deviceVersion ( [ # 0..* The actual design of the device or software version running on the device
    fhir:type [ CodeableConcept ] ; # 0..1 The type of the device version, e.g. manufacturer, approved, internal
    fhir:component [ Identifier ] ; # 0..1 The hardware or software module of the device to which the version applies
    fhir:installDate [ dateTime ] ; # 0..1 The date the version was installed on the device
    fhir:value [ string ] ; # 1..1 The version text
  ] ... ) ;
  fhir:conformsTo ( [ # 0..* Identifies the standards, specifications, or formal guidances for the capabilities supported by the device
    fhir:category [ CodeableConcept ] ; # 0..1 Describes the common type of the standard, specification, or formal guidance.  communication | performance | measurement
    fhir:specification [ CodeableConcept ] ; # 1..1 Identifies the standard, specification, or formal guidance that the device adheres to
    fhir:version [ string ] ; # 0..1 Specific form or variant of the standard
  ] ... ) ;
  fhir:property ( [ # 0..* Inherent, essentially fixed, characteristics of the device.  e.g., time properties, size, material, etc.
    fhir:type [ CodeableConcept ] ; # 1..1 Code that specifies the property being represented
    # value[x] : 1..1 Value of the property. One of these 7
      fhir:value [  a fhir:Quantity ; Quantity ]
      fhir:value [  a fhir:CodeableConcept ; CodeableConcept ]
      fhir:value [  a fhir:string ; string ]
      fhir:value [  a fhir:boolean ; boolean ]
      fhir:value [  a fhir:integer ; integer ]
      fhir:value [  a fhir:Range ; Range ]
      fhir:value [  a fhir:Attachment ; Attachment ]
  ] ... ) ;
  fhir:mode [ CodeableConcept ] ; # 0..1 The designated condition for performing a task
  fhir:cycle [ Count ] ; # 0..1 The series of occurrences that repeats during the operation of the device
  fhir:duration [ Duration ] ; # 0..1 A measurement of time during the device's operation (e.g., days, hours, mins, etc.)
  fhir:owner [ Reference(Organization) ] ; # 0..1 Organization responsible for device
  fhir:contact  ( [ ContactPoint ] ... ) ; # 0..* Details for human/organization for support
  fhir:location [ Reference(Location) ] ; # 0..1 Where the device is found
  fhir:url [ uri ] ; # 0..1 Network address to contact device
  fhir:endpoint  ( [ Reference(Endpoint) ] ... ) ; # 0..* Technical endpoints providing access to electronic services provided by the device
  fhir:gateway  ( [ CodeableReference(Device) ] ... ) ; # 0..* Linked device acting as a communication/data collector, translator or controller
  fhir:note  ( [ Annotation ] ... ) ; # 0..* Device notes and comments
  fhir:safety  ( [ CodeableConcept ] ... ) ; # 0..* Safety Characteristics of Device
  fhir:parent [ Reference(Device) ] ; # 0..1 The higher level or encompassing device that this device is a logical part of
]

Changes from both R4 and R4B

Device
Device.definition
  • Type changed from Reference(DeviceDefinition) to CodeableReference
  • Add Binding `http://hl7.org/fhir/ValueSet/device-type|6.0.0-ballot2` (required)
Device.udiCarrier.deviceIdentifier
  • Min Cardinality changed from 0 to 1
Device.udiCarrier.deviceIdentifierSystem
  • Added Element
Device.udiCarrier.issuer
  • Min Cardinality changed from 0 to 1
Device.udiCarrier.entryType
  • Add code electronic-transmission
Device.status
  • Remove code unknown
Device.availabilityStatus
  • Added Element
Device.biologicalSourceEvent
  • Added Element
Device.name
  • Renamed from deviceName to name
Device.name.value
  • Added Mandatory Element
Device.name.type
  • Moved from Device.deviceName to Device.name
  • Type changed from code to CodeableConcept
  • Change binding strength from required to extensible
Device.name.display
  • Added Element
Device.category
  • Added Element
Device.type
  • Max Cardinality changed from 1 to *
Device.deviceVersion
  • Added Element
Device.deviceVersion.type
  • Added Element
Device.deviceVersion.component
  • Added Element
Device.deviceVersion.installDate
  • Added Element
Device.deviceVersion.value
  • Added Mandatory Element
Device.conformsTo
  • Renamed from specialization to conformsTo
Device.conformsTo.category
  • Added Element
Device.conformsTo.specification
  • Added Mandatory Element
Device.conformsTo.version
  • Moved from Device.specialization to Device.conformsTo
Device.property.value[x]
  • Added Mandatory Element
Device.mode
  • Added Element
Device.cycle
  • Added Element
Device.duration
  • Added Element
Device.endpoint
  • Added Element
Device.gateway
  • Added Element
Device.statusReason
  • Deleted (-> reason was removed. DeviceAssociation can be used)
Device.distinctIdentifier
  • Deleted
Device.deviceName.name
  • Deleted
Device.specialization.systemType
  • Deleted
Device.version
  • Deleted
Device.property.valueQuantity
  • Deleted
Device.property.valueCode
  • Deleted
Device.patient
  • Deleted (-> patient association is in DeviceAssociation)

See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.

 

Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis

Path ValueSet Type Documentation
Device.definition DeviceType Required

Codes used to identify medical devices. Includes concepts from SNOMED CT (http://www.snomed.org/) where concept is-a 49062001 (Device) and is provided as a suggestive example.

Device.udiCarrier.entryType UDIEntryType Required

Codes to identify how UDI data was entered.

Device.status FHIRDeviceStatus Required

The status of the Device record.

Device.availabilityStatus FHIRDeviceAvailabilityStatus Extensible

The availability status of the device.

Device.name.type DeviceNameType Extensible

The type of name the device is referred by.

Device.category FHIRDeviceCategory Example

The association state of the device.

Device.type DeviceType Example

Codes used to identify medical devices. Includes concepts from SNOMED CT (http://www.snomed.org/) where concept is-a 49062001 (Device) and is provided as a suggestive example.

Device.deviceVersion.type DeviceVersionType Example

Describes the type of version

Device.conformsTo.category DeviceSpecificationCategory (a valid code from FHIR Device Specialization Category) Example

The kind of standards used by the device.

Device.conformsTo.specification DeviceSpecificationType Example

The type or specification of a standard that devices can adhere to

Device.property.type DeviceType Example

Codes used to identify medical devices. Includes concepts from SNOMED CT (http://www.snomed.org/) where concept is-a 49062001 (Device) and is provided as a suggestive example.

Device.mode FHIRDeviceOperationMode Example

The operation mode of the device.

Device.safety DeviceSafety Example

Codes used to identify medical devices safety characteristics. These codes are taken from the NCI Thesaurus icon and are provided here as a suggestive example.

UniqueKeyLevelLocationDescriptionExpression
img dev-1Rule (base)only one Device.name.display SHALL be true when there is more than one Device.namename.where(display=true).count() <= 1

Nearly all devices are assigned a string of characters to represent one or more identifiers or codes, which are usually printed or affixed to the device using either barcodes or RFIDs. The identifier or code can come from the manufacturer (for example, a 'serial number', 'reference number', or 'catalog number'), various institution and registries. Any of these identifiers or codes assigned to the device can and should be recorded in the device resource. However, there can there can be confusion where to represent them in the resource because codes and identifiers are represented in FHIR as semantically distinct elements and because organizations may conflate the term 'code' for an identifier or 'identifier' for a code in their names.

The identifier element is only intended for use when it's an actual identifier for a specific instance of a device. That would mean that each device would have a separate serial number and would be represented using this element - devices without serial numbers (for example, a box of syringes) would not. Concepts such as a reference number or catalog number or GTIN describe a code which represents a kind of device and are conveyed using the type element. Some sources of standard codes for devices and translations within type are listed below:

For systems that do have a system URI for device types (indicating the model number or part number), they can and should appear as codings in Device.type.

The International Medical Device Regulators Forum IMDRF UDI Working Group published UDI System for Medical Devices (Version 2.0) icon, the base specification for Unique Device Identifiers (UDI). The United States Food and Drug Administration has produced an implementation guide icon 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*:

  • Device identifier (DI)**, which is the actual identification component
  • Production identifier(s)(PI) which provide the means to track a device through its manufacture, distribution and use.

*non-UDI elements may also appear within the UDI carrier. **a "GTIN" (sometimes also called an EAN number) is a code developed by GS1 icon 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) icon. 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, expiration 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 further guidance.

Devices.status is about the record, while operationalStatus and associationStatus are about other aspects of the device.

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
biological-source-event token The biological source for the device Device.biologicalSourceEvent
code token The definition / type of the device (code) Device.definition.concept
code-value-concept composite Code and value parameter pair On Device:
  specification: specification.ofType(CodeableConcept)
  version: version.ofType(string)
definition reference The definition / type of the device Device.definition.reference
device-name string A server defined search that may match any of the string fields in Device.name or Device.type. Device.name.value | Device.type.coding.display | Device.type.text
expiration-date date The expiration date of the device Device.expirationDate
identifier token Instance id from manufacturer, owner, and others Device.identifier
location reference A location, where the resource is found Device.location
(Location)
lot-number string The lot number of the device Device.lotNumber
manufacture-date date The manufacture date of the device Device.manufactureDate
manufacturer string The manufacturer of the device Device.manufacturer
model string The model of the device Device.modelNumber
organization reference The organization responsible for the device Device.owner
(Organization)
parent reference The parent device Device.parent
(Device)
serial-number string The serial number of the device Device.serialNumber | Device.identifier.where(type='SNO')
specification token The standards, specifications, or formal guidances. Device.conformsTo.specification
specification-version composite A composite of both specification and version On Device.conformsTo:
  specification: specification
  version: version
status token active | inactive | entered-in-error | unknown Device.status
type token The type of the device Device.type
udi-carrier-hrf string

UDI Barcode (RFID or other technology) string in HRF format.

Device.udiCarrier.carrierHRF
udi-di string The udi Device Identifier (DI) Device.udiCarrier.deviceIdentifier
url uri Network address to contact device Device.url
version string The specific version of the device Device.deviceVersion.value
version-type composite Value and type of version On Device.deviceVersion:
  type: type
  value: value