eHealth Infrastructure (v2020.7)

StructureDefinition: ehealth-devicemetric

Introduction

This resource describes qualities and other properties related to a Device. In addition it can describe a measurement, calculation or setting capability of the device.

Scope and Usage

In scope of the eHealth Infrastructure, the DeviceMetric resource is used for:

  • additional properties pertaining to the referenced Device, for instance, properties specifying simplicity of use, language, size and so on. These properties are captured through a generic structure based on a property type and value in the extension properties.

  • setting of device quality

DeviceMetric resources are created and updated automatically based on actions and information provided in the Service, Support & Logistics (SSL) domain of the eHealth Infrastructure. The use of DeviceMetric therefore concerns reading and searching only.

Device quality settings

The quality of the device can be expressed in a number of ways:

  • through calibration information (which may or may not apply to a particular kind of device) - specifying the last time of calibration and possibly when the calibration expires. Expiration of calibration, specified through the extension calibration.expires, is when the device quality cannot be determined by its calibration information.
  • an initial device quality
  • a degraded device quality value
  • an overridden device quality

The current quality of the Device is DeviceMetric.quality.

The default values for initial, degraded, and overridden quality are kept in DeviceMetric.templateQualities.

Historic values and periods of DeviceMetric.quality are kept in DeviceMetric.qualityHistory. This history is maintained by the eHealth Infrastructure.

If the device is of a kind where calibration influences the device quality, and once the calibration has expired, the device quality will be based on the degraded quality value. Once the device has been calibrated (and a new calibration expiry has been set), the device quality is based on the initial device quality.

At any time, a Practitioner can set which of the initial, degraded and overridden device quality shall be used as current.

Life cycle

In most cases DeviceMetric resources are created by the SSL subsystem when a Device is signalled to be in use by a Patient.

The initial values of device quality is set from values in the SSL catalogue.

Formal Views of Profile Content

The official URL for this profile is:

http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-devicemetric

This profile builds on DeviceMetric.

This profile was published on Tue Oct 27 14:11:48 UTC 2020 as a draft by ehealth.sundhed.dk.

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

 

Terminology Bindings

PathConformanceValueSet
DeviceMetric.languageextensibleCommon Languages
Max Binding: All Languages
DeviceMetric.typerequiredDeviceMeasurementUnit
DeviceMetric.unitrequiredDeviceMeasurementUnit
DeviceMetric.operationalStatusrequiredDeviceMetricOperationalStatus
DeviceMetric.colorrequiredDeviceMetricColor
DeviceMetric.categoryrequiredDeviceMetricCategory
DeviceMetric.calibration.typerequiredDeviceMetricCalibrationType
DeviceMetric.calibration.staterequiredDeviceMetricCalibrationState

Constraints

IdPathDetailsRequirements
dom-2DeviceMetricIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-1DeviceMetricIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-4DeviceMetricIf 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-3DeviceMetricIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
ele-1DeviceMetric.extension:propertiesAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1DeviceMetric.extension:propertiesMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DeviceMetric.extension:qualityAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1DeviceMetric.extension:qualityMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DeviceMetric.extension:qualitiesHistoryAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1DeviceMetric.extension:qualitiesHistoryMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DeviceMetric.extension:templateQualitiesAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1DeviceMetric.extension:templateQualitiesMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DeviceMetric.calibrationAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1DeviceMetric.calibration.extension:calibrationExpiresAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ext-1DeviceMetric.calibration.extension:calibrationExpiresMust have either extensions or value[x], not both
: extension.exists() != value.exists()
.