Canadian Baseline
1.1.0 - CI Build
Canadian Baseline, published by HL7 Canada - FHIR Implementation Work Group. This guide is not an authorized publication; it is the continuous build for version 1.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7-Canada/ca-baseline/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/ca/baseline/StructureDefinition/profile-device-medical | Version: 1.1.0 | |||
Draft as of 2020-12-03 | Computable Name: DeviceProfileMedical |
Proposed constraints on the Device resource for the minimal set of data to query and retrieve a medical or non-medical device.
This profile sets minimum expectations for the Device resource to record and search for medical and non-medical devices, wearable devices personal health devices, virtual devices such as computer programs and systems, etc., except patient's implantable device(s). It identifies which core elements SHALL be present in the resource when using this profile.
This profile defines core localization concepts for use in the Canadian context.
All elements or attributes within the FHIR specification have cardinality as part of their definition - a minimum number of required appearances and a maximum number of allowable appearances.
Most elements in the FHIR specification have a minimum cardinality of 0, so most elements are not required and subsequently they may be missing from a resource when it is exchanged between systems.
Required elements in the Device (Implantable) profile:
Some elements are marked as Must Support. This means that implementations generating, receiving, or otherwise using resources with Must Support elements SHALL provide support for those elements in some meaningful way (see Must Support definition).
The following elements are marked as Must Support in the Device (Medical and Non-medical) profile:
Must Support elements:
The following are example usage scenarios for the Medical and Non-medical Device profile:
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Device
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Device | 0..* | Device | Device Profile | |
Slices for identifier | S | 0..* | Identifier | Instance identifier Slice: Unordered, Open by value:system |
identifier:All Slices | Content/Rules for all slices | |||
type | S | 0..1 | CodeableConcept | Description of identifier |
system | S | 0..1 | uri | The namespace for the identifier value |
value | S | 0..1 | string | The value that is unique within the system. |
identifier:EUI-64 | 0..1 | Identifier | IEEE 64-bit Extended Unique Identifier (EUI-64) | |
system | 1..1 | uri | EUI-64 system identifier Fixed Value: urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680 | |
value | 1..1 | string | The value that is unique | |
identifier:EUI-48 | 0..1 | Identifier | MAC Transport address identifier (EUI-48) | |
system | 1..1 | uri | EUI-48 system identifier Fixed Value: http://terminology.hl7.org/fhir/sid/eui-48 | |
value | 1..1 | string | The value that is unique | |
udiCarrier | S | 0..* | BackboneElement | Unique Device Identifier (UDI) Barcode string |
deviceIdentifier | S | 0..1 | string | Mandatory fixed portion of UDI |
carrierAIDC | S | 0..1 | base64Binary | UDI Machine Readable Barcode String |
carrierHRF | S | 0..1 | string | UDI Human Readable Barcode String |
distinctIdentifier | S | 0..1 | string | The distinct identification string |
manufacturer | S | 0..1 | string | Name of device manufacturer |
manufactureDate | S | 0..1 | dateTime | Date when the device was made |
expirationDate | S | 0..1 | dateTime | Date and time of expiry of this device (if applicable) |
serialNumber | S | 0..1 | string | Serial number assigned by the manufacturer |
deviceName | S | 0..* | BackboneElement | The name of the device as given by the manufacturer |
type | S | 1..1 | CodeableConcept | The kind or type of device Binding: FHIRDeviceTypes (extensible): Codes to identify medical devices |
version | S | 0..* | BackboneElement | The actual design of the device or software version running on the device |
patient | S | 0..1 | Reference(Patient Profile) | Patient to whom Device is affixed |
parent | 0..1 | Reference(Device Profile (Medical and Non-medical)) | The parent device | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Device.type | extensible | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Device | 0..* | Device | Device Profile dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
Slices for identifier | S | 0..* | Identifier | Instance identifier Slice: Unordered, Open by value:system ele-1: All FHIR elements must have a @value or children |
identifier:All Slices | Content/Rules for all slices | |||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . ele-1: All FHIR elements must have a @value or children |
type | SΣ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. ele-1: All FHIR elements must have a @value or children |
system | SΣ | 0..1 | uri | The namespace for the identifier value ele-1: All FHIR elements must have a @value or children Example General: http://www.acme.com/identifiers/patient |
value | SΣ | 0..1 | string | The value that is unique within the system. ele-1: All FHIR elements must have a @value or children Example General: 123456 |
identifier:EUI-64 | 0..1 | Identifier | IEEE 64-bit Extended Unique Identifier (EUI-64) ele-1: All FHIR elements must have a @value or children | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . ele-1: All FHIR elements must have a @value or children |
system | Σ | 1..1 | uri | EUI-64 system identifier ele-1: All FHIR elements must have a @value or children Fixed Value: urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680 |
value | Σ | 1..1 | string | The value that is unique ele-1: All FHIR elements must have a @value or children Example General: 123456 |
identifier:EUI-48 | 0..1 | Identifier | MAC Transport address identifier (EUI-48) ele-1: All FHIR elements must have a @value or children | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . ele-1: All FHIR elements must have a @value or children |
system | Σ | 1..1 | uri | EUI-48 system identifier ele-1: All FHIR elements must have a @value or children Fixed Value: http://terminology.hl7.org/fhir/sid/eui-48 |
value | Σ | 1..1 | string | The value that is unique ele-1: All FHIR elements must have a @value or children Example General: 123456 |
udiCarrier | SΣ | 0..* | BackboneElement | Unique Device Identifier (UDI) Barcode string ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
deviceIdentifier | SΣ | 0..1 | string | Mandatory fixed portion of UDI ele-1: All FHIR elements must have a @value or children |
carrierAIDC | SΣ | 0..1 | base64Binary | UDI Machine Readable Barcode String ele-1: All FHIR elements must have a @value or children |
carrierHRF | SΣ | 0..1 | string | UDI Human Readable Barcode String ele-1: All FHIR elements must have a @value or children |
status | ?!Σ | 0..1 | code | active | inactive | entered-in-error | unknown Binding: FHIRDeviceStatus (required): The availability status of the device. ele-1: All FHIR elements must have a @value or children |
distinctIdentifier | S | 0..1 | string | The distinct identification string ele-1: All FHIR elements must have a @value or children |
manufacturer | S | 0..1 | string | Name of device manufacturer ele-1: All FHIR elements must have a @value or children |
manufactureDate | S | 0..1 | dateTime | Date when the device was made ele-1: All FHIR elements must have a @value or children |
expirationDate | S | 0..1 | dateTime | Date and time of expiry of this device (if applicable) ele-1: All FHIR elements must have a @value or children |
serialNumber | S | 0..1 | string | Serial number assigned by the manufacturer ele-1: All FHIR elements must have a @value or children |
deviceName | S | 0..* | BackboneElement | The name of the device as given by the manufacturer ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
name | 1..1 | string | The name of the device ele-1: All FHIR elements must have a @value or children | |
type | 1..1 | code | udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other Binding: DeviceNameType (required): The type of name the device is referred by. ele-1: All FHIR elements must have a @value or children | |
type | S | 1..1 | CodeableConcept | The kind or type of device Binding: FHIRDeviceTypes (extensible): Codes to identify medical devices ele-1: All FHIR elements must have a @value or children |
version | S | 0..* | BackboneElement | The actual design of the device or software version running on the device ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
value | 1..1 | string | The version text ele-1: All FHIR elements must have a @value or children | |
patient | S | 0..1 | Reference(Patient Profile) | Patient to whom Device is affixed ele-1: All FHIR elements must have a @value or children |
parent | 0..1 | Reference(Device Profile (Medical and Non-medical)) | The parent device ele-1: All FHIR elements must have a @value or children | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Device.identifier.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Device.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | |
Device.identifier:EUI-64.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Device.identifier:EUI-48.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Device.status | required | FHIRDeviceStatushttp://hl7.org/fhir/ValueSet/device-status|4.0.1 from the FHIR Standard | |
Device.deviceName.type | required | DeviceNameTypehttp://hl7.org/fhir/ValueSet/device-nametype|4.0.1 from the FHIR Standard | |
Device.type | extensible | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Device | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Device | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Device | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Device | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Device | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Device | 0..* | Device | Device Profile | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | S | 0..* | Identifier | Instance identifier Slice: Unordered, Open by value:system | ||||
identifier:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | SΣ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | SΣ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
value | SΣ | 0..1 | string | The value that is unique within the system. Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
identifier:EUI-64 | 0..1 | Identifier | IEEE 64-bit Extended Unique Identifier (EUI-64) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | EUI-64 system identifier Fixed Value: urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680 | ||||
value | Σ | 1..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
identifier:EUI-48 | 0..1 | Identifier | MAC Transport address identifier (EUI-48) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | EUI-48 system identifier Fixed Value: http://terminology.hl7.org/fhir/sid/eui-48 | ||||
value | Σ | 1..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
definition | 0..1 | Reference(DeviceDefinition) | The reference to the definition for the device | |||||
udiCarrier | SΣ | 0..* | BackboneElement | Unique Device Identifier (UDI) Barcode string | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
deviceIdentifier | SΣ | 0..1 | string | Mandatory fixed portion of UDI | ||||
issuer | 0..1 | uri | UDI Issuing Organization | |||||
jurisdiction | 0..1 | uri | Regional UDI authority | |||||
carrierAIDC | SΣ | 0..1 | base64Binary | UDI Machine Readable Barcode String | ||||
carrierHRF | SΣ | 0..1 | string | UDI Human Readable Barcode String | ||||
entryType | 0..1 | code | barcode | rfid | manual + Binding: UDIEntryType (required): Codes to identify how UDI data was entered. | |||||
status | ?!Σ | 0..1 | code | active | inactive | entered-in-error | unknown Binding: FHIRDeviceStatus (required): The availability status of the device. | ||||
statusReason | 0..* | CodeableConcept | online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off Binding: FHIRDeviceStatusReason (extensible): The availability status reason of the device. | |||||
distinctIdentifier | S | 0..1 | string | The distinct identification string | ||||
manufacturer | S | 0..1 | string | Name of device manufacturer | ||||
manufactureDate | S | 0..1 | dateTime | Date when the device was made | ||||
expirationDate | S | 0..1 | dateTime | Date and time of expiry of this device (if applicable) | ||||
lotNumber | 0..1 | string | Lot number of manufacture | |||||
serialNumber | S | 0..1 | string | Serial number assigned by the manufacturer | ||||
deviceName | S | 0..* | BackboneElement | The name of the device as given by the manufacturer | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | string | The name of the device | |||||
type | 1..1 | code | udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other Binding: DeviceNameType (required): The type of name the device is referred by. | |||||
modelNumber | 0..1 | string | The model number for the device | |||||
partNumber | 0..1 | string | The part number of the device | |||||
type | S | 1..1 | CodeableConcept | The kind or type of device Binding: FHIRDeviceTypes (extensible): Codes to identify medical devices | ||||
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 | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
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 | S | 0..* | BackboneElement | The actual design of the device or software version running on the device | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
type | 0..1 | CodeableConcept | The type of the device version | |||||
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 | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
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 | S | 0..1 | Reference(Patient Profile) | 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 Profile (Medical and Non-medical)) | The parent device | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Device.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
Device.identifier.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Device.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Device.identifier:EUI-64.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Device.identifier:EUI-64.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Device.identifier:EUI-48.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Device.identifier:EUI-48.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Device.udiCarrier.entryType | required | UDIEntryTypehttp://hl7.org/fhir/ValueSet/udi-entry-type|4.0.1 from the FHIR Standard | ||||
Device.status | required | FHIRDeviceStatushttp://hl7.org/fhir/ValueSet/device-status|4.0.1 from the FHIR Standard | ||||
Device.statusReason | extensible | FHIRDeviceStatusReasonhttp://hl7.org/fhir/ValueSet/device-status-reason from the FHIR Standard | ||||
Device.deviceName.type | required | DeviceNameTypehttp://hl7.org/fhir/ValueSet/device-nametype|4.0.1 from the FHIR Standard | ||||
Device.type | extensible | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Device | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Device | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Device | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Device | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Device | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
This structure is derived from Device
Summary
Mandatory: 1 element(4 nested mandatory elements)
Must-Support: 17 elements
Fixed: 2 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Differential View
This structure is derived from Device
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Device | 0..* | Device | Device Profile | |
Slices for identifier | S | 0..* | Identifier | Instance identifier Slice: Unordered, Open by value:system |
identifier:All Slices | Content/Rules for all slices | |||
type | S | 0..1 | CodeableConcept | Description of identifier |
system | S | 0..1 | uri | The namespace for the identifier value |
value | S | 0..1 | string | The value that is unique within the system. |
identifier:EUI-64 | 0..1 | Identifier | IEEE 64-bit Extended Unique Identifier (EUI-64) | |
system | 1..1 | uri | EUI-64 system identifier Fixed Value: urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680 | |
value | 1..1 | string | The value that is unique | |
identifier:EUI-48 | 0..1 | Identifier | MAC Transport address identifier (EUI-48) | |
system | 1..1 | uri | EUI-48 system identifier Fixed Value: http://terminology.hl7.org/fhir/sid/eui-48 | |
value | 1..1 | string | The value that is unique | |
udiCarrier | S | 0..* | BackboneElement | Unique Device Identifier (UDI) Barcode string |
deviceIdentifier | S | 0..1 | string | Mandatory fixed portion of UDI |
carrierAIDC | S | 0..1 | base64Binary | UDI Machine Readable Barcode String |
carrierHRF | S | 0..1 | string | UDI Human Readable Barcode String |
distinctIdentifier | S | 0..1 | string | The distinct identification string |
manufacturer | S | 0..1 | string | Name of device manufacturer |
manufactureDate | S | 0..1 | dateTime | Date when the device was made |
expirationDate | S | 0..1 | dateTime | Date and time of expiry of this device (if applicable) |
serialNumber | S | 0..1 | string | Serial number assigned by the manufacturer |
deviceName | S | 0..* | BackboneElement | The name of the device as given by the manufacturer |
type | S | 1..1 | CodeableConcept | The kind or type of device Binding: FHIRDeviceTypes (extensible): Codes to identify medical devices |
version | S | 0..* | BackboneElement | The actual design of the device or software version running on the device |
patient | S | 0..1 | Reference(Patient Profile) | Patient to whom Device is affixed |
parent | 0..1 | Reference(Device Profile (Medical and Non-medical)) | The parent device | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Device.type | extensible | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Device | 0..* | Device | Device Profile dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated dom-5: If a resource is contained in another resource, it SHALL NOT have a security label dom-6: A resource should have narrative for robust management | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
Slices for identifier | S | 0..* | Identifier | Instance identifier Slice: Unordered, Open by value:system ele-1: All FHIR elements must have a @value or children |
identifier:All Slices | Content/Rules for all slices | |||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . ele-1: All FHIR elements must have a @value or children |
type | SΣ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. ele-1: All FHIR elements must have a @value or children |
system | SΣ | 0..1 | uri | The namespace for the identifier value ele-1: All FHIR elements must have a @value or children Example General: http://www.acme.com/identifiers/patient |
value | SΣ | 0..1 | string | The value that is unique within the system. ele-1: All FHIR elements must have a @value or children Example General: 123456 |
identifier:EUI-64 | 0..1 | Identifier | IEEE 64-bit Extended Unique Identifier (EUI-64) ele-1: All FHIR elements must have a @value or children | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . ele-1: All FHIR elements must have a @value or children |
system | Σ | 1..1 | uri | EUI-64 system identifier ele-1: All FHIR elements must have a @value or children Fixed Value: urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680 |
value | Σ | 1..1 | string | The value that is unique ele-1: All FHIR elements must have a @value or children Example General: 123456 |
identifier:EUI-48 | 0..1 | Identifier | MAC Transport address identifier (EUI-48) ele-1: All FHIR elements must have a @value or children | |
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . ele-1: All FHIR elements must have a @value or children |
system | Σ | 1..1 | uri | EUI-48 system identifier ele-1: All FHIR elements must have a @value or children Fixed Value: http://terminology.hl7.org/fhir/sid/eui-48 |
value | Σ | 1..1 | string | The value that is unique ele-1: All FHIR elements must have a @value or children Example General: 123456 |
udiCarrier | SΣ | 0..* | BackboneElement | Unique Device Identifier (UDI) Barcode string ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
deviceIdentifier | SΣ | 0..1 | string | Mandatory fixed portion of UDI ele-1: All FHIR elements must have a @value or children |
carrierAIDC | SΣ | 0..1 | base64Binary | UDI Machine Readable Barcode String ele-1: All FHIR elements must have a @value or children |
carrierHRF | SΣ | 0..1 | string | UDI Human Readable Barcode String ele-1: All FHIR elements must have a @value or children |
status | ?!Σ | 0..1 | code | active | inactive | entered-in-error | unknown Binding: FHIRDeviceStatus (required): The availability status of the device. ele-1: All FHIR elements must have a @value or children |
distinctIdentifier | S | 0..1 | string | The distinct identification string ele-1: All FHIR elements must have a @value or children |
manufacturer | S | 0..1 | string | Name of device manufacturer ele-1: All FHIR elements must have a @value or children |
manufactureDate | S | 0..1 | dateTime | Date when the device was made ele-1: All FHIR elements must have a @value or children |
expirationDate | S | 0..1 | dateTime | Date and time of expiry of this device (if applicable) ele-1: All FHIR elements must have a @value or children |
serialNumber | S | 0..1 | string | Serial number assigned by the manufacturer ele-1: All FHIR elements must have a @value or children |
deviceName | S | 0..* | BackboneElement | The name of the device as given by the manufacturer ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
name | 1..1 | string | The name of the device ele-1: All FHIR elements must have a @value or children | |
type | 1..1 | code | udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other Binding: DeviceNameType (required): The type of name the device is referred by. ele-1: All FHIR elements must have a @value or children | |
type | S | 1..1 | CodeableConcept | The kind or type of device Binding: FHIRDeviceTypes (extensible): Codes to identify medical devices ele-1: All FHIR elements must have a @value or children |
version | S | 0..* | BackboneElement | The actual design of the device or software version running on the device ele-1: All FHIR elements must have a @value or children |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized ele-1: All FHIR elements must have a @value or children ext-1: Must have either extensions or value[x], not both |
value | 1..1 | string | The version text ele-1: All FHIR elements must have a @value or children | |
patient | S | 0..1 | Reference(Patient Profile) | Patient to whom Device is affixed ele-1: All FHIR elements must have a @value or children |
parent | 0..1 | Reference(Device Profile (Medical and Non-medical)) | The parent device ele-1: All FHIR elements must have a @value or children | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
Device.identifier.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Device.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | |
Device.identifier:EUI-64.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Device.identifier:EUI-48.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | |
Device.status | required | FHIRDeviceStatushttp://hl7.org/fhir/ValueSet/device-status|4.0.1 from the FHIR Standard | |
Device.deviceName.type | required | DeviceNameTypehttp://hl7.org/fhir/ValueSet/device-nametype|4.0.1 from the FHIR Standard | |
Device.type | extensible | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Device | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Device | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Device | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Device | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Device | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Device | 0..* | Device | Device Profile | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | S | 0..* | Identifier | Instance identifier Slice: Unordered, Open by value:system | ||||
identifier:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | SΣ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | SΣ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
value | SΣ | 0..1 | string | The value that is unique within the system. Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
identifier:EUI-64 | 0..1 | Identifier | IEEE 64-bit Extended Unique Identifier (EUI-64) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | EUI-64 system identifier Fixed Value: urn:oid:1.2.840.10004.1.1.1.0.0.1.0.0.1.2680 | ||||
value | Σ | 1..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
identifier:EUI-48 | 0..1 | Identifier | MAC Transport address identifier (EUI-48) | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | Σ | 1..1 | uri | EUI-48 system identifier Fixed Value: http://terminology.hl7.org/fhir/sid/eui-48 | ||||
value | Σ | 1..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
definition | 0..1 | Reference(DeviceDefinition) | The reference to the definition for the device | |||||
udiCarrier | SΣ | 0..* | BackboneElement | Unique Device Identifier (UDI) Barcode string | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
deviceIdentifier | SΣ | 0..1 | string | Mandatory fixed portion of UDI | ||||
issuer | 0..1 | uri | UDI Issuing Organization | |||||
jurisdiction | 0..1 | uri | Regional UDI authority | |||||
carrierAIDC | SΣ | 0..1 | base64Binary | UDI Machine Readable Barcode String | ||||
carrierHRF | SΣ | 0..1 | string | UDI Human Readable Barcode String | ||||
entryType | 0..1 | code | barcode | rfid | manual + Binding: UDIEntryType (required): Codes to identify how UDI data was entered. | |||||
status | ?!Σ | 0..1 | code | active | inactive | entered-in-error | unknown Binding: FHIRDeviceStatus (required): The availability status of the device. | ||||
statusReason | 0..* | CodeableConcept | online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off Binding: FHIRDeviceStatusReason (extensible): The availability status reason of the device. | |||||
distinctIdentifier | S | 0..1 | string | The distinct identification string | ||||
manufacturer | S | 0..1 | string | Name of device manufacturer | ||||
manufactureDate | S | 0..1 | dateTime | Date when the device was made | ||||
expirationDate | S | 0..1 | dateTime | Date and time of expiry of this device (if applicable) | ||||
lotNumber | 0..1 | string | Lot number of manufacture | |||||
serialNumber | S | 0..1 | string | Serial number assigned by the manufacturer | ||||
deviceName | S | 0..* | BackboneElement | The name of the device as given by the manufacturer | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | string | The name of the device | |||||
type | 1..1 | code | udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other Binding: DeviceNameType (required): The type of name the device is referred by. | |||||
modelNumber | 0..1 | string | The model number for the device | |||||
partNumber | 0..1 | string | The part number of the device | |||||
type | S | 1..1 | CodeableConcept | The kind or type of device Binding: FHIRDeviceTypes (extensible): Codes to identify medical devices | ||||
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 | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
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 | S | 0..* | BackboneElement | The actual design of the device or software version running on the device | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
type | 0..1 | CodeableConcept | The type of the device version | |||||
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 | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
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 | S | 0..1 | Reference(Patient Profile) | 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 Profile (Medical and Non-medical)) | The parent device | |||||
Documentation for this format |
Path | Conformance | ValueSet | URI | |||
Device.language | preferred | CommonLanguageshttp://hl7.org/fhir/ValueSet/languages from the FHIR Standard
| ||||
Device.identifier.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Device.identifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Device.identifier:EUI-64.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Device.identifier:EUI-64.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Device.identifier:EUI-48.use | required | IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Device.identifier:EUI-48.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Device.udiCarrier.entryType | required | UDIEntryTypehttp://hl7.org/fhir/ValueSet/udi-entry-type|4.0.1 from the FHIR Standard | ||||
Device.status | required | FHIRDeviceStatushttp://hl7.org/fhir/ValueSet/device-status|4.0.1 from the FHIR Standard | ||||
Device.statusReason | extensible | FHIRDeviceStatusReasonhttp://hl7.org/fhir/ValueSet/device-status-reason from the FHIR Standard | ||||
Device.deviceName.type | required | DeviceNameTypehttp://hl7.org/fhir/ValueSet/device-nametype|4.0.1 from the FHIR Standard | ||||
Device.type | extensible | FHIRDeviceTypeshttp://hl7.org/fhir/ValueSet/device-kind from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Device | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Device | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Device | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Device | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Device | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
This structure is derived from Device
Summary
Mandatory: 1 element(4 nested mandatory elements)
Must-Support: 17 elements
Fixed: 2 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron
The Device.identifier specifies a unique instance identifiers assigned to a device by manufacturer. This Device profile constrains the use of the Extended Unique Identifier (EUI) such as 64-bit Extended Unique Identifier (EUI-64) or 48-bit Extended Unique Identifier (EUI-48) by fixing the Identifier.system namespace for the identifier value.