FHIR Clinical Documents
1.0.1 - STU 1 International flag

FHIR Clinical Documents, published by HL7 International / Structured Documents. This guide is not an authorized publication; it is the continuous build for version 1.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-clinical-document/ and changes regularly. See the Directory of published versions

Resource Profile: FHIR Clinical Document Bundle Profile

Official URL: http://hl7.org/fhir/uv/fhir-clinical-document/StructureDefinition/clinical-document-bundle Version: 1.0.1
Standards status: Trial-use Active as of 2025-12-22 Maturity Level: 2 Computable Name: ClinicalDocumentBundle

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

Universal starting point for specifying a FHIR Clinical Document.

A FHIR Clinical Document is a FHIR bundle of type=document where the first entry is a composition. In addition, this implementation guide requires that when communicating a FHIR Clinical Document, the sender SHALL include the direct targets of all composition references in the bundle.

Guidance on Bundle Flags

  • Meaning of MustSupport: The MustSupport flag as used on this Bundle 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:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, clindoc-timestamp-ge-compoDate
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier Σ 1..1 Identifier Persistent identifier for the bundle
.... 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 Identifier system+value must be globally unique
Example General: 123456
... type Σ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... Slices for entry SΣC 1..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:$this.resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... resource SΣ 1..1 Resource A resource in the bundle
.... entry:clinical-document-composition SΣC 1..1 BackboneElement First entry is a composition
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... resource S 1..1 ClinicalDocumentComposition A set of resources composed into a single coherent clinical statement with clinical attestation

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:clinical-document-composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:clinical-document-composition must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:clinical-document-composition fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
clindoc-timestamp-ge-compoDate error Bundle For a FHIR Clinical Document the Bundle timestamp must be the same or after the Composition date timestamp >= entry.first().resource.date
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: clindoc-timestamp-ge-compoDate
... identifier 1..1 Identifier Persistent identifier for the bundle
.... system 1..1 uri The namespace for the identifier value
.... value 1..1 string Identifier system+value must be globally unique
... type 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Required Pattern: document
... timestamp 1..1 instant When the bundle was assembled
... Slices for entry S 1..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:$this.resource
.... entry:All Slices Content/Rules for all slices
..... resource S 1..1 Resource A resource in the bundle
..... search 0..0 Search related information
..... request 0..0 Additional execution information (transaction/batch/history)
..... response 0..0 Results of execution (transaction/batch/history)
.... entry:clinical-document-composition S 1..1 BackboneElement First entry is a composition
..... resource 1..1 ClinicalDocumentComposition A set of resources composed into a single coherent clinical statement with clinical attestation

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
clindoc-timestamp-ge-compoDate error Bundle For a FHIR Clinical Document the Bundle timestamp must be the same or after the Composition date timestamp >= entry.first().resource.date
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, clindoc-timestamp-ge-compoDate
... 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
... identifier Σ 1..1 Identifier Persistent identifier for the bundle
.... 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 Identifier system+value must be globally 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)
... type Σ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... timestamp Σ 1..1 instant When the bundle was assembled
... link Σ 0..* BackboneElement Links related to this Bundle
.... 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
.... relation Σ 1..1 string See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
.... url Σ 1..1 uri Reference details for the link
... Slices for entry SΣC 1..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:$this.resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry: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
..... link Σ 0..* See link (Bundle) Links related to this entry
..... fullUrl Σ 0..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource SΣ 1..1 Resource A resource in the bundle
.... entry:clinical-document-composition SΣC 1..1 BackboneElement First entry is a composition
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... link Σ 0..* See link (Bundle) Links related to this entry
..... fullUrl Σ 0..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource S 1..1 ClinicalDocumentComposition A set of resources composed into a single coherent clinical statement with clinical attestation
... signature Σ 0..1 Signature Digital Signature

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.search.​mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:clinical-document-composition.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:clinical-document-composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:clinical-document-composition must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:clinical-document-composition fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
clindoc-timestamp-ge-compoDate error Bundle For a FHIR Clinical Document the Bundle timestamp must be the same or after the Composition date timestamp >= entry.first().resource.date
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Summary

Mandatory: 7 elements
Must-Support: 3 elements
Prohibited: 4 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Bundle.entry

