Release 4 4B

This page is part of the FHIR Specification (v4.0.1: R4 (v4.3.0: R4B - Mixed Normative and STU ) in it's permanent home (it will always be available at this URL). ). 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 R4B R4 R3 R2

8.14 Resource Device - Content

Orders and Observations Work Group Maturity Level : 2   Trial Use Security Category : Business Compartments : Not linked to any defined compartments

A type of a manufactured item that is used in the provision of healthcare without being substantially changed through that activity. The device may be a medical or non-medical device.

This resource is an administrative 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, referenced when prescribing and dispensing devices for patient use or for ordering supplies, and used to record and transmit Unique Device Identifier (UDI) information about a device such as a patient's implant.

These are the device related resources

  • Device (this resource)
  • DeviceDefinition - Describes a "kind" of device - not a physical instance, cut a "catalog entry" where a device is defined by the manufacturer, reseller, or regulator.
  • DeviceMetric - Describes a measurement, calculation or setting capability of a medical device.

In FHIR, the "Device" is the "administrative" resource for the device (it does not change much and has manufacturer information etc.), whereas the DeviceComponent and DeviceMetric (which is really a kind of DeviceComponent) model the physical part, including operation status and is much more volatile. The physical composition of a Device is represented by the Devices pointing to their "parent".

Devices differ from medications because they are not "used up" - they remain active in a patient in an ongoing fashion. However, the specific boundary between medications and devices is defined at the implementation level and this standard does not enforce a boundary with the exception of devices that are implanted in a patient. The Medication resource should not be used to represent implanted devices.

This resource is referenced by Signature , Account , AdverseEvent , Appointment , AppointmentResponse , AuditEvent , CarePlan , CatalogEntry , ChargeItem , ChargeItemDefinition , Claim , ClinicalUseDefinition , Communication , CommunicationRequest , Composition , Consent , Contract , DetectedIssue , itself, DeviceMetric , DeviceRequest , DeviceUseStatement , DiagnosticReport , DocumentManifest , DocumentReference , EvidenceReport , EvidenceVariable , ExplanationOfBenefit , Flag , Group , GuidanceResponse , ImagingStudy , Invoice , List , MeasureReport , Media , MedicationAdministration , MedicationDispense , MedicationRequest , MessageHeader , MolecularSequence , Observation , Procedure , Provenance , QuestionnaireResponse , RequestGroup , RiskAssessment , Schedule , ServiceRequest , Specimen , SupplyDelivery , SupplyRequest and Task .

This resource does not implement any patterns.

Structure

Name Flags Card. Type Description & Constraints doco
. . Device TU DomainResource Item used in healthcare
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier 0..* Identifier Instance identifier
. . . definition 0..1 Reference ( DeviceDefinition ) The reference to the definition for the device
. . . udiCarrier Σ 0..* BackboneElement Unique Device Identifier (UDI) Barcode string
. . . . deviceIdentifier Σ 0..1 string Mandatory fixed portion of UDI
. . . . issuer 0..1 uri UDI Issuing Organization
. . . . jurisdiction 0..1 uri Regional UDI authority
. . . . carrierAIDC Σ 0..1 base64Binary UDI Machine Readable Barcode String
. . . . carrierHRF Σ 0..1 string UDI Human Readable Barcode String
. . . . entryType 0..1 code barcode | rfid | manual +
UDIEntryType ( Required )
. . . statusReason 0..* CodeableConcept online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off
FHIRDeviceStatusReason ( Extensible )
. . . distinctIdentifier 0..1 string The distinct identification string
. . . manufacturer 0..1 string Name of device manufacturer
. . . manufactureDate 0..1 dateTime Date when the device was made
. . . expirationDate 0..1 dateTime Date and time of expiry of this device (if applicable)
. . . lotNumber 0..1 string Lot number of manufacture
. . . serialNumber 0..1 string Serial number assigned by the manufacturer
. . . deviceName 0..* BackboneElement The name of the device as given by the manufacturer
. . . . name 1..1 string The name of that identifies the device
. . . . type 1..1 code udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other
DeviceNameType ( Required )
. . . modelNumber 0..1 string The manufacturer's model number for the device
. . . partNumber 0..1 string The part number or catalog number of the device
. . . type 0..1 CodeableConcept The kind or type of device
Device Type ( Example )
. . . specialization 0..* BackboneElement The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication
. . . . systemType 1..1 CodeableConcept The standard that is used to operate and communicate
. . . . version 0..1 string The version of the standard that is used to operate and communicate
. . . version 0..* BackboneElement The actual design of the device or software version running on the device
. . . . type 0..1 CodeableConcept The type of the device version version, e.g. manufacturer, approved, internal
. . . . component 0..1 Identifier A single component of the device version
. . . . value 1..1 string The version text
. . . property 0..* BackboneElement 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 DeviceDefinitionPropetyCode (Extensible)
. . . . valueQuantity 0..* Quantity Property value as a quantity
. . . . valueCode 0..* CodeableConcept Property value as a code, e.g., NTP4 (synced to NTP)
. . . patient 0..1 Reference ( Patient ) Patient to whom Device is affixed
. . . owner 0..1 Reference ( Organization ) Organization responsible for device
. . . contact 0..* ContactPoint Details for human/organization for support
. . . location 0..1 Reference ( Location ) Where the device is found
. . . url 0..1 uri Network address to contact device
. . . note 0..* Annotation Device notes and comments
. . . safety Σ 0..* CodeableConcept Safety Characteristics of Device
. . . parent 0..1 Reference ( Device ) The parent device that this device is attached to or is part of

doco Documentation for this format

UML Diagram ( Legend )

Device ( DomainResource ) Unique instance identifiers assigned to a device by manufacturers other organizations or owners identifier : Identifier [0..*] The reference to the definition for the device definition : Reference [0..1] « DeviceDefinition » Status of the Device availability (this element modifies the meaning of other elements) status : code [0..1] « The availability status of the device. null (Strength=Required) FHIRDeviceStatus ! » Reason for the dtatus of the Device availability statusReason : CodeableConcept [0..*] « The availability status reason of the device. null (Strength=Extensible) FHIRDeviceStatusReason + » The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product distinctIdentifier : string [0..1] A name of the manufacturer manufacturer : string [0..1] The date and time when the device was manufactured manufactureDate : 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 manufacturer lotNumber : string [0..1] The serial number assigned by the organization when the device was manufactured serialNumber : string [0..1] The manufacturer's model number for the device modelNumber : string [0..1] The part number or catalog number of the device partNumber : string [0..1] The kind or type of device type : CodeableConcept [0..1] « Codes to identify medical devices. null (Strength=Example) DeviceType ?? » Patient information, If the device is affixed to a person patient : Reference [0..1] « Patient » An organization that is responsible for the provision and ongoing maintenance of the device owner : Reference [0..1] « Organization » Contact details for an organization or a particular human that is responsible for the device contact : ContactPoint [0..*] The place where the device can be found location : Reference [0..1] « Location » A network address on which the device may be contacted directly url : uri [0..1] Descriptive information, usage information or implantation information that is not captured in an existing element note : Annotation [0..*] Provides additional safety characteristics about a medical device. For example devices containing latex safety : CodeableConcept [0..*] The parent device that this device is attached to or is part of parent : Reference [0..1] « Device » UdiCarrier The device identifier (DI) is a mandatory, fixed portion of a UDI that identifies the labeler and the specific version or model of a device deviceIdentifier : string [0..1] Organization that is charged with issuing UDIs for devices. For example, the US FDA issuers include : 1) GS1: http://hl7.org/fhir/NamingSystem/gs1-di, 2) HIBCC: http://hl7.org/fhir/NamingSystem/hibcc-dI, 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 issuer : uri [0..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/fda-udi jurisdiction : 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 encoded carrierAIDC : 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 device carrierHRF : string [0..1] A coded entry to indicate how the data was entered entryType : code [0..1] « Codes to identify how UDI data was entered. null (Strength=Required) UDIEntryType ! » DeviceName The name of that identifies the device name : string [1..1] The type of deviceName. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName type : code [1..1] « The type of name the device is referred by. null (Strength=Required) DeviceNameType ! » Specialization The standard that is used to operate and communicate systemType : CodeableConcept [1..1] The version of the standard that is used to operate and communicate version : string [0..1] Version The type of the device version version, e.g. manufacturer, approved, internal type : CodeableConcept [0..1] A single component of the device version component : Identifier [0..1] The version text value : string [1..1] Property Code that specifies the property DeviceDefinitionPropetyCode (Extensible) type : CodeableConcept [1..1] Property value as a quantity valueQuantity : Quantity [0..*] Property value as a code, e.g., NTP4 (synced to NTP) valueCode : CodeableConcept [0..*] 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 sold udiCarrier [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 DeviceDefinition deviceName [0..*] The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication specialization [0..*] The actual design of the device or software version running on the device version [0..*] The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties property [0..*]

XML Template

<Device xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Instance identifier --></identifier>
 <definition><!-- 0..1 Reference(DeviceDefinition) The reference to the definition for the device --></definition>
 <udiCarrier>  <!-- 0..* Unique Device Identifier (UDI) Barcode string -->
  <deviceIdentifier value="[string]"/><!-- 0..1 Mandatory fixed portion of UDI -->
  <issuer value="[uri]"/><!-- 0..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 + -->
 </udiCarrier>
 <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error | unknown -->
 <statusReason><!-- 0..* CodeableConcept online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off --></statusReason>
 <distinctIdentifier value="[string]"/><!-- 0..1 The distinct identification string -->
 <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 of the device as given by the manufacturer -->
  <

  <name value="[string]"/><!-- 1..1 The name that identifies the device -->

  <type value="[code]"/><!-- 1..1 udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other -->
 </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 -->

 <type><!-- 0..1 CodeableConcept The kind or type of device --></type>
 <specialization>  <!-- 0..* The capabilities supported on a  device, the standards to which the device conforms for a particular purpose, and used for the communication -->
  <systemType><!-- 1..1 CodeableConcept The standard that is used to operate and communicate --></systemType>
  <version value="[string]"/><!-- 0..1 The version of the standard that is used to operate and communicate -->
 </specialization>
 <version>  <!-- 0..* The actual design of the device or software version running on the device -->
  <</type>

  <type><!-- 0..1 CodeableConcept The type of the device version, e.g. manufacturer, approved, internal --></type>

  <component><!-- 0..1 Identifier A single component of the device version --></component>
  <value value="[string]"/><!-- 1..1 The version text -->
 </version>
 <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 DeviceDefinitionPropetyCode (Extensible) --></type>
  <valueQuantity><!-- 0..* Quantity Property value as a quantity --></valueQuantity>
  <valueCode><!-- 0..* CodeableConcept Property value as a code, e.g., NTP4 (synced to NTP) --></valueCode>
 </property>
 <patient><!-- 0..1 Reference(Patient) Patient to whom Device is affixed --></patient>
 <owner><!-- 0..1 Reference(Organization) Organization responsible for device --></owner>
 <contact><!-- 0..* ContactPoint Details for human/organization for support --></contact>
 <location><!-- 0..1 Reference(Location) Where the device is found --></location>
 <url value="[uri]"/><!-- 0..1 Network address to contact device -->
 <note><!-- 0..* Annotation Device notes and comments --></note>
 <safety><!-- 0..* CodeableConcept Safety Characteristics of Device --></safety>
 <</parent>

 <parent><!-- 0..1 Reference(Device) The device that this device is attached to or is part of --></parent>

</Device>

JSON Template

{doco
  "resourceType" : "Device",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Instance identifier
  "definition" : { Reference(DeviceDefinition) }, // The reference to the definition for the device
  "udiCarrier" : [{ // Unique Device Identifier (UDI) Barcode string
    "deviceIdentifier" : "<string>", // Mandatory fixed portion of UDI
    "issuer" : "<uri>", // 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 +
  }],
  "status" : "<code>", // active | inactive | entered-in-error | unknown
  "statusReason" : [{ CodeableConcept }], // online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off
  "distinctIdentifier" : "<string>", // The distinct identification string
  "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 of the device as given by the manufacturer
    "

    "name" : "<string>", // R!  The name that identifies the device

    "type" : "<code>" // R!  udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other
  }],
  "
  "

  "modelNumber" : "<string>", // The manufacturer's model number for the device
  "partNumber" : "<string>", // The part number or catalog number of the device

  "type" : { CodeableConcept }, // The kind or type of device
  "specialization" : [{ // The capabilities supported on a  device, the standards to which the device conforms for a particular purpose, and used for the communication
    "systemType" : { CodeableConcept }, // R!  The standard that is used to operate and communicate
    "version" : "<string>" // The version of the standard that is used to operate and communicate
  }],
  "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 }, // A single component of the device version
    "value" : "<string>" // R!  The version text
  }],
  "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 DeviceDefinitionPropetyCode (Extensible)
    "valueQuantity" : [{ Quantity }], // Property value as a quantity
    "valueCode" : [{ CodeableConcept }] // Property value as a code, e.g., NTP4 (synced to NTP)
  }],
  "patient" : { Reference(Patient) }, // Patient to whom Device is affixed
  "owner" : { Reference(Organization) }, // Organization responsible for device
  "contact" : [{ ContactPoint }], // Details for human/organization for support
  "location" : { Reference(Location) }, // Where the device is found
  "url" : "<uri>", // Network address to contact device
  "note" : [{ Annotation }], // Device notes and comments
  "safety" : [{ CodeableConcept }], // Safety Characteristics of Device
  "

  "parent" : { Reference(Device) } // The device that this device is attached to or is 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.definition [ Reference(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 ]; # 0..1 Mandatory fixed portion of UDI
    fhir:Device.udiCarrier.issuer [ uri ]; # 0..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 +
  ], ...;
  fhir:Device.status [ code ]; # 0..1 active | inactive | entered-in-error | unknown
  fhir:Device.statusReason [ CodeableConcept ], ... ; # 0..* online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off
  fhir:Device.distinctIdentifier [ string ]; # 0..1 The distinct identification string
  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 of the device as given by the manufacturer
    fhir:

    fhir:Device.deviceName.name [ string ]; # 1..1 The name that identifies the device

    fhir:Device.deviceName.type [ code ]; # 1..1 udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other
  ], ...;
  fhir:
  fhir:

  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.type [ CodeableConcept ]; # 0..1 The kind or type of device
  fhir:Device.specialization [ # 0..* The capabilities supported on a  device, the standards to which the device conforms for a particular purpose, and used for the communication
    fhir:Device.specialization.systemType [ CodeableConcept ]; # 1..1 The standard that is used to operate and communicate
    fhir:Device.specialization.version [ string ]; # 0..1 The version of the standard that is used to operate and communicate
  ], ...;
  fhir:Device.version [ # 0..* The actual design of the device or software version running on the device
    fhir:

    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 A single component of the device version
    fhir:Device.version.value [ string ]; # 1..1 The version text
  ], ...;
  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 DeviceDefinitionPropetyCode (Extensible)
    fhir:Device.property.valueQuantity [ Quantity ], ... ; # 0..* Property value as a quantity
    fhir:Device.property.valueCode [ CodeableConcept ], ... ; # 0..* Property value as a code, e.g., NTP4 (synced to NTP)
  ], ...;
  fhir:Device.patient [ Reference(Patient) ]; # 0..1 Patient to whom Device is affixed
  fhir:Device.owner [ Reference(Organization) ]; # 0..1 Organization responsible for device
  fhir:Device.contact [ ContactPoint ], ... ; # 0..* Details for human/organization for support
  fhir:Device.location [ Reference(Location) ]; # 0..1 Where the device is found
  fhir:Device.url [ uri ]; # 0..1 Network address to contact device
  fhir:Device.note [ Annotation ], ... ; # 0..* Device notes and comments
  fhir:Device.safety [ CodeableConcept ], ... ; # 0..* Safety Characteristics of Device
  fhir:

  fhir:Device.parent [ Reference(Device) ]; # 0..1 The device that this device is attached to or is part of

]

