This page is part of the FHIR Specification (v0.5.0: DSTU 2 Ballot 2). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
This resource maintained by the Structured Documents Work Group
A set of healthcare-related information that is assembled together into a single logical document that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement.
A Composition is also the basic structure from which FHIR Documents - immutable bundles with attested narrative - are built. A single logical composition may be associated with a series of derived documents, each of which is a frozen copy of the composition.
Note: EN 13606 uses the term "Composition" to refer to a single commit to an EHR system, and offers some common examples: a consultation note, a progress note, a report or a letter, an investigation report, a prescription form and a set of bedside nursing observations. These logical examples are all valid uses of a Composition resource, but it is not required that all the resources are updated in a single commit.
Composition is a structure for grouping information for purposes of persistance and attestability. There are several other grouping structures in FHIR with distinct purposes:
While a Composition organizes clinical and administrative content, it doesn't directly contain any of this information. The content of the various sections defined by a Composition are satisfied by the resources pointed to by those sections. The complete set of content to make up a document includes the Composition resource together with various resources pointed to or indirectly connected to the Composition all gathered together into a Bundle for transport and persistence.
Every composition has a status, which describes the status of the content of the composition, taken from this list of codes:
Code | Definition |
preliminary | This is a preliminary composition (also known as initial or interim). The content may be incomplete or unverified. |
final | The composition is complete and verified by an appropriate person and no further work is planned |
appended | The composition has been modified subsequent to being marked and/or released as "final" and is complete and verified by an authorized person. The modifications added new information to the composition, but did not revise existing content |
amended | The composition content or the referenced resources have been modified subsequent to being released as "final" and the composition is complete and verified by an authorized person |
retracted | The composition was originally created/issued in error and this is an amendment that marks that the entire composition and any past versions or copies should not be considered as valid |
Composition status generally only moves down through this list - it moves from preliminary to final and then it may progress to either appended or amended. Note that in many workflows, only final compositions are made available and the preliminary status is not used.
A very few compositions are created entirely in error in the workflow - usually the composition concerns the wrong patient or is written by the wrong author, and the error is only detected after the composition has been used or documents have been derived from it. To support resolution of this case, the composition is updated to be marked as "retracted" and a new derived document can be created. This means that the entire series of derived documents is now considered to be created in error and systems receiving derived documents based on retracted compositions SHOULD remove data taken from earlier documents from routine use and/or take other appropriate actions. Systems are not required to provide this workflow or support documents derived from retracted compositions, but they SHALL not ignore a status of retracted. Note that systems that handle compositions or derived documents and don't support the retracted status need to define some other way of handling compositions that are created in error; while this is not a common occurrence, some clinical systems have no provision for removing erroneous information from a patient's record and there is no way for a user to know that it is not fit for use - this is not safe.
Many users of this specification are familiar with the Clinical Document Architecture (CDA) and related specifications. CDA is a primary design input to the composition resource (other principle inputs are other HL7 document specifications, and EN13606). There are two important structural differences between CDA and the composition resource:
In addition, note that both the code lists (e.g. Composition status) and the composition resource are mapped to v3 and/or CDA.
This resource is referenced by [Contract]
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Composition | DomainResource | A set of resources composed into a single coherent clinical statement with clinical attestation | ||
identifier | Σ | 0..1 | Identifier | Logical identifier of composition (version-independent) |
date | Σ | 1..1 | dateTime | Composition editing time |
type | Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) DocumentType (Required) |
class | Σ | 0..1 | CodeableConcept | Categorization of Composition DocumentC80Class (Preferred) |
title | Σ | 0..1 | string | Human Readable name/title |
status | ?! Σ | 1..1 | code | preliminary | final | appended | amended | entered-in-error CompositionStatus (Required) |
confidentiality | ?! Σ | 0..1 | code | As defined by affinity domain DocumentConfidentiality (Required) |
subject | Σ | 1..1 | Any | Who and/or what the composition is about |
author | Σ | 1..* | Practitioner | Device | Patient | RelatedPerson | Who and/or what authored the composition |
attester | Σ | 0..* | Element | Attests to accuracy of composition |
mode | Σ | 1..* | code | personal | professional | legal | official CompositionAttestationMode (Required) |
time | Σ | 0..1 | dateTime | When composition attested |
party | Σ | 0..1 | Patient | Practitioner | Organization | Who attested the composition |
custodian | Σ | 0..1 | Organization | Org which maintains the composition |
event | Σ | 0..* | Element | The clinical service(s) being documented |
code | Σ | 0..* | CodeableConcept | Code(s) that apply to the event being documented DocumentEventType (Required) |
period | Σ | 0..1 | Period | The period covered by the documentation |
detail | Σ | 0..* | Any | Full details for the event(s) the composition consents |
encounter | Σ | 0..1 | Encounter | Context of the conposition |
section | I | 0..* | Element | Composition is broken into sections A section must have either subsections or content |
title | 0..1 | string | Label for section (e.g. for ToC) | |
code | 0..1 | CodeableConcept | Classification of section (recommended) CompositionSectionType (Required) | |
content | I | 0..1 | List | The Content of the section (narrative + data entries) |
section | I | 0..* | see section | Nested Section |
UML Diagram
XML Template
<Composition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..1 Identifier Logical identifier of composition (version-independent) --></identifier> <date value="[dateTime]"/><!-- 1..1 Composition editing time --> <type><!-- 1..1 CodeableConcept Kind of composition (LOINC if possible) --></type> <class><!-- 0..1 CodeableConcept Categorization of Composition --></class> <title value="[string]"/><!-- 0..1 Human Readable name/title --> <status value="[code]"/><!-- 1..1 preliminary | final | appended | amended | entered-in-error --> <confidentiality value="[code]"/><!-- 0..1 As defined by affinity domain --> <subject><!-- 1..1 Reference(Any) Who and/or what the composition is about --></subject> <author><!-- 1..* Reference(Practitioner|Device|Patient|RelatedPerson) Who and/or what authored the composition --></author> <attester> <!-- 0..* Attests to accuracy of composition --> <mode value="[code]"/><!-- 1..* personal | professional | legal | official --> <time value="[dateTime]"/><!-- 0..1 When composition attested --> <party><!-- 0..1 Reference(Patient|Practitioner|Organization) Who attested the composition --></party> </attester> <custodian><!-- 0..1 Reference(Organization) Org which maintains the composition --></custodian> <event> <!-- 0..* The clinical service(s) being documented --> <code><!-- 0..* CodeableConcept Code(s) that apply to the event being documented --></code> <period><!-- 0..1 Period The period covered by the documentation --></period> <detail><!-- 0..* Reference(Any) Full details for the event(s) the composition consents --></detail> </event> <encounter><!-- 0..1 Reference(Encounter) Context of the conposition --></encounter> <section> <!-- 0..* Composition is broken into sections --> <title value="[string]"/><!-- 0..1 Label for section (e.g. for ToC) --> <code><!-- 0..1 CodeableConcept Classification of section (recommended) --></code> <content><!-- 0..1 Reference(List) The Content of the section (narrative + data entries) --></content> <section><!-- 0..* Content as for Composition.section Nested Section --></section> </section> </Composition>
JSON Template
{ "resourceType" : "Composition", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : { Identifier }, // Logical identifier of composition (version-independent) "date" : "<dateTime>", // R! Composition editing time "type" : { CodeableConcept }, // R! Kind of composition (LOINC if possible) "class" : { CodeableConcept }, // Categorization of Composition "title" : "<string>", // Human Readable name/title "status" : "<code>", // R! preliminary | final | appended | amended | entered-in-error "confidentiality" : "<code>", // As defined by affinity domain "subject" : { Reference(Any) }, // R! Who and/or what the composition is about "author" : [{ Reference(Practitioner|Device|Patient|RelatedPerson) }], // R! Who and/or what authored the composition "attester" : [{ // Attests to accuracy of composition "mode" : ["<code>"], // R! personal | professional | legal | official "time" : "<dateTime>", // When composition attested "party" : { Reference(Patient|Practitioner|Organization) } // Who attested the composition }], "custodian" : { Reference(Organization) }, // Org which maintains the composition "event" : [{ // The clinical service(s) being documented "code" : [{ CodeableConcept }], // Code(s) that apply to the event being documented "period" : { Period }, // The period covered by the documentation "detail" : [{ Reference(Any) }] // Full details for the event(s) the composition consents }], "encounter" : { Reference(Encounter) }, // Context of the conposition "section" : [{ // Composition is broken into sections "title" : "<string>", // Label for section (e.g. for ToC) "code" : { CodeableConcept }, // Classification of section (recommended) "content" : { Reference(List) }, // C? The Content of the section (narrative + data entries) "section" : [{ Content as for Composition.section }] // C? Nested Section }] }
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Composition | DomainResource | A set of resources composed into a single coherent clinical statement with clinical attestation | ||
identifier | Σ | 0..1 | Identifier | Logical identifier of composition (version-independent) |
date | Σ | 1..1 | dateTime | Composition editing time |
type | Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) DocumentType (Required) |
class | Σ | 0..1 | CodeableConcept | Categorization of Composition DocumentC80Class (Preferred) |
title | Σ | 0..1 | string | Human Readable name/title |
status | ?! Σ | 1..1 | code | preliminary | final | appended | amended | entered-in-error CompositionStatus (Required) |
confidentiality | ?! Σ | 0..1 | code | As defined by affinity domain DocumentConfidentiality (Required) |
subject | Σ | 1..1 | Any | Who and/or what the composition is about |
author | Σ | 1..* | Practitioner | Device | Patient | RelatedPerson | Who and/or what authored the composition |
attester | Σ | 0..* | Element | Attests to accuracy of composition |
mode | Σ | 1..* | code | personal | professional | legal | official CompositionAttestationMode (Required) |
time | Σ | 0..1 | dateTime | When composition attested |
party | Σ | 0..1 | Patient | Practitioner | Organization | Who attested the composition |
custodian | Σ | 0..1 | Organization | Org which maintains the composition |
event | Σ | 0..* | Element | The clinical service(s) being documented |
code | Σ | 0..* | CodeableConcept | Code(s) that apply to the event being documented DocumentEventType (Required) |
period | Σ | 0..1 | Period | The period covered by the documentation |
detail | Σ | 0..* | Any | Full details for the event(s) the composition consents |
encounter | Σ | 0..1 | Encounter | Context of the conposition |
section | I | 0..* | Element | Composition is broken into sections A section must have either subsections or content |
title | 0..1 | string | Label for section (e.g. for ToC) | |
code | 0..1 | CodeableConcept | Classification of section (recommended) CompositionSectionType (Required) | |
content | I | 0..1 | List | The Content of the section (narrative + data entries) |
section | I | 0..* | see section | Nested Section |
XML Template
<Composition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..1 Identifier Logical identifier of composition (version-independent) --></identifier> <date value="[dateTime]"/><!-- 1..1 Composition editing time --> <type><!-- 1..1 CodeableConcept Kind of composition (LOINC if possible) --></type> <class><!-- 0..1 CodeableConcept Categorization of Composition --></class> <title value="[string]"/><!-- 0..1 Human Readable name/title --> <status value="[code]"/><!-- 1..1 preliminary | final | appended | amended | entered-in-error --> <confidentiality value="[code]"/><!-- 0..1 As defined by affinity domain --> <subject><!-- 1..1 Reference(Any) Who and/or what the composition is about --></subject> <author><!-- 1..* Reference(Practitioner|Device|Patient|RelatedPerson) Who and/or what authored the composition --></author> <attester> <!-- 0..* Attests to accuracy of composition --> <mode value="[code]"/><!-- 1..* personal | professional | legal | official --> <time value="[dateTime]"/><!-- 0..1 When composition attested --> <party><!-- 0..1 Reference(Patient|Practitioner|Organization) Who attested the composition --></party> </attester> <custodian><!-- 0..1 Reference(Organization) Org which maintains the composition --></custodian> <event> <!-- 0..* The clinical service(s) being documented --> <code><!-- 0..* CodeableConcept Code(s) that apply to the event being documented --></code> <period><!-- 0..1 Period The period covered by the documentation --></period> <detail><!-- 0..* Reference(Any) Full details for the event(s) the composition consents --></detail> </event> <encounter><!-- 0..1 Reference(Encounter) Context of the conposition --></encounter> <section> <!-- 0..* Composition is broken into sections --> <title value="[string]"/><!-- 0..1 Label for section (e.g. for ToC) --> <code><!-- 0..1 CodeableConcept Classification of section (recommended) --></code> <content><!-- 0..1 Reference(List) The Content of the section (narrative + data entries) --></content> <section><!-- 0..* Content as for Composition.section Nested Section --></section> </section> </Composition>
JSON Template
{ "resourceType" : "Composition", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : { Identifier }, // Logical identifier of composition (version-independent) "date" : "<dateTime>", // R! Composition editing time "type" : { CodeableConcept }, // R! Kind of composition (LOINC if possible) "class" : { CodeableConcept }, // Categorization of Composition "title" : "<string>", // Human Readable name/title "status" : "<code>", // R! preliminary | final | appended | amended | entered-in-error "confidentiality" : "<code>", // As defined by affinity domain "subject" : { Reference(Any) }, // R! Who and/or what the composition is about "author" : [{ Reference(Practitioner|Device|Patient|RelatedPerson) }], // R! Who and/or what authored the composition "attester" : [{ // Attests to accuracy of composition "mode" : ["<code>"], // R! personal | professional | legal | official "time" : "<dateTime>", // When composition attested "party" : { Reference(Patient|Practitioner|Organization) } // Who attested the composition }], "custodian" : { Reference(Organization) }, // Org which maintains the composition "event" : [{ // The clinical service(s) being documented "code" : [{ CodeableConcept }], // Code(s) that apply to the event being documented "period" : { Period }, // The period covered by the documentation "detail" : [{ Reference(Any) }] // Full details for the event(s) the composition consents }], "encounter" : { Reference(Encounter) }, // Context of the conposition "section" : [{ // Composition is broken into sections "title" : "<string>", // Label for section (e.g. for ToC) "code" : { CodeableConcept }, // Classification of section (recommended) "content" : { Reference(List) }, // C? The Content of the section (narrative + data entries) "section" : [{ Content as for Composition.section }] // C? Nested Section }] }
Alternate definitions: Schema/Schematron, Resource Profile (XML, JSON)
Path | Definition | Type | Reference |
---|---|---|---|
Composition.type | Type of a composition | Required | http://hl7.org/fhir/vs/doc-typecodes |
Composition.class | High-level kind of a clinical document at a macro level | Preferred | http://hl7.org/fhir/vs/c80-doc-classcodes |
Composition.status | The workflow/clinical status of the composition | Required | http://hl7.org/fhir/composition-status |
Composition.confidentiality | Codes specifying the level of confidentiality of the composition | Required | http://hl7.org/fhir/v3/vs/Confidentiality |
Composition.attester.mode | The way in which a person authenticated a composition | Required | http://hl7.org/fhir/composition-attestation-mode |
Composition.event.code | This list of codes represents the main clinical acts being documented | Required | http://hl7.org/fhir/v3/vs/ActCode |
Composition.section.code | Classification of a section of a composition / document | Required | http://hl7.org/fhir/vs/doc-section-codes |
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Paths |
attester | reference | Who attested the composition | Composition.attester.party (Organization, Patient, Practitioner) |
author | reference | Who and/or what authored the composition | Composition.author (Device, Patient, Practitioner, RelatedPerson) |
class | token | Categorization of Composition | Composition.class |
confidentiality | token | As defined by affinity domain | Composition.confidentiality |
context | token | Code(s) that apply to the event being documented | Composition.event.code |
date | date | Composition editing time | Composition.date |
encounter | reference | Context of the conposition | Composition.encounter (Encounter) |
identifier | token | Logical identifier of composition (version-independent) | Composition.identifier |
patient | reference | Who and/or what the composition is about | Composition.subject (Patient) |
period | date | The period covered by the documentation | Composition.event.period |
section | reference | The Content of the section (narrative + data entries) | Composition.section.content (List) |
section-code | token | Classification of section (recommended) | Composition.section.code |
status | token | preliminary | final | appended | amended | entered-in-error | Composition.status |
subject | reference | Who and/or what the composition is about | Composition.subject (Any) |
title | string | Human Readable name/title | Composition.title |
type | token | Kind of composition (LOINC if possible) | Composition.type |