This wiki has undergone a migration to Confluence found Here
Difference between revisions of "Device-DeviceComponent Merge"
Jump to navigation
Jump to search
Stefankarl (talk | contribs) (Created page with "The Orders and Observations workgroup is discussing changes to the Device resource on [http://confluence.hl7.org:8090/display/OO/Device+Resource+Harmonization this] page. One ...") |
Stefankarl (talk | contribs) (Completing UDI; adding specialization elements) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | The Orders and Observations workgroup is discussing changes to the Device resource on [http://confluence.hl7.org:8090/display/OO/Device+Resource+Harmonization this] page. One of these changes is about merging the Device and DeviceComponent resources and using them for a harmonized Personal Health Device (PHD) and Point-of-Care Device (PoCD) model. | + | The Orders and Observations workgroup is discussing changes to the Device resource on [http://confluence.hl7.org:8090/display/OO/Device+Resource+Harmonization this] page. One of these changes is about merging the Device and DeviceComponent resources and using them for a harmonized Personal Health Device (PHD) and Point-of-Care Device (PoCD) model. This proposal has been worked out in the Devices on FHIR project. |
+ | |||
+ | ==Merged Device Resource Proposal== | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 10: | Line 12: | ||
| identifier || [0..*] || Identifier | | identifier || [0..*] || Identifier | ||
|- | |- | ||
− | | udi || [0..1] || BackboneElement | + | | udi<br />– deviceIdentifier<br />– name<br />– jurisdiction<br />– carrierHRF<br />– carrierAIDC<br />– issuer<br />– entryType || [0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1] || BackboneElement<br />string<br />string<br />uri<br />string<br />base64Binary<br />uri<br />code |
| || || | | || || | ||
− | | udi || [0..1] || BackboneElement | + | | udi<br />– deviceIdentifier<br />– name<br />– jurisdiction<br />– carrierHRF<br />– carrierAIDC<br />– issuer<br />– entryType || [0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1]<br />[0..1] || BackboneElement<br />string<br />string<br />uri<br />string<br />base64Binary<br />uri<br />code |
|- | |- | ||
| status || [0..1] || code | | status || [0..1] || code | ||
Line 20: | Line 22: | ||
| || || | | || || | ||
| operationalStatus || [0..*] || CodeableConcept | | operationalStatus || [0..*] || CodeableConcept | ||
− | | statusReason || [0..*] || CodeableConcept | + | | style="background-color:palegreen"|statusReason || style="background-color:palegreen"|[0..*] || style="background-color:palegreen"|CodeableConcept |
|- | |- | ||
| type || [0..1] || CodeableConcept | | type || [0..1] || CodeableConcept | ||
Line 28: | Line 30: | ||
| || || | | || || | ||
| || || | | || || | ||
− | | specialization || [0..*] || CodeableConcept | + | | style="background-color:palegreen"|specialization<br />– type<br />– version || style="background-color:palegreen"|[0..*]<br />[0..1]<br />[0..1] || style="background-color:palegreen"|BackboneElement<br />CodeableConcept<br />string |
|- | |- | ||
| || || | | || || | ||
| || || | | || || | ||
− | | partNumber || [0..1] || string | + | | style="background-color:palegreen"|partNumber || style="background-color:palegreen"|[0..1] || style="background-color:palegreen"|string |
|- | |- | ||
| lotNumber || [0..1] || string | | lotNumber || [0..1] || string | ||
Line 56: | Line 58: | ||
| version || [0..1] || string | | version || [0..1] || string | ||
| productionSpecification<br />– specType<br />– componentId<br />– productionSpec || [0..*]<br />[0..1]<br />[0..1]<br />[0..1] || BackboneElement<br />CodeableConcept<br />Identifier<br />string | | productionSpecification<br />– specType<br />– componentId<br />– productionSpec || [0..*]<br />[0..1]<br />[0..1]<br />[0..1] || BackboneElement<br />CodeableConcept<br />Identifier<br />string | ||
− | | version<br />– type<br />– component<br />– value || [0..*]<br />[0..1]<br />[0..1]<br />[0..1] || BackboneElement<br />CodeableConcept<br />Identifier<br />string | + | | style="background-color:lemonchiffon"|version<br />– type<br />– component<br />– value || style="background-color:lemonchiffon"|[0..*]<br />[0..1]<br />[0..1]<br />[0..1] || style="background-color:lemonchiffon"|BackboneElement<br />CodeableConcept<br />Identifier<br />string |
|- | |- | ||
| || || | | || || | ||
Line 68: | Line 70: | ||
| || || | | || || | ||
| parent || [0..1] || Reference(DeviceComponent) | | parent || [0..1] || Reference(DeviceComponent) | ||
− | | parent || [0..1] || Reference(Device) | + | | style="background-color:palegreen"|parent || style="background-color:palegreen"|[0..1] || style="background-color:palegreen"|Reference(Device) |
|- | |- | ||
| patient || [0..1] || Reference(Patient) | | patient || [0..1] || Reference(Patient) | ||
Line 112: | Line 114: | ||
| || || | | || || | ||
| property<br />– type<br />– valueQuantity<br />– valueCode || [0..*]<br />[1..1]<br />[0..*]<br />[0..*] || BackboneElement<br />CodeableConcept<br />Quantity<br />CodeableConcept | | property<br />– type<br />– valueQuantity<br />– valueCode || [0..*]<br />[1..1]<br />[0..*]<br />[0..*] || BackboneElement<br />CodeableConcept<br />Quantity<br />CodeableConcept | ||
− | | property<br />– type<br />– valueQuantity<br />– valueCode || [0..*]<br />[1..1]<br />[0..*]<br />[0..*] || BackboneElement<br />CodeableConcept<br />Quantity<br />CodeableConcept | + | | style="background-color:palegreen"|property<br />– type<br />– valueQuantity<br />– valueCode || style="background-color:palegreen"|[0..*]<br />[1..1]<br />[0..*]<br />[0..*] || style="background-color:palegreen"|BackboneElement<br />CodeableConcept<br />Quantity<br />CodeableConcept |
|} | |} | ||
+ | Device and DeviceComponent definitions are from FHIR R4 ballot #1 (3.3.0). Green fields mark elements added to the merged Device resource. Yellow fields mark changed elements. | ||
+ | |||
+ | ===Added or changed Elements=== | ||
+ | |||
+ | ; statusReason | ||
+ | : Captures the reason for an inactive status, e. g. not-ready, standby, or disconnected. Device.status and Device.statusReason together describe the more detailed status information available in DeviceComponent.operationalStatus. The value set shall cover the entries from DeviceComponentOperationalStatus except "on" and "entered-in-error", as well as additional entries proposed in [http://gforge.hl7.org/gf/project/fhir/tracker/?action=TrackerItemEdit&tracker_item_id=15346 GF#15346]. | ||
+ | |||
+ | ; specialization | ||
+ | : New element for multi-purpose PHDs as requested in [http://gforge.hl7.org/gf/project/fhir/tracker/?action=TrackerItemEdit&tracker_item_id=15596 GF#15596]. | ||
+ | |||
+ | ; partNumber | ||
+ | : This is an entry from DeviceComponent.productionSpecification. Creating an inline element separates ''kind'' from ''instance'' and allows to make it a search parameter. | ||
+ | |||
+ | ; version | ||
+ | : Many devices have multiple revisions, e. g. for hardware, software, and firmware. Within a device there may be parts with individual revision, e. g. boot loader, operating system, and application software modules with independent versioning. The complex version element can capture these revisions in a flexible way. Device.version.type value set shall cover the "revision" entries from DeviceSpecificationSpecType with preferred or example binding. | ||
+ | |||
+ | ; parent | ||
+ | : Links Device resources together to represent a structured device. Empty parent indicates the top-level resource. | ||
+ | |||
+ | ; property | ||
+ | : Additional properties for PHDs. | ||
+ | |||
+ | ===Missing Elements=== | ||
+ | |||
+ | ; lastSystemChange | ||
+ | : Do we really need it or is it covered by Resource.meta.lastUpdated? | ||
+ | |||
+ | ; source | ||
+ | : The top-level Device resource can be determined by following the parent hierarchy. | ||
+ | |||
+ | ; parameterGroup, measurementPrinciple | ||
+ | : Add as extensions to the VMD and Channel Device profiles. | ||
+ | |||
+ | ; languageCode | ||
+ | : Use Resource.language instead as proposed and accepted in [http://gforge.hl7.org/gf/project/fhir/tracker/?action=TrackerItemEdit&tracker_item_id=15341 GF#15341]. | ||
+ | |||
+ | <hr /> | ||
[[Devices_on_FHIR | ''(Return to DoF home page)'']] | [[Devices_on_FHIR | ''(Return to DoF home page)'']] | ||
[[Category:Health_Care_Devices_(DEV)_WG]] | [[Category:Health_Care_Devices_(DEV)_WG]] |
Latest revision as of 12:15, 22 May 2018
The Orders and Observations workgroup is discussing changes to the Device resource on this page. One of these changes is about merging the Device and DeviceComponent resources and using them for a harmonized Personal Health Device (PHD) and Point-of-Care Device (PoCD) model. This proposal has been worked out in the Devices on FHIR project.
Merged Device Resource Proposal
Device | DeviceComponent | Merged Device | ||||||
---|---|---|---|---|---|---|---|---|
identifier | [0..*] | Identifier | identifier | [0..*] | Identifier | identifier | [0..*] | Identifier |
udi – deviceIdentifier – name – jurisdiction – carrierHRF – carrierAIDC – issuer – entryType |
[0..1] [0..1] [0..1] [0..1] [0..1] [0..1] [0..1] [0..1] |
BackboneElement string string uri string base64Binary uri code |
udi – deviceIdentifier – name – jurisdiction – carrierHRF – carrierAIDC – issuer – entryType |
[0..1] [0..1] [0..1] [0..1] [0..1] [0..1] [0..1] [0..1] |
BackboneElement string string uri string base64Binary uri code | |||
status | [0..1] | code | status | [0..1] | code | |||
operationalStatus | [0..*] | CodeableConcept | statusReason | [0..*] | CodeableConcept | |||
type | [0..1] | CodeableConcept | type | [1..1] | CodeableConcept | type | [0..1] | CodeableConcept |
specialization – type – version |
[0..*] [0..1] [0..1] |
BackboneElement CodeableConcept string | ||||||
partNumber | [0..1] | string | ||||||
lotNumber | [0..1] | string | lotNumber | [0..1] | string | |||
manufacturer | [0..1] | string | manufacturer | [0..1] | string | |||
manufactureDate | [0..1] | dateTime | manufactureDate | [0..1] | dateTime | |||
expirationDate | [0..1] | dateTime | expirationDate | [0..1] | dateTime | |||
model | [0..1] | string | model | [0..1] | string | |||
version | [0..1] | string | productionSpecification – specType – componentId – productionSpec |
[0..*] [0..1] [0..1] [0..1] |
BackboneElement CodeableConcept Identifier string |
version – type – component – value |
[0..*] [0..1] [0..1] [0..1] |
BackboneElement CodeableConcept Identifier string |
lastSystemChange | [0..1] | instant | ||||||
source | [0..1] | Reference(Device) | ||||||
parent | [0..1] | Reference(DeviceComponent) | parent | [0..1] | Reference(Device) | |||
patient | [0..1] | Reference(Patient) | patient | [0..1] | Reference(Patient) | |||
owner | [0..1] | Reference(Organization) | owner | [0..1] | Reference(Organization) | |||
contact | [0..*] | ContactPoint | contact | [0..*] | ContactPoint | |||
location | [0..1] | Reference(Location) | location | [0..1] | Reference(Location) | |||
url | [0..1] | uri | url | [0..1] | uri | |||
note | [0..*] | Annotation | note | [0..*] | Annotation | |||
safety | [0..*] | CodeableConcept | safety | [0..*] | CodeableConcept | |||
parameterGroup | [0..1] | CodeableConcept | ||||||
measurementPrinciple | [0..1] | code | ||||||
languageCode | [0..1] | CodeableConcept | ||||||
property – type – valueQuantity – valueCode |
[0..*] [1..1] [0..*] [0..*] |
BackboneElement CodeableConcept Quantity CodeableConcept |
property – type – valueQuantity – valueCode |
[0..*] [1..1] [0..*] [0..*] |
BackboneElement CodeableConcept Quantity CodeableConcept |
Device and DeviceComponent definitions are from FHIR R4 ballot #1 (3.3.0). Green fields mark elements added to the merged Device resource. Yellow fields mark changed elements.
Added or changed Elements
- statusReason
- Captures the reason for an inactive status, e. g. not-ready, standby, or disconnected. Device.status and Device.statusReason together describe the more detailed status information available in DeviceComponent.operationalStatus. The value set shall cover the entries from DeviceComponentOperationalStatus except "on" and "entered-in-error", as well as additional entries proposed in GF#15346.
- specialization
- New element for multi-purpose PHDs as requested in GF#15596.
- partNumber
- This is an entry from DeviceComponent.productionSpecification. Creating an inline element separates kind from instance and allows to make it a search parameter.
- version
- Many devices have multiple revisions, e. g. for hardware, software, and firmware. Within a device there may be parts with individual revision, e. g. boot loader, operating system, and application software modules with independent versioning. The complex version element can capture these revisions in a flexible way. Device.version.type value set shall cover the "revision" entries from DeviceSpecificationSpecType with preferred or example binding.
- parent
- Links Device resources together to represent a structured device. Empty parent indicates the top-level resource.
- property
- Additional properties for PHDs.
Missing Elements
- lastSystemChange
- Do we really need it or is it covered by Resource.meta.lastUpdated?
- source
- The top-level Device resource can be determined by following the parent hierarchy.
- parameterGroup, measurementPrinciple
- Add as extensions to the VMD and Channel Device profiles.
- languageCode
- Use Resource.language instead as proposed and accepted in GF#15341.