Release 5 Ballot

This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). 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

8.14 Resource Device - Content

Orders and Observations Work GroupMaturity Level: 2 Trial UseSecurity Category: Business Compartments: Patient

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

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. 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 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 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. US Food and Drug Administration Center for Devices and Radiological Health In Vitro Diagnostics and Drug Administration Center for Devices and Radiological Health In Vitro Diagnostics 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. 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 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

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.

These are the device related resources

  • Device (this resource)
  • DeviceDefinition  - Describes a "kind" of device - not a physical instance. A kind of device is frequently defined and documented by the manufacturer, reseller, or regulatory. Documentation would include general information any information that applies to any instance 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. A Device may include multiple device metrics, each yielding a different observation.
  • 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 TUDomainResourceItem used in healthcare

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

... displayName 0..1stringThe name used to display by default when the device is referenced
... definition 0..1CodeableReference(DeviceDefinition)The reference to the definition for the device
... udiCarrier Σ0..*BackboneElementUnique Device Identifier (UDI) Barcode string

.... deviceIdentifier Σ1..1stringMandatory fixed portion of UDI
.... issuer Σ1..1uriUDI Issuing Organization
.... jurisdiction 0..1uriRegional UDI authority
.... carrierAIDC Σ0..1base64BinaryUDI Machine Readable Barcode String
.... carrierHRF Σ0..1stringUDI Human Readable Barcode String
.... entryType 0..1codebarcode | rfid | manual | card | self-reported | electronic-transmission | unknown
UDIEntryType (Required)
... status ?!Σ0..1codeactive | inactive | entered-in-error
FHIRDeviceStatus (Required)
... availabilityStatus 0..1CodeableConceptlost | damaged | destroyed | available
FHIRDeviceAvailabilityStatus (Extensible)
... biologicalSourceEvent 0..1IdentifierAn 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..1stringName of device manufacturer
... manufactureDate 0..1dateTimeDate when the device was made
... expirationDate 0..1dateTimeDate and time of expiry of this device (if applicable)
... lotNumber 0..1stringLot number of manufacture
... serialNumber 0..1stringSerial number assigned by the manufacturer
... deviceName 0..*BackboneElementThe name or names of the device as known to the manufacturer and/or patient

.... name 1..1stringThe name that identifies the device
.... type 1..1coderegistered-name | user-friendly-name | patient-reported-name
DeviceNameType (Required)
... modelNumber 0..1stringThe manufacturer's model number for the device
... partNumber 0..1stringThe part number or catalog number of the device
... category 0..*CodeableConceptIndicates a high-level grouping of the device
FHIRDeviceCategory (Example)

... type 0..*CodeableConceptThe kind or type of device
Device Type (Example)

... version 0..*BackboneElementThe actual design of the device or software version running on the device

.... type 0..1CodeableConceptThe type of the device version, e.g. manufacturer, approved, internal
Device Version Type (Example)
.... component 0..1IdentifierThe hardware or software module of the device to which the version applies
.... installDate 0..1dateTimeThe date the version was installed on the device
.... value 1..1stringThe version text
... specialization 0..*BackboneElementThe standard(s) the device supports

.... systemType 1..1CodeableConceptCode of the system that identifies the standard that the device adheres to
Device Specialization System Type (Example)
.... version 0..1stringStandard version used
.... category 0..1Codingcommunication | performance | measurement
FHIRDeviceSpecializationCategory (Example)
... property 0..*BackboneElementThe actual configuration settings of a device as it actually operates, e.g., regulation status, time properties

.... type 1..1CodeableConceptCode that specifies the property being represented
Device Property Type (Example)
.... value[x] 1..1Property value - as a code, quantity, boolean, string or attachment
..... valueQuantityQuantity
..... valueCodeableConceptCodeableConcept
..... valueStringstring
..... valueBooleanboolean
..... valueIntegerinteger
..... valueRangeRange
..... valueAttachmentAttachment
... operation 0..*BackboneElementThe details about the device when it is in use to describe the actions, conditions and status

.... status 1..1CodeableConceptDevice operational condition
FHIRDeviceOperationStatus (Example)
.... statusReason 0..*CodeableConceptThe rationale given for the current operational status
FHIRDeviceOperatonStatusReason (Example)

.... operator 0..*Reference(Patient | Practitioner | RelatedPerson)The individual performing the action enabled by the device

.... mode 0..1CodeableConceptThe designated condition for performing a task
FHIRDeviceOperationMode (Example)
.... cycle 0..1CountThe series of occurrences that repeats during the operation of the device
.... duration 0..1DurationA measurement of time during the device's operation (e.g., days, hours, mins, etc)
... association Σ0..*BackboneElementCurrent association of the device

.... status Σ1..1CodeableConceptDevice useage state
FHIRDeviceAssociationStatus (Example)
.... statusReason 0..*CodeableConceptThe reasons given for the current association status

.... humanSubject 0..1Reference(Patient)The individual associated with the device
.... bodyStructure Σ0..1CodeableReference(BodyStructure)Current anatomical location of device in/on humanSubject
... owner 0..1Reference(Organization)Organization responsible for device
... contact 0..*ContactPointDetails for human/organization for support

