PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.xver-r4b.r4@0.0.1-snapshot-2
    http://hl7.org/fhir/4.3/StructureDefinition/extension-SubscriptionStatus
description: This cross-version extension represents SubscriptionStatus from http://hl7.org/fhir/StructureDefinition/SubscriptionStatus|4.3.0 for use in FHIR R4.
package_name: hl7.fhir.uv.xver-r4b.r4
derivation: constraint
name: Ext_R4B_SubscriptionStatus
type: Extension
elements:
  extension:
    base: {max: '*', min: 0, path: Extension.extension}
    array: true
    min: 2
    index: 0
    slicing:
      rules: closed
      ordered: false
      discriminator:
      - {path: url, type: value}
      min: 2
      slices:
        status:
          match: {url: status}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: requested | active | error | off | entered-in-error
            index: 1
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: status}
                index: 2
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: requested | active | error | off | entered-in-error
                choices: [valueCode]
                index: 4
              valueCode:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: code
                short: requested | active | error | off | entered-in-error
                choiceOf: value
                index: 5
            required: [url]
        type:
          match: {url: type}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: handshake | heartbeat | event-notification | query-status | query-event
            _required: true
            index: 6
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: type}
                index: 7
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: handshake | heartbeat | event-notification | query-status | query-event
                choices: [valueCode]
                index: 9
              valueCode:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: code
                short: handshake | heartbeat | event-notification | query-status | query-event
                choiceOf: value
                index: 10
            required: [url]
        eventsSinceSubscriptionStart:
          match: {url: eventsSinceSubscriptionStart}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Events since the Subscription was created
            index: 11
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: eventsSinceSubscriptionStart}
                index: 12
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Events since the Subscription was created
                choices: [valueString]
                index: 14
              valueString:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: string
                short: Events since the Subscription was created
                choiceOf: value
                index: 15
            required: [url]
        notificationEvent:
          match: {url: notificationEvent}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Detailed information about any events relevant to this notification
            array: true
            index: 16
            extensions:
              eventNumber:
                url: eventNumber
                base: {max: '*', min: 0, path: Extension.extension}
                short: Event number
                _required: true
                index: 18
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: eventNumber}
                    index: 19
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Event number
                    choices: [valueString]
                    index: 21
                  valueString:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: string
                    short: Event number
                    choiceOf: value
                    index: 22
                required: [url]
              timestamp:
                url: timestamp
                base: {max: '*', min: 0, path: Extension.extension}
                short: The instant this event occurred
                index: 23
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: timestamp}
                    index: 24
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The instant this event occurred
                    choices: [valueInstant]
                    index: 26
                  valueInstant:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: instant
                    short: The instant this event occurred
                    choiceOf: value
                    index: 27
                required: [url]
              focus:
                url: focus
                base: {max: '*', min: 0, path: Extension.extension}
                short: The focus of this event
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: focus}
                    index: 29
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The focus of this event
                    choices: [valueReference]
                    index: 31
                  valueReference:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Reference
                    short: The focus of this event
                    choiceOf: value
                    index: 32
                required: [url]
              additionalContext:
                url: additionalContext
                base: {max: '*', min: 0, path: Extension.extension}
                short: Additional context for this event
                array: true
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: additionalContext}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Additional context for this event
                    choices: [valueReference]
                    index: 36
                  valueReference:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Reference
                    short: Additional context for this event
                    choiceOf: value
                    index: 37
                required: [url]
            elements:
              extension:
                base: {max: '*', min: 0, path: Extension.extension}
                array: true
                min: 1
                index: 17
                slicing:
                  rules: closed
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  min: 1
                  slices:
                    eventNumber:
                      match: {url: eventNumber}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Event number
                        _required: true
                        index: 18
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: eventNumber}
                            index: 19
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Event number
                            choices: [valueString]
                            index: 21
                          valueString:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: string
                            short: Event number
                            choiceOf: value
                            index: 22
                        required: [url]
                    timestamp:
                      match: {url: timestamp}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The instant this event occurred
                        index: 23
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: timestamp}
                            index: 24
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The instant this event occurred
                            choices: [valueInstant]
                            index: 26
                          valueInstant:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: instant
                            short: The instant this event occurred
                            choiceOf: value
                            index: 27
                        required: [url]
                    focus:
                      match: {url: focus}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: The focus of this event
                        index: 28
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: focus}
                            index: 29
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: The focus of this event
                            choices: [valueReference]
                            index: 31
                          valueReference:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Reference
                            short: The focus of this event
                            choiceOf: value
                            index: 32
                        required: [url]
                    additionalContext:
                      match: {url: additionalContext}
                      schema:
                        base: {max: '*', min: 0, path: Extension.extension}
                        short: Additional context for this event
                        array: true
                        index: 33
                        elements:
                          url:
                            base: {max: '1', min: 1, path: Extension.url}
                            pattern: {type: Uri, value: additionalContext}
                            index: 34
                          value:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            short: Additional context for this event
                            choices: [valueReference]
                            index: 36
                          valueReference:
                            base: {max: '1', min: 0, path: 'Extension.value[x]'}
                            type: Reference
                            short: Additional context for this event
                            choiceOf: value
                            index: 37
                        required: [url]
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: notificationEvent}
                index: 38
            required: [url, extension]
        subscription:
          match: {url: subscription}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Reference to the Subscription responsible for this notification
            _required: true
            index: 39
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: subscription}
                index: 40
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Reference to the Subscription responsible for this notification
                choices: [valueReference]
                index: 42
              valueReference:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: Reference
                short: Reference to the Subscription responsible for this notification
                choiceOf: value
                index: 43
            required: [url]
        topic:
          match: {url: topic}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: Reference to the SubscriptionTopic this notification relates to
            index: 44
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: topic}
                index: 45
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: Reference to the SubscriptionTopic this notification relates to
                choices: [valueCanonical]
                index: 47
              valueCanonical:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: canonical
                short: Reference to the SubscriptionTopic this notification relates to
                choiceOf: value
                index: 48
            required: [url]
        error:
          match: {url: error}
          schema:
            base: {max: '*', min: 0, path: Extension.extension}
            short: List of errors on the subscription
            array: true
            index: 49
            elements:
              url:
                base: {max: '1', min: 1, path: Extension.url}
                pattern: {type: Uri, value: error}
                index: 50
              value:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                short: List of errors on the subscription
                choices: [valueCodeableConcept]
                index: 52
              valueCodeableConcept:
                base: {max: '1', min: 0, path: 'Extension.value[x]'}
                type: CodeableConcept
                short: List of errors on the subscription
                choiceOf: value
                index: 53
            required: [url]
  url:
    base: {max: '1', min: 1, path: Extension.url}
    pattern: {type: Uri, value: 'http://hl7.org/fhir/4.3/StructureDefinition/extension-SubscriptionStatus'}
    index: 54
