This page is part of the FHIR Specification (v0.0.82: DSTU 1). 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: R3 R2

5.11 Resource DeviceComponent - Content

This resource maintained by the Healthcare Devices Work Group

Describes the characteristics, operational status and capabilities of a medical-related component of a medical device.

5.11.1 Scope and Usage

The DeviceComponent resource is used to describe the characteristics, operational status and capabilities of a medical-related component of a medical device. It can be a physical component that is integrated inside the device, a removable physical component, or a non-physical component that allows physiological measurement data and its derived data to be grouped in a hierarchical information organization.

Note:

For the initial scope, this DeviceComponent resource is only applicable to describe a single node (such as MDS, VMD, or Channel) represents in the containment tree that is produced by the context scanner in any medical device that implements or derives from the ISO/IEEE 11073 standard.

5.11.2 Boundaries and Relationships

The DeviceComponent allows us to change the configuration of the device without having to change the device resource instance. The life-cycle of the configuration may be completely different than the one of the device itself.

There are several related resources

5.11.3 Background and Context

5.11.3.1 Structure of a DeviceComponent Resource

A Context Scanner object of a medical device that implements or derives from ISO/IEEE 11073 standard is responsible for observing device configuration changes. After instantiation, the Context Scanner object is responsible for announcing the object instances in the device's MDIB, a hierarchical containment (MDS->VMD->Channel->Metric). The DeviceComponent resource can be used to describe the characteristics, operational status and capabilities of a medical-related component of a medical device. It can be a physical component that is integrated inside the device, a removable physical component, or a non-physical component that allows physiological measurement data and its derived data to be grouped in a hierarchical information organization. Devices are conceptualised using the following main structure:

  1. MedicalDeviceSystem - An actual device that external systems communicate with. In 11073, this is known as a MDS.
  2. VirtualMedicalDevice - A medical-related subsystem of a medical device. It can either be a physical hardware piece or a pure software plugin component of a medical device. In 11073, this is known as a VMD.
  3. Channel - A non-physical component that allows physiological measurement data and its derived data to be grouped in a hierarchical information organization.

Very simple devices may have only a single virtual device with a single channel and one metric, while complex devices may have multiple items at every level.

This resource is referenced by [DeviceMetric]

5.11.4 Resource Content

Structure

Name Flags Card. Type Description & Constraints doco
. . DeviceComponent DomainResource An instance of a medical-related component of a medical device
. . . type 1..1 CodeableConcept What kind of component it is
ComponentType ( Required )
. . . identifier 1..1 Identifier Instance id assigned by the software stack
. . . lastSystemChange 1..1 instant Recent system change timestamp
. . . source 0..1 Device A source device of this component
. . . parent 0..1 DeviceComponent Parent resource link
. . . operationalStatus 0..* CodeableConcept Component operational status
. . . parameterGroup 0..1 CodeableConcept Current supported parameter group
. . . measurementPrinciple 0..1 code other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+
Measmnt-Principle ( Required )
. . . productionSpecification 0..* Element Production specification of the component
. . . . specType 0..1 CodeableConcept Specification type
. . . . componentId 0..1 Identifier Internal component unique identification
. . . . productionSpec 0..1 string A printable string defining the component
. . . languageCode 0..1 CodeableConcept Language code for the human-readable text strings produced by the device

UML Diagram

DeviceComponent ( DomainResource ) Describes the specific component type as defined in the object-oriented or metric nomenclature partition type : CodeableConcept 1..1 « Describes the type of the component ComponentType » Describes the local assigned unique identification by the software. For example: handle ID identifier : Identifier 1..1 Describes the timestamp for the most recent system change which includes device configuration or setting change lastSystemChange : instant 1..1 Describes the link to the source Device that contains administrative device information such as manufacture, serial number, etc source : Reference ( Device ) 0..1 Describes the link to the parent resource. For example: Channel is linked to its VMD parent parent : Reference ( DeviceComponent ) 0..1 Indicates current operational status of the device. For example: On, Off, Standby, etc operationalStatus : CodeableConcept 0..* Describes the parameter group supported by the current device component that is based on some nomenclature, e.g., cardiovascular parameterGroup : CodeableConcept 0..1 Describes the physical principle of the measurement. For example: thermal, chemical, acoustical, etc measurementPrinciple : code 0..1 « Different measurement principle supported by the device Measmnt-Principle » Describes the language code for the human-readable text string produced by the device. This language code will follow the IETF language tag. Example: en-US languageCode : CodeableConcept 0..1 ProductionSpecification Describes the specification type, such as, serial number, part number, hardware revision, software revision, etc specType : CodeableConcept 0..1 Describes the internal component unique identification. This is a provision for manufacture specific standard components using a private OID. 11073-10101 has a partition for private OID semantic that the manufacture can make use of componentId : Identifier 0..1 Describes the printable string defining the component productionSpec : string 0..1 Describes the production specification such as component revision, serial number, etc productionSpecification 0..*

