FHIR CI-Build

This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions icon

FHIR Infrastructure icon Work Group Maturity Level: 0Informative Use Context: Any

The canonical URL for this profile is:

http://hl7.org/fhir/StructureDefinition/document-bundle

This profile holds all the requirements and constraints related to a FHIR document.

This profile was published on Wed, Mar 11, 2015 00:00+0000 as a draft by Health Level Seven, Inc. - FHIR Core WG.

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

This structure is derived from Bundle.

Summary

Mandatory: 7 elements
Fixed Value: 1 element
Prohibited: 5 elements

This indicates the differences between this profile and the base Bundle structure.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Bundle 0..*BundleRepresents a FHIR document
... identifier 1..1IdentifierPersistent identifier for the bundle
.... system 1..1uriThe namespace for the identifier value
.... value 1..1stringThe value that is unique
... type 1..1codedocument | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Fixed Value: document
... timestamp 1..1instantWhen the bundle was assembled
... entry 1..*BackboneElementEntry in the bundle - will have a resource or information
.... fullUrl 1..1uriURI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
.... resource 1..1ResourceA resource in the bundle
.... search 0..0
.... request 0..0
.... response 0..0
... issues 0..0

doco Documentation for this format icon

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Bundle structure.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Bundle C icon0..*BundleRepresents a FHIR document
bdl-1: total only when a search or history
bdl-2: entry.search only when a search
bdl-7: FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
bdl-9: A document must have an identifier with a system and a value
bdl-10: A document must have a date
bdl-11: A document must have a Composition as the first resource
bdl-12: A message must have a MessageHeader as the first resource
bdl-13: A subscription-notification must have a SubscriptionStatus as the first resource
bdl-14: entry.request.method PATCH not allowed for history
bdl-15: Bundle resources where type is not transaction, transaction-response, batch, or batch-response or when the request is a POST SHALL have Bundle.entry.fullUrl populated
bdl-16: Issue.severity for all issues within the OperationOutcome must be either 'information' or 'warning'.
bdl-17: Use and meaning of issues for documents has not been validated because the content will not be rendered in the document.
bdl-18: Self link is required for searchsets.
bdl-3a: For collections of type document, message, searchset or collection, all entries must contain resources, and not have request or response elements
bdl-3b: For collections of type history, all entries must contain request or response elements, and resources if the method is POST, PUT or PATCH
bdl-3c: For collections of type transaction or batch, all entries must contain request elements, and resources if the method is POST, PUT or PATCH
bdl-3d: For collections of type transaction-response or batch-response, all entries must contain response elements
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... identifier ΣC icon1..1IdentifierPersistent identifier for the bundle
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription 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..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value ΣC icon1..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... type ΣC icon1..1codedocument | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Binding: Bundle Type (required): Indicates the purpose of a bundle - how it is intended to be used.


Fixed Value: document
... timestamp ΣC icon1..1instantWhen the bundle was assembled
... link ΣC icon0..*BackboneElementLinks related to this Bundle
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relation ΣC icon1..1codeSee http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
Binding: Link Relation Types (required)
.... url ΣC icon1..1uriReference details for the link
... entry ΣC icon1..*BackboneElementEntry in the bundle - will have a resource or information
bdl-5: must be a resource unless there's a request or response
bdl-8: fullUrl cannot be a version specific reference
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..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... link Σ0..*See link (Bundle)Links related to this entry
.... fullUrl ΣC icon1..1uriURI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
.... resource ΣC icon1..1ResourceA resource in the bundle
... signature Σ0..1SignatureDigital Signature

doco Documentation for this format icon
<!-- DocumentBundle -->doco