... location 0..1Reference(Location)Where the device is found
... url 0..1uriNetwork 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..*AnnotationDevice notes and comments

... safety Σ0..*CodeableConceptSafety Characteristics of Device
DeviceSafety (Example)

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

doco Documentation for this format

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 name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple namedisplayName : string [0..1]The reference to the definition for the devicedefinition : CodeableReference [0..1] « DeviceDefinition »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?? »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/data collector, translator or controller 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]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! »DeviceNameThe name that identifies the devicename : string [1..1]The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. RegisteredName | UserFriendlyName | PatientReportedNametype : code [1..1] « null (Strength=Required)DeviceNameType! »VersionThe 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]SpecializationCode that specifies the system that identifies the specific standard that the device adheres tosystemType : CodeableConcept [1..1] « null (Strength=Example)DeviceSpecializationSystemType?? »The version of the standard that is used to operate and communicateversion : string [0..1]Kind of standards that the device adheres to, e.g., communication, performance or communicationcategory : Coding [0..1] « null (Strength=Example)FHIRDeviceSpecializationCateg...?? »PropertyCode that specifies the property being represented. No codes are specified but the MDC codes are an example: https://terminology.hl7.org/MDC.htmltype : CodeableConcept [1..1] « null (Strength=Example)DeviceType?? »Property value - can be a code, quantity, boolean, string or attachmentvalue[x] : DataType [1..1] « Quantity|CodeableConcept|string|boolean| integer|Range|Attachment »OperationThe state or condition of the device's operationstatus : CodeableConcept [1..1] « null (Strength=Example)FHIRDeviceOperationStatus?? »The reasons given for the current operational status - i.e. why is the device switched on etcstatusReason : CodeableConcept [0..*] « null (Strength=Example) FHIRDeviceOperationStatusReas...?? »The individual performing the action enabled by the deviceoperator : Reference [0..*] « Patient|Practitioner|RelatedPerson »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]AssociationThe state of the usage or application of the devicestatus : CodeableConcept [1..1] « null (Strength=Example)FHIRDeviceAssociationStatus?? »The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etcstatusReason : CodeableConcept [0..*]The individual to whom the device is affixed or inserted in their bodyhumanSubject : Reference [0..1] « Patient »The current anatomical location of the device in/on the humanSubject where it is attached or placedbodyStructure : CodeableReference [0..1] « BodyStructure »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 DeviceDefinitiondeviceName[0..*]The actual design of the device or software version running on the deviceversion[0..*]The standards to which the device adheres and may be certified to in support of its capabilities, e.g., communication, performance, process, or measurement standardsspecialization[0..*]Characteristics or features of the device that are otherwise not captured in available attributes, e.g., actual configuration settings, time or timing attributes, resolution, accuracy, and physical attributes. The focus is on properties of the device actually in use while DeviceDefinition focuses on properties that are available to be usedproperty[0..*]The status of the device itself - whether it is switched on, or activated, etcoperation[0..*]The details about the device when it is affixed or inside of a patientassociation[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>
 <displayName value="[string]"/><!-- 0..1 The name used to display by default when the device is referenced -->
 <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 -->
  <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 -->
 <deviceName>  <!-- 0..* The name or names of the device as known to the manufacturer and/or patient -->
  <name value="[string]"/><!-- 1..1 The name that identifies the device -->
  <type value="[code]"/><!-- 1..1 registered-name | user-friendly-name | patient-reported-name -->
 </deviceName>
 <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>
 <version>  <!-- 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 -->
 </version>
 <specialization>  <!-- 0..* The standard(s) the device supports -->
  <systemType><!-- 1..1 CodeableConcept Code of the system that identifies the standard that the device adheres to --></systemType>
  <version value="[string]"/><!-- 0..1 Standard version used -->
  <category><!-- 0..1 Coding communication | performance | measurement --></category>
 </specialization>
 <property>  <!-- 0..* The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties -->
  <type><!-- 1..1 CodeableConcept Code that specifies the property being represented --></type>
  <value[x]><!-- 1..1 Quantity|CodeableConcept|string|boolean|integer|Range|
    Attachment Property value - as a code, quantity, boolean, string or attachment --></value[x]>
 </property>
 <operation>  <!-- 0..* The details about the device when it is in use to describe the actions, conditions and status -->
  <status><!-- 1..1 CodeableConcept Device operational condition --></status>
  <statusReason><!-- 0..* CodeableConcept The rationale given for the current operational status --></statusReason>
  <operator><!-- 0..* Reference(Patient|Practitioner|RelatedPerson) The individual performing the action enabled by the device --></operator>
  <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>
 </operation>
 <association>  <!-- 0..* Current association of the device -->
  <status><!-- 1..1 CodeableConcept Device useage state --></status>
  <statusReason><!-- 0..* CodeableConcept The reasons given for the current association status --></statusReason>
  <humanSubject><!-- 0..1 Reference(Patient) The individual associated with the device --></humanSubject>
  <bodyStructure><!-- 0..1 CodeableReference(BodyStructure) Current anatomical location of device in/on humanSubject --></bodyStructure>
 </association>
 <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
  "displayName" : "<string>", // The name used to display by default when the device is referenced
  "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
    "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
  "deviceName" : [{ // The name or names of the device as known to the manufacturer and/or patient
    "name" : "<string>", // R!  The name that identifies the device
    "type" : "<code>" // R!  registered-name | user-friendly-name | patient-reported-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
  "version" : [{ // 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
  }],
  "specialization" : [{ // The standard(s) the device supports
    "systemType" : { CodeableConcept }, // R!  Code of the system that identifies the standard that the device adheres to
    "version" : "<string>", // Standard version used
    "category" : { Coding } // communication | performance | measurement
  }],
  "property" : [{ // The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties
    "type" : { CodeableConcept }, // R!  Code that specifies the property being represented
    // value[x]: Property value - as a code, quantity, boolean, string or attachment. One of these 7:
    "valueQuantity" : { Quantity },
    "valueCodeableConcept" : { CodeableConcept },
    "valueString" : "<string>",
    "valueBoolean" : <boolean>,
    "valueInteger" : <integer>,
    "valueRange" : { Range },
    "valueAttachment" : { Attachment }
  }],
  "operation" : [{ // The details about the device when it is in use to describe the actions, conditions and status
    "status" : { CodeableConcept }, // R!  Device operational condition
    "statusReason" : [{ CodeableConcept }], // The rationale given for the current operational status
    "operator" : [{ Reference(Patient|Practitioner|RelatedPerson) }], // The individual performing the action enabled by the device
    "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)
  }],
  "association" : [{ // Current association of the device
    "status" : { CodeableConcept }, // R!  Device useage state
    "statusReason" : [{ CodeableConcept }], // The reasons given for the current association status
    "humanSubject" : { Reference(Patient) }, // The individual associated with the device
    "bodyStructure" : { CodeableReference(BodyStructure) } // Current anatomical location of device in/on humanSubject
  }],
  "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:Device.identifier [ Identifier ], ... ; # 0..* Instance identifier
  fhir:Device.displayName [ string ]; # 0..1 The name used to display by default when the device is referenced
  fhir:Device.definition [ CodeableReference(DeviceDefinition) ]; # 0..1 The reference to the definition for the device
  fhir:Device.udiCarrier [ # 0..* Unique Device Identifier (UDI) Barcode string
    fhir:Device.udiCarrier.deviceIdentifier [ string ]; # 1..1 Mandatory fixed portion of UDI
    fhir:Device.udiCarrier.issuer [ uri ]; # 1..1 UDI Issuing Organization
    fhir:Device.udiCarrier.jurisdiction [ uri ]; # 0..1 Regional UDI authority
    fhir:Device.udiCarrier.carrierAIDC [ base64Binary ]; # 0..1 UDI Machine Readable Barcode String
    fhir:Device.udiCarrier.carrierHRF [ string ]; # 0..1 UDI Human Readable Barcode String
    fhir:Device.udiCarrier.entryType [ code ]; # 0..1 barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
  ], ...;
  fhir:Device.status [ code ]; # 0..1 active | inactive | entered-in-error
  fhir:Device.availabilityStatus [ CodeableConcept ]; # 0..1 lost | damaged | destroyed | available
  fhir:Device.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: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.lotNumber [ string ]; # 0..1 Lot number of manufacture
  fhir:Device.serialNumber [ string ]; # 0..1 Serial number assigned by the manufacturer
  fhir:Device.deviceName [ # 0..* The name or names of the device as known to the manufacturer and/or patient
    fhir:Device.deviceName.name [ string ]; # 1..1 The name that identifies the device
    fhir:Device.deviceName.type [ code ]; # 1..1 registered-name | user-friendly-name | patient-reported-name
  ], ...;
  fhir:Device.modelNumber [ string ]; # 0..1 The manufacturer's model number for the device
  fhir:Device.partNumber [ string ]; # 0..1 The part number or catalog number of the device
  fhir:Device.category [ CodeableConcept ], ... ; # 0..* Indicates a high-level grouping of the device
  fhir:Device.type [ CodeableConcept ], ... ; # 0..* The kind or type of device
  fhir:Device.version [ # 0..* The actual design of the device or software version running on the device
    fhir:Device.version.type [ CodeableConcept ]; # 0..1 The type of the device version, e.g. manufacturer, approved, internal
    fhir:Device.version.component [ Identifier ]; # 0..1 The hardware or software module of the device to which the version applies
    fhir:Device.version.installDate [ dateTime ]; # 0..1 The date the version was installed on the device
    fhir:Device.version.value [ string ]; # 1..1 The version text
  ], ...;
  fhir:Device.specialization [ # 0..* The standard(s) the device supports
    fhir:Device.specialization.systemType [ CodeableConcept ]; # 1..1 Code of the system that identifies the standard that the device adheres to
    fhir:Device.specialization.version [ string ]; # 0..1 Standard version used
    fhir:Device.specialization.category [ Coding ]; # 0..1 communication | performance | measurement
  ], ...;
  fhir:Device.property [ # 0..* The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties
    fhir:Device.property.type [ CodeableConcept ]; # 1..1 Code that specifies the property being represented
    # Device.property.value[x] : 1..1 Property value - as a code, quantity, boolean, string or attachment. One of these 7
      fhir:Device.property.valueQuantity [ Quantity ]
      fhir:Device.property.valueCodeableConcept [ CodeableConcept ]
      fhir:Device.property.valueString [ string ]
      fhir:Device.property.valueBoolean [ boolean ]
      fhir:Device.property.valueInteger [ integer ]
      fhir:Device.property.valueRange [ Range ]
      fhir:Device.property.valueAttachment [ Attachment ]
  ], ...;
  fhir:Device.operation [ # 0..* The details about the device when it is in use to describe the actions, conditions and status
    fhir:Device.operation.status [ CodeableConcept ]; # 1..1 Device operational condition
    fhir:Device.operation.statusReason [ CodeableConcept ], ... ; # 0..* The rationale given for the current operational status
    fhir:Device.operation.operator [ Reference(Patient|Practitioner|RelatedPerson) ], ... ; # 0..* The individual performing the action enabled by the device
    fhir:Device.operation.mode [ CodeableConcept ]; # 0..1 The designated condition for performing a task
    fhir:Device.operation.cycle [ Count ]; # 0..1 The series of occurrences that repeats during the operation of the device
    fhir:Device.operation.duration [ Duration ]; # 0..1 A measurement of time during the device's operation (e.g., days, hours, mins, etc)
  ], ...;
  fhir:Device.association [ # 0..* Current association of the device
    fhir:Device.association.status [ CodeableConcept ]; # 1..1 Device useage state
    fhir:Device.association.statusReason [ CodeableConcept ], ... ; # 0..* The reasons given for the current association status
    fhir:Device.association.humanSubject [ Reference(Patient) ]; # 0..1 The individual associated with the device
    fhir:Device.association.bodyStructure [ CodeableReference(BodyStructure) ]; # 0..1 Current anatomical location of device in/on humanSubject
  ], ...;
  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 device is found
  fhir:Device.url [ uri ]; # 0..1 Network address to contact device
  fhir:Device.endpoint [ Reference(Endpoint) ], ... ; # 0..* Technical endpoints providing access to electronic services provided by the device
  fhir:Device.gateway [ CodeableReference(Device) ], ... ; # 0..* Linked device acting as a communication/data collector, translator or controller
  fhir:Device.note [ Annotation ], ... ; # 0..* Device notes and comments
  fhir:Device.safety [ CodeableConcept ], ... ; # 0..* Safety Characteristics of Device
  fhir:Device.parent [ Reference(Device) ]; # 0..1 The higher level or encompassing device that this device is a logical part of
]

Changes since R4

Device
Device.displayName
  • Added Element
Device.definition
  • Type changed from Reference(DeviceDefinition) to CodeableReference
  • Type changed from Reference(DeviceDefinition) to CodeableReference
Device.udiCarrier.deviceIdentifier
  • Min Cardinality changed from 0 to 1
  • Min Cardinality changed from 0 to 1
Device.udiCarrier.issuer
  • Min Cardinality changed from 0 to 1
  • Min Cardinality changed from 0 to 1
Device.availabilityStatus
  • Added Element
Device.biologicalSourceEvent
  • Added Element
Device.category
  • Added Element
Device.type
  • Max Cardinality changed from 1 to *
  • Max Cardinality changed from 1 to *
Device.version.installDate
  • Added Element
Device.specialization.category
  • Added Element
Device.property.value[x]
  • Added Mandatory Element
Device.operation
  • Added Element
Device.operation.status
  • Added Mandatory Element
Device.operation.statusReason
  • Added Element
Device.operation.operator
  • Added Element
Device.operation.mode
  • Added Element
Device.operation.cycle
  • Added Element
Device.operation.duration
  • Added Element
Device.association
  • Added Element
Device.association.status
  • Added Mandatory Element
Device.association.statusReason
  • Added Element
Device.association.humanSubject
  • Added Element
Device.association.bodyStructure
  • Added Element
Device.endpoint
  • Added Element
Device.gateway
  • Added Element
Device.statusReason
  • deleted
Device.distinctIdentifier
  • deleted
Device.property.valueQuantity
  • deleted
Device.property.valueCode
  • deleted
Device.patient
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 9 tests that all execute ok. All tests pass round-trip testing and 1 r3 resources are invalid (0 errors).)

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Device TUDomainResourceItem used in healthcare

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

