Consolidated CDA Release 2.2
2.2 - CI Build

Consolidated CDA Release 2.2, published by Health Level Seven. This is not an authorized publication; it is the continuous build for version 2.2). This version is based on the current content of https://github.com/HL7/CDA-ccda-2.2/ and changes regularly. See the Directory of published versions

## Resource Profile: Non-Medicinal Supply Activity

Official URL: http://hl7.org/fhir/cda/ccda/StructureDefinition/2.16.840.1.113883.10.20.22.4.50 | Version: 2.2
Active as of 2022-05-13 | Computable Name: NonMedicinalSupplyActivity
Other Identifiers: : urn:hl7ii:2.16.840.1.113883.10.20.22.4.50:2014-06-09

This template represents equipment supplied to the patient (e.g., pumps, inhalers, wheelchairs). Devices applied to, or placed in, the patient are represented with the Product Instance entry contained within a Procedure Activity Procedure (V2) (identifier: urn:hl7ii: 2.16.840.1.113883.10.20.22.4.14)

Usage:

- Use this Resource Profile: Functional Status Section, Medical Equipment Section, Intervention Act, Medical Equipment Organizer, Planned Intervention Act, Functional Status Observation

### Formal Views of Profile Content

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

- Text Summary
- Differential Table
- Snapshot Table
- Snapshot Table (Must Support)
- All

This structure is derived from CDAR2Supply

Summary

Mandatory: 8 elements (5 nested mandatory elements)

Structures

This structure refers to these other structures:

