Universal API Implementation Guide
1.1.20 - ci-build

Universal API Implementation Guide - Local Development build (v1.1.20) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: UAPI Bundle - Search Result

Official URL: https://fhir.developer.gene.com/StructureDefinition/uapi-bundle-search-result Version: 1.1.20
Draft as of 2020-07-19 Computable Name: UapiBundleSearchResult

This profile constrains a Bundle resource to carry the query results from a UAPI Query - it is derived from IG http://build.fhir.org/ig/HL7/fhir-specialty-rx/branches/master/StructureDefinition-specialty-rx-bundle-search-result.html

Usages:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: searchset
... total SΣC 0..1 unsignedInt If search, the total number of matches
.... link:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... relation Σ 1..1 string See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
..... url Σ 1..1 uri Reference details for the link
.... link:self SΣ 1..* BackboneElement Links related to this Bundle
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... relation SΣ 1..1 string Executed search
Fixed Value: self
..... url Σ 1..1 uri Reference details for the link
... entry SΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... resource SΣ 1..1 Resource A resource in the bundle
.... search SΣC 0..1 BackboneElement Search related information
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode SΣ 0..1 code match | include | outcome - why this is in the result set
Binding: SearchEntryMode (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.

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.typerequiredFixed Value: searchset
http://hl7.org/fhir/ValueSet/bundle-type|4.3.0
From the FHIR Standard
Bundle.entry.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.3.0
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.3.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.response mandatory for batch-response/transaction-response/history, otherwise prohibited
: entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5errorBundle.entrymust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
: (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8errorBundle.entryfullUrl cannot be a version specific reference
: fullUrl.exists() implies fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Bundle

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle Bundle
... type S 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Fixed Value: searchset
... total S 0..1 unsignedInt If search, the total number of matches
... Slices for link S 1..* BackboneElement Links related to this Bundle
Slice: Unordered, Open by value:relation
.... link:self S 1..* BackboneElement Links related to this Bundle
..... relation S 1..1 string Executed search
Fixed Value: self
.... resource S 1..1 Resource A resource in the bundle
.... search S 0..1 BackboneElement Search related information
..... mode S 0..1 code match | include | outcome - why this is in the result set
.... request 0..0
.... response 0..0

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier Σ 0..1 Identifier Persistent identifier for the bundle
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: searchset
... timestamp Σ 0..1 instant When the bundle was assembled
... total SΣC 0..1 unsignedInt If search, the total number of matches
... Slices for link SΣ 1..* BackboneElement Links related to this Bundle
Slice: Unordered, Open by value:relation
.... link: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
..... relation Σ 1..1 string See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
..... url Σ 1..1 uri Reference details for the link
.... link:self SΣ 1..* 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 SΣ 1..1 string Executed search
Fixed Value: self
..... url Σ 1..1 uri Reference details for the link
... entry SΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... link Σ 0..* See link (Bundle) Links related to this entry
.... fullUrl Σ 0..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
.... resource SΣ 1..1 Resource A resource in the bundle
.... search SΣC 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 SΣ 0..1 code match | include | outcome - why this is in the result set
Binding: SearchEntryMode (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 Σ 0..1 Signature Digital Signature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Bundle.typerequiredFixed Value: searchset
http://hl7.org/fhir/ValueSet/bundle-type|4.3.0
From the FHIR Standard
Bundle.entry.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.3.0
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.3.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.response mandatory for batch-response/transaction-response/history, otherwise prohibited
: entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5errorBundle.entrymust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
: (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8errorBundle.entryfullUrl cannot be a version specific reference
: fullUrl.exists() implies fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Bundle

Summary

Mandatory: 2 elements(1 nested mandatory element)
Must-Support: 9 elements
Fixed: 2 elements
Prohibited: 2 elements

Slices

This structure defines the following Slices:

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

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: searchset
... total SΣC 0..1 unsignedInt If search, the total number of matches
.... link:All Slices Content/Rules for all slices
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... relation Σ 1..1 string See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
..... url Σ 1..1 uri Reference details for the link
.... link:self SΣ 1..* BackboneElement Links related to this Bundle
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... relation SΣ 1..1 string Executed search
Fixed Value: self
..... url Σ 1..1 uri Reference details for the link
... entry SΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... resource SΣ 1..1 Resource A resource in the bundle
.... search SΣC 0..1 BackboneElement Search related information
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... mode SΣ 0..1 code match | include | outcome - why this is in the result set
Binding: SearchEntryMode (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.

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.typerequiredFixed Value: searchset
http://hl7.org/fhir/ValueSet/bundle-type|4.3.0
From the FHIR Standard
Bundle.entry.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.3.0
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.3.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.response mandatory for batch-response/transaction-response/history, otherwise prohibited
: entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5errorBundle.entrymust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
: (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8errorBundle.entryfullUrl cannot be a version specific reference
: fullUrl.exists() implies fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Differential View

This structure is derived from Bundle

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle Bundle
... type S 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Fixed Value: searchset
... total S 0..1 unsignedInt If search, the total number of matches
... Slices for link S 1..* BackboneElement Links related to this Bundle
Slice: Unordered, Open by value:relation
.... link:self S 1..* BackboneElement Links related to this Bundle
..... relation S 1..1 string Executed search
Fixed Value: self
.... resource S 1..1 Resource A resource in the bundle
.... search S 0..1 BackboneElement Search related information
..... mode S 0..1 code match | include | outcome - why this is in the result set
.... request 0..0
.... response 0..0

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Bundle C 0..* Bundle Contains a collection of resources
Constraints: bdl-1, bdl-2, bdl-3, bdl-4, bdl-7, bdl-9, bdl-10, bdl-11, bdl-12
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... identifier Σ 0..1 Identifier Persistent identifier for the bundle
... type SΣ 1..1 code document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
Binding: BundleType (required): Indicates the purpose of a bundle - how it is intended to be used.
Fixed Value: searchset
... timestamp Σ 0..1 instant When the bundle was assembled
... total SΣC 0..1 unsignedInt If search, the total number of matches
... Slices for link SΣ 1..* BackboneElement Links related to this Bundle
Slice: Unordered, Open by value:relation
.... link: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
..... relation Σ 1..1 string See http://www.iana.org/assignments/link-relations/link-relations.xhtml#link-relations-1
..... url Σ 1..1 uri Reference details for the link
.... link:self SΣ 1..* 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 SΣ 1..1 string Executed search
Fixed Value: self
..... url Σ 1..1 uri Reference details for the link
... entry SΣC 0..* BackboneElement Entry in the bundle - will have a resource or information
Constraints: bdl-5, bdl-8
This repeating element order: For bundles of type 'document' and 'message', the first resource is special (must be Composition or MessageHeader respectively). For all bundles, the meaning of the order of entries depends on the bundle type
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... link Σ 0..* See link (Bundle) Links related to this entry
.... fullUrl Σ 0..1 uri URI for resource (Absolute URL server address or URI for UUID/OID)
.... resource SΣ 1..1 Resource A resource in the bundle
.... search SΣC 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 SΣ 0..1 code match | include | outcome - why this is in the result set
Binding: SearchEntryMode (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 Σ 0..1 Signature Digital Signature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / CodeURI
Bundle.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
Bundle.typerequiredFixed Value: searchset
http://hl7.org/fhir/ValueSet/bundle-type|4.3.0
From the FHIR Standard
Bundle.entry.search.moderequiredSearchEntryMode
http://hl7.org/fhir/ValueSet/search-entry-mode|4.3.0
From the FHIR Standard
Bundle.entry.request.methodrequiredHTTPVerb
http://hl7.org/fhir/ValueSet/http-verb|4.3.0
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
bdl-1errorBundletotal only when a search or history
: total.empty() or (type = 'searchset') or (type = 'history')
bdl-2errorBundleentry.search only when a search
: entry.search.empty() or (type = 'searchset')
bdl-3errorBundleentry.request mandatory for batch/transaction/history, otherwise prohibited
: entry.all(request.exists() = (%resource.type = 'batch' or %resource.type = 'transaction' or %resource.type = 'history'))
bdl-4errorBundleentry.response mandatory for batch-response/transaction-response/history, otherwise prohibited
: entry.all(response.exists() = (%resource.type = 'batch-response' or %resource.type = 'transaction-response' or %resource.type = 'history'))
bdl-5errorBundle.entrymust be a resource unless there's a request or response
: resource.exists() or request.exists() or response.exists()
bdl-7errorBundleFullUrl must be unique in a bundle, or else entries with the same fullUrl must have different meta.versionId (except in history bundles)
: (type = 'history') or entry.where(fullUrl.exists()).select(fullUrl&resource.meta.versionId).isDistinct()
bdl-8errorBundle.entryfullUrl cannot be a version specific reference
: fullUrl.exists() implies fullUrl.contains('/_history/').not()
bdl-9errorBundleA document must have an identifier with a system and a value
: type = 'document' implies (identifier.system.exists() and identifier.value.exists())
bdl-10errorBundleA document must have a date
: type = 'document' implies (timestamp.hasValue())
bdl-11errorBundleA document must have a Composition as the first resource
: type = 'document' implies entry.first().resource.is(Composition)
bdl-12errorBundleA message must have a MessageHeader as the first resource
: type = 'message' implies entry.first().resource.is(MessageHeader)
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Bundle

Summary

Mandatory: 2 elements(1 nested mandatory element)
Must-Support: 9 elements
Fixed: 2 elements
Prohibited: 2 elements

Slices

This structure defines the following Slices:

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

 

Other representations of profile: CSV, Excel, Schematron