FHIR Clinical Documents
1.0.0 - STU 1 International flag

This page is part of the FHIR Clinical Documents (v1.0.0: STU1) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

Resource Profile: FHIR Clinical Document Composition Profile

Official URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/clinical-document-composition Version: 1.0.0
Standards status: Trial-use Maturity Level: 2 Computable Name: ClinicalDocumentComposition

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

Starting point for a specification for a composition of a FHIR Clinical Document.

Introduction

A FHIR Clinical Document is a FHIR bundle of type=document where the first entry is a composition conforming to this profile.

As noted in the introduction section on human readability:

To ensure the unambiguous communication of a clinical document's attested narrative, this IG requires that:

  1. There must be a deterministic method by which a recipient of an arbitrary FHIR Clinical Document can display the narrative content of the note on a standard Web browser.
  2. Human readability shall not require a sender to transmit a special style sheet along with a FHIR Clinical Document. It must be possible to render all FHIR Clinical Documents with a single style sheet and general-market display tools.
  3. Human readability applies to the authenticated content. There may be additional information conveyed in the document that is there primarily for machine processing that is not authenticated and need not be rendered.
  • The FHIR Clinical Document creator
    • SHALL place attested narrative into Composition.section.text.
    • SHOULD NOT redundantly place attested narrative in both Composition.text and Composition.section.text.
    • MAY include narrative that is not derived from any structured data.
    • SHOULD include document metadata (e.g. patient) in Composition.text.
    • MAY include a list of document sections in Composition.text
  • The FHIR Clinical Document recipient
    • SHALL include, at a minimum, Composition.title, Composition.section.title and Composition.section.text in any rendition of the document.
    • MAY include Composition.text in a rendition of the document.
    • MAY render additional document information (such as patient name and date of birth) derived from structured Composition fields.

Guidance on Composition Elements

  • Composition.category: Document creators SHALL include a category value of 'clinical-note'. This serves to differentiate a FHIR Clinical Document from an arbitrary FHIR Document.
  • Composition.custodian: A basic tenet of a clinical document is stewardship, where, by definition, a clinical document is maintained by an organization entrusted with its care. Stewardship is reflected by Composition.custodian. While FHIR R4 restricts a custodian to be an Organization, FHIR R6 will expand on this to accommodate patient authored notes. In anticipation, this IG sets the cardinality of Composition.custodian to 0..1, but stipulates that the custodian SHOULD be populated where it is a known organization.

Guidance on Composition Extensions

  • Overall approach to extensions: Non-experimental extensions in this IG will be proposed as new FHIR R6 Composition elements.
  • participant: The participant extensions (data-enterer, informant, information-recipient, participant) derive from the HL7 Clinical Document Architecture standard. Several CDA participant types (e.g. author, custodian) already exist as Composition elements, whereas those not present on the base Composition resource have been added here as extensions (and will be proposed as new elements on the Composition R6 resource). Composition participants reflect activity at the document level (e.g. related to the act of documenting), and are not inherited by referenced resources such as Observations. FHIR Clinical Document creators SHALL NOT use the generic extension:participant where a more specific participant (such as 'informant') exists.
  • event-basedOn: This extension can reference a ServiceRequest that represents those orders that are satisfied by this document (as opposed to new orders generated during the documented encounter).
  • R5-Composition-status (modifier extension): This extension is a backport of the R5 Composition.status to allow for additional status codes. Be cautious when using with the R4 Composition.status, which is required. The values could unintentionally cause confusion if they contradict each-other. The value sets do overlap, as well. The intent is to preadopt values found in R5 for status. In R6, we anticipate that the FHIR Clinical Document Composition Profile will only have one status field.
  • Change made: Change Made provides an annotation of a change that has been made to the Composition or Composition section. The extension is experimental and may overlap with other extensions, such as use of note in R6. The extension contains two parts: change - the description of the change, version-changed - the FHIR Clinical Document version that was changed.

    Calculating a differential between versions is suggested for safely finding all changes as there is no guarantee that the Change made extensions contain all changes between versions.

  • textLink: The textLink extension is used to reference from Composition narrative (i.e. Composition.text, Composition.section.text) to a corresponding resource or sub-resource within the FHIR Clinical Document bundle. Implementations may use this link information when rendering or for other use cases that require an explicit association between text and corresponding structured content. (NOTE: The direction of the relationship, from narrative to structured entries, reverses the direction used in CDA, where an originalText/reference within an entry points to an ID within the narrative).

    The final specification of textLink is pending at the time of FHIR Clinical Documents IG publication. Implementations can proactively adhere to the resolution of Jira ticket FHIR-43316, which will be formally incorporated into the next version of this IG.

Guidance on Composition Flags

  • Meaning of MustSupport: The MustSupport flag as used on this Composition profile SHALL be interpreted to mean that conformant recipients SHALL consider the value of this element when processing the resource as specified by the IG. Recipients are not obligated to parse and store the exact value received.

