This page is part of the FHIR Specification (v5.0.0-ballot: R5 Ballot - see ballot notes). 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
Structured Documents Work Group | Maturity Level: 2 | Trial Use | Security Category: Not Classified | Compartments: Device, Encounter, Patient, Practitioner, RelatedPerson |
A set of healthcare-related information that is assembled together into a single logical package 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 defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.).
A Composition is 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 composition containing a consultation note, a progress note, a report or a letter, an investigation report, a prescription form or a set of bedside nursing observations. Using Composition for an attested EHR commit is a valid use of the Composition resource, but for FHIR purposes, it would be usual to make more granular updates with individual provenance statements.
The Clinical Document profile constrains Composition to specify a clinical document (matching CDA ). See also the comparison with CDA.
Composition is a structure for grouping information for purposes of persistence and attestability. There are several other grouping structures in FHIR with distinct purposes:
The Composition resource organizes clinical and administrative content into sections, each of which contains a narrative, and references other resources for supporting data. The narrative content of the various sections in a Composition are supported by the resources referenced in the section entries. 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. See the FHIR Documents documentation for guidance on how a Composition is used when creating a document bundle.
Every composition has a status element, which describes the status of the content of the composition, taken from this list of codes:
registered | The existence of the report is registered, but there is nothing yet available. |
partial | This is a partial (e.g. initial, interim or preliminary) report: data in the report may be incomplete or unverified. |
preliminary | Verified early results are available, but not all results are final. |
final | This version of the composition is complete and verified by an appropriate person and no further work is planned. Any subsequent updates would be on a new version of the composition. |
amended | The composition content or the referenced resources have been modified (edited or added to) subsequent to being released as "final" and the composition is complete and verified by an authorized person. |
corrected | Subsequent to being final, the composition content has been modified to correct an error in the report or referenced results. |
appended | Subsequent to being final, the composition content has been modified by adding new content. The existing content is unchanged. |
cancelled | The composition is unavailable because the measurement was not started or not completed (also sometimes called "aborted"). |
entered-in-error | The composition or document was originally created/issued in error, and this is an amendment that marks that the entire series should not be considered as valid. |
deprecated | This composition has been withdrawn or superseded and should no longer be used. |
unknown | The authoring/source system does not know which of the status values currently applies for this observation. Note: This concept is not to be used for "other" - one of the listed statuses is presumed to apply, but the authoring/source system does not know which. |
Composition status generally only moves down through this list - it moves from registered
or preliminary
to final
and then it may progress to 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 entered-in-error
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 entered-in-error
.
Note that systems that handle compositions or derived documents and don't support the error 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 principal inputs are other HL7 document specifications and EN13606). There are three important structural differences between CDA and the Composition resource:
identifier
matches to the CDA ClinicalDocument.setId
.
Composition resources are wrapped into Document structures, for exchange
of the whole package (the composition and its parts), and this wrapped, sealed entity is equivalent to a CDA document,
where the where the Bundle.identifier
is equivalent to ClinicalDocument.id
and Bundle.meta.security
is equivalent to ClinicalDocument.confidentialityCode
.Composition
(the subject, author, event, event period and encounter) apply to the composition and do not specifically apply to the resources referenced from
the section.entry
. There is no context flow model in FHIR, so each resource referenced from
within a Composition
expresses its own individual context. In this way, clinical content can
safely be extracted from the composition.In addition, note that both the code lists (e.g., Composition.status) and the Composition resource are mapped to HL7 v3 and/or CDA.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Composition | TU | DomainResource | A set of resources composed into a single coherent clinical statement with clinical attestation Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
url | Σ | 0..1 | uri | Canonical identifier for this Composition, represented as a URI (globally unique) |
identifier | Σ | 0..* | Identifier | Version-independent identifier for the Composition |
version | Σ | 0..1 | string | An explicitly assigned identifer of a variation of the content in the Composition |
status | ?!Σ | 1..1 | code | registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown CompositionStatus (Required) |
type | Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) FHIR Document Type Codes (Preferred) |
category | Σ | 0..* | CodeableConcept | Categorization of Composition Referenced Item Category Value Set (Example) |
subject | Σ | 0..* | Reference(Any) | Who and/or what the composition is about |
encounter | Σ | 0..1 | Reference(Encounter) | Context of the Composition |
date | Σ | 1..1 | dateTime | Composition editing time |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
author | Σ | 1..* | Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) | Who and/or what authored the composition |
name | Σ | 0..1 | string | Name for this Composition (computer friendly) |
title | Σ | 1..1 | string | Human Readable name/title |
note | 0..* | Annotation | For any additional notes | |
attester | 0..* | BackboneElement | Attests to accuracy of composition | |
mode | 1..1 | CodeableConcept | personal | professional | legal | official CompositionAttestationMode (Preferred) | |
time | 0..1 | dateTime | When the composition was attested | |
party | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) | Who attested the composition | |
custodian | Σ | 0..1 | Reference(Organization) | Organization which maintains the composition |
relatesTo | 0..* | RelatedArtifact | Relationships to other compositions/documents | |
event | Σ | 0..* | BackboneElement | The clinical service(s) being documented |
code | Σ | 0..* | CodeableConcept | Code(s) that apply to the event being documented v3 Code System ActCode (Example) |
period | Σ | 0..1 | Period | The period covered by the documentation |
detail | Σ | 0..* | Reference(Any) | The event(s) being documented |
section | C | 0..* | BackboneElement | Composition is broken into sections + Rule: A section must contain at least one of text, entries, or sub-sections + Rule: A section can only have an emptyReason if it is empty |
title | 0..1 | string | Label for section (e.g. for ToC) | |
code | 0..1 | CodeableConcept | Classification of section (recommended) Document Section Codes (Example) | |
author | 0..* | Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) | Who and/or what authored the section | |
focus | 0..1 | Reference(Any) | Who/what the section is about, when it is not about the subject of composition | |
text | C | 0..1 | Narrative | Text summary of the section, for human interpretation |
mode | 0..1 | code | working | snapshot | changes ListMode (Required) | |
orderedBy | 0..1 | CodeableConcept | Order of section entries List Order Codes (Preferred) | |
entry | C | 0..* | Reference(Any) | A reference to data that supports this section |
emptyReason | C | 0..1 | CodeableConcept | Why the section is empty List Empty Reasons (Preferred) |
section | C | 0..* | see section | Nested Section |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<Composition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Canonical identifier for this Composition, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Version-independent identifier for the Composition --></identifier> <version value="[string]"/><!-- 0..1 An explicitly assigned identifer of a variation of the content in the Composition --> <status value="[code]"/><!-- 1..1 registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown --> <type><!-- 1..1 CodeableConcept Kind of composition (LOINC if possible) --></type> <category><!-- 0..* CodeableConcept Categorization of Composition --></category> <subject><!-- 0..* Reference(Any) Who and/or what the composition is about --></subject> <encounter><!-- 0..1 Reference(Encounter) Context of the Composition --></encounter> <date value="[dateTime]"/><!-- 1..1 Composition editing time --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <author><!-- 1..* Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) Who and/or what authored the composition --></author> <name value="[string]"/><!-- 0..1 Name for this Composition (computer friendly) --> <title value="[string]"/><!-- 1..1 Human Readable name/title --> <note><!-- 0..* Annotation For any additional notes --></note> <attester> <!-- 0..* Attests to accuracy of composition --> <mode><!-- 1..1 CodeableConcept personal | professional | legal | official --></mode> <time value="[dateTime]"/><!-- 0..1 When the composition was attested --> <party><!-- 0..1 Reference(Organization|Patient|Practitioner|PractitionerRole| RelatedPerson) Who attested the composition --></party> </attester> <custodian><!-- 0..1 Reference(Organization) Organization which maintains the composition --></custodian> <relatesTo><!-- 0..* RelatedArtifact Relationships to other compositions/documents --></relatesTo> <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) The event(s) being documented --></detail> </event> <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> <author><!-- 0..* Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) Who and/or what authored the section --></author> <focus><!-- 0..1 Reference(Any) Who/what the section is about, when it is not about the subject of composition --></focus> <text><!-- I 0..1 Narrative Text summary of the section, for human interpretation --></text> <mode value="[code]"/><!-- 0..1 working | snapshot | changes --> <orderedBy><!-- 0..1 CodeableConcept Order of section entries --></orderedBy> <entry><!-- I 0..* Reference(Any) A reference to data that supports this section --></entry> <emptyReason><!-- I 0..1 CodeableConcept Why the section is empty --></emptyReason> <section><!-- I 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 "url" : "<uri>", // Canonical identifier for this Composition, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Version-independent identifier for the Composition "version" : "<string>", // An explicitly assigned identifer of a variation of the content in the Composition "status" : "<code>", // R! registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown "type" : { CodeableConcept }, // R! Kind of composition (LOINC if possible) "category" : [{ CodeableConcept }], // Categorization of Composition "subject" : [{ Reference(Any) }], // Who and/or what the composition is about "encounter" : { Reference(Encounter) }, // Context of the Composition "date" : "<dateTime>", // R! Composition editing time "useContext" : [{ UsageContext }], // The context that the content is intended to support "author" : [{ Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) }], // R! Who and/or what authored the composition "name" : "<string>", // Name for this Composition (computer friendly) "title" : "<string>", // R! Human Readable name/title "note" : [{ Annotation }], // For any additional notes "attester" : [{ // Attests to accuracy of composition "mode" : { CodeableConcept }, // R! personal | professional | legal | official "time" : "<dateTime>", // When the composition was attested "party" : { Reference(Organization|Patient|Practitioner|PractitionerRole| RelatedPerson) } // Who attested the composition }], "custodian" : { Reference(Organization) }, // Organization which maintains the composition "relatesTo" : [{ RelatedArtifact }], // Relationships to other compositions/documents "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) }] // The event(s) being documented }], "section" : [{ // Composition is broken into sections "title" : "<string>", // Label for section (e.g. for ToC) "code" : { CodeableConcept }, // Classification of section (recommended) "author" : [{ Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) }], // Who and/or what authored the section "focus" : { Reference(Any) }, // Who/what the section is about, when it is not about the subject of composition "text" : { Narrative }, // I Text summary of the section, for human interpretation "mode" : "<code>", // working | snapshot | changes "orderedBy" : { CodeableConcept }, // Order of section entries "entry" : [{ Reference(Any) }], // I A reference to data that supports this section "emptyReason" : { CodeableConcept }, // I Why the section is empty "section" : [{ Content as for Composition.section }] // I Nested Section }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Composition; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Composition.url [ uri ]; # 0..1 Canonical identifier for this Composition, represented as a URI (globally unique) fhir:Composition.identifier [ Identifier ], ... ; # 0..* Version-independent identifier for the Composition fhir:Composition.version [ string ]; # 0..1 An explicitly assigned identifer of a variation of the content in the Composition fhir:Composition.status [ code ]; # 1..1 registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown fhir:Composition.type [ CodeableConcept ]; # 1..1 Kind of composition (LOINC if possible) fhir:Composition.category [ CodeableConcept ], ... ; # 0..* Categorization of Composition fhir:Composition.subject [ Reference(Any) ], ... ; # 0..* Who and/or what the composition is about fhir:Composition.encounter [ Reference(Encounter) ]; # 0..1 Context of the Composition fhir:Composition.date [ dateTime ]; # 1..1 Composition editing time fhir:Composition.useContext [ UsageContext ], ... ; # 0..* The context that the content is intended to support fhir:Composition.author [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 1..* Who and/or what authored the composition fhir:Composition.name [ string ]; # 0..1 Name for this Composition (computer friendly) fhir:Composition.title [ string ]; # 1..1 Human Readable name/title fhir:Composition.note [ Annotation ], ... ; # 0..* For any additional notes fhir:Composition.attester [ # 0..* Attests to accuracy of composition fhir:Composition.attester.mode [ CodeableConcept ]; # 1..1 personal | professional | legal | official fhir:Composition.attester.time [ dateTime ]; # 0..1 When the composition was attested fhir:Composition.attester.party [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who attested the composition ], ...; fhir:Composition.custodian [ Reference(Organization) ]; # 0..1 Organization which maintains the composition fhir:Composition.relatesTo [ RelatedArtifact ], ... ; # 0..* Relationships to other compositions/documents fhir:Composition.event [ # 0..* The clinical service(s) being documented fhir:Composition.event.code [ CodeableConcept ], ... ; # 0..* Code(s) that apply to the event being documented fhir:Composition.event.period [ Period ]; # 0..1 The period covered by the documentation fhir:Composition.event.detail [ Reference(Any) ], ... ; # 0..* The event(s) being documented ], ...; fhir:Composition.section [ # 0..* Composition is broken into sections fhir:Composition.section.title [ string ]; # 0..1 Label for section (e.g. for ToC) fhir:Composition.section.code [ CodeableConcept ]; # 0..1 Classification of section (recommended) fhir:Composition.section.author [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 0..* Who and/or what authored the section fhir:Composition.section.focus [ Reference(Any) ]; # 0..1 Who/what the section is about, when it is not about the subject of composition fhir:Composition.section.text [ Narrative ]; # 0..1 I Text summary of the section, for human interpretation fhir:Composition.section.mode [ code ]; # 0..1 working | snapshot | changes fhir:Composition.section.orderedBy [ CodeableConcept ]; # 0..1 Order of section entries fhir:Composition.section.entry [ Reference(Any) ], ... ; # 0..* I A reference to data that supports this section fhir:Composition.section.emptyReason [ CodeableConcept ]; # 0..1 I Why the section is empty fhir:Composition.section.section [ See Composition.section ], ... ; # 0..* I Nested Section ], ...; ]
Changes since R4
Composition | |
Composition.url |
|
Composition.identifier |
|
Composition.version |
|
Composition.subject |
|
Composition.useContext |
|
Composition.name |
|
Composition.note |
|
Composition.attester.mode |
|
Composition.relatesTo |
|
Composition.confidentiality |
|
Composition.relatesTo.code |
|
Composition.relatesTo.target[x] |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 1 test that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Composition | TU | DomainResource | A set of resources composed into a single coherent clinical statement with clinical attestation Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
url | Σ | 0..1 | uri | Canonical identifier for this Composition, represented as a URI (globally unique) |
identifier | Σ | 0..* | Identifier | Version-independent identifier for the Composition |
version | Σ | 0..1 | string | An explicitly assigned identifer of a variation of the content in the Composition |
status | ?!Σ | 1..1 | code | registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown CompositionStatus (Required) |
type | Σ | 1..1 | CodeableConcept | Kind of composition (LOINC if possible) FHIR Document Type Codes (Preferred) |
category | Σ | 0..* | CodeableConcept | Categorization of Composition Referenced Item Category Value Set (Example) |
subject | Σ | 0..* | Reference(Any) | Who and/or what the composition is about |
encounter | Σ | 0..1 | Reference(Encounter) | Context of the Composition |
date | Σ | 1..1 | dateTime | Composition editing time |
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support |
author | Σ | 1..* | Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) | Who and/or what authored the composition |
name | Σ | 0..1 | string | Name for this Composition (computer friendly) |
title | Σ | 1..1 | string | Human Readable name/title |
note | 0..* | Annotation | For any additional notes | |
attester | 0..* | BackboneElement | Attests to accuracy of composition | |
mode | 1..1 | CodeableConcept | personal | professional | legal | official CompositionAttestationMode (Preferred) | |
time | 0..1 | dateTime | When the composition was attested | |
party | 0..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) | Who attested the composition | |
custodian | Σ | 0..1 | Reference(Organization) | Organization which maintains the composition |
relatesTo | 0..* | RelatedArtifact | Relationships to other compositions/documents | |
event | Σ | 0..* | BackboneElement | The clinical service(s) being documented |
code | Σ | 0..* | CodeableConcept | Code(s) that apply to the event being documented v3 Code System ActCode (Example) |
period | Σ | 0..1 | Period | The period covered by the documentation |
detail | Σ | 0..* | Reference(Any) | The event(s) being documented |
section | C | 0..* | BackboneElement | Composition is broken into sections + Rule: A section must contain at least one of text, entries, or sub-sections + Rule: A section can only have an emptyReason if it is empty |
title | 0..1 | string | Label for section (e.g. for ToC) | |
code | 0..1 | CodeableConcept | Classification of section (recommended) Document Section Codes (Example) | |
author | 0..* | Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) | Who and/or what authored the section | |
focus | 0..1 | Reference(Any) | Who/what the section is about, when it is not about the subject of composition | |
text | C | 0..1 | Narrative | Text summary of the section, for human interpretation |
mode | 0..1 | code | working | snapshot | changes ListMode (Required) | |
orderedBy | 0..1 | CodeableConcept | Order of section entries List Order Codes (Preferred) | |
entry | C | 0..* | Reference(Any) | A reference to data that supports this section |
emptyReason | C | 0..1 | CodeableConcept | Why the section is empty List Empty Reasons (Preferred) |
section | C | 0..* | see section | Nested Section |
Documentation for this format |
See the Extensions for this resource
XML Template
<Composition xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <url value="[uri]"/><!-- 0..1 Canonical identifier for this Composition, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Version-independent identifier for the Composition --></identifier> <version value="[string]"/><!-- 0..1 An explicitly assigned identifer of a variation of the content in the Composition --> <status value="[code]"/><!-- 1..1 registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown --> <type><!-- 1..1 CodeableConcept Kind of composition (LOINC if possible) --></type> <category><!-- 0..* CodeableConcept Categorization of Composition --></category> <subject><!-- 0..* Reference(Any) Who and/or what the composition is about --></subject> <encounter><!-- 0..1 Reference(Encounter) Context of the Composition --></encounter> <date value="[dateTime]"/><!-- 1..1 Composition editing time --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <author><!-- 1..* Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) Who and/or what authored the composition --></author> <name value="[string]"/><!-- 0..1 Name for this Composition (computer friendly) --> <title value="[string]"/><!-- 1..1 Human Readable name/title --> <note><!-- 0..* Annotation For any additional notes --></note> <attester> <!-- 0..* Attests to accuracy of composition --> <mode><!-- 1..1 CodeableConcept personal | professional | legal | official --></mode> <time value="[dateTime]"/><!-- 0..1 When the composition was attested --> <party><!-- 0..1 Reference(Organization|Patient|Practitioner|PractitionerRole| RelatedPerson) Who attested the composition --></party> </attester> <custodian><!-- 0..1 Reference(Organization) Organization which maintains the composition --></custodian> <relatesTo><!-- 0..* RelatedArtifact Relationships to other compositions/documents --></relatesTo> <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) The event(s) being documented --></detail> </event> <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> <author><!-- 0..* Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) Who and/or what authored the section --></author> <focus><!-- 0..1 Reference(Any) Who/what the section is about, when it is not about the subject of composition --></focus> <text><!-- I 0..1 Narrative Text summary of the section, for human interpretation --></text> <mode value="[code]"/><!-- 0..1 working | snapshot | changes --> <orderedBy><!-- 0..1 CodeableConcept Order of section entries --></orderedBy> <entry><!-- I 0..* Reference(Any) A reference to data that supports this section --></entry> <emptyReason><!-- I 0..1 CodeableConcept Why the section is empty --></emptyReason> <section><!-- I 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 "url" : "<uri>", // Canonical identifier for this Composition, represented as a URI (globally unique) "identifier" : [{ Identifier }], // Version-independent identifier for the Composition "version" : "<string>", // An explicitly assigned identifer of a variation of the content in the Composition "status" : "<code>", // R! registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown "type" : { CodeableConcept }, // R! Kind of composition (LOINC if possible) "category" : [{ CodeableConcept }], // Categorization of Composition "subject" : [{ Reference(Any) }], // Who and/or what the composition is about "encounter" : { Reference(Encounter) }, // Context of the Composition "date" : "<dateTime>", // R! Composition editing time "useContext" : [{ UsageContext }], // The context that the content is intended to support "author" : [{ Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) }], // R! Who and/or what authored the composition "name" : "<string>", // Name for this Composition (computer friendly) "title" : "<string>", // R! Human Readable name/title "note" : [{ Annotation }], // For any additional notes "attester" : [{ // Attests to accuracy of composition "mode" : { CodeableConcept }, // R! personal | professional | legal | official "time" : "<dateTime>", // When the composition was attested "party" : { Reference(Organization|Patient|Practitioner|PractitionerRole| RelatedPerson) } // Who attested the composition }], "custodian" : { Reference(Organization) }, // Organization which maintains the composition "relatesTo" : [{ RelatedArtifact }], // Relationships to other compositions/documents "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) }] // The event(s) being documented }], "section" : [{ // Composition is broken into sections "title" : "<string>", // Label for section (e.g. for ToC) "code" : { CodeableConcept }, // Classification of section (recommended) "author" : [{ Reference(Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) }], // Who and/or what authored the section "focus" : { Reference(Any) }, // Who/what the section is about, when it is not about the subject of composition "text" : { Narrative }, // I Text summary of the section, for human interpretation "mode" : "<code>", // working | snapshot | changes "orderedBy" : { CodeableConcept }, // Order of section entries "entry" : [{ Reference(Any) }], // I A reference to data that supports this section "emptyReason" : { CodeableConcept }, // I Why the section is empty "section" : [{ Content as for Composition.section }] // I Nested Section }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:Composition; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:Composition.url [ uri ]; # 0..1 Canonical identifier for this Composition, represented as a URI (globally unique) fhir:Composition.identifier [ Identifier ], ... ; # 0..* Version-independent identifier for the Composition fhir:Composition.version [ string ]; # 0..1 An explicitly assigned identifer of a variation of the content in the Composition fhir:Composition.status [ code ]; # 1..1 registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown fhir:Composition.type [ CodeableConcept ]; # 1..1 Kind of composition (LOINC if possible) fhir:Composition.category [ CodeableConcept ], ... ; # 0..* Categorization of Composition fhir:Composition.subject [ Reference(Any) ], ... ; # 0..* Who and/or what the composition is about fhir:Composition.encounter [ Reference(Encounter) ]; # 0..1 Context of the Composition fhir:Composition.date [ dateTime ]; # 1..1 Composition editing time fhir:Composition.useContext [ UsageContext ], ... ; # 0..* The context that the content is intended to support fhir:Composition.author [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 1..* Who and/or what authored the composition fhir:Composition.name [ string ]; # 0..1 Name for this Composition (computer friendly) fhir:Composition.title [ string ]; # 1..1 Human Readable name/title fhir:Composition.note [ Annotation ], ... ; # 0..* For any additional notes fhir:Composition.attester [ # 0..* Attests to accuracy of composition fhir:Composition.attester.mode [ CodeableConcept ]; # 1..1 personal | professional | legal | official fhir:Composition.attester.time [ dateTime ]; # 0..1 When the composition was attested fhir:Composition.attester.party [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who attested the composition ], ...; fhir:Composition.custodian [ Reference(Organization) ]; # 0..1 Organization which maintains the composition fhir:Composition.relatesTo [ RelatedArtifact ], ... ; # 0..* Relationships to other compositions/documents fhir:Composition.event [ # 0..* The clinical service(s) being documented fhir:Composition.event.code [ CodeableConcept ], ... ; # 0..* Code(s) that apply to the event being documented fhir:Composition.event.period [ Period ]; # 0..1 The period covered by the documentation fhir:Composition.event.detail [ Reference(Any) ], ... ; # 0..* The event(s) being documented ], ...; fhir:Composition.section [ # 0..* Composition is broken into sections fhir:Composition.section.title [ string ]; # 0..1 Label for section (e.g. for ToC) fhir:Composition.section.code [ CodeableConcept ]; # 0..1 Classification of section (recommended) fhir:Composition.section.author [ Reference(Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 0..* Who and/or what authored the section fhir:Composition.section.focus [ Reference(Any) ]; # 0..1 Who/what the section is about, when it is not about the subject of composition fhir:Composition.section.text [ Narrative ]; # 0..1 I Text summary of the section, for human interpretation fhir:Composition.section.mode [ code ]; # 0..1 working | snapshot | changes fhir:Composition.section.orderedBy [ CodeableConcept ]; # 0..1 Order of section entries fhir:Composition.section.entry [ Reference(Any) ], ... ; # 0..* I A reference to data that supports this section fhir:Composition.section.emptyReason [ CodeableConcept ]; # 0..1 I Why the section is empty fhir:Composition.section.section [ See Composition.section ], ... ; # 0..* I Nested Section ], ...; ]
Changes since Release 4
Composition | |
Composition.url |
|
Composition.identifier |
|
Composition.version |
|
Composition.subject |
|
Composition.useContext |
|
Composition.name |
|
Composition.note |
|
Composition.attester.mode |
|
Composition.relatesTo |
|
Composition.confidentiality |
|
Composition.relatesTo.code |
|
Composition.relatesTo.target[x] |
|
See the Full Difference for further information
This analysis is available as XML or JSON.
See R3 <--> R4 Conversion Maps (status = 1 test that all execute ok. All tests pass round-trip testing and all r3 resources are valid.)
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis
Path | Definition | Type | Reference |
---|---|---|---|
Composition.status | The workflow/clinical status of the composition. | Required | CompositionStatus |
Composition.type | FHIR Document Codes - all LOINC codes where scale type = 'DOC'. | Preferred | FHIRDocumentTypeCodes |
Composition.category | This is the code specifying the high-level kind of document (e.g. Prescription, Discharge Summary, Report, etc.). Made up of a set of non-healthcare specific codes and all LOINC codes where scale type = 'DOC'. | Example | ReferencedItemCategoryValueSet |
Composition.attester.mode | The way in which a person authenticated a composition. | Preferred | CompositionAttestationMode |
Composition.event.code | A code specifying the particular kind of Act that the Act-instance represents within its class. Constraints: The kind of Act (e.g. physical examination, serum potassium, inpatient encounter, charge financial transaction, etc.) is specified with a code from one of several, typically external, coding systems. The coding system will depend on the class of Act, such as LOINC for observations, etc. Conceptually, the Act.code must be a specialization of the Act.classCode. This is why the structure of ActClass domain should be reflected in the superstructure of the ActCode domain and then individual codes or externally referenced vocabularies subordinated under these domains that reflect the ActClass structure. Act.classCode and Act.code are not modifiers of each other but the Act.code concept should really imply the Act.classCode concept. For a negative example, it is not appropriate to use an Act.code "potassium" together with and Act.classCode for "laboratory observation" to somehow mean "potassium laboratory observation" and then use the same Act.code for "potassium" together with Act.classCode for "medication" to mean "substitution of potassium". This mutually modifying use of Act.code and Act.classCode is not permitted. | Example | ActCode |
Composition.section.code | Document section codes (LOINC codes used in CCDA sections). | Example | DocumentSectionCodes |
Composition.section.mode | The processing mode that applies to this list. | Required | ListMode |
Composition.section.orderedBy | Base values for the order of the items in a list resource. | Preferred | ListOrderCodes |
Composition.section.emptyReason | General reasons for a list to be empty. Reasons are either related to a summary list (i.e. problem or medication list) or to a workflow related list (i.e. consultation list). | Preferred | ListEmptyReasons |
UniqueKey | Level | Location | Description | Expression |
cmp-1 | Rule | 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 | Rule | Composition.section | A section can only have an emptyReason if it is empty | emptyReason.empty() or entry.empty() |
Composition.section.text
) and no entries (Composition.section.entry
)Typically, a composition is made about the subject - e.g. a patient, or group of patients, location, or device - and the distinction between the subject and the composition describes the subject. Some kinds of documents contain data about other parties or entities that are relevant to the subject of the document. Some examples:
In all these cases, the subject of the document is a single patient, but some of the details are actually
related to other persons or entities. When this happens, these other entities are detailed in the Composition.section.focus
element.
In the absence of a focus
, it is assumed that the subject
of the composition is the focus.
If a focus
is specified, then the resources referred to from the section SHALL
either:
subject
(however named e.g. patient
) or focus
element (if present) is the focus indicatedsubject
element
A few compositions genuinely cover multiple subjects - different sections are about different subjects. In such
case, Composition.subject
is omitted, and the extension section-subject
is used on each section to indicate the subject.
Note to Implementers: Feedback is welcome on two issues related to Composition:
- For many compositions, the title is the same as the text or a display name of Composition.type (e.g., a "consultation" or "progress note"). Note that CDA does not make title mandatory, but there are no known cases where it is useful for title to be omitted, so it is mandatory here during the trial use period.
- A client can ask a server to generate a fully bundled document from a Composition resource using the $snapshot operation. This operation definition does not resolve the question how document signatures are created. This is an open issue during the period of trial use, and feedback is requested regarding this question.
Feedback here .
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 | Expression | In Common |
attester | reference | Who attested the composition | Composition.attester.party (Practitioner, Organization, Patient, PractitionerRole, RelatedPerson) | |
author | reference | Who and/or what authored the composition | Composition.author (Practitioner, Organization, Device, Patient, PractitionerRole, RelatedPerson) | |
category | token | Categorization of Composition | Composition.category | |
context | token | Code(s) that apply to the event being documented | Composition.event.code | |
date N | date | Composition editing time | Composition.date | |
encounter | reference | Context of the Composition | Composition.encounter (Encounter) | |
entry | reference | A reference to data that supports this section | Composition.section.entry (Any) | |
identifier | token | Version-independent identifier for the Composition | Composition.identifier | |
patient | reference | Who and/or what the composition is about | Composition.subject.where(resolve() is Patient) (Patient) | |
period | date | The period covered by the documentation | Composition.event.period | |
related | reference | Target of the relationship | Composition.relatesTo.resourceReference (Any) | |
section | token | Classification of section (recommended) | Composition.section.code | |
section-code-text | composite | Search on the section narrative of the resource | On Composition.section: section: section.code section-text: section.text | |
section-text | special | Search on the section narrative of the resource | Composition.section.text | Composition.section.section.text | |
status N | token | preliminary | final | amended | entered-in-error | Composition.status | |
subject | reference | Who and/or what the composition is about | Composition.subject (Any) | |
title N | string | Human Readable name/title | Composition.title | |
type | token | Kind of composition (LOINC if possible) | Composition.type | |
url N | uri | The uri that identifies the activity definition | Composition.url | |
version N | token | The business version of the activity definition | Composition.version |