xCaliber healthCare Data Mesh

Composition

Overview

The Composition API provides healthcare developers with a standardized interface to efficiently create, manage, and retrieve structured clinical documents, enhancing the documentation and communication of patient information within healthcare workflows. By integrating this API, developers can streamline the generation of comprehensive clinical records, ensuring accurate documentation, improved information sharing, and enhanced collaboration among healthcare professionals for better patient care.

Use Cases

  • Clinical Notes - Assemble patient encounter notes from sections like HPI, vitals, impressions etc.
  • Referrals - Bundle referral request content like provider notes, lab reports and images.
  • Health Timelines - Construct longitudinal patient health records from time-based content.
  • Care Plans - Aggregate care plan goals, activities and other artifacts in one record.
  • Patient Reports - Generate integrated lab results, medical summaries for patient reporting.
  • Billing Support - Compile supporting clinical content needed for claim attachments.
  • Quality Reporting - Produce content bundles required for regulatory quality measure reporting.
  • Research Data - De-identify and export packaged composition data for research.
  • Compliance Archiving - Manage immutable record compositions in clinical data repositories.
  • Health Information Exchange - Package and port data into interchange formats like CCDA.

EHR Data Model

EHRSupported?Mapped Source Object
AthenaN/A
ElationLab Order Compendium, Document Tag
EpicN/A

Object Definition

{
  "resourceType": "Composition",
  "id": "example",
  "text": {
    "status": "generated",
    "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n\t\t\t<p>Consultation note for Henry Levin the 7th</p>\n\t\t\t<p>Managed by Good Health Clinic</p>\n\t\t</div>"
  },
  "identifier": {
    "system": "http://healthintersections.com.au/test",
    "value": "1"
  },
  "status": "final",
  "type": {
    "coding": [
      {
        "system": "http://loinc.org",
        "code": "11488-4",
        "display": "Consult note"
      }
    ]
  },
  "category": [
    {
      "coding": [
        {
          "system": "http://loinc.org",
          "code": "LP173421-1",
          "display": "Report"
        }
      ]
    }
  ],
  "subject": {
    "reference": "Patient/xcda",
    "display": "Henry Levin the 7th"
  },
  "encounter": {
    "reference": "Encounter/xcda"
  },
  "date": "2012-01-04T09:10:14Z",
  "author": [
    {
      "reference": "Practitioner/xcda-author",
      "display": "Harold Hippocrates, MD"
    }
  ],
  "title": "Consultation Note",
  "confidentiality": "N",
  "attester": [
    {
      "mode": "legal",
      "time": "2012-01-04T09:10:14Z",
      "party": {
        "reference": "Practitioner/xcda-author",
        "display": "Harold Hippocrates, MD"
      }
    }
  ],
  "custodian": {
    "reference": "Organization/2.16.840.1.113883.19.5",
    "display": "Good Health Clinic"
  },
  "relatesTo": [
    {
      "code": "replaces",
      "targetReference": {
        "reference": "Composition/old-example"
      }
    },
    {
      "code": "appends",
      "targetIdentifier": {
        "system": "http://example.org/fhir/NamingSystem/document-ids",
        "value": "ABC123"
      }
    }
  ],
  "event": [
    {
      "code": [
        {
          "coding": [
            {
              "system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
              "code": "HEALTHREC",
              "display": "health record"
            }
          ]
        }
      ],
      "period": {
        "start": "2010-07-18",
        "end": "2012-11-12"
      },
      "detail": [
        {
          "reference": "Observation/example"
        }
      ]
    }
  ],
  "section": [
    {
      "title": "History of present illness",
      "code": {
        "coding": [
          {
            "system": "http://loinc.org",
            "code": "11348-0",
            "display": "History of past illness Narrative"
          }
        ]
      },
      "text": {
        "status": "generated",
        "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n\t\t\t\t<table>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<b>Code</b>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<b>Date</b>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<b>Type</b>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<b>BodySite</b>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<b>Severity</b>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>Stroke</td>\n\t\t\t\t\t\t<td>2010-07-18</td>\n\t\t\t\t\t\t<td>Diagnosis</td>\n\t\t\t\t\t\t<td/>\n\t\t\t\t\t\t<td/>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>Burnt Ear</td>\n\t\t\t\t\t\t<td>2012-05-24</td>\n\t\t\t\t\t\t<td>Diagnosis</td>\n\t\t\t\t\t\t<td>Left Ear</td>\n\t\t\t\t\t\t<td/>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td>Asthma</td>\n\t\t\t\t\t\t<td>2012-11-12</td>\n\t\t\t\t\t\t<td>Finding</td>\n\t\t\t\t\t\t<td/>\n\t\t\t\t\t\t<td>Mild</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\t\t\t</div>"
      },
      "mode": "snapshot",
      "orderedBy": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/list-order",
            "code": "event-date",
            "display": "Sorted by Event Date"
          }
        ]
      },
      "entry": [
        {
          "reference": "Condition/stroke"
        },
        {
          "reference": "Condition/example"
        },
        {
          "reference": "Condition/example2"
        }
      ]
    },
    {
      "title": "History of family member diseases",
      "code": {
        "coding": [
          {
            "system": "http://loinc.org",
            "code": "10157-6",
            "display": "History of family member diseases Narrative"
          }
        ]
      },
      "text": {
        "status": "generated",
        "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n\t\t\t\t<p>History of family member diseases - not available</p>\n\t\t\t</div>"
      },
      "mode": "snapshot",
      "emptyReason": {
        "coding": [
          {
            "system": "http://terminology.hl7.org/CodeSystem/list-empty-reason",
            "code": "withheld",
            "display": "Information Withheld"
          }
        ]
      }
    }
  ],
  "meta": {
    "tag": [
      {
        "system": "http://terminology.hl7.org/CodeSystem/v3-ActReason",
        "code": "HTEST",
        "display": "test health data"
      }
    ]
  }
}

