SIL HIE Implementation Guide
0.1.0 - sil-hie-active

SIL HIE Implementation Guide, published by Kathurima Kimathi. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/savannahghi/hie-fhir-ig-profile/ and changes regularly. See the Directory of published versions

Resource Profile: HIE Composition

Official URL: https://nshr.dha.go.ke/fhir/StructureDefinition/composition Version: 0.1.0
Active as of 2026-10-20 Computable Name: HIEComposition

This represents the logical grouping of related clinical information within HIE

Usages:

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.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Composition.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Composition.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Composition.identifier This element is included in summaries. 0..1 Identifier Version-independent identifier for the Composition
Composition.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Composition.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
Composition.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Composition.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Composition.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
Composition.status This element is a modifier element. This element is included in summaries. 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Composition.type This element is included in summaries. 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
Composition.category This element must be supported. This element is included in summaries. 0..* CodeableConcept Categorization of Composition
Binding: LoincDocumentOntologyInternational (example): High-level kind of a clinical document at a macro level.
Composition.subject This element is included in summaries. 1..1 Reference(Resource) Who and/or what the composition is about
Composition.encounter This element is included in summaries. 1..1 Reference(Encounter) Context of the Composition
Composition.date This element is included in summaries. 1..1 dateTime Composition editing time
Composition.author This element is included in summaries. 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the composition
Composition.title This element is included in summaries. 1..1 string Human Readable name/title
Composition.confidentiality This element must be supported. This element is included in summaries. 0..1 code ​As defined by affinity domain
Binding: http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 (required): Codes specifying the level of confidentiality of the composition.
Composition.attester 1..* BackboneElement Attests to accuracy of composition
Composition.attester.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.attester.mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Composition.attester.time 1..1 dateTime When the composition was attested
Composition.attester.party 1..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
Composition.custodian This element is included in summaries. 1..1 Reference(Organization) Organization which maintains the composition
Composition.event This element must be supported. This element is included in summaries. 0..* BackboneElement The clinical service(s) being documented
Composition.event.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.event.code This element is included in summaries. 1..* CodeableConcept Code(s) that apply to the event being documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
Composition.event.detail This element is included in summaries. 1..* Reference(Resource) The event(s) being documented
Composition.section C 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
Composition.section.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.section.code 1..1 CodeableConcept Classification of section (recommended)
Binding: http://loinc.org (required)
Composition.section.author 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
Composition.section.entry C 1..* Reference(Resource) A reference to data that supports this section

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Composition.identifier.​use Base required IdentifierUse 📍4.3.0 FHIR Std.
Composition.identifier.​type Base extensible IdentifierType 📍4.3.0 FHIR Std.
Composition.status Base required CompositionStatus 📍4.3.0 FHIR Std.
Composition.type Base preferred FHIR Document Type Codes 📍4.3.0 FHIR Std.
Composition.category Base example LoincDocumentOntologyInternational 📦3.0.0 THO v7.4
Composition.confidentiality Base required ​ http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 📍2.0.0 Unknown
Composition.attester.​mode Base required CompositionAttestationMode 📍4.3.0 FHIR Std.
Composition.event.code Base example v3 Code System ActCode 📦3.0.0 THO v7.4
Composition.section.​code Base required http://loinc.org Not State Unknown

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning Composition.identifier.type Text is optional, coding is required coding.exists()
cmp-1 error Composition.section A section must contain at least one of text, entries, or sub-sections text.exists() or entry.exists() or section.exists()
cmp-2 error Composition.section A section can only have an emptyReason if it is empty emptyReason.empty() or entry.empty()
dom-2 error Composition If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Composition 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Composition 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 Composition If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Composition 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 Composition

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Composition.identifier
Composition.identifier.use 1..1 code usual | official | temp | secondary | old (If known)
Composition.identifier.type 1..1 HIECodeableConcept Description of identifier
Composition.identifier.system 1..1 uri The namespace for the identifier value
Composition.identifier.value This element must be supported. 1..1 string The value that is unique
Composition.identifier.assigner This element must be supported. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
Composition.category This element must be supported. 0..* CodeableConcept Categorization of Composition
Composition.subject 1..1 Reference(Resource) Who and/or what the composition is about
Composition.confidentiality This element must be supported. 0..1 code As defined by affinity domain
Composition.attester 1..* BackboneElement Attests to accuracy of composition
Composition.attester.time 1..1 dateTime When the composition was attested
Composition.attester.party 1..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
Composition.custodian 1..1 Reference(Organization) Organization which maintains the composition
Composition.event This element must be supported. 0..* BackboneElement The clinical service(s) being documented
Composition.event.code 1..* CodeableConcept Code(s) that apply to the event being documented
Composition.event.detail 1..* Reference(Resource) The event(s) being documented
Composition.section 1..* BackboneElement Composition is broken into sections
Composition.section.code 1..1 CodeableConcept Classification of section (recommended)
Binding: http://loinc.org (required)
Composition.section.author 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
Composition.section.entry 1..* Reference(Resource) A reference to data that supports this section

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Composition.section.​code Base required http://loinc.org Not State Unknown
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Composition.id This element is included in summaries. 0..1 id Logical id of this artifact
Composition.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Composition.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Composition.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): IETF language tag
Additional BindingsPurpose
AllLanguages Max Binding
Composition.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
Composition.contained 0..* Resource Contained, inline Resources
Constraints: dom-r4b
Composition.extension 0..* Extension Additional content defined by implementations
Composition.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Composition.identifier This element is included in summaries. 0..1 Identifier Version-independent identifier for the Composition
Composition.identifier.id 0..1 id Unique id for inter-element referencing
Composition.identifier.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Composition.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Composition.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
Composition.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Composition.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Composition.identifier.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Composition.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
Composition.status This element is a modifier element. This element is included in summaries. 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Composition.type This element is included in summaries. 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
Composition.category This element must be supported. This element is included in summaries. 0..* CodeableConcept Categorization of Composition
Binding: LoincDocumentOntologyInternational (example): High-level kind of a clinical document at a macro level.
Composition.subject This element is included in summaries. 1..1 Reference(Resource) Who and/or what the composition is about
Composition.encounter This element is included in summaries. 1..1 Reference(Encounter) Context of the Composition
Composition.date This element is included in summaries. 1..1 dateTime Composition editing time
Composition.author This element is included in summaries. 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the composition
Composition.title This element is included in summaries. 1..1 string Human Readable name/title
Composition.confidentiality This element must be supported. This element is included in summaries. 0..1 code ​As defined by affinity domain
Binding: http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 (required): Codes specifying the level of confidentiality of the composition.
Composition.attester 1..* BackboneElement Attests to accuracy of composition
Composition.attester.id 0..1 string Unique id for inter-element referencing
Composition.attester.extension 0..* Extension Additional content defined by implementations
Composition.attester.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.attester.mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Composition.attester.time 1..1 dateTime When the composition was attested
Composition.attester.party 1..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
Composition.custodian This element is included in summaries. 1..1 Reference(Organization) Organization which maintains the composition
Composition.relatesTo 0..* BackboneElement Relationships to other compositions/documents
Composition.relatesTo.id 0..1 string Unique id for inter-element referencing
Composition.relatesTo.extension 0..* Extension Additional content defined by implementations
Composition.relatesTo.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.relatesTo.code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Composition.relatesTo.target[x] 1..1 Target of the relationship
Composition.relatesTo.target[x].targetIdentifier Identifier
Composition.relatesTo.target[x].targetReference Reference(Composition)
Composition.event This element must be supported. This element is included in summaries. 0..* BackboneElement The clinical service(s) being documented
Composition.event.id 0..1 string Unique id for inter-element referencing
Composition.event.extension 0..* Extension Additional content defined by implementations
Composition.event.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.event.code This element is included in summaries. 1..* CodeableConcept Code(s) that apply to the event being documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
Composition.event.period This element is included in summaries. 0..1 Period The period covered by the documentation
Composition.event.detail This element is included in summaries. 1..* Reference(Resource) The event(s) being documented
Composition.section C 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
Composition.section.id 0..1 string Unique id for inter-element referencing
Composition.section.extension 0..* Extension Additional content defined by implementations
Composition.section.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.section.title 0..1 string Label for section (e.g. for ToC)
Composition.section.code 1..1 CodeableConcept Classification of section (recommended)
Binding: http://loinc.org (required)
Composition.section.author 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
Composition.section.focus 0..1 Reference(Resource) Who/what the section is about, when it is not about the subject of composition
Composition.section.text C 0..1 Narrative Text summary of the section, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Composition.section.mode 0..1 code working | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this section.
Composition.section.orderedBy 0..1 CodeableConcept Order of section entries
Binding: ListOrderCodes (preferred): What order applies to the items in the entry.
Composition.section.entry C 1..* Reference(Resource) A reference to data that supports this section
Composition.section.emptyReason C 0..1 CodeableConcept Why the section is empty
Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.
Composition.section.section C 0..* See section (Composition) Nested Section

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Composition.language Base preferred Common Languages 📍4.3.0 FHIR Std.
Composition.identifier.​use Base required IdentifierUse 📍4.3.0 FHIR Std.
Composition.identifier.​type Base extensible IdentifierType 📍4.3.0 FHIR Std.
Composition.status Base required CompositionStatus 📍4.3.0 FHIR Std.
Composition.type Base preferred FHIR Document Type Codes 📍4.3.0 FHIR Std.
Composition.category Base example LoincDocumentOntologyInternational 📦3.0.0 THO v7.4
Composition.confidentiality Base required ​ http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 📍2.0.0 Unknown
Composition.attester.​mode Base required CompositionAttestationMode 📍4.3.0 FHIR Std.
Composition.relatesTo.​code Base required DocumentRelationshipType 📍4.3.0 FHIR Std.
Composition.event.code Base example v3 Code System ActCode 📦3.0.0 THO v7.4
Composition.section.​code Base required http://loinc.org Not State Unknown
Composition.section.​mode Base required ListMode 📍4.3.0 FHIR Std.
Composition.section.​orderedBy Base preferred List Order Codes 📍4.3.0 FHIR Std.
Composition.section.​emptyReason Base preferred List Empty Reasons 📍4.3.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning Composition.identifier.type Text is optional, coding is required coding.exists()
cmp-1 error Composition.section A section must contain at least one of text, entries, or sub-sections text.exists() or entry.exists() or section.exists()
cmp-2 error Composition.section A section can only have an emptyReason if it is empty emptyReason.empty() or entry.empty()
dom-2 error Composition If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Composition 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Composition 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 Composition If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Composition A resource should have narrative for robust management text.`div`.exists()
dom-r4b warning Composition.contained Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems ($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic)
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 Composition

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Composition.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Composition.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Composition.identifier This element is included in summaries. 0..1 Identifier Version-independent identifier for the Composition
Composition.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Composition.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
Composition.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Composition.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Composition.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
Composition.status This element is a modifier element. This element is included in summaries. 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Composition.type This element is included in summaries. 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
Composition.category This element must be supported. This element is included in summaries. 0..* CodeableConcept Categorization of Composition
Binding: LoincDocumentOntologyInternational (example): High-level kind of a clinical document at a macro level.
Composition.subject This element is included in summaries. 1..1 Reference(Resource) Who and/or what the composition is about
Composition.encounter This element is included in summaries. 1..1 Reference(Encounter) Context of the Composition
Composition.date This element is included in summaries. 1..1 dateTime Composition editing time
Composition.author This element is included in summaries. 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the composition
Composition.title This element is included in summaries. 1..1 string Human Readable name/title
Composition.confidentiality This element must be supported. This element is included in summaries. 0..1 code ​As defined by affinity domain
Binding: http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 (required): Codes specifying the level of confidentiality of the composition.
Composition.attester 1..* BackboneElement Attests to accuracy of composition
Composition.attester.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.attester.mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Composition.attester.time 1..1 dateTime When the composition was attested
Composition.attester.party 1..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
Composition.custodian This element is included in summaries. 1..1 Reference(Organization) Organization which maintains the composition
Composition.event This element must be supported. This element is included in summaries. 0..* BackboneElement The clinical service(s) being documented
Composition.event.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.event.code This element is included in summaries. 1..* CodeableConcept Code(s) that apply to the event being documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
Composition.event.detail This element is included in summaries. 1..* Reference(Resource) The event(s) being documented
Composition.section C 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
Composition.section.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.section.code 1..1 CodeableConcept Classification of section (recommended)
Binding: http://loinc.org (required)
Composition.section.author 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
Composition.section.entry C 1..* Reference(Resource) A reference to data that supports this section

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Composition.identifier.​use Base required IdentifierUse 📍4.3.0 FHIR Std.
Composition.identifier.​type Base extensible IdentifierType 📍4.3.0 FHIR Std.
Composition.status Base required CompositionStatus 📍4.3.0 FHIR Std.
Composition.type Base preferred FHIR Document Type Codes 📍4.3.0 FHIR Std.
Composition.category Base example LoincDocumentOntologyInternational 📦3.0.0 THO v7.4
Composition.confidentiality Base required ​ http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 📍2.0.0 Unknown
Composition.attester.​mode Base required CompositionAttestationMode 📍4.3.0 FHIR Std.
Composition.event.code Base example v3 Code System ActCode 📦3.0.0 THO v7.4
Composition.section.​code Base required http://loinc.org Not State Unknown

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning Composition.identifier.type Text is optional, coding is required coding.exists()
cmp-1 error Composition.section A section must contain at least one of text, entries, or sub-sections text.exists() or entry.exists() or section.exists()
cmp-2 error Composition.section A section can only have an emptyReason if it is empty emptyReason.empty() or entry.empty()
dom-2 error Composition If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Composition 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Composition 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 Composition If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Composition 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 Composition

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Composition.identifier
Composition.identifier.use 1..1 code usual | official | temp | secondary | old (If known)
Composition.identifier.type 1..1 HIECodeableConcept Description of identifier
Composition.identifier.system 1..1 uri The namespace for the identifier value
Composition.identifier.value This element must be supported. 1..1 string The value that is unique
Composition.identifier.assigner This element must be supported. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
Composition.category This element must be supported. 0..* CodeableConcept Categorization of Composition
Composition.subject 1..1 Reference(Resource) Who and/or what the composition is about
Composition.encounter 1..1 Reference(Encounter) Context of the Composition
Composition.confidentiality This element must be supported. 0..1 code As defined by affinity domain
Composition.attester 1..* BackboneElement Attests to accuracy of composition
Composition.attester.time 1..1 dateTime When the composition was attested
Composition.attester.party 1..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
Composition.custodian 1..1 Reference(Organization) Organization which maintains the composition
Composition.event This element must be supported. 0..* BackboneElement The clinical service(s) being documented
Composition.event.code 1..* CodeableConcept Code(s) that apply to the event being documented
Composition.event.detail 1..* Reference(Resource) The event(s) being documented
Composition.section 1..* BackboneElement Composition is broken into sections
Composition.section.code 1..1 CodeableConcept Classification of section (recommended)
Binding: http://loinc.org (required)
Composition.section.author 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
Composition.section.entry 1..* Reference(Resource) A reference to data that supports this section

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
Composition.section.​code Base required http://loinc.org Not State Unknown

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Composition.id This element is included in summaries. 0..1 id Logical id of this artifact
Composition.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Composition.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Composition.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): IETF language tag
Additional BindingsPurpose
AllLanguages Max Binding
Composition.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
Composition.contained 0..* Resource Contained, inline Resources
Constraints: dom-r4b
Composition.extension 0..* Extension Additional content defined by implementations
Composition.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
Composition.identifier This element is included in summaries. 0..1 Identifier Version-independent identifier for the Composition
Composition.identifier.id 0..1 id Unique id for inter-element referencing
Composition.identifier.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
Composition.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
Composition.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
Composition.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
Composition.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
Composition.identifier.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
Composition.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
Composition.status This element is a modifier element. This element is included in summaries. 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
Composition.type This element is included in summaries. 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
Composition.category This element must be supported. This element is included in summaries. 0..* CodeableConcept Categorization of Composition
Binding: LoincDocumentOntologyInternational (example): High-level kind of a clinical document at a macro level.
Composition.subject This element is included in summaries. 1..1 Reference(Resource) Who and/or what the composition is about
Composition.encounter This element is included in summaries. 1..1 Reference(Encounter) Context of the Composition
Composition.date This element is included in summaries. 1..1 dateTime Composition editing time
Composition.author This element is included in summaries. 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the composition
Composition.title This element is included in summaries. 1..1 string Human Readable name/title
Composition.confidentiality This element must be supported. This element is included in summaries. 0..1 code ​As defined by affinity domain
Binding: http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 (required): Codes specifying the level of confidentiality of the composition.
Composition.attester 1..* BackboneElement Attests to accuracy of composition
Composition.attester.id 0..1 string Unique id for inter-element referencing
Composition.attester.extension 0..* Extension Additional content defined by implementations
Composition.attester.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.attester.mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Composition.attester.time 1..1 dateTime When the composition was attested
Composition.attester.party 1..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
Composition.custodian This element is included in summaries. 1..1 Reference(Organization) Organization which maintains the composition
Composition.relatesTo 0..* BackboneElement Relationships to other compositions/documents
Composition.relatesTo.id 0..1 string Unique id for inter-element referencing
Composition.relatesTo.extension 0..* Extension Additional content defined by implementations
Composition.relatesTo.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.relatesTo.code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Composition.relatesTo.target[x] 1..1 Target of the relationship
Composition.relatesTo.target[x].targetIdentifier Identifier
Composition.relatesTo.target[x].targetReference Reference(Composition)
Composition.event This element must be supported. This element is included in summaries. 0..* BackboneElement The clinical service(s) being documented
Composition.event.id 0..1 string Unique id for inter-element referencing
Composition.event.extension 0..* Extension Additional content defined by implementations
Composition.event.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.event.code This element is included in summaries. 1..* CodeableConcept Code(s) that apply to the event being documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
Composition.event.period This element is included in summaries. 0..1 Period The period covered by the documentation
Composition.event.detail This element is included in summaries. 1..* Reference(Resource) The event(s) being documented
Composition.section C 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
Composition.section.id 0..1 string Unique id for inter-element referencing
Composition.section.extension 0..* Extension Additional content defined by implementations
Composition.section.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Composition.section.title 0..1 string Label for section (e.g. for ToC)
Composition.section.code 1..1 CodeableConcept Classification of section (recommended)
Binding: http://loinc.org (required)
Composition.section.author 1..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
Composition.section.focus 0..1 Reference(Resource) Who/what the section is about, when it is not about the subject of composition
Composition.section.text C 0..1 Narrative Text summary of the section, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Composition.section.mode 0..1 code working | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this section.
Composition.section.orderedBy 0..1 CodeableConcept Order of section entries
Binding: ListOrderCodes (preferred): What order applies to the items in the entry.
Composition.section.entry C 1..* Reference(Resource) A reference to data that supports this section
Composition.section.emptyReason C 0..1 CodeableConcept Why the section is empty
Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.
Composition.section.section C 0..* See section (Composition) Nested Section

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Composition.language Base preferred Common Languages 📍4.3.0 FHIR Std.
Composition.identifier.​use Base required IdentifierUse 📍4.3.0 FHIR Std.
Composition.identifier.​type Base extensible IdentifierType 📍4.3.0 FHIR Std.
Composition.status Base required CompositionStatus 📍4.3.0 FHIR Std.
Composition.type Base preferred FHIR Document Type Codes 📍4.3.0 FHIR Std.
Composition.category Base example LoincDocumentOntologyInternational 📦3.0.0 THO v7.4
Composition.confidentiality Base required ​ http://terminology.hl7.org/ValueSet/v3-Confidentiality|2.0.0 📍2.0.0 Unknown
Composition.attester.​mode Base required CompositionAttestationMode 📍4.3.0 FHIR Std.
Composition.relatesTo.​code Base required DocumentRelationshipType 📍4.3.0 FHIR Std.
Composition.event.code Base example v3 Code System ActCode 📦3.0.0 THO v7.4
Composition.section.​code Base required http://loinc.org Not State Unknown
Composition.section.​mode Base required ListMode 📍4.3.0 FHIR Std.
Composition.section.​orderedBy Base preferred List Order Codes 📍4.3.0 FHIR Std.
Composition.section.​emptyReason Base preferred List Empty Reasons 📍4.3.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning Composition.identifier.type Text is optional, coding is required coding.exists()
cmp-1 error Composition.section A section must contain at least one of text, entries, or sub-sections text.exists() or entry.exists() or section.exists()
cmp-2 error Composition.section A section can only have an emptyReason if it is empty emptyReason.empty() or entry.empty()
dom-2 error Composition If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Composition 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Composition 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 Composition If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice Composition A resource should have narrative for robust management text.`div`.exists()
dom-r4b warning Composition.contained Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems ($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic)
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 Composition

 

Other representations of profile: CSV, Excel, Schematron