... displayName 0..1stringThe name used to display by default when the device is referenced
... definition 0..1CodeableReference(DeviceDefinition)The reference to the definition for the device
... udiCarrier Σ0..*BackboneElementUnique Device Identifier (UDI) Barcode string

.... deviceIdentifier Σ1..1stringMandatory fixed portion of UDI
.... issuer Σ1..1uriUDI Issuing Organization
.... jurisdiction 0..1uriRegional UDI authority
.... carrierAIDC Σ0..1base64BinaryUDI Machine Readable Barcode String
.... carrierHRF Σ0..1stringUDI Human Readable Barcode String
.... entryType 0..1codebarcode | rfid | manual | card | self-reported | electronic-transmission | unknown
UDIEntryType (Required)
... status ?!Σ0..1codeactive | inactive | entered-in-error
FHIRDeviceStatus (Required)
... availabilityStatus 0..1CodeableConceptlost | damaged | destroyed | available
FHIRDeviceAvailabilityStatus (Extensible)
... biologicalSourceEvent 0..1IdentifierAn 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..1stringName of device manufacturer
... manufactureDate 0..1dateTimeDate when the device was made
... expirationDate 0..1dateTimeDate and time of expiry of this device (if applicable)
... lotNumber 0..1stringLot number of manufacture
... serialNumber 0..1stringSerial number assigned by the manufacturer
... deviceName 0..*BackboneElementThe name or names of the device as known to the manufacturer and/or patient