Changes since R3 R4

Device Device.definition
  • Added Element Device.udiCarrier Added Element Device.udiCarrier.deviceIdentifier Added Element Device.udiCarrier.issuer Added Element Device.udiCarrier.jurisdiction Added Element Device.udiCarrier.carrierAIDC Added Element Device.udiCarrier.carrierHRF Added Element Device.udiCarrier.entryType Added Element Device.status Change value set from http://hl7.org/fhir/ValueSet/device-status to http://hl7.org/fhir/ValueSet/device-status|4.0.1 Device.statusReason Added Element Device.distinctIdentifier Added Element Device.serialNumber Added Element Device.deviceName Added Element Device.deviceName.name Added Mandatory Element Device.deviceName.type Added Mandatory Element Device.modelNumber Added Element Device.partNumber Added Element Device.specialization Added Element Device.specialization.systemType Added Mandatory Element Device.specialization.version Added Element Device.version Max Cardinality changed from 1 to * Type changed from string to BackboneElement Device.version.type Added Element Device.version.component Added Element Device.version.value Added Mandatory Element Device.property Added Element Device.property.type Added Mandatory Element Device.property.valueQuantity Added Element Device.property.valueCode Added Element Device.parent Added Element Device.udi deleted Device.model deleted No Changes

See the Full Difference for further information

