Release 5 FHIR CI-Build

This page is part of the Continuous Integration Build of FHIR Specification (v5.0.0: R5 - STU ). This is the current published version in it's permanent home (it will always (will be available incorrect/inconsistent at this URL). For a full list of available versions, see times).
See the Directory of published versions icon

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

The canonical URL for this profile is:

http://hl7.org/fhir/StructureDefinition/search-set-bundle

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

This profile was published on Wed, Mar 11, 2015 00:00+1100 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: 0 element (+5 nested mandatory elements)
Prohibited: 4 elements

Slices

This structure defines the following Slices :

  • The element Bundle.entry is sliced based on the value of value:search.mode (Closed)

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

Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Bundle Bundle
. . . type 1 .. 1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Required Pattern: searchset
. . . Slices for entry 0 .. * BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Closed by value:search.mode
. . . . entry:operationOutcome 0 ..1 BackboneElement Entry in the bundle - will have a resource or information
. . . . . fullUrl 1.. 1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource 1.. 1 OperationOutcome A resource in the bundle
. . . . . search
. . . . . . mode 1.. 1 code match | include - why this is in the result set
Required Pattern: outcome
. . . . . request 0 .. 0 Additional execution information (transaction/batch/history)
. . . . . response 0 .. 0 Results of execution (transaction/batch/history)
. . . . entry:other 0 .. * BackboneElement Entry in the bundle - will have a resource or information
. . . . . fullUrl 1.. 1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource 1.. 1 Resource A resource in the bundle
. . . . . request 0 .. 0 Additional execution information (transaction/batch/history)
. . . . . response 0 .. 0 Results of execution (transaction/batch/history)
. . . issues 0 .. 1 OperationOutcome Issues OperationOutcome with issues about the Bundle

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.

If search, the total number of Issues
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Bundle C icon 0..* Bundle Contains a collection of resources
. . . 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: All Languages ( required ): ) : IETF language tag for a human language
Additional Bindings Purpose
Common Languages Starter
. . . identifier Σ C icon 0..1 Identifier Persistent identifier for the bundle
. . . type Σ C icon 1..1 code document | 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.
Required Pattern: searchset
. . . timestamp Σ C icon 0..1 instant When the bundle was assembled
. . . total Σ C icon 0..1 unsignedInt Total matches across all pages
. . . link Σ C icon 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 Σ C icon 1..1 code See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
Binding: Link Relation Types ( required )
. . . . url Σ C icon 1..1 uri Reference details for the link
. . . Slices for entry Σ C icon 0 .. * BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Closed by value:search.mode
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 Σ C icon 0..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource Σ C icon 0..1 Resource A resource in the bundle
. . . . . search Σ C icon 0..1 BackboneElement Search related information
. . . . . . 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 Σ 0..1 code match | include - why this is in the result set
Binding: Search Entry Mode ( required ): ) : Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
. . . . . . score Σ 0..1 decimal Search ranking (between 0 and 1)
. . . . . request Σ C icon 0..1 BackboneElement Additional execution information (transaction/batch/history)
. . . . . . 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
. . . . . . method Σ C icon 1..1 code GET | HEAD | POST | PUT | DELETE | PATCH
Binding: H T T P HTTP Verb ( required ): ) : HTTP verbs (in the HTTP command line). See HTTP rfc icon for details.
. . . . . . url Σ 1..1 uri URL for HTTP equivalent of this entry
. . . . . . ifNoneMatch Σ 0..1 string For managing cache validation
. . . . . . ifModifiedSince Σ 0..1 instant For managing cache currency
. . . . . . ifMatch Σ 0..1 string For managing update contention
. . . . . . ifNoneExist Σ 0..1 string For conditional creates
. . . . . response Σ C icon 0..1 BackboneElement Results of execution (transaction/batch/history)
. . . . . . 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
. . . . . . status Σ 1..1 string Status response code (text optional)
. . . . . . location Σ 0..1 uri The location (if the operation returns a location)
. . . . . . etag Σ 0..1 string The Etag for the resource (if relevant)
. . . . . . lastModified Σ 0..1 instant Server's date time modified
. . . . . . outcome Σ 0..1 Resource OperationOutcome OperationOutcome with hints and warnings (for batch/transaction)
. . . . entry:operationOutcome Σ C icon 0..1 BackboneElement Entry in the bundle - will have a resource or information
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 Σ C icon 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource Σ C icon 1..1 OperationOutcome A resource in the bundle
. . . . . search Σ C icon 0..1 BackboneElement Search related information
. . . . . . 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 match | include - why this is in the result set
Binding: Search Entry Mode ( required ): ) : Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Required Pattern: outcome
. . . . . . score Σ 0..1 decimal Search ranking (between 0 and 1)
. . . . entry:other Σ C icon 0..* BackboneElement Entry in the bundle - will have a resource or information
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 Σ C icon 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource Σ C icon 1..1 Resource A resource in the bundle
. . . . . search Σ C icon 0..1 BackboneElement Search related information
. . . . . . 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 Σ 0..1 code match | include - why this is in the result set
Binding: Search Entry Mode ( required ): ) : Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
. . . . . . score Σ 0..1 decimal Search ranking (between 0 and 1)
. . . signature Σ TU 0..1 Signature Digital Signature (deprecated: use Provenance Signatures)
. . . issues Σ C icon 0..1 OperationOutcome OperationOutcome with issues about the Bundle