Usages:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition C 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Constraints: clindoc-limit-participantType
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language S 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text S 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
.... extension:R5-Composition-version S 0..1 string Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.version
.... extension:data-enterer S 0..1 (Complex) A Data Enterer represents the person who transferred the content, written or dictated, into the clinical document. To clarify, an author provides the content, subject to their own interpretation; a dataEnterer adds an author's information to the electronic system.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/data-enterer-extension
.... extension:informant S 0..* (Complex) An Informant is an information source for any content within the clinical document. This informant is constrained for use when the source of information is an assigned health care provider for the patient.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/informant-extension
.... extension:information-recipient S 0..* (Complex) An Information Recipient is the intended recipient of the information at the time the document was created.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/information-recipient-extension
.... extension:participant S 0..* (Complex) A Participant that is not a data-enter, information-recipient nor an informant
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension
.... extension:consent S 0..* Reference(Consent) consent
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/consent-extension
.... extension:basedOn S 0..* Reference(Resource) The clinical action, such as a plan, proposal or order that is fulfilled by or precipitated this FHIR Clinical Document, such as a radiologists report of an x-ray.
URL: http://hl7.org/fhir/StructureDefinition/event-basedOn
.... extension:change-made S 0..1 (Complex) Note of changes made, calculating changes maybe required for safety as this extension may not contain all changes. Experimental, may overlap with other elements such as FHIR R6 note.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
... Slices for modifierExtension ?! 0..* Extension Extension
Slice: Unordered, Open by value:url
.... modifierExtension:R5-Composition-status ?!S 0..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference(), SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta This allows for additional status values found in R5. However, exercise caution as the R4 Composition.status is required.
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.status
... identifier SΣ 0..1 Identifier Version-independent identifier for the Composition
... status ?!Σ 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
... type SΣ 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... Slices for category SΣ 1..* CodeableConcept Categorization of Composition
Slice: Unordered, Open by value:text
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
.... category:clinicalnotecategory SΣ 1..1 CodeableConcept Category for Clinical Note
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 107903-7
...... display 1..1 string Representation defined by the system
Fixed Value: Clinical note
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(Patient | Group) Who and/or what the composition is about
... date SΣ 1..1 dateTime Composition editing time
... author SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | Organization) Who and/or what authored the composition
... title SΣ 1..1 string Human Readable name/title
... Slices for attester S 0..* BackboneElement Attests to accuracy of composition
Slice: Unordered, Open by value:mode
.... attester:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode S 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
..... time S 0..1 dateTime When the composition was attested
..... party S 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:legal_attester S 0..1 BackboneElement aka legal authenticator
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: legal
.... attester:professional_attester S 0..* BackboneElement aka authenticator
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: professional
... custodian SΣ 0..1 Reference(Organization) Organization which maintains the composition
... Slices for relatesTo S 0..* BackboneElement Relationships to other compositions/documents
Slice: Unordered, Open by value:code, type:target
.... relatesTo:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
..... Slices for target[x] 1..1 Target of the relationship
Slice: Unordered, Open by type:$this
...... targetIdentifier Identifier
...... targetReference Reference(Composition)
...... target[x]:targetIdentifier 0..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being appended, or to some other identifier of a non FHIR document
.... relatesTo:replaced_document S 0..* BackboneElement The document(s) being superceded
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: replaces
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being replaced, or to some other identifier of a non FHIR document
....... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... system Σ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
....... value Σ 1..1 string The value that is unique
Example General: 123456
.... relatesTo:appended_document S 0..* BackboneElement The document(s) being appended too
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: appends
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Target of the relationship
....... use ?!Σ 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
... section SC 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:change-made S 0..1 (Complex) Change Made
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... title S 1..1 string Label for section (e.g. for ToC)
.... code S 0..1 CodeableConcept Classification of section (recommended)
Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
.... text SC 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Composition.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|4.0.1
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.categoryexampleDocumentClassValueSet
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.category:clinicalnotecategoryexamplePattern Value: LOINC Code 107903-7("Clinical note")
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.attester.moderequiredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:legal_attester.moderequiredPattern Value: legal
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:professional_attester.moderequiredPattern Value: professional
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.relatesTo.coderequiredDocumentRelationshipType
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.coderequiredPattern Value: replaces
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.coderequiredPattern Value: appends
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.section.codeexampleDocumentSectionCodes
http://hl7.org/fhir/ValueSet/doc-section-codes
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
clindoc-limit-participantTypeerrorCompositionThe R4 FHIR Clinical Document Composition Profile contains specific extensions for data entry person, informant, information recipient, primary information recipient and tracker. So, they are not allowed in the participant extension in the R4 profile. In R6, the intention is to have dedicated-named slices of a backbone element.
: extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='ENT').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='INF').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='IRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='TRC').not()
cmp-1errorComposition.sectionA section must contain at least one of text, entries, or sub-sections
: text.exists() or entry.exists() or section.exists()
cmp-2errorComposition.sectionA section can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
dom-2errorCompositionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCompositionIf 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 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(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorCompositionIf 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-5errorCompositionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCompositionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Composition

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition C 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Constraints: clindoc-limit-participantType
... language S 0..1 code Language of the resource content
... text S 0..1 Narrative Text summary of the resource, for human interpretation
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:R5-Composition-version S 0..1 string Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.version
.... extension:data-enterer S 0..1 (Complex) A Data Enterer represents the person who transferred the content, written or dictated, into the clinical document. To clarify, an author provides the content, subject to their own interpretation; a dataEnterer adds an author's information to the electronic system.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/data-enterer-extension
.... extension:informant S 0..* (Complex) An Informant is an information source for any content within the clinical document. This informant is constrained for use when the source of information is an assigned health care provider for the patient.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/informant-extension
.... extension:information-recipient S 0..* (Complex) An Information Recipient is the intended recipient of the information at the time the document was created.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/information-recipient-extension
.... extension:participant S 0..* (Complex) A Participant that is not a data-enter, information-recipient nor an informant
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension
.... extension:consent S 0..* Reference(Consent) consent
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/consent-extension
.... extension:basedOn S 0..* Reference(Resource) The clinical action, such as a plan, proposal or order that is fulfilled by or precipitated this FHIR Clinical Document, such as a radiologists report of an x-ray.
URL: http://hl7.org/fhir/StructureDefinition/event-basedOn
.... extension:change-made S 0..1 (Complex) Note of changes made, calculating changes maybe required for safety as this extension may not contain all changes. Experimental, may overlap with other elements such as FHIR R6 note.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... modifierExtension:R5-Composition-status S 0..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference(), SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta This allows for additional status values found in R5. However, exercise caution as the R4 Composition.status is required.
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.status
... identifier S 0..1 Identifier Version-independent identifier for the Composition
... type S 1..1 CodeableConcept Kind of composition (LOINC if possible)
... Slices for category S 1..* CodeableConcept Categorization of Composition
Slice: Unordered, Open by value:text
.... category:clinicalnotecategory S 1..1 CodeableConcept Category for Clinical Note
Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 107903-7
...... display 1..1 string Representation defined by the system
Fixed Value: Clinical note
... subject S 1..1 Reference(Patient | Group) Who and/or what the composition is about
... date S 1..1 dateTime Composition editing time
... author S 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | Organization) Who and/or what authored the composition
... title S 1..1 string Human Readable name/title
... Slices for attester S 0..* BackboneElement Attests to accuracy of composition
Slice: Unordered, Open by value:mode
.... attester:All Slices Content/Rules for all slices
..... mode S 1..1 code personal | professional | legal | official
..... time S 0..1 dateTime When the composition was attested
..... party S 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:legal_attester S 0..1 BackboneElement aka legal authenticator
..... mode 1..1 code personal | professional | legal | official
Required Pattern: legal
.... attester:professional_attester S 0..* BackboneElement aka authenticator
..... mode 1..1 code personal | professional | legal | official
Required Pattern: professional
... custodian S 0..1 Reference(Organization) Organization which maintains the composition
... Slices for relatesTo S 0..* BackboneElement Relationships to other compositions/documents
Slice: Unordered, Open by value:code, type:target
.... relatesTo:All Slices Content/Rules for all slices
..... Slices for target[x] 1..1 Identifier, Reference(Composition) Target of the relationship
Slice: Unordered, Open by type:$this
...... target[x]:targetIdentifier 0..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being appended, or to some other identifier of a non FHIR document
.... relatesTo:replaced_document S 0..* BackboneElement The document(s) being superceded
..... code 1..1 code replaces | transforms | signs | appends
Required Pattern: replaces
..... target[x] 1..1 Identifier Target of the relationship
..... Slices for target[x] Content/Rules for all slices
...... target[x]:targetIdentifier 1..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being replaced, or to some other identifier of a non FHIR document
....... system 1..1 uri The namespace for the identifier value
....... value 1..1 string The value that is unique
.... relatesTo:appended_document S 0..* BackboneElement The document(s) being appended too
..... code 1..1 code replaces | transforms | signs | appends
Required Pattern: appends
..... target[x] 1..1 Identifier Target of the relationship
..... Slices for target[x] Content/Rules for all slices
...... target[x]:targetIdentifier 1..1 Identifier Target of the relationship
....... use 1..1 code usual | official | temp | secondary | old (If known)
... section S 1..* BackboneElement Composition is broken into sections
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:change-made S 0..1 (Complex) Change Made
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... title S 1..1 string Label for section (e.g. for ToC)
.... code S 0..1 CodeableConcept Classification of section (recommended)
.... text S 0..1 Narrative Text summary of the section, for human interpretation

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
clindoc-limit-participantTypeerrorCompositionThe R4 FHIR Clinical Document Composition Profile contains specific extensions for data entry person, informant, information recipient, primary information recipient and tracker. So, they are not allowed in the participant extension in the R4 profile. In R6, the intention is to have dedicated-named slices of a backbone element.
: extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='ENT').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='INF').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='IRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='TRC').not()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition C 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Constraints: clindoc-limit-participantType
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text S 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
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:R5-Composition-version S 0..1 string Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.version
.... extension:data-enterer S 0..1 (Complex) A Data Enterer represents the person who transferred the content, written or dictated, into the clinical document. To clarify, an author provides the content, subject to their own interpretation; a dataEnterer adds an author's information to the electronic system.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/data-enterer-extension
.... extension:informant S 0..* (Complex) An Informant is an information source for any content within the clinical document. This informant is constrained for use when the source of information is an assigned health care provider for the patient.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/informant-extension
.... extension:information-recipient S 0..* (Complex) An Information Recipient is the intended recipient of the information at the time the document was created.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/information-recipient-extension
.... extension:participant S 0..* (Complex) A Participant that is not a data-enter, information-recipient nor an informant
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension
.... extension:consent S 0..* Reference(Consent) consent
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/consent-extension
.... extension:basedOn S 0..* Reference(Resource) The clinical action, such as a plan, proposal or order that is fulfilled by or precipitated this FHIR Clinical Document, such as a radiologists report of an x-ray.
URL: http://hl7.org/fhir/StructureDefinition/event-basedOn
.... extension:change-made S 0..1 (Complex) Note of changes made, calculating changes maybe required for safety as this extension may not contain all changes. Experimental, may overlap with other elements such as FHIR R6 note.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
... Slices for modifierExtension ?! 0..* Extension Extension
Slice: Unordered, Open by value:url
.... modifierExtension:R5-Composition-status ?!S 0..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference(), SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta This allows for additional status values found in R5. However, exercise caution as the R4 Composition.status is required.
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.status
... identifier SΣ 0..1 Identifier Version-independent identifier for the Composition
... status ?!Σ 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
... type SΣ 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... Slices for category SΣ 1..* CodeableConcept Categorization of Composition
Slice: Unordered, Open by value:text
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
.... category:clinicalnotecategory SΣ 1..1 CodeableConcept Category for Clinical Note
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 107903-7
...... display 1..1 string Representation defined by the system
Fixed Value: Clinical note
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(Patient | Group) Who and/or what the composition is about
... encounter Σ 0..1 Reference(Encounter) Context of the Composition
... date SΣ 1..1 dateTime Composition editing time
... author SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | Organization) Who and/or what authored the composition
... title SΣ 1..1 string Human Readable name/title
... confidentiality Σ 0..1 code As defined by affinity domain
Binding: v3.ConfidentialityClassification (2014-03-26) (required): Codes specifying the level of confidentiality of the composition.
... Slices for attester S 0..* BackboneElement Attests to accuracy of composition
Slice: Unordered, Open by value:mode
.... attester:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode S 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
..... time S 0..1 dateTime When the composition was attested
..... party S 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:legal_attester S 0..1 BackboneElement aka legal authenticator
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: legal
..... time 0..1 dateTime When the composition was attested
..... party 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:professional_attester S 0..* BackboneElement aka authenticator
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: professional
..... time 0..1 dateTime When the composition was attested
..... party 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
... custodian SΣ 0..1 Reference(Organization) Organization which maintains the composition
... Slices for relatesTo S 0..* BackboneElement Relationships to other compositions/documents
Slice: Unordered, Open by value:code, type:target
.... relatesTo:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
..... Slices for target[x] 1..1 Target of the relationship
Slice: Unordered, Open by type:$this
...... targetIdentifier Identifier
...... targetReference Reference(Composition)
...... target[x]:targetIdentifier 0..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being appended, or to some other identifier of a non FHIR document
.... relatesTo:replaced_document S 0..* BackboneElement The document(s) being superceded
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: replaces
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being replaced, or to some other identifier of a non FHIR document
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
....... system Σ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
....... value Σ 1..1 string The value that is unique
Example General: 123456
....... period Σ 0..1 Period Time period when id is/was valid for use
....... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
.... relatesTo:appended_document S 0..* BackboneElement The document(s) being appended too
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: appends
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Target of the relationship
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... use ?!Σ 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
....... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
....... value Σ 0..1 string The value that is unique
Example General: 123456
....... period Σ 0..1 Period Time period when id is/was valid for use
....... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... event Σ 0..* BackboneElement The clinical service(s) being documented
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 0..* 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.
.... period Σ 0..1 Period The period covered by the documentation
.... detail Σ 0..* Reference(Resource) The event(s) being documented
... section SC 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:change-made S 0..1 (Complex) Change Made
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... title S 1..1 string Label for section (e.g. for ToC)
.... code S 0..1 CodeableConcept Classification of section (recommended)
Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
.... author 0..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
.... focus 0..1 Reference(Resource) Who/what the section is about, when it is not about the subject of composition
.... text SC 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
.... mode 0..1 code working | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this section.
.... orderedBy 0..1 CodeableConcept Order of section entries
Binding: ListOrderCodes (preferred): What order applies to the items in the entry.
.... entry C 0..* Reference(Resource) A reference to data that supports this section
.... emptyReason C 0..1 CodeableConcept Why the section is empty
Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.
.... section C 0..* See section (Composition) Nested Section

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Composition.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|4.0.1
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.categoryexampleDocumentClassValueSet
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.category:clinicalnotecategoryexamplePattern Value: LOINC Code 107903-7("Clinical note")
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.confidentialityrequiredv3.ConfidentialityClassification
http://terminology.hl7.org/ValueSet/v3-ConfidentialityClassification|2014-03-26
From the FHIR Standard
Composition.attester.moderequiredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:legal_attester.moderequiredPattern Value: legal
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:professional_attester.moderequiredPattern Value: professional
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.relatesTo.coderequiredDocumentRelationshipType
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.coderequiredPattern Value: replaces
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.target[x]:targetIdentifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Composition.relatesTo:appended_document.coderequiredPattern Value: appends
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.target[x]:targetIdentifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Composition.event.codeexampleActCode
http://terminology.hl7.org/ValueSet/v3-ActCode
Composition.section.codeexampleDocumentSectionCodes
http://hl7.org/fhir/ValueSet/doc-section-codes
From the FHIR Standard
Composition.section.moderequiredListMode
http://hl7.org/fhir/ValueSet/list-mode|4.0.1
From the FHIR Standard
Composition.section.orderedBypreferredListOrderCodes
http://hl7.org/fhir/ValueSet/list-order
From the FHIR Standard
Composition.section.emptyReasonpreferredListEmptyReasons
http://hl7.org/fhir/ValueSet/list-empty-reason
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
clindoc-limit-participantTypeerrorCompositionThe R4 FHIR Clinical Document Composition Profile contains specific extensions for data entry person, informant, information recipient, primary information recipient and tracker. So, they are not allowed in the participant extension in the R4 profile. In R6, the intention is to have dedicated-named slices of a backbone element.
: extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='ENT').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='INF').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='IRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='TRC').not()
cmp-1errorComposition.sectionA section must contain at least one of text, entries, or sub-sections
: text.exists() or entry.exists() or section.exists()
cmp-2errorComposition.sectionA section can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
dom-2errorCompositionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCompositionIf 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 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(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorCompositionIf 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-5errorCompositionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCompositionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust 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: Filtersdoco
.. Composition C 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Constraints: clindoc-limit-participantType
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language S 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... text S 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
.... extension:R5-Composition-version S 0..1 string Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.version
.... extension:data-enterer S 0..1 (Complex) A Data Enterer represents the person who transferred the content, written or dictated, into the clinical document. To clarify, an author provides the content, subject to their own interpretation; a dataEnterer adds an author's information to the electronic system.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/data-enterer-extension
.... extension:informant S 0..* (Complex) An Informant is an information source for any content within the clinical document. This informant is constrained for use when the source of information is an assigned health care provider for the patient.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/informant-extension
.... extension:information-recipient S 0..* (Complex) An Information Recipient is the intended recipient of the information at the time the document was created.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/information-recipient-extension
.... extension:participant S 0..* (Complex) A Participant that is not a data-enter, information-recipient nor an informant
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension
.... extension:consent S 0..* Reference(Consent) consent
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/consent-extension
.... extension:basedOn S 0..* Reference(Resource) The clinical action, such as a plan, proposal or order that is fulfilled by or precipitated this FHIR Clinical Document, such as a radiologists report of an x-ray.
URL: http://hl7.org/fhir/StructureDefinition/event-basedOn
.... extension:change-made S 0..1 (Complex) Note of changes made, calculating changes maybe required for safety as this extension may not contain all changes. Experimental, may overlap with other elements such as FHIR R6 note.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
... Slices for modifierExtension ?! 0..* Extension Extension
Slice: Unordered, Open by value:url
.... modifierExtension:R5-Composition-status ?!S 0..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference(), SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta This allows for additional status values found in R5. However, exercise caution as the R4 Composition.status is required.
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.status
... identifier SΣ 0..1 Identifier Version-independent identifier for the Composition
... status ?!Σ 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
... type SΣ 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... Slices for category SΣ 1..* CodeableConcept Categorization of Composition
Slice: Unordered, Open by value:text
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
.... category:clinicalnotecategory SΣ 1..1 CodeableConcept Category for Clinical Note
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 107903-7
...... display 1..1 string Representation defined by the system
Fixed Value: Clinical note
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(Patient | Group) Who and/or what the composition is about
... date SΣ 1..1 dateTime Composition editing time
... author SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | Organization) Who and/or what authored the composition
... title SΣ 1..1 string Human Readable name/title
... Slices for attester S 0..* BackboneElement Attests to accuracy of composition
Slice: Unordered, Open by value:mode
.... attester:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode S 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
..... time S 0..1 dateTime When the composition was attested
..... party S 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:legal_attester S 0..1 BackboneElement aka legal authenticator
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: legal
.... attester:professional_attester S 0..* BackboneElement aka authenticator
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: professional
... custodian SΣ 0..1 Reference(Organization) Organization which maintains the composition
... Slices for relatesTo S 0..* BackboneElement Relationships to other compositions/documents
Slice: Unordered, Open by value:code, type:target
.... relatesTo:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
..... Slices for target[x] 1..1 Target of the relationship
Slice: Unordered, Open by type:$this
...... targetIdentifier Identifier
...... targetReference Reference(Composition)
...... target[x]:targetIdentifier 0..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being appended, or to some other identifier of a non FHIR document
.... relatesTo:replaced_document S 0..* BackboneElement The document(s) being superceded
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: replaces
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being replaced, or to some other identifier of a non FHIR document
....... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... system Σ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
....... value Σ 1..1 string The value that is unique
Example General: 123456
.... relatesTo:appended_document S 0..* BackboneElement The document(s) being appended too
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: appends
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Target of the relationship
....... use ?!Σ 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
... section SC 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:change-made S 0..1 (Complex) Change Made
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... title S 1..1 string Label for section (e.g. for ToC)
.... code S 0..1 CodeableConcept Classification of section (recommended)
Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
.... text SC 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

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Composition.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|4.0.1
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.categoryexampleDocumentClassValueSet
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.category:clinicalnotecategoryexamplePattern Value: LOINC Code 107903-7("Clinical note")
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.attester.moderequiredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:legal_attester.moderequiredPattern Value: legal
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:professional_attester.moderequiredPattern Value: professional
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.relatesTo.coderequiredDocumentRelationshipType
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.coderequiredPattern Value: replaces
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.coderequiredPattern Value: appends
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.section.codeexampleDocumentSectionCodes
http://hl7.org/fhir/ValueSet/doc-section-codes
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
clindoc-limit-participantTypeerrorCompositionThe R4 FHIR Clinical Document Composition Profile contains specific extensions for data entry person, informant, information recipient, primary information recipient and tracker. So, they are not allowed in the participant extension in the R4 profile. In R6, the intention is to have dedicated-named slices of a backbone element.
: extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='ENT').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='INF').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='IRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='TRC').not()
cmp-1errorComposition.sectionA section must contain at least one of text, entries, or sub-sections
: text.exists() or entry.exists() or section.exists()
cmp-2errorComposition.sectionA section can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
dom-2errorCompositionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCompositionIf 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 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(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorCompositionIf 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-5errorCompositionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCompositionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from Composition

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition C 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Constraints: clindoc-limit-participantType
... language S 0..1 code Language of the resource content
... text S 0..1 Narrative Text summary of the resource, for human interpretation
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:R5-Composition-version S 0..1 string Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.version
.... extension:data-enterer S 0..1 (Complex) A Data Enterer represents the person who transferred the content, written or dictated, into the clinical document. To clarify, an author provides the content, subject to their own interpretation; a dataEnterer adds an author's information to the electronic system.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/data-enterer-extension
.... extension:informant S 0..* (Complex) An Informant is an information source for any content within the clinical document. This informant is constrained for use when the source of information is an assigned health care provider for the patient.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/informant-extension
.... extension:information-recipient S 0..* (Complex) An Information Recipient is the intended recipient of the information at the time the document was created.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/information-recipient-extension
.... extension:participant S 0..* (Complex) A Participant that is not a data-enter, information-recipient nor an informant
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension
.... extension:consent S 0..* Reference(Consent) consent
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/consent-extension
.... extension:basedOn S 0..* Reference(Resource) The clinical action, such as a plan, proposal or order that is fulfilled by or precipitated this FHIR Clinical Document, such as a radiologists report of an x-ray.
URL: http://hl7.org/fhir/StructureDefinition/event-basedOn
.... extension:change-made S 0..1 (Complex) Note of changes made, calculating changes maybe required for safety as this extension may not contain all changes. Experimental, may overlap with other elements such as FHIR R6 note.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... modifierExtension:R5-Composition-status S 0..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference(), SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta This allows for additional status values found in R5. However, exercise caution as the R4 Composition.status is required.
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.status
... identifier S 0..1 Identifier Version-independent identifier for the Composition
... type S 1..1 CodeableConcept Kind of composition (LOINC if possible)
... Slices for category S 1..* CodeableConcept Categorization of Composition
Slice: Unordered, Open by value:text
.... category:clinicalnotecategory S 1..1 CodeableConcept Category for Clinical Note
Required Pattern: At least the following
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 107903-7
...... display 1..1 string Representation defined by the system
Fixed Value: Clinical note
... subject S 1..1 Reference(Patient | Group) Who and/or what the composition is about
... date S 1..1 dateTime Composition editing time
... author S 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | Organization) Who and/or what authored the composition
... title S 1..1 string Human Readable name/title
... Slices for attester S 0..* BackboneElement Attests to accuracy of composition
Slice: Unordered, Open by value:mode
.... attester:All Slices Content/Rules for all slices
..... mode S 1..1 code personal | professional | legal | official
..... time S 0..1 dateTime When the composition was attested
..... party S 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:legal_attester S 0..1 BackboneElement aka legal authenticator
..... mode 1..1 code personal | professional | legal | official
Required Pattern: legal
.... attester:professional_attester S 0..* BackboneElement aka authenticator
..... mode 1..1 code personal | professional | legal | official
Required Pattern: professional
... custodian S 0..1 Reference(Organization) Organization which maintains the composition
... Slices for relatesTo S 0..* BackboneElement Relationships to other compositions/documents
Slice: Unordered, Open by value:code, type:target
.... relatesTo:All Slices Content/Rules for all slices
..... Slices for target[x] 1..1 Identifier, Reference(Composition) Target of the relationship
Slice: Unordered, Open by type:$this
...... target[x]:targetIdentifier 0..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being appended, or to some other identifier of a non FHIR document
.... relatesTo:replaced_document S 0..* BackboneElement The document(s) being superceded
..... code 1..1 code replaces | transforms | signs | appends
Required Pattern: replaces
..... target[x] 1..1 Identifier Target of the relationship
..... Slices for target[x] Content/Rules for all slices
...... target[x]:targetIdentifier 1..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being replaced, or to some other identifier of a non FHIR document
....... system 1..1 uri The namespace for the identifier value
....... value 1..1 string The value that is unique
.... relatesTo:appended_document S 0..* BackboneElement The document(s) being appended too
..... code 1..1 code replaces | transforms | signs | appends
Required Pattern: appends
..... target[x] 1..1 Identifier Target of the relationship
..... Slices for target[x] Content/Rules for all slices
...... target[x]:targetIdentifier 1..1 Identifier Target of the relationship
....... use 1..1 code usual | official | temp | secondary | old (If known)
... section S 1..* BackboneElement Composition is broken into sections
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:change-made S 0..1 (Complex) Change Made
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... title S 1..1 string Label for section (e.g. for ToC)
.... code S 0..1 CodeableConcept Classification of section (recommended)
.... text S 0..1 Narrative Text summary of the section, for human interpretation