.... name 1..1stringThe name that identifies the device
.... type 1..1coderegistered-name | user-friendly-name | patient-reported-name
DeviceNameType (Required)
... modelNumber 0..1stringThe manufacturer's model number for the device
... partNumber 0..1stringThe part number or catalog number of the device
... category 0..*CodeableConceptIndicates a high-level grouping of the device
FHIRDeviceCategory (Example)

... type 0..*CodeableConceptThe kind or type of device
Device Type (Example)

... version 0..*BackboneElementThe actual design of the device or software version running on the device

.... type 0..1CodeableConceptThe type of the device version, e.g. manufacturer, approved, internal
Device Version Type (Example)
.... component 0..1IdentifierThe hardware or software module of the device to which the version applies
.... installDate 0..1dateTimeThe date the version was installed on the device
.... value 1..1stringThe version text
... specialization 0..*BackboneElementThe standard(s) the device supports

.... systemType 1..1CodeableConceptCode of the system that identifies the standard that the device adheres to
Device Specialization System Type (Example)
.... version 0..1stringStandard version used
.... category 0..1Codingcommunication | performance | measurement
FHIRDeviceSpecializationCategory (Example)
... property 0..*BackboneElementThe actual configuration settings of a device as it actually operates, e.g., regulation status, time properties