doco Documentation for this format icon
<!-- SearchSetBundle -->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 0..1 Identifier Persistent identifier for the bundle --></identifier>
 <type value="[code]"/><!-- I 1..1 document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification   -->
 <timestamp value="[instant]"/><!-- I 0..1 When the bundle was assembled -->
 <
 <
  <<a href="search-set-bundle-definitions.html#Bundle.link.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

 <total value="[unsignedInt]"/><!-- I 0..1 Total matches across all pages -->
 <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 sliced by value:search.mode  in the specified orderClosed-->
 <
  <<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

 <entry> I 0..1 BackboneElement  <!-- I 0..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>
  <<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation." class="dict">

  <fullUrl value="[uri]"/><!-- I 1..1 

      URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) -->
  <resource><!-- 1..1 OperationOutcome A resource in the bundle --></resource>
  <
   <<a href="search-set-bundle-definitions.html#Bundle.entry.search.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

  <search> I 0..1 BackboneElement  <!-- I 0..1 Search related information -->
   <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>

   <mode value="[code]"/><!-- I 1..1 match | include - why this is in the result set   -->
   <score value="[decimal]"/><!-- I 0..1 Search ranking (between 0 and 1) -->
  </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>
 <
  <<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

 <entry> I 0..* BackboneElement  <!-- I 0..* 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>
  <<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation." class="dict">

  <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>
  <
   <<a href="search-set-bundle-definitions.html#Bundle.entry.search.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

  <search> I 0..1 BackboneElement  <!-- I 0..1 Search related information -->
   <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>

   <mode value="[code]"/><!-- I 0..1 match | include - why this is in the result set   -->
   <score value="[decimal]"/><!-- I 0..1 Search ranking (between 0 and 1) -->
  </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>
 <</issues>

 <signature><!-- I 0..1 Signature 
     Digital Signature (deprecated: use Provenance Signatures) --></signature>
 <issues><!-- 0..1 Resource OperationOutcome with issues about the Bundle --></issues>