XML Template

<DeviceComponent xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <type><!-- 1..1 CodeableConcept What kind of component it is --></type>
 <identifier><!-- 1..1 Identifier Instance id assigned by the software stack --></identifier>
 <lastSystemChange value="[instant]"/><!-- 1..1 Recent system change timestamp -->
 <source><!-- 0..1 Reference(Device) A source device of this component --></source>
 <parent><!-- 0..1 Reference(DeviceComponent) Parent resource link --></parent>
 <operationalStatus><!-- 0..* CodeableConcept Component operational status --></operationalStatus>
 <parameterGroup><!-- 0..1 CodeableConcept Current supported parameter group --></parameterGroup>
 <measurementPrinciple value="[code]"/><!-- 0..1 other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ -->
 <productionSpecification>  <!-- 0..* Production specification of the component -->
  <specType><!-- 0..1 CodeableConcept Specification type --></specType>
  <componentId><!-- 0..1 Identifier Internal component unique identification --></componentId>
  <productionSpec value="[string]"/><!-- 0..1 A printable string defining the component -->
 </productionSpecification>
 <languageCode><!-- 0..1 CodeableConcept 
     Language code for the human-readable text strings produced by the device --></languageCode>
</DeviceComponent>

JSON Template

{doco
  "resourceType" : "DeviceComponent",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "type" : { CodeableConcept }, // R!  What kind of component it is
  "identifier" : { Identifier }, // R!  Instance id assigned by the software stack
  "lastSystemChange" : "<instant>", // R!  Recent system change timestamp
  "source" : { Reference(Device) }, // A source device of this component
  "parent" : { Reference(DeviceComponent) }, // Parent resource link
  "operationalStatus" : [{ CodeableConcept }], // Component operational status
  "parameterGroup" : { CodeableConcept }, // Current supported parameter group
  "measurementPrinciple" : "<code>", // other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+
  "productionSpecification" : [{ // Production specification of the component
    "specType" : { CodeableConcept }, // Specification type
    "componentId" : { Identifier }, // Internal component unique identification
    "productionSpec" : "<string>" // A printable string defining the component
  }],
  "languageCode" : { CodeableConcept } // 
     Language code for the human-readable text strings produced by the device
}

Structure

Name Flags Card. Type Description & Constraints doco
. . DeviceComponent DomainResource An instance of a medical-related component of a medical device
. . . type 1..1 CodeableConcept What kind of component it is
ComponentType ( Required )
. . . identifier 1..1 Identifier Instance id assigned by the software stack
. . . lastSystemChange 1..1 instant Recent system change timestamp
. . . source 0..1 Device A source device of this component
. . . parent 0..1 DeviceComponent Parent resource link
. . . operationalStatus 0..* CodeableConcept Component operational status
. . . parameterGroup 0..1 CodeableConcept Current supported parameter group
. . . measurementPrinciple 0..1 code other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+
Measmnt-Principle ( Required )
. . . productionSpecification 0..* Element Production specification of the component
. . . . specType 0..1 CodeableConcept Specification type
. . . . componentId 0..1 Identifier Internal component unique identification
. . . . productionSpec 0..1 string A printable string defining the component
. . . languageCode 0..1 CodeableConcept Language code for the human-readable text strings produced by the device

UML Diagram