- Product Instance (http://hl7.org/fhir/cda/ccda/StructureDefinition/2.16.840.1.113883.10.20.22.4.37)
- Instruction (http://hl7.org/fhir/cda/ccda/StructureDefinition/2.16.840.1.113883.10.20.22.4.20)

Slices

This structure defines the following Slices:

- The element Supply.templateId is sliced based on the values of value:root, value:extension
- The element Supply.participant is sliced based on the values of value:typeCode, value:participantRole
- The element Supply.entryRelationship is sliced based on the value of profile:act

This structure is derived from CDAR2Supply

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Supply |  | 1..1 | CDAR2Supply |
classCode |  | 1..1 | code | Required Pattern: SPLY
moodCode |  | 1..1 | code | Binding: MoodCodeEvnInt (required)
Slices for templateId |  | 0..* | II | Slice: Unordered, Open by value:root, value:extension
templateId:primary |  | 1..1 | II |
root |  | 1..1 | string | Required Pattern: 2.16.840.1.113883.10.20.22.4.50
extension |  | 1..1 | string | Required Pattern: 2014-06-09
id |  | 1..* | II |
statusCode |  | 1..1 | CS |
code |  | 1..1 | string | Binding: ActStatus (required)
effectiveTime | I | 0..1 | EIVL_TS | 1098-16867: The effectiveTime, if present, **SHOULD** contain zero or one [0..1] *high* (CONF:1098-16867).
quantity |  | 0..1 | PQ |
Slices for participant |  | 0..* | Participant2 | Slice: Unordered, Open by value:typeCode, value:participantRole
participant:participant1 |  | 0..1 | Participant2 |
typeCode |  | 1..1 | code | Required Pattern: PRD
participantRole |  | 1..1 | ProductInstance |
Slices for entryRelationship |  | 0..* | Element | Slice: Unordered, Open by profile:act
entryRelationship:instruction |  | 0..1 | Element |
typeCode |  | 1..1 | code | Required Pattern: SUBJ
inversionInd |  | 1..1 | boolean | Required Pattern: true
act |  | 1..1 | Instruction |
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Supply |  | 1..1 | CDAR2Supply |
classCode |  | 1..1 | code | Binding: ActClassSupply (required) Fixed Value: SPLY
moodCode |  | 1..1 | code | Binding: MoodCodeEvnInt (required)
realmCode |  | 0..* | CS |
typeId |  | 0..1 | II |
Slices for templateId |  | 0..* | II | Slice: Unordered, Open by value:root, value:extension
templateId:primary |  | 1..1 | II |
nullFlavor |  | 0..1 | code | Binding: NullFlavor (required)
assigningAuthorityName |  | 0..1 | string |
displayable |  | 0..1 | boolean |
root |  | 1..1 | string | Required Pattern: 2.16.840.1.113883.10.20.22.4.50
extension |  | 1..1 | string | Required Pattern: 2014-06-09
id |  | 1..* | II |
code |  | 0..1 | CD | Binding: v3 Code System ActCode (extensible)
text |  | 0..1 | ED |
statusCode |  | 1..1 | CS | Binding: ActStatus (required)
nullFlavor |  | 0..1 | code | Binding: NullFlavor (required)
code |  | 1..1 | string | Binding: ActStatus (required)
sdtcValueSet |  | 0..1 | string | XML: valueSet (urn:hl7-org:sdtc)
sdtcValueSetVersion |  | 0..1 | string | XML: valueSetVersion (urn:hl7-org:sdtc)
effectiveTime | I | 0..1 | EIVL_TS | 1098-16867: The effectiveTime, if present, **SHOULD** contain zero or one [0..1] *high* (CONF:1098-16867).
priorityCode |  | 0..* | CE | Binding: ActPriority (extensible)
repeatNumber |  | 0..1 | IVL_INT |
independentInd |  | 0..1 | BL |
quantity |  | 0..1 | PQ |
expectedUseTime |  | 0..1 | IVL_TS |
product |  | 0..1 | Element |
typeCode |  | 1..1 | code | Binding: ParticipationTargetDirect (required) Fixed Value: PRD
manufacturedProduct |  | 1..1 | ManufacturedProduct |
subject |  | 0..1 | Element |
typeCode |  | 1..1 | code | Binding: ParticipationTargetSubject (required) Fixed Value: SBJ
contextControlCode |  | 1..1 | code | Binding: ContextControl (required) Fixed Value: OP
awarenessCode |  | 0..1 | CE | Binding: TargetAwareness (extensible)
relatedSubject |  | 1..1 | RelatedSubject |
specimen |  | 0..* | Specimen |
performer |  | 0..* | Performer2 |
author |  | 0..* | Author |
informant |  | 0..* | Element |
typeCode |  | 1..1 | code | Binding: ParticipationInformationGenerator (required) Fixed Value: INF
contextControlCode |  | 1..1 | code | Binding: ContextControl (required) Fixed Value: OP
assignedEntity |  | 0..1 | AssignedEntity |
relatedEntity |  | 0..1 | RelatedEntity |
Slices for participant |  | 0..* | Participant2 | Slice: Unordered, Open by value:typeCode, value:participantRole
participant:participant1 |  | 0..1 | Participant2 |
nullFlavor |  | 0..1 | code | Binding: NullFlavor (required)
typeCode |  | 1..1 | code | Binding: ParticipationType (required) Required Pattern: PRD
contextControlCode |  | 0..1 | code | Binding: ContextControl (required) Fixed Value: OP
realmCode |  | 0..* | CS |
typeId |  | 0..1 | II |
templateId |  | 0..* | II |
sdtcFunctionCode |  | 0..1 | CE | XML: functionCode (urn:hl7-org:sdtc)
time |  | 0..1 | IVL_TS |
awarenessCode |  | 0..1 | CE |
participantRole |  | 1..1 | ProductInstance |
Slices for entryRelationship | I | 0..* | Element | Slice: Unordered, Open by profile:act
entryRelationship:All Slices |  |  |  | Content/Rules for all slices
typeCode |  | 1..1 | code |
inversionInd |  | 0..1 | boolean |
contextConductionInd |  | 1..1 | boolean |
sequenceNumber |  | 0..1 | INT |
negationInd |  | 0..1 | boolean |
seperatableInd |  | 0..1 | BL |
(Choice of one) |  | 1..1 |  |
observation |  | 0..1 | Observation |
regionOfInterest |  | 0..1 | RegionOfInterest |
observationMedia |  | 0..1 | ObservationMedia |
substanceAdministration |  | 0..1 | SubstanceAdministration |
supply |  | 0..1 | Supply |
procedure |  | 0..1 | Procedure |
encounter |  | 0..1 | Encounter |
organizer |  | 0..1 | Organizer |
act |  | 0..1 | Act |
entryRelationship:instruction | I | 0..1 | Element |
typeCode |  | 1..1 | code | Required Pattern: SUBJ
inversionInd |  | 1..1 | boolean | Required Pattern: true
contextConductionInd |  | 1..1 | boolean |
sequenceNumber |  | 0..1 | INT |
negationInd |  | 0..1 | boolean |
seperatableInd |  | 0..1 | BL |
act |  | 1..1 | Instruction |
reference |  | 0..* | Element |
typeCode |  | 1..1 | code |
seperatableInd |  | 0..1 | BL |
externalAct |  | 0..1 | ExternalAct |
externalObservation |  | 0..1 | ExternalObservation |
externalProcedure |  | 0..1 | ExternalProcedure |
externalDocument |  | 0..1 | ExternalDocument |
precondition |  | 0..* | Precondition |
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Supply |  | 1..1 | CDAR2Supply |
Documentation for this format

This structure is derived from CDAR2Supply

Summary

Mandatory: 8 elements (5 nested mandatory elements)

Structures

This structure refers to these other structures:

- Product Instance (http://hl7.org/fhir/cda/ccda/StructureDefinition/2.16.840.1.113883.10.20.22.4.37)
- Instruction (http://hl7.org/fhir/cda/ccda/StructureDefinition/2.16.840.1.113883.10.20.22.4.20)

Slices

This structure defines the following Slices:

- The element Supply.templateId is sliced based on the values of value:root, value:extension
- The element Supply.participant is sliced based on the values of value:typeCode, value:participantRole
- The element Supply.entryRelationship is sliced based on the value of profile:act

Differential View

This structure is derived from CDAR2Supply

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Supply |  | 1..1 | CDAR2Supply |
classCode |  | 1..1 | code | Required Pattern: SPLY
moodCode |  | 1..1 | code | Binding: MoodCodeEvnInt (required)
Slices for templateId |  | 0..* | II | Slice: Unordered, Open by value:root, value:extension
templateId:primary |  | 1..1 | II |
root |  | 1..1 | string | Required Pattern: 2.16.840.1.113883.10.20.22.4.50
extension |  | 1..1 | string | Required Pattern: 2014-06-09
id |  | 1..* | II |
statusCode |  | 1..1 | CS |
code |  | 1..1 | string | Binding: ActStatus (required)
effectiveTime | I | 0..1 | EIVL_TS | 1098-16867: The effectiveTime, if present, **SHOULD** contain zero or one [0..1] *high* (CONF:1098-16867).
quantity |  | 0..1 | PQ |
Slices for participant |  | 0..* | Participant2 | Slice: Unordered, Open by value:typeCode, value:participantRole
participant:participant1 |  | 0..1 | Participant2 |
typeCode |  | 1..1 | code | Required Pattern: PRD
participantRole |  | 1..1 | ProductInstance |
Slices for entryRelationship |  | 0..* | Element | Slice: Unordered, Open by profile:act
entryRelationship:instruction |  | 0..1 | Element |
typeCode |  | 1..1 | code | Required Pattern: SUBJ
inversionInd |  | 1..1 | boolean | Required Pattern: true
act |  | 1..1 | Instruction |
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints
--- | --- | --- | --- | ---
Supply |  | 1..1 | CDAR2Supply |
classCode |  | 1..1 | code | Binding: ActClassSupply (required) Fixed Value: SPLY
moodCode |  | 1..1 | code | Binding: MoodCodeEvnInt (required)
realmCode |  | 0..* | CS |
typeId |  | 0..1 | II |
Slices for templateId |  | 0..* | II | Slice: Unordered, Open by value:root, value:extension
templateId:primary |  | 1..1 | II |
nullFlavor |  | 0..1 | code | Binding: NullFlavor (required)
assigningAuthorityName |  | 0..1 | string |
displayable |  | 0..1 | boolean |
root |  | 1..1 | string | Required Pattern: 2.16.840.1.113883.10.20.22.4.50
extension |  | 1..1 | string | Required Pattern: 2014-06-09
id |  | 1..* | II |
code |  | 0..1 | CD | Binding: v3 Code System ActCode (extensible)
text |  | 0..1 | ED |
statusCode |  | 1..1 | CS | Binding: ActStatus (required)
nullFlavor |  | 0..1 | code | Binding: NullFlavor (required)
code |  | 1..1 | string | Binding: ActStatus (required)
sdtcValueSet |  | 0..1 | string | XML: valueSet (urn:hl7-org:sdtc)
sdtcValueSetVersion |  | 0..1 | string | XML: valueSetVersion (urn:hl7-org:sdtc)
effectiveTime | I | 0..1 | EIVL_TS | 1098-16867: The effectiveTime, if present, **SHOULD** contain zero or one [0..1] *high* (CONF:1098-16867).
priorityCode |  | 0..* | CE | Binding: ActPriority (extensible)
repeatNumber |  | 0..1 | IVL_INT |
independentInd |  | 0..1 | BL |
quantity |  | 0..1 | PQ |
expectedUseTime |  | 0..1 | IVL_TS |
product |  | 0..1 | Element |
typeCode |  | 1..1 | code | Binding: ParticipationTargetDirect (required) Fixed Value: PRD
manufacturedProduct |  | 1..1 | ManufacturedProduct |
subject |  | 0..1 | Element |
typeCode |  | 1..1 | code | Binding: ParticipationTargetSubject (required) Fixed Value: SBJ
contextControlCode |  | 1..1 | code | Binding: ContextControl (required) Fixed Value: OP
awarenessCode |  | 0..1 | CE | Binding: TargetAwareness (extensible)
relatedSubject |  | 1..1 | RelatedSubject |
specimen |  | 0..* | Specimen |
performer |  | 0..* | Performer2 |
author |  | 0..* | Author |
informant |  | 0..* | Element |
typeCode |  | 1..1 | code | Binding: ParticipationInformationGenerator (required) Fixed Value: INF
contextControlCode |  | 1..1 | code | Binding: ContextControl (required) Fixed Value: OP
assignedEntity |  | 0..1 | AssignedEntity |
relatedEntity |  | 0..1 | RelatedEntity |
Slices for participant |  | 0..* | Participant2 | Slice: Unordered, Open by value:typeCode, value:participantRole
participant:participant1 |  | 0..1 | Participant2 |
nullFlavor |  | 0..1 | code | Binding: NullFlavor (required)
typeCode |  | 1..1 | code | Binding: ParticipationType (required) Required Pattern: PRD
contextControlCode |  | 0..1 | code | Binding: ContextControl (required) Fixed Value: OP
realmCode |  | 0..* | CS |
typeId |  | 0..1 | II |
templateId |  | 0..* | II |
sdtcFunctionCode |  | 0..1 | CE | XML: functionCode (urn:hl7-org:sdtc)
time |  | 0..1 | IVL_TS |
awarenessCode |  | 0..1 | CE |
participantRole |  | 1..1 | ProductInstance |
Slices for entryRelationship | I | 0..* | Element | Slice: Unordered, Open by profile:act
entryRelationship:All Slices |  |  |  | Content/Rules for all slices
typeCode |  | 1..1 | code |
inversionInd |  | 0..1 | boolean |
contextConductionInd |  | 1..1 | boolean |
sequenceNumber |  | 0..1 | INT |
negationInd |  | 0..1 | boolean |
seperatableInd |  | 0..1 | BL |
(Choice of one) |  | 1..1 |  |
observation |  | 0..1 | Observation |
regionOfInterest |  | 0..1 | RegionOfInterest |
observationMedia |  | 0..1 | ObservationMedia |
substanceAdministration |  | 0..1 | SubstanceAdministration |
supply |  | 0..1 | Supply |
procedure |  | 0..1 | Procedure |
encounter |  | 0..1 | Encounter |
organizer |  | 0..1 | Organizer |
act |  | 0..1 | Act |
entryRelationship:instruction | I | 0..1 | Element |
typeCode |  | 1..1 | code | Required Pattern: SUBJ
inversionInd |  | 1..1 | boolean | Required Pattern: true
contextConductionInd |  | 1..1 | boolean |
sequenceNumber |  | 0..1 | INT |
negationInd |  | 0..1 | boolean |
seperatableInd |  | 0..1 | BL |
act |  | 1..1 | Instruction |
reference |  | 0..* | Element |
typeCode |  | 1..1 | code |
seperatableInd |  | 0..1 | BL |
externalAct |  | 0..1 | ExternalAct |
externalObservation |  | 0..1 | ExternalObservation |
externalProcedure |  | 0..1 | ExternalProcedure |
externalDocument |  | 0..1 | ExternalDocument |
precondition |  | 0..* | Precondition |
Documentation for this format

Other representations of profile: CSV, Excel, Schematron

#### Terminology Bindings

Path | Conformance | ValueSet / Code
Supply.classCode | required | Fixed Value: SPLY
Supply.moodCode | required | MoodCodeEvnInt
Supply.templateId:primary.nullFlavor | required | NullFlavor
Supply.code | extensible | ActCode
Supply.statusCode | required | ActStatus
Supply.statusCode.nullFlavor | required | NullFlavor
Supply.statusCode.code | required | ActStatus
Supply.priorityCode | extensible | ActPriority
Supply.product.typeCode | required | Fixed Value: PRD
Supply.subject.typeCode | required | Fixed Value: SBJ
Supply.subject.contextControlCode | required | Fixed Value: OP
Supply.subject.awarenessCode | extensible | TargetAwareness
Supply.informant.typeCode | required | Fixed Value: INF
Supply.informant.contextControlCode | required | Fixed Value: OP
Supply.participant:participant1.nullFlavor | required | NullFlavor
Supply.participant:participant1.typeCode | required | Pattern: PRD
Supply.participant:participant1.contextControlCode | required | Fixed Value: OP

#### Constraints

Id | Grade | Path | Details | Requirements
1098-16867 | warning | Supply.effectiveTime | The effectiveTime, if present, **SHOULD** contain zero or one [0..1] *high* (CONF:1098-16867). : |
sup-er-1 | error | Supply.entryRelationship | Only one of observation, regionOfInterest, observationMedia, substanceAdministration, supply, procedure, encounter, organizer, and act : (observation | regionOfInterest | observationMedia | substanceAdministration | supply | procedure | encounter | organizer | act).count() = 1 |
sup-er-1 | error | Supply.entryRelationship:instruction | Only one of observation, regionOfInterest, observationMedia, substanceAdministration, supply, procedure, encounter, organizer, and act : (observation | regionOfInterest | observationMedia | substanceAdministration | supply | procedure | encounter | organizer | act).count() = 1 |