</Bundle>
{ // SearchSetBundle
  // 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 }, // IPersistent identifier for the bundle
    "type" : "<code>", // I R! document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
    "timestamp" : "<instant>", // IWhen the bundle was assembled
    "
    "

    "total" : "<unsignedInt>", // ITotal matches across all pages
    "link" : [{ BackboneElement }], // ILinks related to this Bundle

    "entry" : [ //  sliced by value:search.mode  in the specified order, Closed 
      { // 

      { // Entry in the bundle - will have a resource or information // I

        // from Element: extension
        "<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">

        "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored even if unrecognized

// value[x]: Links related to this entry. One of these 0:
        "<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation" class="dict">

        "fullUrl" : "<uri>", // I R! URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)

        "resource" : { OperationOutcome }, // R! A resource in the bundle
        "

        "search" : { BackboneElement }, // ISearch related information

      }
      { // 

      { // Entry in the bundle - will have a resource or information // I

        // from Element: extension
        "<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">

        "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored even if unrecognized

// value[x]: Links related to this entry. One of these 0:
        "<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation" class="dict">

        "fullUrl" : "<uri>", // I R! URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)

        "resource" : { Resource }, // R! A resource in the bundle
        "

        "search" : { BackboneElement }, // ISearch related information

      },
    ],
    "
    "

    "signature" : { Signature }, // IDigital Signature (deprecated: use Provenance Signatures)
    "issues" : { Resource(OperationOutcome) }, //OperationOutcome with issues about the Bundle

  }

This structure is derived from Bundle .

Summary

Mandatory: 0 element (+5 nested mandatory elements)
Prohibited: 4 elements

Slices

This structure defines the following Slices :

  • The element Bundle.entry is sliced based on the value of value:search.mode (Closed)

Differential View

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

Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Bundle Bundle
. . . type 1 .. 1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
Required Pattern: searchset
. . . Slices for entry 0 .. * BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Closed by value:search.mode
. . . . entry:operationOutcome 0 ..1 BackboneElement Entry in the bundle - will have a resource or information
. . . . . fullUrl 1.. 1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource 1.. 1 OperationOutcome A resource in the bundle
. . . . . search
. . . . . . mode 1.. 1 code match | include - why this is in the result set
Required Pattern: outcome
. . . . . request 0 .. 0 Additional execution information (transaction/batch/history)
. . . . . response 0 .. 0 Results of execution (transaction/batch/history)
. . . . entry:other 0 .. * BackboneElement Entry in the bundle - will have a resource or information
. . . . . fullUrl 1.. 1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource 1.. 1 Resource A resource in the bundle
. . . . . request 0 .. 0 Additional execution information (transaction/batch/history)
. . . . . response 0 .. 0 Results of execution (transaction/batch/history)
. . . issues 0 .. 1 OperationOutcome Issues OperationOutcome with issues about the Bundle

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.

If search, the total number of Issues
Name icon Flags icon Card. icon Type icon Description & Constraints icon doco icon
. . Bundle C icon 0..* Bundle Contains a collection of resources
. . . 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: All Languages ( required ): ) : IETF language tag for a human language
Additional Bindings Purpose
Common Languages Starter
. . . identifier Σ C icon 0..1 Identifier Persistent identifier for the bundle
. . . type Σ C icon 1..1 code document | 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.
Required Pattern: searchset
. . . timestamp Σ C icon 0..1 instant When the bundle was assembled
. . . total Σ C icon 0..1 unsignedInt Total matches across all pages
. . . link Σ C icon 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 Σ C icon 1..1 code See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
Binding: Link Relation Types ( required )
. . . . url Σ C icon 1..1 uri Reference details for the link
. . . Slices for entry Σ C icon 0 .. * BackboneElement Entry in the bundle - will have a resource or information
Slice: Unordered, Closed by value:search.mode
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 Σ C icon 0..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource Σ C icon 0..1 Resource A resource in the bundle
. . . . . search Σ C icon 0..1 BackboneElement Search related information
. . . . . . 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 Σ 0..1 code match | include - why this is in the result set
Binding: Search Entry Mode ( required ): ) : Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
. . . . . . score Σ 0..1 decimal Search ranking (between 0 and 1)
. . . . . request Σ C icon 0..1 BackboneElement Additional execution information (transaction/batch/history)
. . . . . . 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
. . . . . . method Σ C icon 1..1 code GET | HEAD | POST | PUT | DELETE | PATCH
Binding: H T T P HTTP Verb ( required ): ) : HTTP verbs (in the HTTP command line). See HTTP rfc icon for details.
. . . . . . url Σ 1..1 uri URL for HTTP equivalent of this entry
. . . . . . ifNoneMatch Σ 0..1 string For managing cache validation
. . . . . . ifModifiedSince Σ 0..1 instant For managing cache currency
. . . . . . ifMatch Σ 0..1 string For managing update contention
. . . . . . ifNoneExist Σ 0..1 string For conditional creates
. . . . . response Σ C icon 0..1 BackboneElement Results of execution (transaction/batch/history)
. . . . . . 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
. . . . . . status Σ 1..1 string Status response code (text optional)
. . . . . . location Σ 0..1 uri The location (if the operation returns a location)
. . . . . . etag Σ 0..1 string The Etag for the resource (if relevant)
. . . . . . lastModified Σ 0..1 instant Server's date time modified
. . . . . . outcome Σ 0..1 Resource OperationOutcome OperationOutcome with hints and warnings (for batch/transaction)
. . . . entry:operationOutcome Σ C icon 0..1 BackboneElement Entry in the bundle - will have a resource or information
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 Σ C icon 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource Σ C icon 1..1 OperationOutcome A resource in the bundle
. . . . . search Σ C icon 0..1 BackboneElement Search related information
. . . . . . 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 match | include - why this is in the result set
Binding: Search Entry Mode ( required ): ) : Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
Required Pattern: outcome
. . . . . . score Σ 0..1 decimal Search ranking (between 0 and 1)
. . . . entry:other Σ C icon 0..* BackboneElement Entry in the bundle - will have a resource or information
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 Σ C icon 1..1 uri URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)
. . . . . resource Σ C icon 1..1 Resource A resource in the bundle
. . . . . search Σ C icon 0..1 BackboneElement Search related information
. . . . . . 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 Σ 0..1 code match | include - why this is in the result set
Binding: Search Entry Mode ( required ): ) : Why an entry is in the result set - whether it's included as a match or because of an _include requirement, or to convey information or warning information about the search process.
. . . . . . score Σ 0..1 decimal Search ranking (between 0 and 1)
. . . signature Σ TU 0..1 Signature Digital Signature (deprecated: use Provenance Signatures)
. . . issues Σ C icon 0..1 OperationOutcome OperationOutcome with issues about the Bundle

