QI-Core Implementation Guide
6.0.0 - STU6 United States of America flag

QI-Core Implementation Guide, published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 6.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-qi-core/ and changes regularly. See the Directory of published versions

Resource Profile: QICore DeviceUseStatement

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-deviceusestatement Version: 6.0.0
Active as of 2018-08-22 Computable Name: QICoreDeviceUseStatement

Profile of DeviceUseStatement for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

Usage

See the patterns page for implementation and usage patterns.

Examples

The provision of a wheelchair to a patient example

Usage:

Formal Views of Profile Content

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

This structure is derived from DeviceUseStatement

NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... status 1..1 code (QI-Core) active | completed | entered-in-error +
... subject 1..1 Reference(QICore Patient) (QI-Core) Patient using device
... timing[x] 0..1 Timing, Period, dateTime (QI-Core) How often the device was used
... device 1..1 Reference(QICore Device | US Core Implantable Device Profile) (QI-Core) Reference to device used
... bodySite 0..1 CodeableConcept (QI-Core) Target body site
Binding: SNOMEDCTBodyStructures (preferred): Codes describing anatomical locations. May include laterality.


doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
DeviceUseStatement.bodySitepreferredSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard
NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code (QI-Core) active | completed | entered-in-error +
Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.

... timing[x] Σ 0..1 (QI-Core) How often the device was used
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... recordedOn Σ 0..1 dateTime (QI-Core) When statement was recorded
... device Σ 1..1 Reference(QICore Device | US Core Implantable Device Profile) (QI-Core) Reference to device used
... bodySite Σ 0..1 CodeableConcept (QI-Core) Target body site
Binding: SNOMEDCTBodyStructures (preferred): Codes describing anatomical locations. May include laterality.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
DeviceUseStatement.statusrequiredDeviceUseStatementStatus
http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1
from the FHIR Standard
DeviceUseStatement.bodySitepreferredSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDeviceUseStatementIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDeviceUseStatementIf 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-4errorDeviceUseStatementIf 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-5errorDeviceUseStatementIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDeviceUseStatementA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... 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
... 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
... identifier Σ 0..* Identifier External identifier for this record
... basedOn Σ 0..* Reference(ServiceRequest) Fulfills plan, proposal or order
... status ?!Σ 1..1 code (QI-Core) active | completed | entered-in-error +
Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.

... subject Σ 1..1 Reference(QICore Patient) (QI-Core) Patient using device
... derivedFrom Σ 0..* Reference(ServiceRequest | Procedure | Claim | Observation | QuestionnaireResponse | DocumentReference) Supporting information
... timing[x] Σ 0..1 (QI-Core) How often the device was used
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... recordedOn Σ 0..1 dateTime (QI-Core) When statement was recorded
... source Σ 0..1 Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) Who made the statement
... device Σ 1..1 Reference(QICore Device | US Core Implantable Device Profile) (QI-Core) Reference to device used
... reasonCode Σ 0..* CodeableConcept Why device was used
... reasonReference Σ 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference | Media) Why was DeviceUseStatement performed?
... bodySite Σ 0..1 CodeableConcept (QI-Core) Target body site
Binding: SNOMEDCTBodyStructures (preferred): Codes describing anatomical locations. May include laterality.

... note 0..* Annotation Addition details (comments, instructions)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
DeviceUseStatement.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
DeviceUseStatement.statusrequiredDeviceUseStatementStatus
http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1
from the FHIR Standard
DeviceUseStatement.bodySitepreferredSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDeviceUseStatementIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDeviceUseStatementIf 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-4errorDeviceUseStatementIf 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-5errorDeviceUseStatementIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDeviceUseStatementA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from DeviceUseStatement

NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... status 1..1 code (QI-Core) active | completed | entered-in-error +
... subject 1..1 Reference(QICore Patient) (QI-Core) Patient using device
... timing[x] 0..1 Timing, Period, dateTime (QI-Core) How often the device was used
... device 1..1 Reference(QICore Device | US Core Implantable Device Profile) (QI-Core) Reference to device used
... bodySite 0..1 CodeableConcept (QI-Core) Target body site
Binding: SNOMEDCTBodyStructures (preferred): Codes describing anatomical locations. May include laterality.


doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
DeviceUseStatement.bodySitepreferredSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code (QI-Core) active | completed | entered-in-error +
Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.

... timing[x] Σ 0..1 (QI-Core) How often the device was used
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... recordedOn Σ 0..1 dateTime (QI-Core) When statement was recorded
... device Σ 1..1 Reference(QICore Device | US Core Implantable Device Profile) (QI-Core) Reference to device used
... bodySite Σ 0..1 CodeableConcept (QI-Core) Target body site
Binding: SNOMEDCTBodyStructures (preferred): Codes describing anatomical locations. May include laterality.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
DeviceUseStatement.statusrequiredDeviceUseStatementStatus
http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1
from the FHIR Standard
DeviceUseStatement.bodySitepreferredSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDeviceUseStatementIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDeviceUseStatementIf 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-4errorDeviceUseStatementIf 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-5errorDeviceUseStatementIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDeviceUseStatementA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceUseStatement 0..* DeviceUseStatement Record of use of a device
... 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
... 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
... identifier Σ 0..* Identifier External identifier for this record
... basedOn Σ 0..* Reference(ServiceRequest) Fulfills plan, proposal or order
... status ?!Σ 1..1 code (QI-Core) active | completed | entered-in-error +
Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.

... subject Σ 1..1 Reference(QICore Patient) (QI-Core) Patient using device
... derivedFrom Σ 0..* Reference(ServiceRequest | Procedure | Claim | Observation | QuestionnaireResponse | DocumentReference) Supporting information
... timing[x] Σ 0..1 (QI-Core) How often the device was used
.... timingTiming Timing
.... timingPeriod Period
.... timingDateTime dateTime
... recordedOn Σ 0..1 dateTime (QI-Core) When statement was recorded
... source Σ 0..1 Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) Who made the statement
... device Σ 1..1 Reference(QICore Device | US Core Implantable Device Profile) (QI-Core) Reference to device used
... reasonCode Σ 0..* CodeableConcept Why device was used
... reasonReference Σ 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference | Media) Why was DeviceUseStatement performed?
... bodySite Σ 0..1 CodeableConcept (QI-Core) Target body site
Binding: SNOMEDCTBodyStructures (preferred): Codes describing anatomical locations. May include laterality.

... note 0..* Annotation Addition details (comments, instructions)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
DeviceUseStatement.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
DeviceUseStatement.statusrequiredDeviceUseStatementStatus
http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1
from the FHIR Standard
DeviceUseStatement.bodySitepreferredSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorDeviceUseStatementIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorDeviceUseStatementIf 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-4errorDeviceUseStatementIf 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-5errorDeviceUseStatementIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceDeviceUseStatementA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

 

Other representations of profile: CSV, Excel, Schematron