This analysis is available as XML or JSON .

Conversions between R3 and R4

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

Name Flags Card. Type Description & Constraints doco
. . Device TU DomainResource Item used in healthcare
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier 0..* Identifier Instance identifier
. . . definition 0..1 Reference ( DeviceDefinition ) The reference to the definition for the device
. . . udiCarrier Σ 0..* BackboneElement Unique Device Identifier (UDI) Barcode string
. . . . deviceIdentifier Σ 0..1 string Mandatory fixed portion of UDI
. . . . issuer 0..1 uri UDI Issuing Organization
. . . . jurisdiction 0..1 uri Regional UDI authority
. . . . carrierAIDC Σ 0..1 base64Binary UDI Machine Readable Barcode String
. . . . carrierHRF Σ 0..1 string UDI Human Readable Barcode String
. . . . entryType 0..1 code barcode | rfid | manual +
UDIEntryType ( Required )
. . . statusReason 0..* CodeableConcept online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off
FHIRDeviceStatusReason ( Extensible )
. . . distinctIdentifier 0..1 string The distinct identification string
. . . manufacturer 0..1 string Name of device manufacturer
. . . manufactureDate 0..1 dateTime Date when the device was made
. . . expirationDate 0..1 dateTime Date and time of expiry of this device (if applicable)
. . . lotNumber 0..1 string Lot number of manufacture
. . . serialNumber 0..1 string Serial number assigned by the manufacturer
. . . deviceName 0..* BackboneElement The name of the device as given by the manufacturer
. . . . name 1..1 string The name of that identifies the device
. . . . type 1..1 code udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other
DeviceNameType ( Required )
. . . modelNumber 0..1 string The manufacturer's model number for the device
. . . partNumber 0..1 string The part number or catalog number of the device
. . . type 0..1 CodeableConcept The kind or type of device
Device Type ( Example )
. . . specialization 0..* BackboneElement The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication
. . . . systemType 1..1 CodeableConcept The standard that is used to operate and communicate
. . . . version 0..1 string The version of the standard that is used to operate and communicate
. . . version 0..* BackboneElement The actual design of the device or software version running on the device
. . . . type 0..1 CodeableConcept The type of the device version version, e.g. manufacturer, approved, internal
. . . . component 0..1 Identifier A single component of the device version
. . . . value 1..1 string The version text
. . . property 0..* BackboneElement 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 DeviceDefinitionPropetyCode (Extensible)
. . . . valueQuantity 0..* Quantity Property value as a quantity
. . . . valueCode 0..* CodeableConcept Property value as a code, e.g., NTP4 (synced to NTP)
. . . patient 0..1 Reference ( Patient ) Patient to whom Device is affixed
. . . owner 0..1 Reference ( Organization ) Organization responsible for device
. . . contact 0..* ContactPoint Details for human/organization for support
. . . location 0..1 Reference ( Location ) Where the device is found
. . . url 0..1 uri Network address to contact device
. . . note 0..* Annotation Device notes and comments
. . . safety Σ 0..* CodeableConcept Safety Characteristics of Device
. . . parent 0..1 Reference ( Device ) The parent device that this device is attached to or is part of