doco Documentation for this format

Constraints

IdGradePath(s)DetailsRequirements
clindoc-limit-participantTypeerrorCompositionThe R4 FHIR Clinical Document Composition Profile contains specific extensions for data entry person, informant, information recipient, primary information recipient and tracker. So, they are not allowed in the participant extension in the R4 profile. In R6, the intention is to have dedicated-named slices of a backbone element.
: extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='ENT').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='INF').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='IRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='TRC').not()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition C 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
Constraints: clindoc-limit-participantType
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text S 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
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:R5-Composition-version S 0..1 string Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.version
.... extension:data-enterer S 0..1 (Complex) A Data Enterer represents the person who transferred the content, written or dictated, into the clinical document. To clarify, an author provides the content, subject to their own interpretation; a dataEnterer adds an author's information to the electronic system.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/data-enterer-extension
.... extension:informant S 0..* (Complex) An Informant is an information source for any content within the clinical document. This informant is constrained for use when the source of information is an assigned health care provider for the patient.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/informant-extension
.... extension:information-recipient S 0..* (Complex) An Information Recipient is the intended recipient of the information at the time the document was created.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/information-recipient-extension
.... extension:participant S 0..* (Complex) A Participant that is not a data-enter, information-recipient nor an informant
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension
.... extension:consent S 0..* Reference(Consent) consent
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/consent-extension
.... extension:basedOn S 0..* Reference(Resource) The clinical action, such as a plan, proposal or order that is fulfilled by or precipitated this FHIR Clinical Document, such as a radiologists report of an x-ray.
URL: http://hl7.org/fhir/StructureDefinition/event-basedOn
.... extension:change-made S 0..1 (Complex) Note of changes made, calculating changes maybe required for safety as this extension may not contain all changes. Experimental, may overlap with other elements such as FHIR R6 note.
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
... Slices for modifierExtension ?! 0..* Extension Extension
Slice: Unordered, Open by value:url
.... modifierExtension:R5-Composition-status ?!S 0..1 base64Binary, boolean, canonical(), code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference(), SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta This allows for additional status values found in R5. However, exercise caution as the R4 Composition.status is required.
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-Composition.status
... identifier SΣ 0..1 Identifier Version-independent identifier for the Composition
... status ?!Σ 1..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
... type SΣ 1..1 CodeableConcept Kind of composition (LOINC if possible)
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... Slices for category SΣ 1..* CodeableConcept Categorization of Composition
Slice: Unordered, Open by value:text
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
.... category:clinicalnotecategory SΣ 1..1 CodeableConcept Category for Clinical Note
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.