<Bundle xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <meta><!-- I 0..1 Meta Metadata about the resource --></meta>
 <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created -->
 <language value="[code]"/><!-- I 0..1 Language of the resource content   -->
 <identifier> I 1..1 Identifier  <!-- I 1..1 Persistent identifier for the bundle -->
  <use value="[code]"/><!-- I 0..1 usual | official | temp | secondary | old (If known)   -->
  <type><!-- I 0..1 CodeableConcept Description of identifier   --></type>
  <system value="[uri]"/><!-- I 1..1 The namespace for the identifier value -->
  <value value="[string]"/><!-- I 1..1 The value that is unique -->
  <period><!-- I 0..1 Period 
      Time period when id is/was valid for use --></period>
  <assigner><!-- I 0..1 Reference(Organization) 
      Organization that issued id (may be just text) --></assigner>
 </identifier>
 <type value="[code]"/><!-- I 1..1 document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification   -->
 <timestamp value="[instant]"/><!-- I 1..1 When the bundle was assembled -->
 <total value="[unsignedInt]"/><!-- I 0..0 If search, the total number of matches -->
 <link> I 0..* BackboneElement  <!-- I 0..* Links related to this Bundle -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <relation value="[code]"/><!-- I 1..1 See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1   -->
  <url value="[uri]"/><!-- I 1..1 Reference details for the link -->
 </link>
 <entry> I 1..* BackboneElement  <!-- I 1..* Entry in the bundle - will have a resource or information -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <link><!-- See http://hl7.org/fhir/StructureDefinition/Bundle#Bundle.link  Links related to this entry --></link>
  <fullUrl value="[uri]"/><!-- I 1..1 
      URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) -->
  <resource><!-- 1..1 Resource A resource in the bundle --></resource>
  <search> I 0..0 BackboneElement  <!-- I 0..0 Search related information -->
  </search>
  <request> I 0..0 BackboneElement  <!-- I 0..0 Additional execution information (transaction/batch/history) -->
  </request>
  <response> I 0..0 BackboneElement  <!-- I 0..0 Results of execution (transaction/batch/history) -->
  </response>
 </entry>
 <signature><!-- I 0..1 Signature Digital Signature --></signature>
 <issues><!-- 0..0 Resource Issues with the Bundle --></issues>
</Bundle>
{ // DocumentBundle
  // from Element: extension
    "meta" : { Meta }, // IMetadata about the resource
    "implicitRules" : "<uri>", // IA set of rules under which this content was created
    "language" : "<code>", // ILanguage of the resource content
    "identifier" : { Identifier }, // I R! Persistent identifier for the bundle
    "type" : "document", // I R! 
    "timestamp" : "<instant>", // I R! When the bundle was assembled
    "link" : [{ BackboneElement }], // ILinks related to this Bundle
    "entry" : [{ BackboneElement }], // I R! Entry in the bundle - will have a resource or information
    "signature" : { Signature } // IDigital Signature
  }

This structure is derived from Bundle.

Summary

Mandatory: 7 elements
Fixed Value: 1 element
Prohibited: 5 elements

Differential View

This indicates the differences between this profile and the base Bundle structure.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Bundle 0..*BundleRepresents a FHIR document
... identifier 1..1IdentifierPersistent identifier for the bundle
.... system 1..1uriThe namespace for the identifier value
.... value 1..1stringThe value that is unique
... type 1..1codedocument | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Fixed Value: document
... timestamp 1..1instantWhen the bundle was assembled
... entry 1..*BackboneElementEntry in the bundle - will have a resource or information
.... fullUrl 1..1uriURI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
.... resource 1..1ResourceA resource in the bundle
.... search 0..0
.... request 0..0
.... response 0..0
... issues 0..0

doco Documentation for this format icon

Snapshot View

This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Bundle structure.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Bundle C icon0..*BundleRepresents a FHIR document
bdl-1: total only when a search or history
bdl-2: entry.search only when a search
bdl-7: FullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
bdl-9: A document must have an identifier with a system and a value
bdl-10: A document must have a date
bdl-11: A document must have a Composition as the first resource
bdl-12: A message must have a MessageHeader as the first resource
bdl-13: A subscription-notification must have a SubscriptionStatus as the first resource
bdl-14: entry.request.method PATCH not allowed for history
bdl-15: Bundle resources where type is not transaction, transaction-response, batch, or batch-response or when the request is a POST SHALL have Bundle.entry.fullUrl populated
bdl-16: Issue.severity for all issues within the OperationOutcome must be either 'information' or 'warning'.
bdl-17: Use and meaning of issues for documents has not been validated because the content will not be rendered in the document.
bdl-18: Self link is required for searchsets.
bdl-3a: For collections of type document, message, searchset or collection, all entries must contain resources, and not have request or response elements
bdl-3b: For collections of type history, all entries must contain request or response elements, and resources if the method is POST, PUT or PATCH
bdl-3c: For collections of type transaction or batch, all entries must contain request elements, and resources if the method is POST, PUT or PATCH
bdl-3d: For collections of type transaction-response or batch-response, all entries must contain response elements
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... identifier ΣC icon1..1IdentifierPersistent identifier for the bundle
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

.... type Σ0..1CodeableConceptDescription 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..1uriThe namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
.... value ΣC icon1..1stringThe value that is unique
Example General: 123456
.... period Σ0..1PeriodTime period when id is/was valid for use
.... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... type ΣC icon1..1codedocument | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Binding: Bundle Type (required): Indicates the purpose of a bundle - how it is intended to be used.