doco Documentation for this format

UML Diagram ( Legend )

Device ( DomainResource ) Unique instance identifiers assigned to a device by manufacturers other organizations or owners identifier : Identifier [0..*] The reference to the definition for the device definition : Reference [0..1] « DeviceDefinition » Status of the Device availability (this element modifies the meaning of other elements) status : code [0..1] « The availability status of the device. null (Strength=Required) FHIRDeviceStatus ! » Reason for the dtatus of the Device availability statusReason : CodeableConcept [0..*] « The availability status reason of the device. null (Strength=Extensible) FHIRDeviceStatusReason + » The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product distinctIdentifier : string [0..1] A name of the manufacturer manufacturer : string [0..1] The date and time when the device was manufactured manufactureDate : 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 manufacturer lotNumber : string [0..1] The serial number assigned by the organization when the device was manufactured serialNumber : string [0..1] The manufacturer's model number for the device modelNumber : string [0..1] The part number or catalog number of the device partNumber : string [0..1] The kind or type of device type : CodeableConcept [0..1] « Codes to identify medical devices. null (Strength=Example) DeviceType ?? » Patient information, If the device is affixed to a person patient : Reference [0..1] « Patient » An organization that is responsible for the provision and ongoing maintenance of the device owner : Reference [0..1] « Organization » Contact details for an organization or a particular human that is responsible for the device contact : ContactPoint [0..*] The place where the device can be found location : Reference [0..1] « Location » A network address on which the device may be contacted directly url : uri [0..1] Descriptive information, usage information or implantation information that is not captured in an existing element note : Annotation [0..*] Provides additional safety characteristics about a medical device. For example devices containing latex safety : CodeableConcept [0..*] The parent device that this device is attached to or is part of parent : Reference [0..1] « Device » UdiCarrier The device identifier (DI) is a mandatory, fixed portion of a UDI that identifies the labeler and the specific version or model of a device deviceIdentifier : string [0..1] Organization that is charged with issuing UDIs for devices. For example, the US FDA issuers include : 1) GS1: http://hl7.org/fhir/NamingSystem/gs1-di, 2) HIBCC: http://hl7.org/fhir/NamingSystem/hibcc-dI, 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 issuer : uri [0..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/fda-udi jurisdiction : 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 encoded carrierAIDC : 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 device carrierHRF : string [0..1] A coded entry to indicate how the data was entered entryType : code [0..1] « Codes to identify how UDI data was entered. null (Strength=Required) UDIEntryType ! » DeviceName The name of that identifies the device name : string [1..1] The type of deviceName. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName type : code [1..1] « The type of name the device is referred by. null (Strength=Required) DeviceNameType ! » Specialization The standard that is used to operate and communicate systemType : CodeableConcept [1..1] The version of the standard that is used to operate and communicate version : string [0..1] Version The type of the device version version, e.g. manufacturer, approved, internal type : CodeableConcept [0..1] A single component of the device version component : Identifier [0..1] The version text value : string [1..1] Property Code that specifies the property DeviceDefinitionPropetyCode (Extensible) type : CodeableConcept [1..1] Property value as a quantity valueQuantity : Quantity [0..*] Property value as a code, e.g., NTP4 (synced to NTP) valueCode : CodeableConcept [0..*] 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 sold udiCarrier [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 DeviceDefinition deviceName [0..*] The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication specialization [0..*] The actual design of the device or software version running on the device version [0..*] The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties property [0..*]