Required Pattern: At least the following
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... coding 1..* Coding Code defined by a terminology system
Fixed Value: (complex)
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... system 1..1 uri Identity of the terminology system
Fixed Value: http://loinc.org
...... version 0..1 string Version of the system - if relevant
...... code 1..1 code Symbol in syntax defined by the system
Fixed Value: 107903-7
...... display 1..1 string Representation defined by the system
Fixed Value: Clinical note
...... userSelected 0..1 boolean If this coding was chosen directly by the user
..... text 0..1 string Plain text representation of the concept
... subject SΣ 1..1 Reference(Patient | Group) Who and/or what the composition is about
... encounter Σ 0..1 Reference(Encounter) Context of the Composition
... date SΣ 1..1 dateTime Composition editing time
... author SΣ 1..* Reference(Patient | Practitioner | PractitionerRole | RelatedPerson | Device | Organization) Who and/or what authored the composition
... title SΣ 1..1 string Human Readable name/title
... confidentiality Σ 0..1 code As defined by affinity domain
Binding: v3.ConfidentialityClassification (2014-03-26) (required): Codes specifying the level of confidentiality of the composition.
... Slices for attester S 0..* BackboneElement Attests to accuracy of composition
Slice: Unordered, Open by value:mode
.... attester:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode S 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
..... time S 0..1 dateTime When the composition was attested
..... party S 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:legal_attester S 0..1 BackboneElement aka legal authenticator
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: legal
..... time 0..1 dateTime When the composition was attested
..... party 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
.... attester:professional_attester S 0..* BackboneElement aka authenticator
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode 1..1 code personal | professional | legal | official
Binding: CompositionAttestationMode (required): The way in which a person authenticated a composition.
Required Pattern: professional
..... time 0..1 dateTime When the composition was attested
..... party 0..1 Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) Who attested the composition
... custodian SΣ 0..1 Reference(Organization) Organization which maintains the composition
... Slices for relatesTo S 0..* BackboneElement Relationships to other compositions/documents
Slice: Unordered, Open by value:code, type:target
.... relatesTo:All Slices Content/Rules for all slices
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
..... Slices for target[x] 1..1 Target of the relationship
Slice: Unordered, Open by type:$this
...... targetIdentifier Identifier
...... targetReference Reference(Composition)
...... target[x]:targetIdentifier 0..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being appended, or to some other identifier of a non FHIR document
.... relatesTo:replaced_document S 0..* BackboneElement The document(s) being superceded
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: replaces
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Reference to the Bundle.identifier of the FHIR Clinical Document being replaced, or to some other identifier of a non FHIR document
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
....... system Σ 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
....... value Σ 1..1 string The value that is unique
Example General: 123456
....... period Σ 0..1 Period Time period when id is/was valid for use
....... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
.... relatesTo:appended_document S 0..* BackboneElement The document(s) being appended too
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... code 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
Required Pattern: appends
..... Slices for target[x] 1..1 Identifier Target of the relationship
Slice: Unordered, Closed by type:$this
...... target[x]:targetIdentifier 1..1 Identifier Target of the relationship
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
....... use ?!Σ 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .
....... type Σ 0..1 CodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.
....... system Σ 0..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
....... value Σ 0..1 string The value that is unique
Example General: 123456
....... period Σ 0..1 Period Time period when id is/was valid for use
....... assigner Σ 0..1 Reference(Organization) Organization that issued id (may be just text)
... event Σ 0..* BackboneElement The clinical service(s) being documented
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 0..* 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.
.... period Σ 0..1 Period The period covered by the documentation
.... detail Σ 0..* Reference(Resource) The event(s) being documented
... section SC 1..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:change-made S 0..1 (Complex) Change Made
URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ChangeMade
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... title S 1..1 string Label for section (e.g. for ToC)
.... code S 0..1 CodeableConcept Classification of section (recommended)
Binding: DocumentSectionCodes (example): Classification of a section of a composition/document.
.... author 0..* Reference(Practitioner | PractitionerRole | Device | Patient | RelatedPerson | Organization) Who and/or what authored the section
.... focus 0..1 Reference(Resource) Who/what the section is about, when it is not about the subject of composition
.... text SC 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
.... mode 0..1 code working | snapshot | changes
Binding: ListMode (required): The processing mode that applies to this section.
.... orderedBy 0..1 CodeableConcept Order of section entries
Binding: ListOrderCodes (preferred): What order applies to the items in the entry.
.... entry C 0..* Reference(Resource) A reference to data that supports this section
.... emptyReason C 0..1 CodeableConcept Why the section is empty
Binding: ListEmptyReasons (preferred): If a section is empty, why it is empty.
.... section C 0..* See section (Composition) Nested Section

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Composition.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|4.0.1
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.categoryexampleDocumentClassValueSet
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.category:clinicalnotecategoryexamplePattern Value: LOINC Code 107903-7("Clinical note")
http://hl7.org/fhir/ValueSet/document-classcodes
From the FHIR Standard
Composition.confidentialityrequiredv3.ConfidentialityClassification
http://terminology.hl7.org/ValueSet/v3-ConfidentialityClassification|2014-03-26
From the FHIR Standard
Composition.attester.moderequiredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:legal_attester.moderequiredPattern Value: legal
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.attester:professional_attester.moderequiredPattern Value: professional
http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1
From the FHIR Standard
Composition.relatesTo.coderequiredDocumentRelationshipType
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.coderequiredPattern Value: replaces
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.relatesTo:replaced_document.target[x]:targetIdentifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Composition.relatesTo:appended_document.coderequiredPattern Value: appends
http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.target[x]:targetIdentifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
From the FHIR Standard
Composition.relatesTo:appended_document.target[x]:targetIdentifier.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
From the FHIR Standard
Composition.event.codeexampleActCode
http://terminology.hl7.org/ValueSet/v3-ActCode
Composition.section.codeexampleDocumentSectionCodes
http://hl7.org/fhir/ValueSet/doc-section-codes
From the FHIR Standard
Composition.section.moderequiredListMode
http://hl7.org/fhir/ValueSet/list-mode|4.0.1
From the FHIR Standard
Composition.section.orderedBypreferredListOrderCodes
http://hl7.org/fhir/ValueSet/list-order
From the FHIR Standard
Composition.section.emptyReasonpreferredListEmptyReasons
http://hl7.org/fhir/ValueSet/list-empty-reason
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
clindoc-limit-participantTypeerrorCompositionThe R4 FHIR Clinical Document Composition Profile contains specific extensions for data entry person, informant, information recipient, primary information recipient and tracker. So, they are not allowed in the participant extension in the R4 profile. In R6, the intention is to have dedicated-named slices of a backbone element.
: extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='ENT').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='INF').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='IRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='PRCP').not() and extension.where(url='http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/ParticipantExtension').extension.where(url='type').value.coding.exists(system='http://terminology.hl7.org/CodeSystem/v3-ParticipationType' and code='TRC').not()
cmp-1errorComposition.sectionA section must contain at least one of text, entries, or sub-sections
: text.exists() or entry.exists() or section.exists()
cmp-2errorComposition.sectionA section can only have an emptyReason if it is empty
: emptyReason.empty() or entry.empty()
dom-2errorCompositionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorCompositionIf 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 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(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorCompositionIf 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-5errorCompositionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceCompositionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust 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