Consolidated CDA
3.0.0-ballot - ballot United States of America flag

This page is part of the CCDA: Consolidated CDA Release (v3.0.0-ballot: CCDA 3.0 Ballot 1) based on FHIR (HL7® FHIR® Standard) v5.0.0. . For a full list of available versions, see the Directory of published versions

Logical Model: ProductInstance - Detailed Descriptions

Draft as of 2023-12-21

Definitions for the ProductInstance logical model.

Guidance on how to interpret the contents of this table can be found here

0. ParticipantRole
Logical ContainerClinicalDocument (CDA Class)
ValidationInstances of this type are validated by templateId
XML FormatIn the XML format, this property has the namespace urn:hl7-org:v3.
2. ParticipantRole.templateId
Control1..?
SlicingThis element introduces a set of slices on ParticipantRole.templateId. The slices are unordered and Open, and can be differentiated using the following discriminators:
  • value @ root
4. ParticipantRole.templateId:product-instance
Slice Nameproduct-instance
Control1..1
6. ParticipantRole.templateId:product-instance.root
Control1..?
Pattern Value2.16.840.1.113883.10.20.22.4.37
8. ParticipantRole.templateId:product-instance.extension
Control0..0
10. ParticipantRole.classCode
Comments

SHALL contain exactly one [1..1] @classCode="MANU" Manufactured Product (CodeSystem: HL7RoleClass urn:oid:2.16.840.1.113883.5.110 STATIC) (CONF:81-7900).

Fixed ValueMANU
12. ParticipantRole.id
Comments

SHALL contain at least one [1..*] id (CONF:81-7902).

Control1..?
14. ParticipantRole.playingDevice
Comments

SHALL contain exactly one [1..1] playingDevice (CONF:81-7903).

Control1..?
Invariantsshould-code: SHOULD contain code (code.exists())
16. ParticipantRole.playingDevice.code
Comments

This playingDevice SHOULD contain zero or one [0..1] code (CONF:81-16837).

18. ParticipantRole.scopingEntity
Comments

SHALL contain exactly one [1..1] scopingEntity (CONF:81-7905).

Control1..?
20. ParticipantRole.scopingEntity.id
Comments

This scopingEntity SHALL contain at least one [1..*] id (CONF:81-7908).

Control1..?

Guidance on how to interpret the contents of this table can be found here

0. ParticipantRole
Definition

Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.


Base definition for all types defined in FHIR type system.

ShortBase for all types and resources
Control10..1*
Is Modifierfalse
Logical ContainerClinicalDocument (CDA Class)
ValidationInstances of this type are validated by templateId
XML FormatIn the XML format, this property has the namespace urn:hl7-org:v3.
Invariantsrole-choice: playingDevice and playingEntity are mutually exclusive ((playingDevice | playingEntity).count() <= 1)
2. ParticipantRole.templateId
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
SlicingThis element introduces a set of slices on ParticipantRole.templateId. The slices are unordered and Open, and can be differentiated using the following discriminators:
  • value @ root
4. ParticipantRole.templateId:product-instance
Slice Nameproduct-instance
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control1..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
6. ParticipantRole.templateId:product-instance.root
Definition

A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.

Control1..1
Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelRoot
Pattern Value2.16.840.1.113883.10.20.22.4.37
8. ParticipantRole.templateId:product-instance.extension
Definition

A character string as a unique identifier within the scope of the identifier root.

Control0..0
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExtension
10. ParticipantRole.classCode
Comments

SHALL contain exactly one [1..1] @classCode="MANU" Manufactured Product (CodeSystem: HL7RoleClass urn:oid:2.16.840.1.113883.5.110 STATIC) (CONF:81-7900).

Control1..1
BindingThe codes SHALL be taken from RoleClassRoot
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Default ValueROL
Fixed ValueMANU
12. ParticipantRole.id
Comments

SHALL contain at least one [1..*] id (CONF:81-7902).

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
14. ParticipantRole.playingDevice
Comments

SHALL contain exactly one [1..1] playingDevice (CONF:81-7903).

Control1..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/Device
Invariantsshould-code: SHOULD contain code (code.exists())
16. ParticipantRole.playingDevice.classCode
Control1..1
BindingThe codes SHALL be taken from EntityClassDevice
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Default ValueDEV
18. ParticipantRole.playingDevice.code
Comments

This playingDevice SHOULD contain zero or one [0..1] code (CONF:81-16837).

Control0..1
BindingFor example codes, see EntityCode
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
20. ParticipantRole.scopingEntity
Comments