XML Template

<Device xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Instance identifier --></identifier>
 <definition><!-- 0..1 Reference(DeviceDefinition) The reference to the definition for the device --></definition>
 <udiCarrier>  <!-- 0..* Unique Device Identifier (UDI) Barcode string -->
  <deviceIdentifier value="[string]"/><!-- 0..1 Mandatory fixed portion of UDI -->
  <issuer value="[uri]"/><!-- 0..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 + -->
 </udiCarrier>
 <status value="[code]"/><!-- 0..1 active | inactive | entered-in-error | unknown -->
 <statusReason><!-- 0..* CodeableConcept online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off --></statusReason>
 <distinctIdentifier value="[string]"/><!-- 0..1 The distinct identification string -->
 <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 of the device as given by the manufacturer -->
  <

  <name value="[string]"/><!-- 1..1 The name that identifies the device -->

  <type value="[code]"/><!-- 1..1 udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other -->
 </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 -->

 <type><!-- 0..1 CodeableConcept The kind or type of device --></type>
 <specialization>  <!-- 0..* The capabilities supported on a  device, the standards to which the device conforms for a particular purpose, and used for the communication -->
  <systemType><!-- 1..1 CodeableConcept The standard that is used to operate and communicate --></systemType>
  <version value="[string]"/><!-- 0..1 The version of the standard that is used to operate and communicate -->
 </specialization>
 <version>  <!-- 0..* The actual design of the device or software version running on the device -->
  <</type>

  <type><!-- 0..1 CodeableConcept The type of the device version, e.g. manufacturer, approved, internal --></type>

  <component><!-- 0..1 Identifier A single component of the device version --></component>
  <value value="[string]"/><!-- 1..1 The version text -->
 </version>
 <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 DeviceDefinitionPropetyCode (Extensible) --></type>
  <valueQuantity><!-- 0..* Quantity Property value as a quantity --></valueQuantity>
  <valueCode><!-- 0..* CodeableConcept Property value as a code, e.g., NTP4 (synced to NTP) --></valueCode>
 </property>
 <patient><!-- 0..1 Reference(Patient) Patient to whom Device is affixed --></patient>
 <owner><!-- 0..1 Reference(Organization) Organization responsible for device --></owner>
 <contact><!-- 0..* ContactPoint Details for human/organization for support --></contact>
 <location><!-- 0..1 Reference(Location) Where the device is found --></location>
 <url value="[uri]"/><!-- 0..1 Network address to contact device -->
 <note><!-- 0..* Annotation Device notes and comments --></note>
 <safety><!-- 0..* CodeableConcept Safety Characteristics of Device --></safety>
 <</parent>

 <parent><!-- 0..1 Reference(Device) The device that this device is attached to or is part of --></parent>