.... type 1..1CodeableConceptCode that specifies the property being represented
Device Property Type (Example)
.... value[x] 1..1Property value - as a code, quantity, boolean, string or attachment
..... valueQuantityQuantity
..... valueCodeableConceptCodeableConcept
..... valueStringstring
..... valueBooleanboolean
..... valueIntegerinteger
..... valueRangeRange
..... valueAttachmentAttachment
... operation 0..*BackboneElementThe details about the device when it is in use to describe the actions, conditions and status

.... status 1..1CodeableConceptDevice operational condition
FHIRDeviceOperationStatus (Example)
.... statusReason 0..*CodeableConceptThe rationale given for the current operational status
FHIRDeviceOperatonStatusReason (Example)

.... operator 0..*Reference(Patient | Practitioner | RelatedPerson)The individual performing the action enabled by the device

.... mode 0..1CodeableConceptThe designated condition for performing a task
FHIRDeviceOperationMode (Example)
.... cycle 0..1CountThe series of occurrences that repeats during the operation of the device
.... duration 0..1DurationA measurement of time during the device's operation (e.g., days, hours, mins, etc)
... association Σ0..*BackboneElementCurrent association of the device

.... status Σ1..1CodeableConceptDevice useage state
FHIRDeviceAssociationStatus (Example)
.... statusReason 0..*CodeableConceptThe reasons given for the current association status

.... humanSubject 0..1Reference(Patient)The individual associated with the device
.... bodyStructure Σ0..1CodeableReference(BodyStructure)Current anatomical location of device in/on humanSubject
... owner 0..1Reference(Organization)Organization responsible for device
... contact 0..*ContactPointDetails for human/organization for support

... location 0..1Reference(Location)Where the device is found
... url 0..1uriNetwork 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..*AnnotationDevice notes and comments

... safety Σ0..*CodeableConceptSafety Characteristics of Device
DeviceSafety (Example)

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

