device
The US Core Device Profile inherits from the FHIR [Device](https://hl7.org/fhir/R4/device.html) resource; refer to it for scope and usage definitions.
The US Core Device Profile inherits from the FHIR Device resource; refer to it for scope and usage definitions. It sets minimum expectations for the Device resource to record, search, and fetch medical and non-medical devices (for example, software or crutches). This profile meets the requirements of the U.S. Core Data for Interoperability (USCDI) *Medical Device* Data Class, including FDA Unique Device Identification (UDI) information associated with a patient's medical device(s). It specifies which core elements, extensions, vocabularies, and value sets SHALL be present in the resource and constrains how the elements are used and provides the floor for standards development for specific use cases promotes interoperability and adoption.
Source
| Model | Leg | Role |
|---|
us-core-device | FHIR | defines this table |
openEHR-EHR-CLUSTER.device.v1 | openEHR | merged in — Medical device |
This table is the union of 2 source models. Columns carrying a From value came from a model that merged into it, so the same row satisfies both specifications.
Columns
| Column | Type | Null | Description | From | Source |
|---|
id | uuid primary key | no | Device.id | — | — |
created_at | timestamptz | no | Row creation timestamp. | — | — |
updated_at | timestamptz | no | Row update timestamp; maintained by the application. | — | — |
created_by | text | no | Actor who created the row. | — | — |
updated_by | text | no | Actor who last updated the row. | — | — |
identifier_value
identifier_system | text, text
text, text | yes | Instance identifier | — | Device.identifier |
udi_carrier_device_identifier | text | yes | Mandatory fixed portion of UDI | — | Device.udiCarrier.deviceIdentifier |
udi_carrier_carrier_hrf | text | yes | UDI Human Readable Barcode String | — | Device.udiCarrier.carrierHRF |
distinct_identifier | text | yes | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: The distinct identification string | — | Device.distinctIdentifier |
manufacturer | text | yes | Name of device manufacturer | — | Device.manufacturer |
manufacture_date | timestamptz | yes | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Date when the device was made | — | Device.manufactureDate |
expiration_date | timestamptz | yes | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Date and time of expiry of this device (if applicable) | — | Device.expirationDate |
lot_number | text | yes | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Lot number of manufacture | — | Device.lotNumber |
serial_number | text | yes | 𝗔𝗗𝗗𝗜𝗧𝗜𝗢𝗡𝗔𝗟 𝗨𝗦𝗖𝗗𝗜: Serial number assigned by the manufacturer | — | Device.serialNumber |
device_name | text | yes | The name of the device | — | Device.deviceName.name |
device_name_type | text | yes | udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other | — | Device.deviceName.type |
model_number | text | yes | The model number for the device | — | Device.modelNumber |
part_number | text | yes | The part number of the device | — | Device.partNumber |
type
type_code
type_system | text, text, text
text, text, text | yes | The kind or type of device | — | Device.type |
version_value | text | yes | The version text | — | Device.version.value |
patient_id | uuid | yes | Patient to whom Device is assigned | — | Device.patient |
note | text | yes | Device notes and comments | — | Device.note |
parent_id | uuid | yes | The parent device | — | Device.parent |
description | text | yes | Description | openEHR-EHR-CLUSTER.device.v1 | /items[at0002] |
Constraints
check (identifier_system is null or identifier_value is not null)
check ((type_code is null and type_system is null) or (type_code is not null and type_system is not null))
References
| Columns | Target | On delete |
|---|
patient_id | patient | no action |
parent_id | device | no action |
Referenced by
49 tables reference device, via device. The first 15 alphabetically:
Indexes
device_patient_id_idx on patient_iddevice_parent_id_idx on parent_id
Child tables
3 tables hang off device, one row per repetition.
device_other_identifier
Child table — one row per repetition, deleted with its parent.
| Column | Type | Null | Description | From | Source |
|---|
id | uuid primary key | no | Primary key. | — | — |
device_id | uuid → device | no | — | — | — |
identifier_value | text | no | — | — | — |
identifier_system | text | yes | — | — | — |
identifier_use | text | yes | — | — | — |
valid_from | timestamptz | yes | — | — | — |
valid_until | timestamptz | yes | — | — | — |
Unique
device_id, identifier_system, identifier_value
References
| Columns | Target | On delete |
|---|
device_id | device | cascade |
device_other_name
Child table — one row per repetition, deleted with its parent.
| Column | Type | Null | Description | From | Source |
|---|
id | uuid primary key | no | Primary key. | — | — |
device_id | uuid → device | no | — | — | — |
name | text | yes | The name of the device | — | Device.deviceName.name |
type | text | yes | udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other | — | Device.deviceName.type |
valid_from | timestamptz | yes | — | — | — |
valid_until | timestamptz | yes | — | — | — |
References
| Columns | Target | On delete |
|---|
device_id | device | cascade |
Indexes
device_other_name_device_id_idx on device_id
device_other_version
Child table — one row per repetition, deleted with its parent.
| Column | Type | Null | Description | From | Source |
|---|
id | uuid primary key | no | Primary key. | — | — |
device_id | uuid → device | no | — | — | — |
value | text | yes | The version text | — | Device.version.value |
valid_from | timestamptz | yes | — | — | — |
valid_until | timestamptz | yes | — | — | — |
References
| Columns | Target | On delete |
|---|
device_id | device | cascade |
Indexes
device_other_version_device_id_idx on device_id