Fixed Value: document
... timestamp ΣC icon1..1instantWhen the bundle was assembled
... link ΣC icon0..*BackboneElementLinks related to this Bundle
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relation ΣC icon1..1codeSee http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
Binding: Link Relation Types (required)
.... url ΣC icon1..1uriReference details for the link
... entry ΣC icon1..*BackboneElementEntry in the bundle - will have a resource or information
bdl-5: must be a resource unless there's a request or response
bdl-8: fullUrl cannot be a version specific reference
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..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... link Σ0..*See link (Bundle)Links related to this entry
.... fullUrl ΣC icon1..1uriURI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
.... resource ΣC icon1..1ResourceA resource in the bundle
... signature Σ0..1SignatureDigital Signature

doco Documentation for this format icon

XML Template

<!-- DocumentBundle -->doco

<Bundle xmlns="http://hl7.org/fhir"
>
  <!-- from Element: extension -->
 <id value="[id]"/><!-- 0..1 Logical id of this artifact -->
 <meta><!-- I 0..1 Meta Metadata about the resource --></meta>
 <implicitRules value="[uri]"/><!-- I 0..1 A set of rules under which this content was created -->
 <language value="[code]"/><!-- I 0..1 Language of the resource content   -->
 <identifier> I 1..1 Identifier  <!-- I 1..1 Persistent identifier for the bundle -->
  <use value="[code]"/><!-- I 0..1 usual | official | temp | secondary | old (If known)   -->
  <type><!-- I 0..1 CodeableConcept Description of identifier   --></type>
  <system value="[uri]"/><!-- I 1..1 The namespace for the identifier value -->
  <value value="[string]"/><!-- I 1..1 The value that is unique -->
  <period><!-- I 0..1 Period 
      Time period when id is/was valid for use --></period>
  <assigner><!-- I 0..1 Reference(Organization) 
      Organization that issued id (may be just text) --></assigner>
 </identifier>
 <type value="[code]"/><!-- I 1..1 document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification   -->
 <timestamp value="[instant]"/><!-- I 1..1 When the bundle was assembled -->
 <total value="[unsignedInt]"/><!-- I 0..0 If search, the total number of matches -->
 <link> I 0..* BackboneElement  <!-- I 0..* Links related to this Bundle -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <relation value="[code]"/><!-- I 1..1 See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1   -->
  <url value="[uri]"/><!-- I 1..1 Reference details for the link -->
 </link>
 <entry> I 1..* BackboneElement  <!-- I 1..* Entry in the bundle - will have a resource or information -->
  <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>
  <link><!-- See http://hl7.org/fhir/StructureDefinition/Bundle#Bundle.link  Links related to this entry --></link>
  <fullUrl value="[uri]"/><!-- I 1..1 
      URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) -->
  <resource><!-- 1..1 Resource A resource in the bundle --></resource>
  <search> I 0..0 BackboneElement  <!-- I 0..0 Search related information -->
  </search>
  <request> I 0..0 BackboneElement  <!-- I 0..0 Additional execution information (transaction/batch/history) -->
  </request>
  <response> I 0..0 BackboneElement  <!-- I 0..0 Results of execution (transaction/batch/history) -->
  </response>
 </entry>
 <signature><!-- I 0..1 Signature Digital Signature --></signature>
 <issues><!-- 0..0 Resource Issues with the Bundle --></issues>
</Bundle>

JSON Template

{ // DocumentBundle
  // from Element: extension
    "meta" : { Meta }, // IMetadata about the resource
    "implicitRules" : "<uri>", // IA set of rules under which this content was created
    "language" : "<code>", // ILanguage of the resource content
    "identifier" : { Identifier }, // I R! Persistent identifier for the bundle
    "type" : "document", // I R! 
    "timestamp" : "<instant>", // I R! When the bundle was assembled
    "link" : [{ BackboneElement }], // ILinks related to this Bundle
    "entry" : [{ BackboneElement }], // I R! Entry in the bundle - will have a resource or information
    "signature" : { Signature } // IDigital Signature
  }

 

Alternate definitions: Master Definition (XML, JSON), Schematron

PathNameConformanceValueSet
Bundle.languageAll LanguagesrequiredAll Languages
Bundle.identifier.useIdentifierUserequiredIdentifierUse
Bundle.identifier.typeIdentifier Type CodesextensibleIdentifier Type Codes
Bundle.typeBundle TyperequiredBundle Type
Bundle.link.relationLink Relation TypesrequiredLink Relation Types
Bundle.entry.search.modeSearch Entry ModerequiredSearch Entry Mode
Bundle.entry.request.methodH T T P VerbrequiredH T T P Verb
. .