Consolidated CDA Release 2.1 StructureDefinition Publication
2.1 - CI Build United States of America flag

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

Logical Model: Product Instance

Official URL: http://hl7.org/cda/us/ccda/StructureDefinition/ProductInstance Version: 2.1
Draft as of 2023-09-29 Computable Name: ProductInstance
Other Identifiers: id: urn:oid:2.16.840.1.113883.10.20.22.4.37

This clinical statement represents a particular device that was placed in a patient or used as part of a procedure or other act. This provides a record of the identifier and other details about the given product that was used. For example, it is important to have a record that indicates not just that a hip prostheses was placed in a patient but that it was a particular hip prostheses number with a unique identifier.

The FDA Amendments Act specifies the creation of a Unique Device Identification (UDI) System that requires the label of devices to bear a unique identifier that will standardize device identification and identify the device through distribution and use.

The FDA permits an issuing agency to designate that their Device Identifier (DI) + Production Identifier (PI) format qualifies as a UDI through a process of accreditation. Currently, there are three FDA-accredited issuing agencies that are allowed to call their format a UDI. These organizations are GS1, HIBCC, and ICCBBA. For additional information on technical formats that qualify as UDI from each of the issuing agencies see the UDI Appendix.

When communicating only the issuing agency device identifier (i.e., subcomponent of the UDI), the use of the issuing agency OID is appropriate. However, when communicating the unique device identifier (DI + PI), the FDA OID (2.16.840.1.113883.3.3719) must be used. When sending a UDI, populate the participantRole/id/@root with the FDA OID (2.16.840.1.113883.3.3719) and participantRole/id/@extension with the UDI.

When sending a DI, populate the participantRole/id/@root with the appropriate assigning agency OID and participantRole/id/@extension with the DI. The scopingEntity/id should correspond to FDA or the appropriate issuing agency.

Usage:

Formal Views of Profile Content

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

This structure is derived from CDAR2.ParticipantRole

NameFlagsCard.TypeDescription & Constraintsdoco
.. ParticipantRole CDAR2.ParticipantRoleXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, templateId, id, sdtcIdentifiedBy, code, addr, telecom, playingDevice, playingEntity, scopingEntity
... classCode 1..1csFixed Value: MANU
... Slices for templateId 1..*IISlice: Unordered, Open by value:root
.... templateId:primary 1..1II
..... root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.37
..... extension 0..0
... id 1..*II
.... code 0..1CE
... scopingEntity 1..1Entity
.... id 1..*II

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. ParticipantRole 1..1CDAR2.ParticipantRoleXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, templateId, id, sdtcIdentifiedBy, code, addr, telecom, playingDevice, playingEntity, scopingEntity
Base for all types and resources
... @classCode 1..1csBinding: RoleClassRoot (required)
Fixed Value: MANU
... Slices for templateId 1..*IISlice: Unordered, Open by value:root
.... templateId:primary 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.37
... id 1..*II
.... @classCode 1..1csBinding: EntityClassDevice (required)
.... code 0..1CEBinding: EntityCode (extensible)
... scopingEntity 1..1Entity
.... @classCode 1..1csBinding: EntityClassRoot (required)
.... id 1..*II

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ParticipantRole.classCoderequiredFixed Value: MANU
ParticipantRole.playingDevice.classCoderequiredEntityClassDevice
ParticipantRole.playingDevice.codeextensibleEntityCode
ParticipantRole.scopingEntity.classCoderequiredEntityClassRoot

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
NameFlagsCard.TypeDescription & Constraintsdoco
.. ParticipantRole 1..1CDAR2.ParticipantRoleXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, templateId, id, sdtcIdentifiedBy, code, addr, telecom, playingDevice, playingEntity, scopingEntity
Base for all types and resources
... @classCode 1..1csBinding: RoleClassRoot (required)
Fixed Value: MANU
... Slices for templateId 1..*IISlice: Unordered, Open by value:root
.... templateId:primary 1..1II
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... @assigningAuthorityName 0..1st
..... @displayable 0..1bl
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.37
... id 1..*II
... code 0..1CEBinding: v3 Code System RoleCode (extensible)
... addr 0..*AD
... telecom 0..*TEL
... playingDevice 1..1Device
.... @classCode 1..1csBinding: EntityClassDevice (required)
.... @determinerCode 0..1csBinding: EntityDeterminer (required)
Fixed Value: INSTANCE
.... templateId 0..*II
.... code 0..1CEBinding: EntityCode (extensible)
.... manufacturerModelName 0..1SCBinding: Manufacturer Model Name Example (example)
.... softwareName 0..1SCBinding: Software Name Example (example)
... playingEntity 0..1PlayingEntity
... scopingEntity 1..1Entity
.... @classCode 1..1csBinding: EntityClassRoot (required)
.... @determinerCode 0..1csBinding: EntityDeterminer (required)
Fixed Value: INSTANCE
.... templateId 0..*II
.... id 1..*II
.... code 0..1CEBinding: EntityCode (extensible)
.... desc 0..1ED

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ParticipantRole.classCoderequiredFixed Value: MANU
ParticipantRole.templateId:primary.nullFlavorrequiredNullFlavor
ParticipantRole.codeextensibleRoleCode
ParticipantRole.playingDevice.classCoderequiredEntityClassDevice
ParticipantRole.playingDevice.determinerCoderequiredFixed Value: INSTANCE
ParticipantRole.playingDevice.codeextensibleEntityCode
ParticipantRole.playingDevice.manufacturerModelNameexampleManufacturerModelNameExample
ParticipantRole.playingDevice.softwareNameexampleSoftwareNameExample
ParticipantRole.scopingEntity.classCoderequiredEntityClassRoot
ParticipantRole.scopingEntity.determinerCoderequiredFixed Value: INSTANCE
ParticipantRole.scopingEntity.codeextensibleEntityCode

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