</Device>

JSON Template

{doco
  "resourceType" : "Device",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Instance identifier
  "definition" : { Reference(DeviceDefinition) }, // The reference to the definition for the device
  "udiCarrier" : [{ // Unique Device Identifier (UDI) Barcode string
    "deviceIdentifier" : "<string>", // Mandatory fixed portion of UDI
    "issuer" : "<uri>", // 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 +
  }],
  "status" : "<code>", // active | inactive | entered-in-error | unknown
  "statusReason" : [{ CodeableConcept }], // online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off
  "distinctIdentifier" : "<string>", // The distinct identification string
  "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 of the device as given by the manufacturer
    "

    "name" : "<string>", // R!  The name that identifies the device

    "type" : "<code>" // R!  udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other
  }],
  "
  "

  "modelNumber" : "<string>", // The manufacturer's model number for the device
  "partNumber" : "<string>", // The part number or catalog number of the device

  "type" : { CodeableConcept }, // The kind or type of device
  "specialization" : [{ // The capabilities supported on a  device, the standards to which the device conforms for a particular purpose, and used for the communication
    "systemType" : { CodeableConcept }, // R!  The standard that is used to operate and communicate
    "version" : "<string>" // The version of the standard that is used to operate and communicate
  }],
  "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 }, // A single component of the device version
    "value" : "<string>" // R!  The version text
  }],
  "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 DeviceDefinitionPropetyCode (Extensible)
    "valueQuantity" : [{ Quantity }], // Property value as a quantity
    "valueCode" : [{ CodeableConcept }] // Property value as a code, e.g., NTP4 (synced to NTP)
  }],
  "patient" : { Reference(Patient) }, // Patient to whom Device is affixed
  "owner" : { Reference(Organization) }, // Organization responsible for device
  "contact" : [{ ContactPoint }], // Details for human/organization for support
  "location" : { Reference(Location) }, // Where the device is found
  "url" : "<uri>", // Network address to contact device
  "note" : [{ Annotation }], // Device notes and comments
  "safety" : [{ CodeableConcept }], // Safety Characteristics of Device
  "

  "parent" : { Reference(Device) } // The device that this device is attached to or is 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.definition [ Reference(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 ]; # 0..1 Mandatory fixed portion of UDI
    fhir:Device.udiCarrier.issuer [ uri ]; # 0..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 +
  ], ...;
  fhir:Device.status [ code ]; # 0..1 active | inactive | entered-in-error | unknown
  fhir:Device.statusReason [ CodeableConcept ], ... ; # 0..* online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off
  fhir:Device.distinctIdentifier [ string ]; # 0..1 The distinct identification string
  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 of the device as given by the manufacturer
    fhir:

    fhir:Device.deviceName.name [ string ]; # 1..1 The name that identifies the device

    fhir:Device.deviceName.type [ code ]; # 1..1 udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other
  ], ...;
  fhir:
  fhir:

  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.type [ CodeableConcept ]; # 0..1 The kind or type of device
  fhir:Device.specialization [ # 0..* The capabilities supported on a  device, the standards to which the device conforms for a particular purpose, and used for the communication
    fhir:Device.specialization.systemType [ CodeableConcept ]; # 1..1 The standard that is used to operate and communicate
    fhir:Device.specialization.version [ string ]; # 0..1 The version of the standard that is used to operate and communicate
  ], ...;
  fhir:Device.version [ # 0..* The actual design of the device or software version running on the device
    fhir:

    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 A single component of the device version
    fhir:Device.version.value [ string ]; # 1..1 The version text
  ], ...;
  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 DeviceDefinitionPropetyCode (Extensible)
    fhir:Device.property.valueQuantity [ Quantity ], ... ; # 0..* Property value as a quantity
    fhir:Device.property.valueCode [ CodeableConcept ], ... ; # 0..* Property value as a code, e.g., NTP4 (synced to NTP)
  ], ...;
  fhir:Device.patient [ Reference(Patient) ]; # 0..1 Patient to whom Device is affixed
  fhir:Device.owner [ Reference(Organization) ]; # 0..1 Organization responsible for device
  fhir:Device.contact [ ContactPoint ], ... ; # 0..* Details for human/organization for support
  fhir:Device.location [ Reference(Location) ]; # 0..1 Where the device is found
  fhir:Device.url [ uri ]; # 0..1 Network address to contact device
  fhir:Device.note [ Annotation ], ... ; # 0..* Device notes and comments
  fhir:Device.safety [ CodeableConcept ], ... ; # 0..* Safety Characteristics of Device
  fhir:

  fhir:Device.parent [ Reference(Device) ]; # 0..1 The device that this device is attached to or is part of

]

