DeviceDefinition — Medical device catalogue entry
Where Device represents a physical instance (the infusion pump at bed 412),
DeviceDefinition represents the catalogue reference: model, manufacturer,
generic properties, parent UDI, CE / FDA marking.
Purpose of the resource
In 2024, the European MDR regulation (2017/745) and the FDA UDI rule mandate that every medical device placed on the market carries a unique global identification (UDI), with a static Device Identifier (DI) component at catalogue level, and a Production Identifier (PI) at instance level. DeviceDefinition is the FHIR carrier of the DI: one per model, shared by every Device that instantiates it.
Typical cases: infusion pump, defibrillator, MRI scanner, hip prosthesis, syringe, analyser kit, software device (Software as a Medical Device, SaMD).
Key fields
| Field | Type | Cardinality | Role |
|---|---|---|---|
identifier | Identifier[] | 0..* | External identifiers (GTIN, FDA Device ID…). |
udiDeviceIdentifier | BackboneElement[] | 0..* | Specific UDI identifiers (DI only; PI lives on Device). |
regulatoryIdentifier | BackboneElement[] | 0..* | Regulatory identifier (FDA, EU MDR, MHRA UK…). |
manufacturerString / manufacturer | string | Reference(Organization) | 0..1 | Manufacturer. |
deviceName | BackboneElement[] | 0..* | Names (UDI label name, marketing name, model number). |
modelNumber | string | 0..1 | Model number. |
classification | BackboneElement[] | 0..* | Classification (Class I, IIa, IIb, III for MDR). |
property | BackboneElement[] | 0..* | Properties (colour, volume, flow rate…). |
version | BackboneElement[] | 0..* | Versions (firmware, software). |
specialization | BackboneElement[] | 0..* | Supported standards (SDC, BLE, FHIR endpoint…). |
safety | CodeableConcept[] | 0..* | Safety characteristics (latex-free, MR-conditional…). |
shelfLifeStorage | ProductShelfLife[] | 0..* | Storage shelf life. |
languageCode | CodeableConcept[] | 0..* | Interface languages. |
contact | ContactDetail[] | 0..* | Manufacturer technical contact. |
note | Annotation[] | 0..* | Additional notes. |
JSON example
Catalogue for an intelligent infusion pump, Class II, firmware 3.2.1, CE marked by TUV-SUD:
{
"resourceType": "DeviceDefinition",
"id": "example-infusion-pump",
"identifier": [{
"system": "http://hl7.org/fhir/sid/gs1",
"value": "(01)09504000059118"
}],
"udiDeviceIdentifier": [{
"deviceIdentifier": "09504000059118",
"issuer": "GS1 / FDA UDI",
"jurisdiction": "EU"
}],
"manufacturerString": "Acme Med Devices",
"deviceName": [{
"name": "Acme Smart Pump 4000",
"type": "udi-label-name"
}],
"modelNumber": "SP-4000",
"classification": [{
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "MR",
"display": "Class II"
}]
}
}],
"property": [{
"type": {
"coding": [{
"system": "http://snomed.info/sct",
"code": "118552005",
"display": "Infusion pump"
}]
}
}],
"version": [{
"type": {
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/device-version-type",
"code": "firmware"
}]
},
"value": "3.2.1"
}],
"regulatoryIdentifier": [{
"type": "basic",
"deviceIdentifier": "DEN-123456",
"issuer": "FDA",
"jurisdiction": "USA"
}, {
"type": "basic",
"deviceIdentifier": "CE 0123",
"issuer": "TUV-SUD",
"jurisdiction": "EU"
}]
} Typical use cases
- UDI catalogue: every device model registered in GUDID (US) or EUDAMED (EU) has a matching DeviceDefinition.
- Medical-device vigilance: correlate incidents by model (product recall).
- Hospital inventory: reference devices with their generic properties.
- CE / FDA continuum: carry both FDA and CE identifiers.
- SaMD (Software as a Medical Device): describe a software device with its firmware versions.
Common pitfalls
- DI / PI confusion: the Device Identifier (DI) is static and lives on DeviceDefinition. The Production Identifier (PI: serial number + lot + expiry date) lives on Device.
- Missing UDI issuer:
udiDeviceIdentifier.issuer(GS1, HIBCC, ICCBBA) must always be populated — without it, the identifier is ambiguous. - Non-MDR classification: use MDR codes (Class I, IIa, IIb, III) for the EU. Mixing them up with FDA Class I, II, III is misleading.
- Multiple versions without type: a device often has firmware + software + hardware. Always qualify
version.type. - Safety code as text: use the HL7 v3 SafetyCode ValueSet rather than "latex-free" as free text.
Related resources
- Device — physical instance referencing this definition.
- DeviceAssociation — association of a device with a patient or location.
- DeviceMetric — metrics produced by the device.
- Organization — manufacturer.
- SubstanceDefinition — substances contained in a combination device.
See also: Device — the physical instance and DeviceAssociation — device-patient association.