This structure is derived from CDAR2.ParticipantRole

Summary

Mandatory: 7 elements
Fixed Value: 1 element
Prohibited: 1 element

Slices

This structure defines the following Slices:

  • The element ParticipantRole.templateId is sliced based on the value of value:root

Differential View

This structure is derived from CDAR2.ParticipantRole

NameFlagsCard.TypeDescription & Constraintsdoco
.. ParticipantRole CDAR2.ParticipantRoleXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, templateId, id, sdtcIdentifiedBy, code, addr, telecom, playingDevice, playingEntity, scopingEntity
... classCode 1..1csFixed Value: MANU
... Slices for templateId 1..*IISlice: Unordered, Open by value:root
.... templateId:primary 1..1II
..... root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.37
..... extension 0..0
... id 1..*II
.... code 0..1CE
... scopingEntity 1..1Entity
.... id 1..*II

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ParticipantRole 1..1CDAR2.ParticipantRoleXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, templateId, id, sdtcIdentifiedBy, code, addr, telecom, playingDevice, playingEntity, scopingEntity
Base for all types and resources
... @classCode 1..1csBinding: RoleClassRoot (required)
Fixed Value: MANU
... Slices for templateId 1..*IISlice: Unordered, Open by value:root
.... templateId:primary 1..1II
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.37
... id 1..*II
.... @classCode 1..1csBinding: EntityClassDevice (required)
.... code 0..1CEBinding: EntityCode (extensible)
... scopingEntity 1..1Entity
.... @classCode 1..1csBinding: EntityClassRoot (required)
.... id 1..*II

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ParticipantRole.classCoderequiredFixed Value: MANU
ParticipantRole.playingDevice.classCoderequiredEntityClassDevice
ParticipantRole.playingDevice.codeextensibleEntityCode
ParticipantRole.scopingEntity.classCoderequiredEntityClassRoot

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ParticipantRole 1..1CDAR2.ParticipantRoleXML Namespace: urn:hl7-org:v3
Elements defined in Ancestors: @classCode, templateId, id, sdtcIdentifiedBy, code, addr, telecom, playingDevice, playingEntity, scopingEntity
Base for all types and resources
... @classCode 1..1csBinding: RoleClassRoot (required)
Fixed Value: MANU
... Slices for templateId 1..*IISlice: Unordered, Open by value:root
.... templateId:primary 1..1II
..... @nullFlavor 0..1csBinding: NullFlavor (required)
..... @assigningAuthorityName 0..1st
..... @displayable 0..1bl
..... @root 1..1oid, uuid, ruidRequired Pattern: 2.16.840.1.113883.10.20.22.4.37
... id 1..*II
... code 0..1CEBinding: v3 Code System RoleCode (extensible)
... addr 0..*AD
... telecom 0..*TEL
... playingDevice 1..1Device
.... @classCode 1..1csBinding: EntityClassDevice (required)
.... @determinerCode 0..1csBinding: EntityDeterminer (required)
Fixed Value: INSTANCE
.... templateId 0..*II
.... code 0..1CEBinding: EntityCode (extensible)
.... manufacturerModelName 0..1SCBinding: Manufacturer Model Name Example (example)
.... softwareName 0..1SCBinding: Software Name Example (example)
... playingEntity 0..1PlayingEntity
... scopingEntity 1..1Entity
.... @classCode 1..1csBinding: EntityClassRoot (required)
.... @determinerCode 0..1csBinding: EntityDeterminer (required)
Fixed Value: INSTANCE
.... templateId 0..*II
.... id 1..*II
.... code 0..1CEBinding: EntityCode (extensible)
.... desc 0..1ED

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ParticipantRole.classCoderequiredFixed Value: MANU
ParticipantRole.templateId:primary.nullFlavorrequiredNullFlavor
ParticipantRole.codeextensibleRoleCode
ParticipantRole.playingDevice.classCoderequiredEntityClassDevice
ParticipantRole.playingDevice.determinerCoderequiredFixed Value: INSTANCE
ParticipantRole.playingDevice.codeextensibleEntityCode
ParticipantRole.playingDevice.manufacturerModelNameexampleManufacturerModelNameExample
ParticipantRole.playingDevice.softwareNameexampleSoftwareNameExample
ParticipantRole.scopingEntity.classCoderequiredEntityClassRoot
ParticipantRole.scopingEntity.determinerCoderequiredFixed Value: INSTANCE
ParticipantRole.scopingEntity.codeextensibleEntityCode

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

This structure is derived from CDAR2.ParticipantRole

Summary

Mandatory: 7 elements
Fixed Value: 1 element
Prohibited: 1 element

Slices

This structure defines the following Slices:

  • The element ParticipantRole.templateId is sliced based on the value of value:root

 

Other representations of profile: CSV, Excel