openIMIS FHIR R4 Implementation Guide
1.0.0 - ci-build
openIMIS FHIR R4 Implementation Guide - Local Development build (v1.0.0). See the Directory of published versions
| Official URL: https://openimis.github.io/openimis_fhir_r4_ig/StructureDefinition/openimis-subscription | Version: 1.0.0 | |||
| Active as of 2022-05-31 | Responsible: openIMIS Initiative | Computable Name: OpenIMISSubscription | ||
Allows to subscribe to notification of new or updates entitities.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Subscription
This structure is derived from Subscription
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Server push subscription criteria | |
![]() ![]() | 0..1 | string | Subcription UUID | |
![]() ![]() | 0..0 | |||
![]() ![]() | 0..1 | instant | When to automatically disable the subscription | |
![]() ![]() | ||||
![]() ![]() ![]() | 1..1 | code | Only Rest Hook is supported Required Pattern: rest-hook | |
![]() ![]() ![]() | 1..1 | url | Where to send notifications | |
![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() | 0..* | string | Headers to send | |
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() | 0..* | Subscription | Server push subscription criteria | |||||
![]() ![]() | Σ | 0..1 | string | Subcription UUID | ||||
![]() ![]() | Σ | 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: CommonLanguages (preferred): 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 | ||||
![]() ![]() | ?!Σ | 1..1 | code | requested | active | error | off Binding: SubscriptionStatus (required): The status of a subscription. | ||||
![]() ![]() | Σ | 0..1 | instant | When to automatically disable the subscription | ||||
![]() ![]() | Σ | 1..1 | string | Description of why this subscription was created | ||||
![]() ![]() | Σ | 1..1 | string | Rule for server push | ||||
![]() ![]() | Σ | 0..1 | string | Latest error note | ||||
![]() ![]() | Σ | 1..1 | BackboneElement | The channel on which to report matches to the criteria | ||||
![]() ![]() ![]() | 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 | Only Rest Hook is supported Binding: SubscriptionChannelType (required): The type of method used to execute a subscription. Required Pattern: rest-hook | ||||
![]() ![]() ![]() | Σ | 1..1 | url | Where to send notifications | ||||
![]() ![]() ![]() | Σ | 0..* | string | Headers to send | ||||
Documentation for this format | ||||||||
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Server push subscription criteria | |
Documentation for this format | ||||
This structure is derived from Subscription
Differential View
This structure is derived from Subscription
| Name | Flags | Card. | Type | Description & Constraints![]() |
|---|---|---|---|---|
![]() | 0..* | Subscription | Server push subscription criteria | |
![]() ![]() | 0..1 | string | Subcription UUID | |
![]() ![]() | 0..0 | |||
![]() ![]() | 0..1 | instant | When to automatically disable the subscription | |
![]() ![]() | ||||
![]() ![]() ![]() | 1..1 | code | Only Rest Hook is supported Required Pattern: rest-hook | |
![]() ![]() ![]() | 1..1 | url | Where to send notifications | |
![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() | 0..* | string | Headers to send | |
Documentation for this format | ||||
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() | 0..* | Subscription | Server push subscription criteria | |||||
![]() ![]() | Σ | 0..1 | string | Subcription UUID | ||||
![]() ![]() | Σ | 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: CommonLanguages (preferred): 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 | ||||
![]() ![]() | ?!Σ | 1..1 | code | requested | active | error | off Binding: SubscriptionStatus (required): The status of a subscription. | ||||
![]() ![]() | Σ | 0..1 | instant | When to automatically disable the subscription | ||||
![]() ![]() | Σ | 1..1 | string | Description of why this subscription was created | ||||
![]() ![]() | Σ | 1..1 | string | Rule for server push | ||||
![]() ![]() | Σ | 0..1 | string | Latest error note | ||||
![]() ![]() | Σ | 1..1 | BackboneElement | The channel on which to report matches to the criteria | ||||
![]() ![]() ![]() | 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 | Only Rest Hook is supported Binding: SubscriptionChannelType (required): The type of method used to execute a subscription. Required Pattern: rest-hook | ||||
![]() ![]() ![]() | Σ | 1..1 | url | Where to send notifications | ||||
![]() ![]() ![]() | Σ | 0..* | string | Headers to send | ||||
Documentation for this format | ||||||||
Other representations of profile: CSV, Excel, Schematron
| Path | Conformance | ValueSet / Code |
| Subscription.language | preferred | CommonLanguages Max Binding: AllLanguages |
| Subscription.status | required | SubscriptionStatus |
| Subscription.channel.type | required | Pattern: rest-hook |
| Id | Grade | Path | 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().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(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 | Subscription.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | Subscription.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
| ele-1 | error | Subscription.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | Subscription.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
| ele-1 | error | Subscription.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.end | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.reason | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.criteria | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.error | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.channel | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.channel.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | Subscription.channel.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
| ele-1 | error | Subscription.channel.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ext-1 | error | Subscription.channel.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
| ele-1 | error | Subscription.channel.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.channel.endpoint | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
| ele-1 | error | Subscription.channel.header | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |