International Patient Summary Implementation Guide
2.0.0 - STU 2

International Patient Summary Implementation Guide, published by HL7 International / Patient Care. This guide is not an authorized publication; it is the continuous build for version 2.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-ips/ and changes regularly. See the Directory of published versions

## Resource Profile: DeviceUseStatement (IPS)

Official URL: http://hl7.org/fhir/uv/ips/StructureDefinition/DeviceUseStatement-uv-ips | Version: 2.0.0
Standards status: Trial-use | Maturity Level: 2 | Computable Name: DeviceUseStatementUvIps

This profile represents the constraints applied to the DeviceUseStatement resource by the International Patient Summary (IPS) FHIR Implementation Guide, based on FHIR R4. A statement about a device used by or implanted on the patient is described in the patient summary as an instance of a DeviceUseStatement resource constrained by this profile.

This profile constrains the representation of a statement about a medical device used by or impanted on the patient, part of the "Medical Devices" section of the Composition resource representing the international patient summary, as specified by the IPS project of HL7 International.

Usages:

- Use this Profile: Bundle (IPS)
- Refer to this Profile: Composition (IPS)
- Examples for this Profile: DeviceUseStatement/eumfh-70-275-1
- CapabilityStatements using this Profile: IPS Server Capability Statement

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
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 | active | completed | entered-in-error + Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.
subject | SO Σ | 1..1 | Reference(Patient (IPS)) | Patient using device
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
reference | SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
Slices for timing[x] | SO Σ | 1..1 |  | How often the device was used Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
timingPeriod |  |  | Period |
timingDateTime |  |  | dateTime |
timing[x]:timingDateTime | SO Σ | 0..1 | dateTime | How often the device was used
Obligations | Actor
SHOULD:able-to-populate | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
device | SO Σ | 1..1 | Reference(Device (IPS)) | Reference to device used
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
DeviceUseStatement.status | required | DeviceUseStatementStatus `http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | DeviceUseStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | DeviceUseStatement | 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 | DeviceUseStatement | 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 | DeviceUseStatement | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | DeviceUseStatement | 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 DeviceUseStatement

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceUseStatement |  |  | DeviceUseStatement |
subject | SO | 1..1 | Reference(Patient (IPS)) | Patient using device
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
reference | SO | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
Slices for timing[x] | SO | 1..1 |  | How often the device was used Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
timingPeriod |  |  | Period |
timingDateTime |  |  | dateTime |
timing[x]:timingDateTime | SO | 0..1 | dateTime | How often the device was used
Obligations | Actor
SHOULD:able-to-populate | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
device | SO | 1..1 | Reference(Device (IPS)) | Reference to device used
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
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
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
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 | active | completed | entered-in-error + Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.
subject | SO Σ | 1..1 | Reference(Patient (IPS)) | Patient using device
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
derivedFrom | Σ | 0..* | Reference(ServiceRequest | Procedure | Claim | Observation | QuestionnaireResponse | DocumentReference) | Supporting information
Slices for timing[x] | SO Σ | 1..1 |  | How often the device was used Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
timingPeriod |  |  | Period |
timingDateTime |  |  | dateTime |
timing[x]:timingDateTime | SO Σ | 0..1 | dateTime | How often the device was used
Obligations | Actor
SHOULD:able-to-populate | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
recordedOn | Σ | 0..1 | dateTime | When statement was recorded
source | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | Who made the statement
device | SO Σ | 1..1 | Reference(Device (IPS)) | Reference to device used
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
reasonCode | Σ | 0..* | CodeableConcept | Why device was used
reasonReference | Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference | Media) | Why was DeviceUseStatement performed?
bodySite | Σ | 0..1 | CodeableConcept | Target body site Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
note |  | 0..* | Annotation | Addition details (comments, instructions)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
DeviceUseStatement.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
DeviceUseStatement.status | required | DeviceUseStatementStatus `http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1` From the FHIR Standard
DeviceUseStatement.subject.type | extensible | ResourceType `http://hl7.org/fhir/ValueSet/resource-types` From the FHIR Standard
DeviceUseStatement.bodySite | example | SNOMEDCTBodyStructures `http://hl7.org/fhir/ValueSet/body-site` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | DeviceUseStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | DeviceUseStatement | 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 | DeviceUseStatement | 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 | DeviceUseStatement | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | DeviceUseStatement | 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 DeviceUseStatement

Summary

Mandatory: 2 elements
Must-Support: 5 elements

Structures

This structure refers to these other structures:

- Patient (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Patient-uv-ips)
- Device (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Device-uv-ips)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of DeviceUseStatement.timing[x]

Maturity: 2

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
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 | active | completed | entered-in-error + Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.
subject | SO Σ | 1..1 | Reference(Patient (IPS)) | Patient using device
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
reference | SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
Slices for timing[x] | SO Σ | 1..1 |  | How often the device was used Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
timingPeriod |  |  | Period |
timingDateTime |  |  | dateTime |
timing[x]:timingDateTime | SO Σ | 0..1 | dateTime | How often the device was used
Obligations | Actor
SHOULD:able-to-populate | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
device | SO Σ | 1..1 | Reference(Device (IPS)) | Reference to device used
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
DeviceUseStatement.status | required | DeviceUseStatementStatus `http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | DeviceUseStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | DeviceUseStatement | 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 | DeviceUseStatement | 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 | DeviceUseStatement | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | DeviceUseStatement | 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() |

Differential View

This structure is derived from DeviceUseStatement

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceUseStatement |  |  | DeviceUseStatement |
subject | SO | 1..1 | Reference(Patient (IPS)) | Patient using device
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
reference | SO | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
Slices for timing[x] | SO | 1..1 |  | How often the device was used Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
timingPeriod |  |  | Period |
timingDateTime |  |  | dateTime |
timing[x]:timingDateTime | SO | 0..1 | dateTime | How often the device was used
Obligations | Actor
SHOULD:able-to-populate | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
device | SO | 1..1 | Reference(Device (IPS)) | Reference to device used
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
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
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
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 | active | completed | entered-in-error + Binding: DeviceUseStatementStatus (required): A coded concept indicating the current status of the Device Usage.
subject | SO Σ | 1..1 | Reference(Patient (IPS)) | Patient using device
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | SO Σ C | 1..1 | string | Literal reference, Relative, internal or absolute URL
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ | 0..1 | string | Text alternative for the resource
derivedFrom | Σ | 0..* | Reference(ServiceRequest | Procedure | Claim | Observation | QuestionnaireResponse | DocumentReference) | Supporting information
Slices for timing[x] | SO Σ | 1..1 |  | How often the device was used Slice: Unordered, Open by type:$this
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
timingPeriod |  |  | Period |
timingDateTime |  |  | dateTime |
timing[x]:timingDateTime | SO Σ | 0..1 | dateTime | How often the device was used
Obligations | Actor
SHOULD:able-to-populate | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
recordedOn | Σ | 0..1 | dateTime | When statement was recorded
source | Σ | 0..1 | Reference(Patient | Practitioner | PractitionerRole | RelatedPerson) | Who made the statement
device | SO Σ | 1..1 | Reference(Device (IPS)) | Reference to device used
Obligations | Actor
SHALL:populate-if-known | Creator (IPS)
SHALL:handle | Consumer (IPS)
SHOULD:display | Consumer (IPS)
reasonCode | Σ | 0..* | CodeableConcept | Why device was used
reasonReference | Σ | 0..* | Reference(Condition | Observation | DiagnosticReport | DocumentReference | Media) | Why was DeviceUseStatement performed?
bodySite | Σ | 0..1 | CodeableConcept | Target body site Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
note |  | 0..* | Annotation | Addition details (comments, instructions)
Documentation for this format

#### Terminology Bindings

Path | Conformance | ValueSet | URI
DeviceUseStatement.language | preferred | CommonLanguages `http://hl7.org/fhir/ValueSet/languages` From the FHIR Standard
Additional Bindings | Purpose
AllLanguages | Max Binding
DeviceUseStatement.status | required | DeviceUseStatementStatus `http://hl7.org/fhir/ValueSet/device-statement-status|4.0.1` From the FHIR Standard
DeviceUseStatement.subject.type | extensible | ResourceType `http://hl7.org/fhir/ValueSet/resource-types` From the FHIR Standard
DeviceUseStatement.bodySite | example | SNOMEDCTBodyStructures `http://hl7.org/fhir/ValueSet/body-site` From the FHIR Standard

#### Constraints

Id | Grade | Path(s) | Details | Requirements
dom-2 | error | DeviceUseStatement | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() |
dom-3 | error | DeviceUseStatement | 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 | DeviceUseStatement | 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 | DeviceUseStatement | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() |
dom-6 | best practice | DeviceUseStatement | 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 DeviceUseStatement

Summary

Mandatory: 2 elements
Must-Support: 5 elements

Structures

This structure refers to these other structures:

- Patient (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Patient-uv-ips)
- Device (IPS) (http://hl7.org/fhir/uv/ips/StructureDefinition/Device-uv-ips)

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of DeviceUseStatement.timing[x]

Maturity: 2

Other representations of profile: CSV, Excel, Schematron