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
FHIR
Infrastructure
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 indicates the differences between this profile and the base Bundle structure.
Name
|
Flags
|
Card.
|
Type
|
Description
&
Constraints
|
|---|---|---|---|---|
|
Bundle | |||
|
1 .. 1 | code |
document
|
message
|
transaction
|
transaction-response
|
batch
|
batch-response
|
history
|
searchset
|
collection
|
subscription-notification
Required Pattern: searchset |
|
|
0 .. * | BackboneElement |
Entry
in
the
bundle
-
will
have
a
resource
or
information
Slice: Unordered, Closed by value:search.mode |
|
|
0 ..1 | BackboneElement | Entry in the bundle - will have a resource or information | |
|
1.. 1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | |
|
1.. 1 | OperationOutcome | A resource in the bundle | |
|
||||
|
1.. 1 | code |
match
|
include
-
why
this
is
in
the
result
set
Required Pattern: outcome |
|
|
0 .. 0 | Additional execution information (transaction/batch/history) | ||
|
0 .. 0 | Results of execution (transaction/batch/history) | ||
|
0 .. * | BackboneElement | Entry in the bundle - will have a resource or information | |
|
1.. 1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | |
|
1.. 1 | Resource | A resource in the bundle | |
|
0 .. 0 | Additional execution information (transaction/batch/history) | ||
|
0 .. 0 | Results of execution (transaction/batch/history) | ||
|
0 .. 1 | OperationOutcome |
|
|
|
||||
This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Bundle structure.
Name
|
Flags
|
Card.
|
Type
|
Description
&
Constraints
|
||||
|---|---|---|---|---|---|---|---|---|
|
C
|
0..* | Bundle |
Contains
a
collection
of
resources
|
||||
|
Σ | 0..1 | id | Logical id of this artifact | ||||
|
Σ | 0..1 | Meta | Metadata about the resource | ||||
|
?! Σ | 0..1 | uri | A set of rules under which this content was created | ||||
|
0..1 | code |
Language
of
the
resource
content
Binding: All Languages ( required
|
|||||
|
Σ
C
|
0..1 | Identifier | Persistent identifier for the bundle | ||||
|
Σ
C
|
1..1 | code |
document
|
message
|
transaction
|
transaction-response
|
batch
|
batch-response
|
history
|
searchset
|
collection
|
subscription-notification
Binding: Bundle Type ( required Required Pattern: searchset |
||||
|
Σ
C
|
0..1 | instant | When the bundle was assembled | ||||
|
Σ
C
|
0..1 | unsignedInt | Total matches across all pages | ||||
|
Σ
C
|
0..* | BackboneElement |
Links
related
to
this
Bundle
|
||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ
C
|
1..1 | code |
See
http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
Binding: Link Relation Types ( required ) |
||||
|
Σ
C
|
1..1 | uri | Reference details for the link | ||||
|
Σ
C
|
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 |
||||
|
Content/Rules for all slices | |||||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..* | See link (Bundle) |
Links
related
to
this
entry
|
||||
|
Σ
C
|
0..1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | ||||
|
Σ
C
|
0..1 | Resource | A resource in the bundle | ||||
|
Σ
C
|
0..1 | BackboneElement | Search related information | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..1 | code |
match
|
include
-
why
this
is
in
the
result
set
Binding: Search Entry Mode ( required |
||||
|
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
|
Σ
C
|
0..1 | BackboneElement | Additional execution information (transaction/batch/history) | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ
C
|
1..1 | code |
GET
|
HEAD
|
POST
|
PUT
|
DELETE
|
PATCH
Binding:
for
details.
|
||||
|
Σ | 1..1 | uri | URL for HTTP equivalent of this entry | ||||
|
Σ | 0..1 | string | For managing cache validation | ||||
|
Σ | 0..1 | instant | For managing cache currency | ||||
|
Σ | 0..1 | string | For managing update contention | ||||
|
Σ | 0..1 | string | For conditional creates | ||||
|
Σ
C
|
0..1 | BackboneElement | Results of execution (transaction/batch/history) | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 1..1 | string | Status response code (text optional) | ||||
|
Σ | 0..1 | uri | The location (if the operation returns a location) | ||||
|
Σ | 0..1 | string | The Etag for the resource (if relevant) | ||||
|
Σ | 0..1 | instant | Server's date time modified | ||||
|
Σ | 0..1 |
|
OperationOutcome with hints and warnings (for batch/transaction) | ||||
|
Σ
C
|
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 |
||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..* | See link (Bundle) |
Links
related
to
this
entry
|
||||
|
Σ
C
|
1..1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | ||||
|
Σ
C
|
1..1 | OperationOutcome | A resource in the bundle | ||||
|
Σ
C
|
0..1 | BackboneElement | Search related information | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 1..1 | code |
match
|
include
-
why
this
is
in
the
result
set
Binding: Search Entry Mode ( required Required Pattern: outcome |
||||
|
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
|
Σ
C
|
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 |
||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..* | See link (Bundle) |
Links
related
to
this
entry
|
||||
|
Σ
C
|
1..1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | ||||
|
Σ
C
|
1..1 | Resource | A resource in the bundle | ||||
|
Σ
C
|
0..1 | BackboneElement | Search related information | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..1 | code |
match
|
include
-
why
this
is
in
the
result
set
Binding: Search Entry Mode ( required |
||||
|
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
|
Σ
|
0..1 | Signature | Digital Signature (deprecated: use Provenance Signatures) | ||||
|
Σ
C
|
0..1 | OperationOutcome | OperationOutcome with issues about the Bundle | ||||
|
||||||||
<!-- SearchSetBundle --><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 :
Differential View
This indicates the differences between this profile and the base Bundle structure.
Name
|
Flags
|
Card.
|
Type
|
Description
&
Constraints
|
|---|---|---|---|---|
|
Bundle | |||
|
1 .. 1 | code |
document
|
message
|
transaction
|
transaction-response
|
batch
|
batch-response
|
history
|
searchset
|
collection
|
subscription-notification
Required Pattern: searchset |
|
|
0 .. * | BackboneElement |
Entry
in
the
bundle
-
will
have
a
resource
or
information
Slice: Unordered, Closed by value:search.mode |
|
|
0 ..1 | BackboneElement | Entry in the bundle - will have a resource or information | |
|
1.. 1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | |
|
1.. 1 | OperationOutcome | A resource in the bundle | |
|
||||
|
1.. 1 | code |
match
|
include
-
why
this
is
in
the
result
set
Required Pattern: outcome |
|
|
0 .. 0 | Additional execution information (transaction/batch/history) | ||
|
0 .. 0 | Results of execution (transaction/batch/history) | ||
|
0 .. * | BackboneElement | Entry in the bundle - will have a resource or information | |
|
1.. 1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | |
|
1.. 1 | Resource | A resource in the bundle | |
|
0 .. 0 | Additional execution information (transaction/batch/history) | ||
|
0 .. 0 | Results of execution (transaction/batch/history) | ||
|
0 .. 1 | OperationOutcome |
|
|
|
||||
Snapshot View
This provides the consolidated view (aka snapshot) of the profile after applying the changes in this profile to the base Bundle structure.
Name
|
Flags
|
Card.
|
Type
|
Description
&
Constraints
|
||||
|---|---|---|---|---|---|---|---|---|
|
C
|
0..* | Bundle |
Contains
a
collection
of
resources
|
||||
|
Σ | 0..1 | id | Logical id of this artifact | ||||
|
Σ | 0..1 | Meta | Metadata about the resource | ||||
|
?! Σ | 0..1 | uri | A set of rules under which this content was created | ||||
|
0..1 | code |
Language
of
the
resource
content
Binding: All Languages ( required
| |||||
|
Σ
C
|
0..1 | Identifier | Persistent identifier for the bundle | ||||
|
Σ
C
|
1..1 | code |
document
|
message
|
transaction
|
transaction-response
|
batch
|
batch-response
|
history
|
searchset
|
collection
|
subscription-notification
Binding: Bundle Type ( required Required Pattern: searchset |
||||
|
Σ
C
|
0..1 | instant | When the bundle was assembled | ||||
|
Σ
C
|
0..1 | unsignedInt | Total matches across all pages | ||||
|
Σ
C
|
0..* | BackboneElement |
Links
related
to
this
Bundle
|
||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ
C
|
1..1 | code |
See
http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
Binding: Link Relation Types ( required ) |
||||
|
Σ
C
|
1..1 | uri | Reference details for the link | ||||
|
Σ
C
|
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 |
||||
|
Content/Rules for all slices | |||||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..* | See link (Bundle) |
Links
related
to
this
entry
|
||||
|
Σ
C
|
0..1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | ||||
|
Σ
C
|
0..1 | Resource | A resource in the bundle | ||||
|
Σ
C
|
0..1 | BackboneElement | Search related information | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..1 | code |
match
|
include
-
why
this
is
in
the
result
set
Binding: Search Entry Mode ( required |
||||
|
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
|
Σ
C
|
0..1 | BackboneElement | Additional execution information (transaction/batch/history) | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ
C
|
1..1 | code |
GET
|
HEAD
|
POST
|
PUT
|
DELETE
|
PATCH
Binding:
for
details.
|
||||
|
Σ | 1..1 | uri | URL for HTTP equivalent of this entry | ||||
|
Σ | 0..1 | string | For managing cache validation | ||||
|
Σ | 0..1 | instant | For managing cache currency | ||||
|
Σ | 0..1 | string | For managing update contention | ||||
|
Σ | 0..1 | string | For conditional creates | ||||
|
Σ
C
|
0..1 | BackboneElement | Results of execution (transaction/batch/history) | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 1..1 | string | Status response code (text optional) | ||||
|
Σ | 0..1 | uri | The location (if the operation returns a location) | ||||
|
Σ | 0..1 | string | The Etag for the resource (if relevant) | ||||
|
Σ | 0..1 | instant | Server's date time modified | ||||
|
Σ | 0..1 |
|
OperationOutcome with hints and warnings (for batch/transaction) | ||||
|
Σ
C
|
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 |
||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..* | See link (Bundle) |
Links
related
to
this
entry
|
||||
|
Σ
C
|
1..1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | ||||
|
Σ
C
|
1..1 | OperationOutcome | A resource in the bundle | ||||
|
Σ
C
|
0..1 | BackboneElement | Search related information | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 1..1 | code |
match
|
include
-
why
this
is
in
the
result
set
Binding: Search Entry Mode ( required Required Pattern: outcome |
||||
|
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
|
Σ
C
|
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 |
||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..* | See link (Bundle) |
Links
related
to
this
entry
|
||||
|
Σ
C
|
1..1 | uri | URI for resource (e.g. the absolute URL server address, URI for UUID/OID, etc.) | ||||
|
Σ
C
|
1..1 | Resource | A resource in the bundle | ||||
|
Σ
C
|
0..1 | BackboneElement | Search related information | ||||
|
0..1 | string | Unique id for inter-element referencing | |||||
|
0..* | Extension |
Additional
content
defined
by
implementations
|
|||||
|
?! Σ | 0..* | Extension |
Extensions
that
cannot
be
ignored
even
if
unrecognized
|
||||
|
Σ | 0..1 | code |
match
|
include
-
why
this
is
in
the
result
set
Binding: Search Entry Mode ( required |
||||
|
Σ | 0..1 | decimal | Search ranking (between 0 and 1) | ||||
|
Σ
|
0..1 | Signature | Digital Signature (deprecated: use Provenance Signatures) | ||||
|
Σ
C
|
0..1 | OperationOutcome | OperationOutcome with issues about the Bundle | ||||
|
||||||||
XML Template
<!-- SearchSetBundle --><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 |
|
required |
|
| Bundle.entry.search.mode | Search Entry Mode | required | Search Entry Mode |
| Bundle.entry.request.method |
|
required |
|
| Bundle.entry.search.mode | Search Entry Mode | required | Search Entry Mode |
| Bundle.entry.request.method |
|
required |
|