Changes since Release 3 4

Device Device.definition Added Element Device.udiCarrier Added Element Device.udiCarrier.deviceIdentifier Added Element Device.udiCarrier.issuer Added Element Device.udiCarrier.jurisdiction Added Element Device.udiCarrier.carrierAIDC Added Element Device.udiCarrier.carrierHRF Added Element Device.udiCarrier.entryType Added Element Device.status Change value set from http://hl7.org/fhir/ValueSet/device-status to http://hl7.org/fhir/ValueSet/device-status|4.0.1 Device.statusReason Added Element Device.distinctIdentifier Added Element Device.serialNumber Added Element Device.deviceName Added Element Device.deviceName.name Added Mandatory Element Device.deviceName.type Added Mandatory Element Device.modelNumber Added Element Device.partNumber Added Element Device.specialization Added Element Device.specialization.systemType Added Mandatory Element Device.specialization.version Added Element Device.version Max Cardinality changed from 1 to * Type changed from string to BackboneElement Device.version.type Added Element Device.version.component Added Element Device.version.value Added Mandatory Element Device.property Added Element Device.property.type Added Mandatory Element Device.property.valueQuantity Added Element Device.property.valueCode
  • Added Element Device.parent Added Element Device.udi deleted Device.model deleted No Changes

See the Full Difference for further information