doco Documentation for this format

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 name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple namedisplayName : string [0..1]The reference to the definition for the devicedefinition : CodeableReference [0..1] « DeviceDefinition »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?? »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/data collector, translator or controller 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]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! »DeviceNameThe name that identifies the devicename : string [1..1]The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. RegisteredName | UserFriendlyName | PatientReportedNametype : code [1..1] « null (Strength=Required)DeviceNameType! »VersionThe 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]SpecializationCode that specifies the system that identifies the specific standard that the device adheres tosystemType : CodeableConcept [1..1] « null (Strength=Example)DeviceSpecializationSystemType?? »The version of the standard that is used to operate and communicateversion : string [0..1]Kind of standards that the device adheres to, e.g., communication, performance or communicationcategory : Coding [0..1] « null (Strength=Example)FHIRDeviceSpecializationCateg...?? »PropertyCode that specifies the property being represented. No codes are specified but the MDC codes are an example: https://terminology.hl7.org/MDC.htmltype : CodeableConcept [1..1] « null (Strength=Example)DeviceType?? »Property value - can be a code, quantity, boolean, string or attachmentvalue[x] : DataType [1..1] « Quantity|CodeableConcept|string|boolean| integer|Range|Attachment »OperationThe state or condition of the device's operationstatus : CodeableConcept [1..1] « null (Strength=Example)FHIRDeviceOperationStatus?? »The reasons given for the current operational status - i.e. why is the device switched on etcstatusReason : CodeableConcept [0..*] « null (Strength=Example) FHIRDeviceOperationStatusReas...?? »The individual performing the action enabled by the deviceoperator : Reference [0..*] « Patient|Practitioner|RelatedPerson »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]AssociationThe state of the usage or application of the devicestatus : CodeableConcept [1..1] « null (Strength=Example)FHIRDeviceAssociationStatus?? »The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etcstatusReason : CodeableConcept [0..*]The individual to whom the device is affixed or inserted in their bodyhumanSubject : Reference [0..1] « Patient »The current anatomical location of the device in/on the humanSubject where it is attached or placedbodyStructure : CodeableReference [0..1] « BodyStructure »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 DeviceDefinitiondeviceName[0..*]The actual design of the device or software version running on the deviceversion[0..*]The standards to which the device adheres and may be certified to in support of its capabilities, e.g., communication, performance, process, or measurement standardsspecialization[0..*]Characteristics or features of the device that are otherwise not captured in available attributes, e.g., actual configuration settings, time or timing attributes, resolution, accuracy, and physical attributes. The focus is on properties of the device actually in use while DeviceDefinition focuses on properties that are available to be usedproperty[0..*]The status of the device itself - whether it is switched on, or activated, etcoperation[0..*]The details about the device when it is affixed or inside of a patientassociation[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>
 <displayName value="[string]"/><!-- 0..1 The name used to display by default when the device is referenced -->
 <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 -->
  <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 -->
 <deviceName>  <!-- 0..* The name or names of the device as known to the manufacturer and/or patient -->
  <name value="[string]"/><!-- 1..1 The name that identifies the device -->
  <type value="[code]"/><!-- 1..1 registered-name | user-friendly-name | patient-reported-name -->
 </deviceName>
 <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>
 <version>  <!-- 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 -->
 </version>
 <specialization>  <!-- 0..* The standard(s) the device supports -->
  <systemType><!-- 1..1 CodeableConcept Code of the system that identifies the standard that the device adheres to --></systemType>
  <version value="[string]"/><!-- 0..1 Standard version used -->
  <category><!-- 0..1 Coding communication | performance | measurement --></category>
 </specialization>
 <property>  <!-- 0..* The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties -->
  <type><!-- 1..1 CodeableConcept Code that specifies the property being represented --></type>
  <value[x]><!-- 1..1 Quantity|CodeableConcept|string|boolean|integer|Range|
    Attachment Property value - as a code, quantity, boolean, string or attachment --></value[x]>
 </property>
 <operation>  <!-- 0..* The details about the device when it is in use to describe the actions, conditions and status -->
  <status><!-- 1..1 CodeableConcept Device operational condition --></status>
  <statusReason><!-- 0..* CodeableConcept The rationale given for the current operational status --></statusReason>
  <operator><!-- 0..* Reference(Patient|Practitioner|RelatedPerson) The individual performing the action enabled by the device --></operator>
  <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>
 </operation>
 <association>  <!-- 0..* Current association of the device -->
  <status><!-- 1..1 CodeableConcept Device useage state --></status>
  <statusReason><!-- 0..* CodeableConcept The reasons given for the current association status --></statusReason>
  <humanSubject><!-- 0..1 Reference(Patient) The individual associated with the device --></humanSubject>
  <bodyStructure><!-- 0..1 CodeableReference(BodyStructure) Current anatomical location of device in/on humanSubject --></bodyStructure>
 </association>
 <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
  "displayName" : "<string>", // The name used to display by default when the device is referenced
  "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
    "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
  "deviceName" : [{ // The name or names of the device as known to the manufacturer and/or patient
    "name" : "<string>", // R!  The name that identifies the device
    "type" : "<code>" // R!  registered-name | user-friendly-name | patient-reported-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
  "version" : [{ // 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
  }],
  "specialization" : [{ // The standard(s) the device supports
    "systemType" : { CodeableConcept }, // R!  Code of the system that identifies the standard that the device adheres to
    "version" : "<string>", // Standard version used
    "category" : { Coding } // communication | performance | measurement
  }],
  "property" : [{ // The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties
    "type" : { CodeableConcept }, // R!  Code that specifies the property being represented
    // value[x]: Property value - as a code, quantity, boolean, string or attachment. One of these 7:
    "valueQuantity" : { Quantity },
    "valueCodeableConcept" : { CodeableConcept },
    "valueString" : "<string>",
    "valueBoolean" : <boolean>,
    "valueInteger" : <integer>,
    "valueRange" : { Range },
    "valueAttachment" : { Attachment }
  }],
  "operation" : [{ // The details about the device when it is in use to describe the actions, conditions and status
    "status" : { CodeableConcept }, // R!  Device operational condition
    "statusReason" : [{ CodeableConcept }], // The rationale given for the current operational status
    "operator" : [{ Reference(Patient|Practitioner|RelatedPerson) }], // The individual performing the action enabled by the device
    "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)
  }],
  "association" : [{ // Current association of the device
    "status" : { CodeableConcept }, // R!  Device useage state
    "statusReason" : [{ CodeableConcept }], // The reasons given for the current association status
    "humanSubject" : { Reference(Patient) }, // The individual associated with the device
    "bodyStructure" : { CodeableReference(BodyStructure) } // Current anatomical location of device in/on humanSubject
  }],
  "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:Device.identifier [ Identifier ], ... ; # 0..* Instance identifier
  fhir:Device.displayName [ string ]; # 0..1 The name used to display by default when the device is referenced
  fhir:Device.definition [ CodeableReference(DeviceDefinition) ]; # 0..1 The reference to the definition for the device
  fhir:Device.udiCarrier [ # 0..* Unique Device Identifier (UDI) Barcode string
    fhir:Device.udiCarrier.deviceIdentifier [ string ]; # 1..1 Mandatory fixed portion of UDI
    fhir:Device.udiCarrier.issuer [ uri ]; # 1..1 UDI Issuing Organization
    fhir:Device.udiCarrier.jurisdiction [ uri ]; # 0..1 Regional UDI authority
    fhir:Device.udiCarrier.carrierAIDC [ base64Binary ]; # 0..1 UDI Machine Readable Barcode String
    fhir:Device.udiCarrier.carrierHRF [ string ]; # 0..1 UDI Human Readable Barcode String
    fhir:Device.udiCarrier.entryType [ code ]; # 0..1 barcode | rfid | manual | card | self-reported | electronic-transmission | unknown
  ], ...;
  fhir:Device.status [ code ]; # 0..1 active | inactive | entered-in-error
  fhir:Device.availabilityStatus [ CodeableConcept ]; # 0..1 lost | damaged | destroyed | available
  fhir:Device.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: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.lotNumber [ string ]; # 0..1 Lot number of manufacture
  fhir:Device.serialNumber [ string ]; # 0..1 Serial number assigned by the manufacturer
  fhir:Device.deviceName [ # 0..* The name or names of the device as known to the manufacturer and/or patient
    fhir:Device.deviceName.name [ string ]; # 1..1 The name that identifies the device
    fhir:Device.deviceName.type [ code ]; # 1..1 registered-name | user-friendly-name | patient-reported-name
  ], ...;
  fhir:Device.modelNumber [ string ]; # 0..1 The manufacturer's model number for the device
  fhir:Device.partNumber [ string ]; # 0..1 The part number or catalog number of the device
  fhir:Device.category [ CodeableConcept ], ... ; # 0..* Indicates a high-level grouping of the device
  fhir:Device.type [ CodeableConcept ], ... ; # 0..* The kind or type of device
  fhir:Device.version [ # 0..* The actual design of the device or software version running on the device
    fhir:Device.version.type [ CodeableConcept ]; # 0..1 The type of the device version, e.g. manufacturer, approved, internal
    fhir:Device.version.component [ Identifier ]; # 0..1 The hardware or software module of the device to which the version applies
    fhir:Device.version.installDate [ dateTime ]; # 0..1 The date the version was installed on the device
    fhir:Device.version.value [ string ]; # 1..1 The version text
  ], ...;
  fhir:Device.specialization [ # 0..* The standard(s) the device supports
    fhir:Device.specialization.systemType [ CodeableConcept ]; # 1..1 Code of the system that identifies the standard that the device adheres to
    fhir:Device.specialization.version [ string ]; # 0..1 Standard version used
    fhir:Device.specialization.category [ Coding ]; # 0..1 communication | performance | measurement
  ], ...;
  fhir:Device.property [ # 0..* The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties
    fhir:Device.property.type [ CodeableConcept ]; # 1..1 Code that specifies the property being represented
    # Device.property.value[x] : 1..1 Property value - as a code, quantity, boolean, string or attachment. One of these 7
      fhir:Device.property.valueQuantity [ Quantity ]
      fhir:Device.property.valueCodeableConcept [ CodeableConcept ]
      fhir:Device.property.valueString [ string ]
      fhir:Device.property.valueBoolean [ boolean ]
      fhir:Device.property.valueInteger [ integer ]
      fhir:Device.property.valueRange [ Range ]
      fhir:Device.property.valueAttachment [ Attachment ]
  ], ...;
  fhir:Device.operation [ # 0..* The details about the device when it is in use to describe the actions, conditions and status
    fhir:Device.operation.status [ CodeableConcept ]; # 1..1 Device operational condition
    fhir:Device.operation.statusReason [ CodeableConcept ], ... ; # 0..* The rationale given for the current operational status
    fhir:Device.operation.operator [ Reference(Patient|Practitioner|RelatedPerson) ], ... ; # 0..* The individual performing the action enabled by the device
    fhir:Device.operation.mode [ CodeableConcept ]; # 0..1 The designated condition for performing a task
    fhir:Device.operation.cycle [ Count ]; # 0..1 The series of occurrences that repeats during the operation of the device
    fhir:Device.operation.duration [ Duration ]; # 0..1 A measurement of time during the device's operation (e.g., days, hours, mins, etc)
  ], ...;
  fhir:Device.association [ # 0..* Current association of the device
    fhir:Device.association.status [ CodeableConcept ]; # 1..1 Device useage state
    fhir:Device.association.statusReason [ CodeableConcept ], ... ; # 0..* The reasons given for the current association status
    fhir:Device.association.humanSubject [ Reference(Patient) ]; # 0..1 The individual associated with the device
    fhir:Device.association.bodyStructure [ CodeableReference(BodyStructure) ]; # 0..1 Current anatomical location of device in/on humanSubject
  ], ...;
  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 device is found
  fhir:Device.url [ uri ]; # 0..1 Network address to contact device
  fhir:Device.endpoint [ Reference(Endpoint) ], ... ; # 0..* Technical endpoints providing access to electronic services provided by the device
  fhir:Device.gateway [ CodeableReference(Device) ], ... ; # 0..* Linked device acting as a communication/data collector, translator or controller
  fhir:Device.note [ Annotation ], ... ; # 0..* Device notes and comments
  fhir:Device.safety [ CodeableConcept ], ... ; # 0..* Safety Characteristics of Device
  fhir:Device.parent [ Reference(Device) ]; # 0..1 The higher level or encompassing device that this device is a logical part of
]

Changes since Release 4

Device
Device.displayName
  • Added Element
Device.definition
  • Type changed from Reference(DeviceDefinition) to CodeableReference
  • Type changed from Reference(DeviceDefinition) to CodeableReference
Device.udiCarrier.deviceIdentifier
  • Min Cardinality changed from 0 to 1
  • Min Cardinality changed from 0 to 1
Device.udiCarrier.issuer
  • Min Cardinality changed from 0 to 1
  • Min Cardinality changed from 0 to 1
Device.availabilityStatus
  • Added Element
Device.biologicalSourceEvent
  • Added Element
Device.category
  • Added Element
Device.type
  • Max Cardinality changed from 1 to *
  • Max Cardinality changed from 1 to *
Device.version.installDate
  • Added Element
Device.specialization.category
  • Added Element
Device.property.value[x]
  • Added Mandatory Element
Device.operation
  • Added Element
Device.operation.status
  • Added Mandatory Element
Device.operation.statusReason
  • Added Element
Device.operation.operator
  • Added Element
Device.operation.mode
  • Added Element
Device.operation.cycle
  • Added Element
Device.operation.duration
  • Added Element
Device.association
  • Added Element
Device.association.status
  • Added Mandatory Element
Device.association.statusReason
  • Added Element
Device.association.humanSubject
  • Added Element
Device.association.bodyStructure
  • Added Element
Device.endpoint
  • Added Element
Device.gateway
  • Added Element
Device.statusReason
  • deleted
Device.distinctIdentifier
  • deleted
Device.property.valueQuantity
  • deleted
Device.property.valueCode
  • deleted
Device.patient
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 9 tests that all execute ok. All tests pass round-trip testing and 1 r3 resources are invalid (0 errors).)

 

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