doco Documentation for this format icon

XML Template

<!-- SearchSetBundle -->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 0..1 Identifier Persistent identifier for the bundle --></identifier>
 <type value="[code]"/><!-- I 1..1 document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification   -->
 <timestamp value="[instant]"/><!-- I 0..1 When the bundle was assembled -->
 <
 <
  <<a href="search-set-bundle-definitions.html#Bundle.link.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

 <total value="[unsignedInt]"/><!-- I 0..1 Total matches across all pages -->
 <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 sliced by value:search.mode  in the specified orderClosed-->
 <
  <<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

 <entry> I 0..1 BackboneElement  <!-- I 0..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>
  <<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation." class="dict">

  <fullUrl value="[uri]"/><!-- I 1..1 

      URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) -->
  <resource><!-- 1..1 OperationOutcome A resource in the bundle --></resource>
  <
   <<a href="search-set-bundle-definitions.html#Bundle.entry.search.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

  <search> I 0..1 BackboneElement  <!-- I 0..1 Search related information -->
   <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>

   <mode value="[code]"/><!-- I 1..1 match | include - why this is in the result set   -->
   <score value="[decimal]"/><!-- I 0..1 Search ranking (between 0 and 1) -->
  </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>
 <
  <<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

 <entry> I 0..* BackboneElement  <!-- I 0..* 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>
  <<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation." class="dict">

  <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>
  <
   <<a href="search-set-bundle-definitions.html#Bundle.entry.search.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict"></modifierExtension>

  <search> I 0..1 BackboneElement  <!-- I 0..1 Search related information -->
   <modifierExtension><!-- I 0..* Extension  Extensions that cannot be ignored even if unrecognized  --></modifierExtension>

   <mode value="[code]"/><!-- I 0..1 match | include - why this is in the result set   -->
   <score value="[decimal]"/><!-- I 0..1 Search ranking (between 0 and 1) -->
  </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>
 <</issues>

 <signature><!-- I 0..1 Signature 
     Digital Signature (deprecated: use Provenance Signatures) --></signature>
 <issues><!-- 0..1 Resource OperationOutcome with issues about the Bundle --></issues>

