This page is part of the Real Time Location Services Implementation Guide (v1.0.0-ballot: STU 1.0 Ballot 1) based on FHIR (HL7® FHIR® Standard) v5.0.0. No current official version has been published yet. For a full list of available versions, see the Directory of published versions
| Official URL: http://hl7.org/fhir/uv/rtls/StructureDefinition/rtlsSubscription | Version: 1.0.0-ballot | |||
| Standards status: Informative | Computable Name: RTLSSubscription | |||
Subscription resource used in RTLS workflows
This profile defines minimum expectations for a subscription requested from a RTLS.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Subscription
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Notification about a SubscriptionTopic | |
![]() ![]() | S | 1..* | Identifier | Additional identifiers (business identifier) |
![]() ![]() | S | 1..1 | code | requested | active | error | off | entered-in-error |
![]() ![]() | S | 1..1 | canonical(RTLS Subscription Topic Profile) | Reference to the RTLS subscription topic being subscribed to (e.g. location updates) |
![]() ![]() | S | 1..1 | Coding | Set to "message" |
![]() ![]() | S | 0..1 | url | Where the channel points to |
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Notification about a SubscriptionTopic | |
![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() | SΣ | 1..* | Identifier | Additional identifiers (business identifier) |
![]() ![]() | ?!SΣ | 1..1 | code | requested | active | error | off | entered-in-error Binding: SubscriptionStatusCodes (required): The status of a subscription. |
![]() ![]() | SΣ | 1..1 | canonical(RTLS Subscription Topic Profile) | Reference to the RTLS subscription topic being subscribed to (e.g. location updates) |
![]() ![]() | SΣ | 1..1 | Coding | Set to "message" Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription. |
![]() ![]() | SΣ | 0..1 | url | Where the channel points to |
Documentation for this format | ||||
| Path | Conformance | ValueSet |
| Subscription.status | required | SubscriptionStatusCodes |
| Subscription.channelType | extensible | SubscriptionChannelType |
| Id | Grade | Path(s) | Details | Requirements |
| dom-2 | error | Subscription | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
| dom-3 | error | Subscription | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
| dom-4 | error | Subscription | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
| dom-5 | error | Subscription | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
| dom-6 | best practice | Subscription | A resource should have narrative for robust management : text.`div`.exists() | |
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Notification about a SubscriptionTopic | |
![]() ![]() | Σ | 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: AllLanguages (required): IETF language tag for a human language | |
![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() | SΣ | 1..* | Identifier | Additional identifiers (business identifier) |
![]() ![]() | Σ | 0..1 | string | Human readable name for this subscription |
![]() ![]() | ?!SΣ | 1..1 | code | requested | active | error | off | entered-in-error Binding: SubscriptionStatusCodes (required): The status of a subscription. |
![]() ![]() | SΣ | 1..1 | canonical(RTLS Subscription Topic Profile) | Reference to the RTLS subscription topic being subscribed to (e.g. location updates) |
![]() ![]() | Σ | 0..* | ContactPoint | Contact details for source (e.g. troubleshooting) |
![]() ![]() | Σ | 0..1 | instant | When to automatically delete the subscription |
![]() ![]() | Σ | 0..1 | Reference(CareTeam | HealthcareService | Organization | RelatedPerson | Patient | Practitioner | PractitionerRole) | Entity responsible for Subscription changes |
![]() ![]() | Σ | 0..1 | string | Description of why this subscription was created |
![]() ![]() | ΣC | 0..* | BackboneElement | Criteria for narrowing the subscription topic stream |
![]() ![]() ![]() | 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 | uri | Allowed Resource (reference to definition) for this Subscription filter Binding: SubscriptionTypes (extensible): A type of resource, or a Reference (from all versions) |
![]() ![]() ![]() | Σ | 1..1 | string | Filter label defined in SubscriptionTopic |
![]() ![]() ![]() | C | 0..1 | code | eq | ne | gt | lt | ge | le | sa | eb | ap Binding: SearchComparator (required): Search Comparator Codes applied to this filter. |
![]() ![]() ![]() | C | 0..1 | code | missing | exact | contains | not | text | in | not-in | below | above | type | identifier | of-type | code-text | text-advanced | iterate Binding: SearchModifierCode (required): Search Modifier Code applied to this filter. |
![]() ![]() ![]() | Σ | 1..1 | string | Literal value or resource path |
![]() ![]() | SΣ | 1..1 | Coding | Set to "message" Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription. |
![]() ![]() | SΣ | 0..1 | url | Where the channel points to |
![]() ![]() | 0..* | BackboneElement | Channel 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 |
![]() ![]() ![]() | 1..1 | string | Name (key) of the parameter | |
![]() ![]() ![]() | 1..1 | string | Value of the parameter to use or pass through | |
![]() ![]() | Σ | 0..1 | unsignedInt | Interval in seconds to send 'heartbeat' notification |
![]() ![]() | Σ | 0..1 | unsignedInt | Timeout in seconds to attempt notification delivery |
![]() ![]() | Σ | 0..1 | code | MIME type to send, or omit for no payload Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049) |
![]() ![]() | Σ | 0..1 | code | empty | id-only | full-resource Binding: SubscriptionPayloadContent (required): Codes to represent how much resource content to send in the notification payload. |
![]() ![]() | Σ | 0..1 | positiveInt | Maximum number of events that can be combined in a single notification |
Documentation for this format | ||||
| Path | Conformance | ValueSet |
| Subscription.language | required | AllLanguages |
| Subscription.status | required | SubscriptionStatusCodes |
| Subscription.filterBy.resourceType | extensible | SubscriptionTypes |
| Subscription.filterBy.comparator | required | SearchComparator |
| Subscription.filterBy.modifier | required | SearchModifierCode |
| Subscription.channelType | extensible | SubscriptionChannelType |
| Subscription.contentType | required | MimeTypes (a valid code from urn:ietf:bcp:13) |
| Subscription.content | required | SubscriptionPayloadContent |
| Id | Grade | Path(s) | Details | Requirements |
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
| scr-1 | error | Subscription.filterBy | Subscription filters may only contain a modifier or a comparator : (comparator.exists() and modifier.exists()).not() |
This structure is derived from Subscription
Differential View
This structure is derived from Subscription
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Notification about a SubscriptionTopic | |
![]() ![]() | S | 1..* | Identifier | Additional identifiers (business identifier) |
![]() ![]() | S | 1..1 | code | requested | active | error | off | entered-in-error |
![]() ![]() | S | 1..1 | canonical(RTLS Subscription Topic Profile) | Reference to the RTLS subscription topic being subscribed to (e.g. location updates) |
![]() ![]() | S | 1..1 | Coding | Set to "message" |
![]() ![]() | S | 0..1 | url | Where the channel points to |
Documentation for this format | ||||
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Notification about a SubscriptionTopic | |
![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() | SΣ | 1..* | Identifier | Additional identifiers (business identifier) |
![]() ![]() | ?!SΣ | 1..1 | code | requested | active | error | off | entered-in-error Binding: SubscriptionStatusCodes (required): The status of a subscription. |
![]() ![]() | SΣ | 1..1 | canonical(RTLS Subscription Topic Profile) | Reference to the RTLS subscription topic being subscribed to (e.g. location updates) |
![]() ![]() | SΣ | 1..1 | Coding | Set to "message" Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription. |
![]() ![]() | SΣ | 0..1 | url | Where the channel points to |
Documentation for this format | ||||
| Path | Conformance | ValueSet |
| Subscription.status | required | SubscriptionStatusCodes |
| Subscription.channelType | extensible | SubscriptionChannelType |
| Id | Grade | Path(s) | Details | Requirements |
| dom-2 | error | Subscription | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
| dom-3 | error | Subscription | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
| dom-4 | error | Subscription | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
| dom-5 | error | Subscription | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
| dom-6 | best practice | Subscription | A resource should have narrative for robust management : text.`div`.exists() | |
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() |
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Notification about a SubscriptionTopic | |
![]() ![]() | Σ | 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: AllLanguages (required): IETF language tag for a human language | |
![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() | SΣ | 1..* | Identifier | Additional identifiers (business identifier) |
![]() ![]() | Σ | 0..1 | string | Human readable name for this subscription |
![]() ![]() | ?!SΣ | 1..1 | code | requested | active | error | off | entered-in-error Binding: SubscriptionStatusCodes (required): The status of a subscription. |
![]() ![]() | SΣ | 1..1 | canonical(RTLS Subscription Topic Profile) | Reference to the RTLS subscription topic being subscribed to (e.g. location updates) |
![]() ![]() | Σ | 0..* | ContactPoint | Contact details for source (e.g. troubleshooting) |
![]() ![]() | Σ | 0..1 | instant | When to automatically delete the subscription |
![]() ![]() | Σ | 0..1 | Reference(CareTeam | HealthcareService | Organization | RelatedPerson | Patient | Practitioner | PractitionerRole) | Entity responsible for Subscription changes |
![]() ![]() | Σ | 0..1 | string | Description of why this subscription was created |
![]() ![]() | ΣC | 0..* | BackboneElement | Criteria for narrowing the subscription topic stream |
![]() ![]() ![]() | 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 | uri | Allowed Resource (reference to definition) for this Subscription filter Binding: SubscriptionTypes (extensible): A type of resource, or a Reference (from all versions) |
![]() ![]() ![]() | Σ | 1..1 | string | Filter label defined in SubscriptionTopic |
![]() ![]() ![]() | C | 0..1 | code | eq | ne | gt | lt | ge | le | sa | eb | ap Binding: SearchComparator (required): Search Comparator Codes applied to this filter. |
![]() ![]() ![]() | C | 0..1 | code | missing | exact | contains | not | text | in | not-in | below | above | type | identifier | of-type | code-text | text-advanced | iterate Binding: SearchModifierCode (required): Search Modifier Code applied to this filter. |
![]() ![]() ![]() | Σ | 1..1 | string | Literal value or resource path |
![]() ![]() | SΣ | 1..1 | Coding | Set to "message" Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription. |
![]() ![]() | SΣ | 0..1 | url | Where the channel points to |
![]() ![]() | 0..* | BackboneElement | Channel 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 |
![]() ![]() ![]() | 1..1 | string | Name (key) of the parameter | |
![]() ![]() ![]() | 1..1 | string | Value of the parameter to use or pass through | |
![]() ![]() | Σ | 0..1 | unsignedInt | Interval in seconds to send 'heartbeat' notification |
![]() ![]() | Σ | 0..1 | unsignedInt | Timeout in seconds to attempt notification delivery |
![]() ![]() | Σ | 0..1 | code | MIME type to send, or omit for no payload Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049) |
![]() ![]() | Σ | 0..1 | code | empty | id-only | full-resource Binding: SubscriptionPayloadContent (required): Codes to represent how much resource content to send in the notification payload. |
![]() ![]() | Σ | 0..1 | positiveInt | Maximum number of events that can be combined in a single notification |
Documentation for this format | ||||
| Path | Conformance | ValueSet |
| Subscription.language | required | AllLanguages |
| Subscription.status | required | SubscriptionStatusCodes |
| Subscription.filterBy.resourceType | extensible | SubscriptionTypes |
| Subscription.filterBy.comparator | required | SearchComparator |
| Subscription.filterBy.modifier | required | SearchModifierCode |
| Subscription.channelType | extensible | SubscriptionChannelType |
| Subscription.contentType | required | MimeTypes (a valid code from urn:ietf:bcp:13) |
| Subscription.content | required | SubscriptionPayloadContent |
| Id | Grade | Path(s) | Details | Requirements |
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
| scr-1 | error | Subscription.filterBy | Subscription filters may only contain a modifier or a comparator : (comparator.exists() and modifier.exists()).not() |
This structure is derived from Subscription
Other representations of profile: CSV, Excel, Schematron