0.2.0 - ci-build

RuCoreIG, published by HL7 FHIR Россия. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/fhir-ru/RuCoreIG/ and changes regularly. See the Directory of published versions

Resource Profile: Core Composition (Документ)

Official URL: https://fhir.ru/ig/core/StructureDefinition/core-composition Version: 0.2.0
Active as of 2025-08-19 Computable Name: Core_Composition

Базовый профиль Composition для РФ

Core_Composition — Профиль состава документа

Принятые решения по профилированию

Бизнес-требование Атрибут Решение по профилированию
Описание пациента должно соответствовать требованиям РФ subject Должен быть представлен профилем Core_Patient
Описание автора документа должно соответствовать требованиям РФ author Должен быть представлен профилем Core_PractitionerRole
Описание хранителя документа должно соответствовать требованиям РФ custodian Должен быть представлен профилем Core_Organization
Описание лица, придавшего документу юридическую силу, должно соответствовать требованиям РФ attester Должен быть представлен профилем Core_PractitionerRole

Описание профиля

Профиль Core_Composition расширяет стандартный ресурс Composition для поддержки российских требований:

  • Субъект документа (пациент) должен быть представлен профилем Core_Patient
  • Автор документа должен быть представлен профилем Core_PractitionerRole
  • Хранитель документа должен быть представлен профилем Core_Organization
  • Лицо, придавшее документу юридическую силу, должно быть представлено профилем Core_PractitionerRole

FSH-код профиля

Profile: Core_Composition
Parent: Composition
Id: core-composition
Title: "Core Composition (Состав документа)"
Description: "Базовый профиль состава документа для российских FHIR-реализаций"