SHALL contain exactly one [1..1] scopingEntity (CONF:81-7905).

Control1..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/Entity
22. ParticipantRole.scopingEntity.classCode
Control1..1
BindingThe codes SHALL be taken from EntityClassRoot
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Default ValueENT
24. ParticipantRole.scopingEntity.id
Comments

This scopingEntity SHALL contain at least one [1..*] id (CONF:81-7908).

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II

Guidance on how to interpret the contents of this table can be found here

0. ParticipantRole
Definition

Defines the basic properties of every data value. This is an abstract type, meaning that no value can be just a data value without belonging to any concrete type. Every concrete type is a specialization of this general abstract DataValue type.

ShortBase for all types and resources
Control1..1
Is Modifierfalse
Logical ContainerClinicalDocument (CDA Class)
ValidationInstances of this type are validated by templateId
XML FormatIn the XML format, this property has the namespace urn:hl7-org:v3.
Invariantsrole-choice: playingDevice and playingEntity are mutually exclusive ((playingDevice | playingEntity).count() <= 1)
2. ParticipantRole.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
4. ParticipantRole.realmCode
Definition

When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question

Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
6. ParticipantRole.typeId
Definition

When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.

Control0..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
8. ParticipantRole.typeId.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
10. ParticipantRole.typeId.assigningAuthorityName
Definition

A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

Control0..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelAssigning Authority Name
12. ParticipantRole.typeId.displayable
Definition

Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

Control0..1
Typeboolean(bl: Boolean)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelDisplayable
14. ParticipantRole.typeId.root
Definition

Identifies the type as an HL7 Registered model

Control1..1
Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelRoot
Fixed Value2.16.840.1.113883.1.3
16. ParticipantRole.typeId.extension
Definition

A character string as a unique identifier within the scope of the identifier root.

Control1..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExtension
18. ParticipantRole.templateId
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
SlicingThis element introduces a set of slices on ParticipantRole.templateId. The slices are unordered and Open, and can be differentiated using the following discriminators:
  • value @ root
20. ParticipantRole.templateId:product-instance
Slice Nameproduct-instance
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control1..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
22. ParticipantRole.templateId:product-instance.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
24. ParticipantRole.templateId:product-instance.assigningAuthorityName
Definition

A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

Control0..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelAssigning Authority Name
26. ParticipantRole.templateId:product-instance.displayable
Definition

Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

Control0..1
Typeboolean(bl: Boolean)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelDisplayable
28. ParticipantRole.templateId:product-instance.root
Definition

A unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier.

Control1..1
Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelRoot
Pattern Value2.16.840.1.113883.10.20.22.4.37
30. ParticipantRole.templateId:product-instance.extension
Definition

A character string as a unique identifier within the scope of the identifier root.

Control0..0
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExtension
32. ParticipantRole.classCode
Comments

SHALL contain exactly one [1..1] @classCode="MANU" Manufactured Product (CodeSystem: HL7RoleClass urn:oid:2.16.840.1.113883.5.110 STATIC) (CONF:81-7900).

Control1..1
BindingThe codes SHALL be taken from RoleClassRoot
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Default ValueROL
Fixed ValueMANU
34. ParticipantRole.id
Comments

SHALL contain at least one [1..*] id (CONF:81-7902).

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
36. ParticipantRole.sdtcIdentifiedBy
Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/IdentifiedBy
XML FormatIn the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameidentifiedBy.
38. ParticipantRole.code
Control0..1
BindingFor example codes, see v3 Code System RoleCode
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
40. ParticipantRole.addr
Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/AD
42. ParticipantRole.telecom
Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/TEL
44. ParticipantRole.playingDevice
Comments

SHALL contain exactly one [1..1] playingDevice (CONF:81-7903).

Control1..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/Device
Invariantsshould-code: SHOULD contain code (code.exists())
46. ParticipantRole.playingDevice.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
48. ParticipantRole.playingDevice.realmCode
Definition

When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question

Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
50. ParticipantRole.playingDevice.typeId
Definition

When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.

Control0..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
52. ParticipantRole.playingDevice.typeId.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
54. ParticipantRole.playingDevice.typeId.assigningAuthorityName
Definition

A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

Control0..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelAssigning Authority Name
56. ParticipantRole.playingDevice.typeId.displayable
Definition

Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

Control0..1
Typeboolean(bl: Boolean)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelDisplayable
58. ParticipantRole.playingDevice.typeId.root
Definition