PathDefinitionTypeReference
Device.udiCarrier.entryType

Codes to identify how UDI data was entered.

RequiredUDIEntryType
Device.status

The status of the Device record.

RequiredFHIRDeviceStatus
Device.availabilityStatus

The availability status of the device.

ExtensibleFHIRDeviceAvailabilityStatus
Device.deviceName.type

The type of name the device is referred by.

RequiredDeviceNameType
Device.category

The association state of the device.

ExampleFHIRDeviceCategory
Device.type

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.

ExampleDeviceType
Device.version.type

Describes the type of version

ExampleDeviceVersionType
Device.specialization.systemType

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

ExampleDeviceSpecializationSystemType
Device.specialization.category

The kind of standards used by the device.

ExampleFHIRDeviceSpecializationCategory
Device.property.type

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.

ExampleDeviceType
Device.operation.status

The operational status of the device.

ExampleFHIRDeviceOperationStatus
Device.operation.statusReason

The availability status reason of the device.

ExampleFHIRDeviceOperationStatusReason
Device.operation.mode

The operation mode of the device.

ExampleFHIRDeviceOperationMode
Device.association.status

The association status of the device.

ExampleFHIRDeviceAssociationStatus
Device.safety

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

ExampleDeviceSafety

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) , 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*:

  • 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 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 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. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