* subject only Reference(Core_Patient)
* author only Reference(Core_PractitionerRole)
* custodian only Reference(Core_Organization)
* attester
  * party only Reference(Core_PractitionerRole)

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... type Σ 1..1 CodeableConcept Тип документа
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... subject Σ 0..* Reference(Core Patient (Пациент)) Пациент
... date Σ 1..1 dateTime Composition editing time
... author Σ 1..* Reference(Core PractitionerRole (Роль медицинского работника)) Автор
... title Σ 1..1 string Human Readable name/title
... attester 0..* BackboneElement Лицо, придавшее юридическую силу
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... mode 1..1 CodeableConcept personal | professional | legal | official
Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a composition.
.... party 0..1 Reference(Core PractitionerRole (Роль медицинского работника)) Who attested the composition
... custodian Σ 0..1 Reference(Core Organization (Организация)) Хранитель документа

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|5.0.0
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.attester.modepreferredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
... type 1..1 CodeableConcept Тип документа
... subject 0..* Reference(Core Patient (Пациент)) Пациент
... author 1..* Reference(Core PractitionerRole (Роль медицинского работника)) Автор
.... party 0..1 Reference(Core PractitionerRole (Роль медицинского работника)) Who attested the composition
... custodian 0..1 Reference(Core Organization (Организация)) Хранитель документа

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
... 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
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... url Σ 0..1 uri Canonical identifier for this Composition, represented as a URI (globally unique)
... identifier Σ 0..* Identifier Version-independent identifier for the Composition
... version Σ 0..1 string An explicitly assigned identifer of a variation of the content in the Composition
... status ?!Σ 1..1 code registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
... type Σ 1..1 CodeableConcept Тип документа
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... category Σ 0..* CodeableConcept Categorization of Composition
Binding: ReferencedItemCategoryValueSet (example): High-level kind of a clinical document at a macro level.
... subject Σ 0..* Reference(Core Patient (Пациент)) Пациент
... encounter Σ 0..1 Reference(Encounter) Context of the Composition
... date Σ 1..1 dateTime Composition editing time
... useContext Σ 0..* UsageContext The context that the content is intended to support
... author Σ 1..* Reference(Core PractitionerRole (Роль медицинского работника)) Автор
... name Σ 0..1 string Name for this Composition (computer friendly)
... title Σ 1..1 string Human Readable name/title
... note 0..* Annotation For any additional notes
... attester 0..* BackboneElement Лицо, придавшее юридическую силу
.... 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 CodeableConcept personal | professional | legal | official
Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a composition.
.... time 0..1 dateTime When the composition was attested
.... party 0..1 Reference(Core PractitionerRole (Роль медицинского работника)) Who attested the composition
... custodian Σ 0..1 Reference(Core Organization (Организация)) Хранитель документа
... relatesTo 0..* RelatedArtifact Relationships to other compositions/documents
... 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
.... period Σ 0..1 Period The period covered by the documentation
.... detail Σ 0..* CodeableReference(Resource) The event(s) being documented, as code(s), reference(s), or both
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
... section C 0..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
.... 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
.... title 0..1 string Label for section (e.g. for ToC)
.... code 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 C 0..1 Narrative Text summary of the section, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
.... 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 0..* See section (Composition) Nested Section

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Composition.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
From the FHIR Standard
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|5.0.0
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.categoryexampleReferencedItemCategoryValueSet
http://hl7.org/fhir/ValueSet/referenced-item-category
From the FHIR Standard
Composition.attester.modepreferredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode
From the FHIR Standard
Composition.event.detailexampleActCode
http://terminology.hl7.org/ValueSet/v3-ActCode
Composition.section.codeexampleDocumentSectionCodes
http://hl7.org/fhir/ValueSet/doc-section-codes
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
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... type Σ 1..1 CodeableConcept Тип документа
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... subject Σ 0..* Reference(Core Patient (Пациент)) Пациент
... date Σ 1..1 dateTime Composition editing time
... author Σ 1..* Reference(Core PractitionerRole (Роль медицинского работника)) Автор
... title Σ 1..1 string Human Readable name/title
... attester 0..* BackboneElement Лицо, придавшее юридическую силу
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... mode 1..1 CodeableConcept personal | professional | legal | official
Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a composition.
.... party 0..1 Reference(Core PractitionerRole (Роль медицинского работника)) Who attested the composition
... custodian Σ 0..1 Reference(Core Organization (Организация)) Хранитель документа

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|5.0.0
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.attester.modepreferredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
... type 1..1 CodeableConcept Тип документа
... subject 0..* Reference(Core Patient (Пациент)) Пациент
... author 1..* Reference(Core PractitionerRole (Роль медицинского работника)) Автор
.... party 0..1 Reference(Core PractitionerRole (Роль медицинского работника)) Who attested the composition
... custodian 0..1 Reference(Core Organization (Организация)) Хранитель документа

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Composition 0..* Composition A set of resources composed into a single coherent clinical statement with clinical attestation
... 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
... language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... url Σ 0..1 uri Canonical identifier for this Composition, represented as a URI (globally unique)
... identifier Σ 0..* Identifier Version-independent identifier for the Composition
... version Σ 0..1 string An explicitly assigned identifer of a variation of the content in the Composition
... status ?!Σ 1..1 code registered | partial | preliminary | final | amended | corrected | appended | cancelled | entered-in-error | deprecated | unknown
Binding: CompositionStatus (required): The workflow/clinical status of the composition.
... type Σ 1..1 CodeableConcept Тип документа
Binding: FHIRDocumentTypeCodes (preferred): Type of a composition.
... category Σ 0..* CodeableConcept Categorization of Composition
Binding: ReferencedItemCategoryValueSet (example): High-level kind of a clinical document at a macro level.
... subject Σ 0..* Reference(Core Patient (Пациент)) Пациент
... encounter Σ 0..1 Reference(Encounter) Context of the Composition
... date Σ 1..1 dateTime Composition editing time
... useContext Σ 0..* UsageContext The context that the content is intended to support
... author Σ 1..* Reference(Core PractitionerRole (Роль медицинского работника)) Автор
... name Σ 0..1 string Name for this Composition (computer friendly)
... title Σ 1..1 string Human Readable name/title
... note 0..* Annotation For any additional notes
... attester 0..* BackboneElement Лицо, придавшее юридическую силу
.... 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 CodeableConcept personal | professional | legal | official
Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a composition.
.... time 0..1 dateTime When the composition was attested
.... party 0..1 Reference(Core PractitionerRole (Роль медицинского работника)) Who attested the composition
... custodian Σ 0..1 Reference(Core Organization (Организация)) Хранитель документа
... relatesTo 0..* RelatedArtifact Relationships to other compositions/documents
... 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
.... period Σ 0..1 Period The period covered by the documentation
.... detail Σ 0..* CodeableReference(Resource) The event(s) being documented, as code(s), reference(s), or both
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
... section C 0..* BackboneElement Composition is broken into sections
Constraints: cmp-1, cmp-2
.... 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
.... title 0..1 string Label for section (e.g. for ToC)
.... code 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 C 0..1 Narrative Text summary of the section, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
.... 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 0..* See section (Composition) Nested Section

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Composition.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
From the FHIR Standard
Composition.statusrequiredCompositionStatus
http://hl7.org/fhir/ValueSet/composition-status|5.0.0
From the FHIR Standard
Composition.typepreferredFHIRDocumentTypeCodes
http://hl7.org/fhir/ValueSet/doc-typecodes
From the FHIR Standard
Composition.categoryexampleReferencedItemCategoryValueSet
http://hl7.org/fhir/ValueSet/referenced-item-category
From the FHIR Standard
Composition.attester.modepreferredCompositionAttestationMode
http://hl7.org/fhir/ValueSet/composition-attestation-mode
From the FHIR Standard
Composition.event.detailexampleActCode
http://terminology.hl7.org/ValueSet/v3-ActCode
Composition.section.codeexampleDocumentSectionCodes
http://hl7.org/fhir/ValueSet/doc-section-codes
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
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()

 

Other representations of profile: CSV, Excel, Schematron