This analysis is available as XML or JSON .

Conversions between R3 and R4

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). )

 

See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON , XML Schema / Schematron + JSON Schema , ShEx (for Turtle ) + see the extensions & the dependency analysis

Path Definition Type Reference
Device.udiCarrier.entryType Codes to identify how UDI data was entered. Required UDIEntryType
Device.status The availability status of the device. Required FHIRDeviceStatus
Device.statusReason The availability status reason of the device. Extensible FHIRDeviceStatusReason
Device.deviceName.type The type of name the device is referred by. Required DeviceNameType
Device.type Codes to identify medical devices. Example DeviceType

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:

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.

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Expression In Common
device-name string A 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
identifier token Instance id from manufacturer, owner, and others Device.identifier
location reference A location, where the resource is found Device.location
( Location )
manufacturer string The manufacturer of the device Device.manufacturer
model string The model of the device Device.modelNumber
organization reference The organization responsible for the device Device.owner
( Organization )
patient reference Patient information, if the resource is affixed to a person Device.patient
( Patient )
status token active | inactive | entered-in-error | unknown Device.status
type token The type of the device Device.type
udi-carrier string

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

Device.udiCarrier.carrierHRF
udi-di string The udi Device Identifier (DI) Device.udiCarrier.deviceIdentifier
url uri Network address to contact device Device.url