Data Fields

Data FieldTypeDescription
resourceTypeCompositionThis is a Composition resource
ididThe logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
metaMetaThe metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
implicitRulesuriA reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
languagecodeThe base language in which the resource is written.
textNarrativeA human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
containedBackboneElementThese resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
extensionExtensionMay be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
identifierIdentifierA version-independent identifier for the Composition. This identifier stays constant as the composition is changed over time.
statuscodeThe workflow/clinical status of this composition. The status is a marker for the clinical standing of the document.
typeCodeableConceptSpecifies the particular kind of composition (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the composition.
categoryCodeableConceptA categorization for the type of the composition - helps for indexing and searching. This may be implied by or derived from the code specified in the Composition Type.
subjectReferenceWho or what the composition is about. The composition can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of livestock, or a set of patients that share a common exposure).
encounterReferenceDescribes the clinical encounter or type of care this documentation is associated with.
datedateTimeThe composition editing time, when the composition was last logically changed by the author.
authorReferenceIdentifies who is responsible for the information in the composition, not necessarily who typed it in.
titlestringOfficial human-readable label for the composition.
confidentialitycodeThe code specifying the level of confidentiality of the Composition.
attesterBackboneElementA participant who has attested to the accuracy of the composition/document.
attester.idstringUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
attester.extensionExtensionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
attester.modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
attester.modecodeThe type of attestation the authenticator offers.
attester.timedateTimeWhen the composition was attested by the party.
attester.partyReferenceWho attested the composition in the specified way.
custodianReferenceIdentifies the organization or group who is responsible for ongoing maintenance of and access to the composition/document information.
relatesToBackboneElementRelationships that this composition has with other compositions or documents that already exist.
relatesTo.idstringUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
relatesTo.extensionExtensionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
relatesTo.modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
relatesTo.codecodeThe type of relationship that this composition has with anther composition or document.
relatesTo.targetIdentifierIdentifierThe target composition/document of this relationship.
relatesTo.targetReferenceReferenceThe target composition/document of this relationship.
eventBackboneElementThe clinical service, such as a colonoscopy or an appendectomy, being documented.
event.idstringUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
event.extensionExtensionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
event.modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
event.codeCodeableConceptThis list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the typeCode, such as a "History and Physical Report" in which the procedure being documented is necessarily a "History and Physical" act.
event.periodPeriodThe period of time covered by the documentation. There is no assertion that the documentation is a complete representation for this period, only that it documents events during this time.
event.detailReferenceThe description and/or reference of the event(s) being documented. For example, this could be used to document such a colonoscopy or an appendectomy.
sectionBackboneElementThe root of the sections that make up the composition.
section.idstringUnique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
section.extensionExtensionMay be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
section.modifierExtensionExtensionMay be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
section.titlestringThe label for this particular section. This will be part of the rendered content for the document, and is often used to build a table of contents.
section.codeCodeableConceptA code identifying the kind of content contained within the section. This must be consistent with the section title.
section.authorReferenceIdentifies who is responsible for the information in this section, not necessarily who typed it in.
section.focusReferenceThe actual focus of the section when it is not the subject of the composition, but instead represents something or someone associated with the subject such as (for a patient subject) a spouse, parent, fetus, or donor. If not focus is specified, the focus is assumed to be focus of the parent section, or, for a section in the Composition itself, the subject of the composition. Sections with a focus SHALL only include resources where the logical subject (patient, subject, focus, etc.) matches the section focus, or the resources have no logical subject (few resources).
section.textNarrativeA human-readable narrative that contains the attested content of the section, used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative.
section.modecodeHow the entry list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.
section.orderedByCodeableConceptSpecifies the order applied to the items in the section entries.
section.entryReferenceA reference to the actual resource from which the narrative in the section is derived.
section.emptyReasonCodeableConceptIf the section is empty, why the list is empty. An empty section typically has some text explaining the empty reason.

Extensions

NameURL

Operations & APIs

Composition-GET

Composition-POST

Composition ID-GET

Composition ID-PUT

Composition ID-DELETE