Identifies the type as an HL7 Registered model

Control1..1
Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelRoot
Fixed Value2.16.840.1.113883.1.3
60. ParticipantRole.playingDevice.typeId.extension
Definition

A character string as a unique identifier within the scope of the identifier root.

Control1..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExtension
62. ParticipantRole.playingDevice.templateId
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
64. ParticipantRole.playingDevice.classCode
Control1..1
BindingThe codes SHALL be taken from EntityClassDevice
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Default ValueDEV
66. ParticipantRole.playingDevice.determinerCode
Control0..1
BindingThe codes SHALL be taken from EntityDeterminer
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Fixed ValueINSTANCE
68. ParticipantRole.playingDevice.code
Comments

This playingDevice SHOULD contain zero or one [0..1] code (CONF:81-16837).

Control0..1
BindingFor example codes, see EntityCode
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
70. ParticipantRole.playingDevice.manufacturerModelName
Control0..1
BindingFor example codes, see Manufacturer Model Name Example
Typehttp://hl7.org/cda/stds/core/StructureDefinition/SC
72. ParticipantRole.playingDevice.softwareName
Control0..1
BindingFor example codes, see Software Name Example
Typehttp://hl7.org/cda/stds/core/StructureDefinition/SC
74. ParticipantRole.playingEntity
Control0..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/PlayingEntity
76. ParticipantRole.scopingEntity
Comments

SHALL contain exactly one [1..1] scopingEntity (CONF:81-7905).

Control1..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/Entity
78. ParticipantRole.scopingEntity.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
80. ParticipantRole.scopingEntity.realmCode
Definition

When valued in an instance, this attribute signals the imposition of realm-specific constraints. The value of this attribute identifies the realm in question

Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CS
82. ParticipantRole.scopingEntity.typeId
Definition

When valued in an instance, this attribute signals the imposition of constraints defined in an HL7-specified message type. This might be a common type (also known as CMET in the messaging communication environment), or content included within a wrapper. The value of this attribute provides a unique identifier for the type in question.

Control0..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
84. ParticipantRole.scopingEntity.typeId.nullFlavor
Definition

If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing.

Control0..1
BindingThe codes SHALL be taken from CDANullFlavor
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExceptional Value Detail
86. ParticipantRole.scopingEntity.typeId.assigningAuthorityName
Definition

A human readable name or mnemonic for the assigning authority. The Assigning Authority Name has no computational value. The purpose of a Assigning Authority Name is to assist an unaided human interpreter of an II value to interpret the authority. Note: no automated processing must depend on the assigning authority name to be present in any form.

Control0..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelAssigning Authority Name
88. ParticipantRole.scopingEntity.typeId.displayable
Definition

Specifies if the identifier is intended for human display and data entry (displayable = true) as opposed to pure machine interoperation (displayable = false).

Control0..1
Typeboolean(bl: Boolean)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelDisplayable
90. ParticipantRole.scopingEntity.typeId.root
Definition

Identifies the type as an HL7 Registered model

Control1..1
Typestring(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelRoot
Fixed Value2.16.840.1.113883.1.3
92. ParticipantRole.scopingEntity.typeId.extension
Definition

A character string as a unique identifier within the scope of the identifier root.

Control1..1
Typestring(st: Character String)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
LabelExtension
94. ParticipantRole.scopingEntity.templateId
Definition

When valued in an instance, this attribute signals the imposition of a set of template-defined constraints. The value of this attribute provides a unique identifier for the templates in question

Control0..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
96. ParticipantRole.scopingEntity.classCode
Control1..1
BindingThe codes SHALL be taken from EntityClassRoot
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Default ValueENT
98. ParticipantRole.scopingEntity.determinerCode
Control0..1
BindingThe codes SHALL be taken from EntityDeterminer
Typecode(cs: Coded Simple Value)
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
XML FormatIn the XML format, this property is represented as an attribute.
Fixed ValueINSTANCE
100. ParticipantRole.scopingEntity.id
Comments

This scopingEntity SHALL contain at least one [1..*] id (CONF:81-7908).

Control1..*
Typehttp://hl7.org/cda/stds/core/StructureDefinition/II
102. ParticipantRole.scopingEntity.code
Control0..1
BindingFor example codes, see EntityCode
Typehttp://hl7.org/cda/stds/core/StructureDefinition/CE
104. ParticipantRole.scopingEntity.desc
Control0..1
Typehttp://hl7.org/cda/stds/core/StructureDefinition/ED