biological-source-eventtokenThe biological source for the deviceDevice.biologicalSourceEvent
definitionreferenceThe definition / type of the deviceDevice.definition.reference
device-namestringA server defined search that may match any of the string fields in Device.deviceName or Device.type.Device.deviceName.name | Device.type.coding.display | Device.type.text
expiration-datedateThe expiration date of the deviceDevice.expirationDate
identifiertokenInstance id from manufacturer, owner, and othersDevice.identifier
locationreferenceA location, where the resource is foundDevice.location
(Location)
lot-numberstringThe lot number of the deviceDevice.lotNumber
manufacture-datedateThe manufacture date of the deviceDevice.manufactureDate
manufacturerstringThe manufacturer of the deviceDevice.manufacturer
modelstringThe model of the deviceDevice.modelNumber
organizationreferenceThe organization responsible for the deviceDevice.owner
(Organization)
parentreferenceThe parent deviceDevice.parent
(Device)
patientreferencePatient information, if the resource is affixed to a personDevice.association.humanSubject.where(resolve() is Patient)
(Patient)
serial-numberstringThe serial number of the deviceDevice.serialNumber | Device.identifier.where(type='SNO')
statustokenactive | inactive | entered-in-error | unknownDevice.status
subjectreferenceSubject to which the device is associated of affixedDevice.association.humanSubject
(Patient)
typetokenThe type of the deviceDevice.type
udi-carrierstring

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

Device.udiCarrier.carrierHRF
udi-distringThe udi Device Identifier (DI)Device.udiCarrier.deviceIdentifier
urluriNetwork address to contact deviceDevice.url
versionstringThe specific version of the deviceDevice.version.value