Maturity: 2

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, clindoc-timestamp-ge-compoDate
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier Σ 1..1 Identifier Persistent identifier for the bundle
.... 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 Identifier system+value must be globally unique
Example General: 123456
... type Σ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... Slices for entry SΣC 1..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:$this.resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... resource SΣ 1..1 Resource A resource in the bundle
.... entry:clinical-document-composition SΣC 1..1 BackboneElement First entry is a composition
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... resource S 1..1 ClinicalDocumentComposition A set of resources composed into a single coherent clinical statement with clinical attestation

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:clinical-document-composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:clinical-document-composition must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:clinical-document-composition fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
clindoc-timestamp-ge-compoDate error Bundle For a FHIR Clinical Document the Bundle timestamp must be the same or after the Composition date timestamp >= entry.first().resource.date
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: clindoc-timestamp-ge-compoDate
... identifier 1..1 Identifier Persistent identifier for the bundle
.... system 1..1 uri The namespace for the identifier value
.... value 1..1 string Identifier system+value must be globally unique
... type 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Required Pattern: document
... timestamp 1..1 instant When the bundle was assembled
... Slices for entry S 1..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:$this.resource
.... entry:All Slices Content/Rules for all slices
..... resource S 1..1 Resource A resource in the bundle
..... search 0..0 Search related information
..... request 0..0 Additional execution information (transaction/batch/history)
..... response 0..0 Results of execution (transaction/batch/history)
.... entry:clinical-document-composition S 1..1 BackboneElement First entry is a composition
..... resource 1..1 ClinicalDocumentComposition A set of resources composed into a single coherent clinical statement with clinical attestation

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
clindoc-timestamp-ge-compoDate error Bundle For a FHIR Clinical Document the Bundle timestamp must be the same or after the Composition date timestamp >= entry.first().resource.date

Snapshot ViewView

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12, clindoc-timestamp-ge-compoDate
... 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
... identifier Σ 1..1 Identifier Persistent identifier for the bundle
.... 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 Identifier system+value must be globally 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)
... type Σ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Required Pattern: document
... timestamp Σ 1..1 instant When the bundle was assembled
... link Σ 0..* BackboneElement Links related to this Bundle
.... 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
.... relation Σ 1..1 string See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
.... url Σ 1..1 uri Reference details for the link
... Slices for entry SΣC 1..* BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Open by type:$this.resource
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... entry: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
..... link Σ 0..* See link (Bundle) Links related to this entry
..... fullUrl Σ 0..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource SΣ 1..1 Resource A resource in the bundle
.... entry:clinical-document-composition SΣC 1..1 BackboneElement First entry is a composition
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
..... 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
..... link Σ 0..* See link (Bundle) Links related to this entry
..... fullUrl Σ 0..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
..... resource S 1..1 ClinicalDocumentComposition A set of resources composed into a single coherent clinical statement with clinical attestation
... signature Σ 0..1 Signature Digital Signature

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Bundle.language Base preferred Common Languages 📍4.0.1 FHIR Std.
Bundle.identifier.use Base required IdentifierUse 📍4.0.1 FHIR Std.
Bundle.identifier.type Base extensible IdentifierType 📍4.0.1 FHIR Std.
Bundle.type Base required BundleType 📍4.0.1 FHIR Std.
Bundle.entry.search.​mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry.request.​method Base required HTTPVerb 📍4.0.1 FHIR Std.
Bundle.entry:clinical-document-composition.​search.mode Base required SearchEntryMode 📍4.0.1 FHIR Std.
Bundle.entry:clinical-document-composition.​request.method Base required HTTPVerb 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
bdl-1 error Bundle total only when a search or history total.empty() or (type = 'searchset') or (type = 'history')
bdl-2 error Bundle entry.search only when a search entry.search.empty() or (type = 'searchset')
bdl-3 error Bundle entry.request mandatory for batch/transaction/history, otherwise prohibited entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4 error Bundle entry.response mandatory for batch-response/transaction-response/history, otherwise prohibited entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5 error Bundle.entry, Bundle.entry:clinical-document-composition must be a resource unless there's a request or response resource.exists() or request.exists() or response.exists()
bdl-7 error Bundle FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles) (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8 error Bundle.entry, Bundle.entry:clinical-document-composition fullUrl cannot be a version specific reference fullUrl.contains('/_history/').not()
bdl-9 error Bundle A document must have an identifier with a system and a value type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10 error Bundle A document must have a date type = 'document' implies (timestamp.hasValue())
bdl-11 error Bundle A document must have a Composition as the first resource type = 'document' implies entry.first().resource.is(Composition)
bdl-12 error Bundle A message must have a MessageHeader as the first resource type = 'message' implies entry.first().resource.is(MessageHeader)
clindoc-timestamp-ge-compoDate error Bundle For a FHIR Clinical Document the Bundle timestamp must be the same or after the Composition date timestamp >= entry.first().resource.date
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Summary

Mandatory: 7 elements
Must-Support: 3 elements
Prohibited: 4 elements

Structures

This structure refers to these other structures:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Bundle.entry

Maturity: 2

 

Other representations of profile: CSV, Excel, Schematron