package_version: 0.0.1-snapshot-2
extensions:
  status:
    url: status
    base: {max: '*', min: 0, path: Extension.extension}
    short: requested | active | error | off | entered-in-error
    index: 1
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: status}
        index: 2
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: requested | active | error | off | entered-in-error
        choices: [valueCode]
        index: 4
      valueCode:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: code
        short: requested | active | error | off | entered-in-error
        choiceOf: value
        index: 5
    required: [url]
  type:
    url: type
    base: {max: '*', min: 0, path: Extension.extension}
    short: handshake | heartbeat | event-notification | query-status | query-event
    _required: true
    index: 6
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: type}
        index: 7
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: handshake | heartbeat | event-notification | query-status | query-event
        choices: [valueCode]
        index: 9
      valueCode:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: code
        short: handshake | heartbeat | event-notification | query-status | query-event
        choiceOf: value
        index: 10
    required: [url]
  eventsSinceSubscriptionStart:
    url: eventsSinceSubscriptionStart
    base: {max: '*', min: 0, path: Extension.extension}
    short: Events since the Subscription was created
    index: 11
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: eventsSinceSubscriptionStart}
        index: 12
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Events since the Subscription was created
        choices: [valueString]
        index: 14
      valueString:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: string
        short: Events since the Subscription was created
        choiceOf: value
        index: 15
    required: [url]
  notificationEvent:
    url: notificationEvent
    base: {max: '*', min: 0, path: Extension.extension}
    short: Detailed information about any events relevant to this notification
    array: true
    index: 16
    extensions:
      eventNumber:
        url: eventNumber
        base: {max: '*', min: 0, path: Extension.extension}
        short: Event number
        _required: true
        index: 18
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: eventNumber}
            index: 19
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Event number
            choices: [valueString]
            index: 21
          valueString:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: string
            short: Event number
            choiceOf: value
            index: 22
        required: [url]
      timestamp:
        url: timestamp
        base: {max: '*', min: 0, path: Extension.extension}
        short: The instant this event occurred
        index: 23
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: timestamp}
            index: 24
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The instant this event occurred
            choices: [valueInstant]
            index: 26
          valueInstant:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: instant
            short: The instant this event occurred
            choiceOf: value
            index: 27
        required: [url]
      focus:
        url: focus
        base: {max: '*', min: 0, path: Extension.extension}
        short: The focus of this event
        index: 28
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: focus}
            index: 29
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: The focus of this event
            choices: [valueReference]
            index: 31
          valueReference:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: Reference
            short: The focus of this event
            choiceOf: value
            index: 32
        required: [url]
      additionalContext:
        url: additionalContext
        base: {max: '*', min: 0, path: Extension.extension}
        short: Additional context for this event
        array: true
        index: 33
        elements:
          url:
            base: {max: '1', min: 1, path: Extension.url}
            pattern: {type: Uri, value: additionalContext}
            index: 34
          value:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            short: Additional context for this event
            choices: [valueReference]
            index: 36
          valueReference:
            base: {max: '1', min: 0, path: 'Extension.value[x]'}
            type: Reference
            short: Additional context for this event
            choiceOf: value
            index: 37
        required: [url]
    elements:
      extension:
        base: {max: '*', min: 0, path: Extension.extension}
        array: true
        min: 1
        index: 17
        slicing:
          rules: closed
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: 1
          slices:
            eventNumber:
              match: {url: eventNumber}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Event number
                _required: true
                index: 18
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: eventNumber}
                    index: 19
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Event number
                    choices: [valueString]
                    index: 21
                  valueString:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: string
                    short: Event number
                    choiceOf: value
                    index: 22
                required: [url]
            timestamp:
              match: {url: timestamp}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The instant this event occurred
                index: 23
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: timestamp}
                    index: 24
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The instant this event occurred
                    choices: [valueInstant]
                    index: 26
                  valueInstant:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: instant
                    short: The instant this event occurred
                    choiceOf: value
                    index: 27
                required: [url]
            focus:
              match: {url: focus}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: The focus of this event
                index: 28
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: focus}
                    index: 29
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: The focus of this event
                    choices: [valueReference]
                    index: 31
                  valueReference:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Reference
                    short: The focus of this event
                    choiceOf: value
                    index: 32
                required: [url]
            additionalContext:
              match: {url: additionalContext}
              schema:
                base: {max: '*', min: 0, path: Extension.extension}
                short: Additional context for this event
                array: true
                index: 33
                elements:
                  url:
                    base: {max: '1', min: 1, path: Extension.url}
                    pattern: {type: Uri, value: additionalContext}
                    index: 34
                  value:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    short: Additional context for this event
                    choices: [valueReference]
                    index: 36
                  valueReference:
                    base: {max: '1', min: 0, path: 'Extension.value[x]'}
                    type: Reference
                    short: Additional context for this event
                    choiceOf: value
                    index: 37
                required: [url]
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: notificationEvent}
        index: 38
    required: [url, extension]
  subscription:
    url: subscription
    base: {max: '*', min: 0, path: Extension.extension}
    short: Reference to the Subscription responsible for this notification
    _required: true
    index: 39
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: subscription}
        index: 40
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Reference to the Subscription responsible for this notification
        choices: [valueReference]
        index: 42
      valueReference:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: Reference
        short: Reference to the Subscription responsible for this notification
        choiceOf: value
        index: 43
    required: [url]
  topic:
    url: topic
    base: {max: '*', min: 0, path: Extension.extension}
    short: Reference to the SubscriptionTopic this notification relates to
    index: 44
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: topic}
        index: 45
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: Reference to the SubscriptionTopic this notification relates to
        choices: [valueCanonical]
        index: 47
      valueCanonical:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: canonical
        short: Reference to the SubscriptionTopic this notification relates to
        choiceOf: value
        index: 48
    required: [url]
  error:
    url: error
    base: {max: '*', min: 0, path: Extension.extension}
    short: List of errors on the subscription
    array: true
    index: 49
    elements:
      url:
        base: {max: '1', min: 1, path: Extension.url}
        pattern: {type: Uri, value: error}
        index: 50
      value:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        short: List of errors on the subscription
        choices: [valueCodeableConcept]
        index: 52
      valueCodeableConcept:
        base: {max: '1', min: 0, path: 'Extension.value[x]'}
        type: CodeableConcept
        short: List of errors on the subscription
        choiceOf: value
        index: 53
    required: [url]
class: extension
kind: complex-type
url: http://hl7.org/fhir/4.3/StructureDefinition/extension-SubscriptionStatus
base: http://hl7.org/fhir/StructureDefinition/Extension|4.0.1
version: 0.0.1-snapshot-2
required: [url]