Clinical Document Architecture, published by Health Level 7. This guide is not an authorized publication; it is the continuous build for version 2.0.2-sd built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/CDA-core-sd/ and changes regularly. See the Directory of published versions
| Active as of 2025-11-20 |
Definitions for the Material logical model.
Guidance on how to interpret the contents of this table can be foundhere
| 0. Material | |
| 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. |
| Short | Base for all types and resources |
| Control | 10..1* |
| Is Modifier | false |
| Logical Container | ClinicalDocument (CDA Class) |
| Validation | Instance of this type are validated by templateId |
| XML Format | In the XML format, this property has the namespace urn:hl7-org:v3. |
| 2. Material.nullFlavor | |
| Definition | If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing. |
| Control | 0..1 |
| Binding | The codes SHALL be taken from CDANullFlavor (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Exceptional Value Detail |
| 4. Material.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 |
| Control | 0..* |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/CS |
| 6. Material.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. |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/II |
| Invariants | II-1: An II instance must have either a root or an nullFlavor. (root.exists() or nullFlavor.exists()) |
| 8. Material.typeId.nullFlavor | |
| Definition | If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing. |
| Control | 0..1 |
| Binding | The codes SHALL be taken from CDANullFlavor (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Exceptional Value Detail |
| 10. Material.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. |
| Control | 0..1 |
| Type | string(st: Character String) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Assigning Authority Name |
| 12. Material.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). |
| Control | 0..1 |
| Type | boolean(bl: Boolean) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Displayable |
| 14. Material.typeId.root | |
| Definition | Identifies the type as an HL7 Registered model |
| Control | 1..1 |
| Type | string(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Root |
| Fixed Value | 2.16.840.1.113883.1.3 |
| 16. Material.typeId.extension | |
| Definition | A character string as a unique identifier within the scope of the identifier root. |
| Control | 1..1 |
| Type | string(st: Character String) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Extension |
| 18. Material.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 |
| Control | 0..* |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/II |
| 20. Material.classCode | |
| Control | 0..1 |
| Binding | The codes SHALL be taken from EntityClassManufacturedMaterial (required to http://terminology.hl7.org/ValueSet/v3-EntityClassManufacturedMaterial) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Fixed Value | MMAT |
| 22. Material.determinerCode | |
| Control | 0..1 |
| Binding | The codes SHALL be taken from EntityDeterminerDetermined (required to http://terminology.hl7.org/ValueSet/v3-EntityDeterminerDetermined) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Fixed Value | KIND |
| 24. Material.code | |
| Control | 0..1 |
| Binding | For example codes, see CDAMaterialEntityClassType (example to http://hl7.org/cda/stds/core/ValueSet/CDAMaterialEntityClassType) |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/CE |
| 26. Material.name | |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/EN |
| 28. Material.lotNumberText | |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/ST |
| 30. Material.sdtcExpirationTime | |
| Definition | The date and time the manufacturer no longer ensures the safety, quality, and/or proper functioning of the material. |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/IVL_TS |
| XML Format | In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameexpirationTime. |
| Requirements | There is a need in many situations that the materials used are of a specific quality or potency or functional status. The ending date for this guarantee is specified by the manufacturer. After that date, while the material may still provide the same characteristics, the manufacturer no longer takes responsibility that the product will perform as specified and denies responsibility for failure of the material after that date. |
Guidance on how to interpret the contents of this table can be foundhere
| 0. Material | |
| Control | 1..1 |
| Logical Container | ClinicalDocument (CDA Class) |
| Validation | Instance of this type are validated by templateId |
| XML Format | In the XML format, this property has the namespace urn:hl7-org:v3. |
| 2. Material.classCode | |
| Control | 0..1 |
| Binding | The codes SHALL be taken from EntityClassManufacturedMaterial (required to http://terminology.hl7.org/ValueSet/v3-EntityClassManufacturedMaterial) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Fixed Value | MMAT |
| 4. Material.determinerCode | |
| Control | 0..1 |
| Binding | The codes SHALL be taken from EntityDeterminerDetermined (required to http://terminology.hl7.org/ValueSet/v3-EntityDeterminerDetermined) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Fixed Value | KIND |
| 6. Material.code | |
| Control | 0..1 |
| Binding | For example codes, see CDAMaterialEntityClassType (example to http://hl7.org/cda/stds/core/ValueSet/CDAMaterialEntityClassType) |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/CE |
| 8. Material.name | |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/EN |
| 10. Material.lotNumberText | |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/ST |
| 12. Material.sdtcExpirationTime | |
| Definition | The date and time the manufacturer no longer ensures the safety, quality, and/or proper functioning of the material. |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/IVL_TS |
| XML Format | In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameexpirationTime. |
| Requirements | There is a need in many situations that the materials used are of a specific quality or potency or functional status. The ending date for this guarantee is specified by the manufacturer. After that date, while the material may still provide the same characteristics, the manufacturer no longer takes responsibility that the product will perform as specified and denies responsibility for failure of the material after that date. |
Guidance on how to interpret the contents of this table can be foundhere
| 0. Material | |
| 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. |
| Short | Base for all types and resources |
| Control | 1..1 |
| Is Modifier | false |
| Logical Container | ClinicalDocument (CDA Class) |
| Validation | Instance of this type are validated by templateId |
| XML Format | In the XML format, this property has the namespace urn:hl7-org:v3. |
| 2. Material.nullFlavor | |
| Definition | If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing. |
| Control | 0..1 |
| Binding | The codes SHALL be taken from CDANullFlavor (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Exceptional Value Detail |
| 4. Material.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 |
| Control | 0..* |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/CS |
| 6. Material.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. |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/II |
| Invariants | II-1: An II instance must have either a root or an nullFlavor. (root.exists() or nullFlavor.exists()) |
| 8. Material.typeId.nullFlavor | |
| Definition | If a value is an exceptional value (NULL-value), this specifies in what way and why proper information is missing. |
| Control | 0..1 |
| Binding | The codes SHALL be taken from CDANullFlavor (required to http://hl7.org/cda/stds/core/ValueSet/CDANullFlavor) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Exceptional Value Detail |
| 10. Material.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. |
| Control | 0..1 |
| Type | string(st: Character String) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Assigning Authority Name |
| 12. Material.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). |
| Control | 0..1 |
| Type | boolean(bl: Boolean) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Displayable |
| 14. Material.typeId.root | |
| Definition | Identifies the type as an HL7 Registered model |
| Control | 1..1 |
| Type | string(oid: ISO Object Identifier, uuid: DCE Universal Unique Identifier, ruid: HL7 Reserved Identifier Scheme) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Root |
| Fixed Value | 2.16.840.1.113883.1.3 |
| 16. Material.typeId.extension | |
| Definition | A character string as a unique identifier within the scope of the identifier root. |
| Control | 1..1 |
| Type | string(st: Character String) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Label | Extension |
| 18. Material.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 |
| Control | 0..* |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/II |
| 20. Material.classCode | |
| Control | 0..1 |
| Binding | The codes SHALL be taken from EntityClassManufacturedMaterial (required to http://terminology.hl7.org/ValueSet/v3-EntityClassManufacturedMaterial) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Fixed Value | MMAT |
| 22. Material.determinerCode | |
| Control | 0..1 |
| Binding | The codes SHALL be taken from EntityDeterminerDetermined (required to http://terminology.hl7.org/ValueSet/v3-EntityDeterminerDetermined) |
| Type | code(cs: Coded Simple Value) |
| Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
| XML Format | In the XML format, this property is represented as an attribute. |
| Fixed Value | KIND |
| 24. Material.code | |
| Control | 0..1 |
| Binding | For example codes, see CDAMaterialEntityClassType (example to http://hl7.org/cda/stds/core/ValueSet/CDAMaterialEntityClassType) |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/CE |
| 26. Material.name | |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/EN |
| 28. Material.lotNumberText | |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/ST |
| 30. Material.sdtcExpirationTime | |
| Definition | The date and time the manufacturer no longer ensures the safety, quality, and/or proper functioning of the material. |
| Control | 0..1 |
| Type | http://hl7.org/cda/stds/core/StructureDefinition/IVL_TS |
| XML Format | In the XML format, this property has the namespace urn:hl7-org:sdtc.In the XML format, this property has the actual nameexpirationTime. |
| Requirements | There is a need in many situations that the materials used are of a specific quality or potency or functional status. The ending date for this guarantee is specified by the manufacturer. After that date, while the material may still provide the same characteristics, the manufacturer no longer takes responsibility that the product will perform as specified and denies responsibility for failure of the material after that date. |