</Bundle>

JSON Template

{ // SearchSetBundle
  // 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 }, // IPersistent identifier for the bundle
    "type" : "<code>", // I R! document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
    "timestamp" : "<instant>", // IWhen the bundle was assembled
    "
    "

    "total" : "<unsignedInt>", // ITotal matches across all pages
    "link" : [{ BackboneElement }], // ILinks related to this Bundle

    "entry" : [ //  sliced by value:search.mode  in the specified order, Closed 
      { // 

      { // Entry in the bundle - will have a resource or information // I

        // from Element: extension
        "<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">

        "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored even if unrecognized

// value[x]: Links related to this entry. One of these 0:
        "<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation" class="dict">

        "fullUrl" : "<uri>", // I R! URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)

        "resource" : { OperationOutcome }, // R! A resource in the bundle
        "

        "search" : { BackboneElement }, // ISearch related information

      }
      { // 

      { // Entry in the bundle - will have a resource or information // I

        // from Element: extension
        "<a href="search-set-bundle-definitions.html#Bundle.entry.modifierExtension" title="May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself) (this element modifies the meaning of other elements)" class="dict">

        "modifierExtension" : [{ Extension }], // IExtensions that cannot be ignored even if unrecognized

// value[x]: Links related to this entry. One of these 0:
        "<a href="search-set-bundle-definitions.html#Bundle.entry.fullUrl" title="The Absolute URL for the resource. Except for transactions and batches, each entry in a Bundle must have a fullUrl. The fullUrl SHALL NOT disagree with the id in the resource - i.e. if the fullUrl is not a urn:uuid, the URL shall be version-independent URL consistent with the Resource.id. The fullUrl is a version independent reference to the resource. Even when not required, fullUrl MAY be set to a urn:uuid to allow referencing entries in a transaction. The fullUrl can be an arbitrary URI and is not limited to urn:uuid, urn:oid, http, and https. The fullUrl element SHALL have a value except when: 
* invoking a create
* invoking or responding to an operation where the body is not a single identified resource
* invoking or returning the results of a search or history operation" class="dict">

        "fullUrl" : "<uri>", // I R! URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.)

        "resource" : { Resource }, // R! A resource in the bundle
        "

        "search" : { BackboneElement }, // ISearch related information

      },
    ],
    "
    "

    "signature" : { Signature }, // IDigital Signature (deprecated: use Provenance Signatures)
    "issues" : { Resource(OperationOutcome) }, //OperationOutcome with issues about the Bundle

  }

 

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

Path Name Conformance ValueSet
Bundle.language All Languages required All Languages
Bundle.type Bundle Type required Bundle Type
Bundle.link.relation Link Relation Types required Link Relation Types
Bundle.entry.search.mode Search Entry Mode required Search Entry Mode
Bundle.entry.request.method H T T P HTTP Verb required H T T P HTTP Verb
Bundle.entry.search.mode Search Entry Mode required Search Entry Mode
Bundle.entry.request.method H T T P HTTP Verb required H T T P HTTP Verb
Bundle.entry.search.mode Search Entry Mode required Search Entry Mode
Bundle.entry.request.method H T T P HTTP Verb required H T T P HTTP Verb
. .