DeviceComponent ( DomainResource ) Describes the specific component type as defined in the object-oriented or metric nomenclature partition type : CodeableConcept 1..1 « Describes the type of the component ComponentType » Describes the local assigned unique identification by the software. For example: handle ID identifier : Identifier 1..1 Describes the timestamp for the most recent system change which includes device configuration or setting change lastSystemChange : instant 1..1 Describes the link to the source Device that contains administrative device information such as manufacture, serial number, etc source : Reference ( Device ) 0..1 Describes the link to the parent resource. For example: Channel is linked to its VMD parent parent : Reference ( DeviceComponent ) 0..1 Indicates current operational status of the device. For example: On, Off, Standby, etc operationalStatus : CodeableConcept 0..* Describes the parameter group supported by the current device component that is based on some nomenclature, e.g., cardiovascular parameterGroup : CodeableConcept 0..1 Describes the physical principle of the measurement. For example: thermal, chemical, acoustical, etc measurementPrinciple : code 0..1 « Different measurement principle supported by the device Measmnt-Principle » Describes the language code for the human-readable text string produced by the device. This language code will follow the IETF language tag. Example: en-US languageCode : CodeableConcept 0..1 ProductionSpecification Describes the specification type, such as, serial number, part number, hardware revision, software revision, etc specType : CodeableConcept 0..1 Describes the internal component unique identification. This is a provision for manufacture specific standard components using a private OID. 11073-10101 has a partition for private OID semantic that the manufacture can make use of componentId : Identifier 0..1 Describes the printable string defining the component productionSpec : string 0..1 Describes the production specification such as component revision, serial number, etc productionSpecification 0..*

XML Template

<DeviceComponent xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <type><!-- 1..1 CodeableConcept What kind of component it is --></type>
 <identifier><!-- 1..1 Identifier Instance id assigned by the software stack --></identifier>
 <lastSystemChange value="[instant]"/><!-- 1..1 Recent system change timestamp -->
 <source><!-- 0..1 Reference(Device) A source device of this component --></source>
 <parent><!-- 0..1 Reference(DeviceComponent) Parent resource link --></parent>
 <operationalStatus><!-- 0..* CodeableConcept Component operational status --></operationalStatus>
 <parameterGroup><!-- 0..1 CodeableConcept Current supported parameter group --></parameterGroup>
 <measurementPrinciple value="[code]"/><!-- 0..1 other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ -->
 <productionSpecification>  <!-- 0..* Production specification of the component -->
  <specType><!-- 0..1 CodeableConcept Specification type --></specType>
  <componentId><!-- 0..1 Identifier Internal component unique identification --></componentId>
  <productionSpec value="[string]"/><!-- 0..1 A printable string defining the component -->
 </productionSpecification>
 <languageCode><!-- 0..1 CodeableConcept 
     Language code for the human-readable text strings produced by the device --></languageCode>
</DeviceComponent>

JSON Template

{doco
  "resourceType" : "DeviceComponent",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "type" : { CodeableConcept }, // R!  What kind of component it is
  "identifier" : { Identifier }, // R!  Instance id assigned by the software stack
  "lastSystemChange" : "<instant>", // R!  Recent system change timestamp
  "source" : { Reference(Device) }, // A source device of this component
  "parent" : { Reference(DeviceComponent) }, // Parent resource link
  "operationalStatus" : [{ CodeableConcept }], // Component operational status
  "parameterGroup" : { CodeableConcept }, // Current supported parameter group
  "measurementPrinciple" : "<code>", // other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+
  "productionSpecification" : [{ // Production specification of the component
    "specType" : { CodeableConcept }, // Specification type
    "componentId" : { Identifier }, // Internal component unique identification
    "productionSpec" : "<string>" // A printable string defining the component
  }],
  "languageCode" : { CodeableConcept } // 
     Language code for the human-readable text strings produced by the device
}

 

Alternate definitions: Schema / Schematron , Resource Profile ( XML , JSON ), Questionnaire

5.11.4.1 Terminology Bindings

Path Definition Type Reference
DeviceComponent.type Describes the type of the component Required RTM Management Service
DeviceComponent.measurementPrinciple Different measurement principle supported by the device Required http://hl7.org/fhir/measurement-principle

5.11.5 Notes:

5.11.6 Search Parameters

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 Paths
parent reference The parent DeviceComponent resource DeviceComponent.parent
( DeviceComponent )
source reference The device source DeviceComponent.source
( Device )
type token The device component type DeviceComponent.type