PackagesCanonicalsLogsProblems
    Packages
    dk.ehmi.eds@1.0.1-draft
    http://medcomehmi.dk/ig/eds/StructureDefinition/EdsBasicDeliveryStatus
description: \nEdsBasicDeliveryStatus is used to define the basic delivery status reporting for EDS from an EDS Client to the EDS Server.\n\nA basic EdsBasicDeliveryStatus is based on the AuditEvent profile for and is submitted when a EHMI Core Messaging transaction \nfrom one station in the messageflow to another station happens successfully.\n\nEdsBasicDeliveryStatus is only used when a Patient entity is not required, for instance for delivery status reporting of Acknowledgements. \nThe EdsBasicDeliveryStatus does not have a Patient subject or is otherwise associated with a Patient. \nWhen the message transaction is Patient specific then EdsPatientDeliveryStatus is used.\n\nWhen successfully submitted from an EDS Client to the EDS Server then the recorded EdsBasicDeliveryStatus has conformed to the profile otherwise it would \nnot have a successful outcome and the EDS Client will receive an OperationOutcome indicating the failure.\n
package_name: dk.ehmi.eds
derivation: constraint
name: EdsBasicDeliveryStatus
type: AuditEvent
elements:
  outcomeDesc: {index: 23}
  type:
    mustSupport: true
    index: 1
    elements:
      system:
        pattern: {type: Uri, value: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-types'}
        index: 2
      code:
        pattern: {type: Code, value: ehmiMessaging}
        index: 3
      display:
        pattern: {type: String, value: EHMI messaging event}
        index: 4
  outcome:
    binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-outcome-valueset'}
    mustSupport: true
    index: 22
  source:
    elements:
      observer:
        type: Reference
        refers: ['http://hl7.org/fhir/StructureDefinition/Device']
        index: 54
        elements:
          type:
            pattern: {type: Uri, value: ehmiDevice}
            index: 55
          identifier: {mustSupport: true, index: 56}
      type:
        binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-source-type-valueset'}
        mustSupport: true
        index: 57
        elements:
          system:
            pattern: {type: Uri, value: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-source-type'}
            index: 58
    required: [type]
  agent:
    array: true
    min: 2
    max: 4
    index: 25
    extensions:
      GLNId: {url: 'http://medcomehmi.dk/ig/eds/StructureDefinition/eds-otherId', min: 0, type: Extension, mustSupport: true, index: 27}
    elements:
      extension:
        index: 26
        slicing:
          rules: open
          ordered: false
          discriminator:
          - {path: url, type: value}
          min: null
          slices:
            GLNId:
              match: {url: null}
              schema: {type: Extension, mustSupport: true, url: 'http://medcomehmi.dk/ig/eds/StructureDefinition/eds-otherId', index: 27}
              min: 0
    slicing:
      rules: open
      discriminator:
      - {path: type, type: value}
      min: 2
      max: 4
      slices:
        ehmiSender:
          match:
            type:
              coding:
              - {code: ehmiSender, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-participationroletype'}
          schema:
            _required: true
            index: 28
            extensions:
              GLNId: {url: 'http://medcomehmi.dk/ig/eds/StructureDefinition/eds-otherId', min: 0, type: Extension, mustSupport: true, index: 30}
              GLNId/gln:
                url: null
                array: true
                index: 31
                elements:
                  value[x]:
                    elements:
                      type:
                        short: GLN
                        pattern:
                          type: CodeableConcept
                          value:
                            coding:
                            - {code: GLN, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-agent-who-identifier-types'}
                        index: 32
                      value: {short: equals SBDH/Sender/Identifier, mustSupport: true, index: 33}
            elements:
              extension:
                index: 29
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  - {path: value.ofType(Identifier).type, type: value}
                  min: null
                  slices:
                    GLNId:
                      match:
                        url: null
                        value:
                          ofType(Identifier): {type: null}
                      schema: {type: Extension, mustSupport: true, url: 'http://medcomehmi.dk/ig/eds/StructureDefinition/eds-otherId', index: 30}
                      min: 0
                    GLNId/gln:
                      match:
                        url: null
                        value:
                          ofType(Identifier): {type: null}
                      schema:
                        array: true
                        index: 31
                        elements:
                          value[x]:
                            elements:
                              type:
                                short: GLN
                                pattern:
                                  type: CodeableConcept
                                  value:
                                    coding:
                                    - {code: GLN, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-agent-who-identifier-types'}
                                index: 32
                              value: {short: equals SBDH/Sender/Identifier, mustSupport: true, index: 33}
              type:
                short: $EhmiDeliveryStatusParticipationRoleType#ehmiSender
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: ehmiSender, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-participationroletype'}
                index: 34
                elements:
                  coding:
                    elements:
                      system:
                        pattern: {type: Uri, value: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-participationroletype'}
                        index: 35
                      code:
                        pattern: {type: Code, value: ehmiSender}
                        index: 36
                      display:
                        pattern: {type: String, value: Sender}
                        index: 37
              who:
                type: Reference
                mustSupport: true
                refers: ['http://hl7.org/fhir/StructureDefinition/Organization']
                index: 38
                elements:
                  identifier: {short: 'equals SBDH/BusinessScope/Scope[Type=Sender]/InstanceIdentifier', mustSupport: true, index: 39}
                required: [identifier]
              name: {mustSupport: true, index: 40}
            required: [who, type]
        ehmiReceiver:
          match:
            type:
              coding:
              - {code: ehmiReceiver, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-participationroletype'}
          schema:
            _required: true
            index: 41
            extensions:
              GLNId: {url: 'http://medcomehmi.dk/ig/eds/StructureDefinition/eds-otherId', min: 0, type: Extension, mustSupport: true, index: 43}
              GLNId/gln:
                url: null
                array: true
                index: 44
                elements:
                  value[x]:
                    elements:
                      type:
                        short: GLN
                        pattern:
                          type: CodeableConcept
                          value:
                            coding:
                            - {code: GLN, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-agent-who-identifier-types'}
                        index: 45
                      value: {short: equals SBDH/Receiver/Identifier, mustSupport: true, index: 46}
            elements:
              extension:
                index: 42
                slicing:
                  rules: open
                  ordered: false
                  discriminator:
                  - {path: url, type: value}
                  - {path: value.ofType(Identifier).type, type: value}
                  min: null
                  slices:
                    GLNId:
                      match:
                        url: null
                        value:
                          ofType(Identifier): {type: null}
                      schema: {type: Extension, mustSupport: true, url: 'http://medcomehmi.dk/ig/eds/StructureDefinition/eds-otherId', index: 43}
                      min: 0
                    GLNId/gln:
                      match:
                        url: null
                        value:
                          ofType(Identifier): {type: null}
                      schema:
                        array: true
                        index: 44
                        elements:
                          value[x]:
                            elements:
                              type:
                                short: GLN
                                pattern:
                                  type: CodeableConcept
                                  value:
                                    coding:
                                    - {code: GLN, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-agent-who-identifier-types'}
                                index: 45
                              value: {short: equals SBDH/Receiver/Identifier, mustSupport: true, index: 46}
              type:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: ehmiReceiver, system: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-participationroletype'}
                index: 47
                elements:
                  coding:
                    elements:
                      system:
                        pattern: {type: Uri, value: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-participationroletype'}
                        index: 48
                      code:
                        pattern: {type: Code, value: ehmiReceiver}
                        index: 49
                      display:
                        pattern: {type: String, value: Receiver}
                        index: 50
              who:
                type: Reference
                mustSupport: true
                refers: ['http://hl7.org/fhir/StructureDefinition/Organization']
                index: 51
                elements:
                  identifier: {mustSupport: true, index: 52}
                required: [identifier]
              name: {mustSupport: true, index: 53}
            required: [who, name, type]
  id: {mustSupport: true, index: 0}
  purposeOfEvent: {index: 24}
  action:
    pattern: {type: Code, value: C}
    index: 20
  period: {index: 21}
  entity:
    array: true
    min: 2
    index: 59
    elements:
      type:
        elements:
          system:
            pattern: {type: Uri, value: 'http://medcomehmi.dk/ig/terminology/CodeSystem/ehmi-delivery-status-entity-type'}
            index: 60
          code:
            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-type-valueset'}
            index: 61
    slicing:
      rules: open
      discriminator:
      - {path: type.code, type: value}
      min: 2
      slices:
        ehmiMessage:
          match:
            type: {code: ehmiMessage}
          schema:
            _required: true
            index: 62
            elements:
              what:
                elements:
                  identifier: {mustSupport: true, index: 63}
                required: [identifier]
              type:
                elements:
                  system: {mustSupport: true, index: 64}
                  code:
                    pattern: {type: Code, value: ehmiMessage}
                    mustSupport: true
                    index: 65
                  display:
                    mustSupport: true
                    pattern: {type: String, value: Message}
                    index: 66
                required: [display, system, code]
              detail:
                short: something short
                array: true
                min: 2
                max: 3
                index: 67
                elements:
                  type:
                    binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                    index: 68
                slicing:
                  rules: open
                  discriminator:
                  - {path: type, type: value}
                  min: 2
                  max: 3
                  slices:
                    ehmiMessageType:
                      match: {type: ehmiMessageType}
                      schema:
                        _required: true
                        index: 69
                        elements:
                          type:
                            pattern: {type: String, value: ehmiMessageType}
                            index: 70
                          value:
                            choices: []
                            index: 72
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    short: equals 'SBDH/DocumentIdentification/Standard/[value]' e.g. homecareobservation-message
                                    choices: [valueString]
                                    _required: true
                                    index: 74
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            short: equals 'SBDH/DocumentIdentification/Standard/[value]' e.g. homecareobservation-message
                            choiceOf: value
                            index: 75
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, short: 'equals ''SBDH/DocumentIdentification/Standard/[value]'' e.g. homecareobservation-message', choiceOf: value, _required: true, index: 75}
                                  min: 1
                                  max: 1
                        required: [valueString]
                    ehmiMessageVersion:
                      match: {type: ehmiMessageVersion}
                      schema:
                        _required: true
                        index: 76
                        elements:
                          type:
                            pattern: {type: String, value: ehmiMessageVersion}
                            index: 77
                          value:
                            choices: []
                            index: 79
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    short: equals 'SBDH/DocumentIdentification/TypeVersion/[value]' e.g. 1.0
                                    choices: [valueString]
                                    _required: true
                                    index: 81
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            short: equals 'SBDH/DocumentIdentification/TypeVersion/[value]' e.g. 1.0
                            choiceOf: value
                            index: 82
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, short: 'equals ''SBDH/DocumentIdentification/TypeVersion/[value]'' e.g. 1.0', choiceOf: value, _required: true, index: 82}
                                  min: 1
                                  max: 1
                        required: [valueString]
                    ehmiStatisticalInfo:
                      match: {type: ehmiStatisticalInfo}
                      schema:
                        index: 83
                        elements:
                          type:
                            pattern: {type: String, value: ehmiStatisticalInfo}
                            index: 84
                          value:
                            choices: []
                            index: 86
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    short: equals 'MCM:' + SBDH/DocumentIdentification/Standard/[value]+'|'+SBDH/DocumentIdentification/TypeVersion/[value]+#[Postfix values]
                                    choices: [valueString]
                                    _required: true
                                    index: 88
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            short: equals 'MCM:' + SBDH/DocumentIdentification/Standard/[value]+'|'+SBDH/DocumentIdentification/TypeVersion/[value]+#[Postfix values]
                            choiceOf: value
                            index: 89
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, short: 'equals ''MCM:'' + SBDH/DocumentIdentification/Standard/[value]+''|''+SBDH/DocumentIdentification/TypeVersion/[value]+#[Postfix values]', choiceOf: value, _required: true, index: 89}
                                  min: 1
                                  max: 1
                        required: [valueString]
        ehmiMessageEnvelope:
          match:
            type: {code: ehmiMessageEnvelope}
          schema:
            index: 90
            elements:
              what:
                elements:
                  identifier: {mustSupport: true, index: 91}
                required: [identifier]
              type:
                elements:
                  system: {mustSupport: true, index: 92}
                  code:
                    pattern: {type: Code, value: ehmiMessageEnvelope}
                    mustSupport: true
                    index: 93
                  display:
                    mustSupport: true
                    pattern: {type: String, value: Message Envelope}
                    index: 94
                required: [display, system, code]
              detail:
                short: something short
                index: 95
                slicing:
                  rules: open
                  discriminator:
                  - {path: type, type: value}
                  min: null
                  max: 1
                  slices:
                    ehmiMessageEnvelopeType:
                      match: {type: null}
                      schema:
                        index: 96
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            index: 97
                            elements:
                              value:
                                pattern: {type: String, value: ehmiMessageEnvelopeType}
                                index: 98
                          value:
                            choices: []
                            index: 100
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    short: equals 'SBDH/DocumentIdentification/Type/[value]' e.g. Bundle
                                    choices: [valueString]
                                    _required: true
                                    index: 102
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            short: equals 'SBDH/DocumentIdentification/Type/[value]' e.g. Bundle
                            choiceOf: value
                            index: 103
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, short: 'equals ''SBDH/DocumentIdentification/Type/[value]'' e.g. Bundle', choiceOf: value, _required: true, index: 103}
                                  min: 1
                                  max: 1
                        required: [valueString]
        ehmiTransportEnvelope:
          match:
            type: {code: ehmiTransportEnvelope}
          schema:
            index: 104
            elements:
              what:
                elements:
                  identifier: {mustSupport: true, index: 105}
                required: [identifier]
              type:
                elements:
                  system: {mustSupport: true, index: 106}
                  code:
                    pattern: {type: Code, value: ehmiTransportEnvelope}
                    mustSupport: true
                    index: 107
                  display:
                    mustSupport: true
                    pattern: {type: String, value: Transport Envelope}
                    index: 108
                required: [display, system, code]
              detail:
                short: something short
                array: true
                max: 2
                index: 109
                slicing:
                  rules: open
                  discriminator:
                  - {path: type, type: value}
                  min: null
                  max: 2
                  slices:
                    ehmiTransportEnvelopeType:
                      match: {type: ehmiTransportEnvelopeType}
                      schema:
                        index: 110
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            pattern: {type: String, value: ehmiTransportEnvelopeType}
                            index: 111
                          value:
                            choices: []
                            index: 113
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    short: = 'SBDH'
                                    choices: [valueString]
                                    _required: true
                                    index: 115
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            short: = 'SBDH'
                            choiceOf: value
                            index: 116
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, short: = 'SBDH', choiceOf: value, _required: true, index: 116}
                                  min: 1
                                  max: 1
                        required: [valueString]
                    ehmiTransportEnvelopeVersion:
                      match: {type: ehmiTransportEnvelopeVersion}
                      schema:
                        index: 117
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            pattern: {type: String, value: ehmiTransportEnvelopeVersion}
                            index: 118
                          value:
                            choices: []
                            index: 120
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    short: equals SBDH/HeaderVersion/[value] e.g. 1.2
                                    choices: [valueString]
                                    _required: true
                                    index: 122
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            short: equals SBDH/HeaderVersion/[value] e.g. 1.2
                            choiceOf: value
                            index: 123
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, short: 'equals SBDH/HeaderVersion/[value] e.g. 1.2', choiceOf: value, _required: true, index: 123}
                                  min: 1
                                  max: 1
                        required: [valueString]
        ehmiOrigMessage:
          match:
            type: {code: ehmiOrigMessage}
          schema:
            index: 124
            elements:
              what:
                elements:
                  identifier: {mustSupport: true, index: 125}
                required: [identifier]
              type:
                elements:
                  system: {mustSupport: true, index: 126}
                  code:
                    pattern: {type: Code, value: ehmiOrigMessage}
                    mustSupport: true
                    index: 127
                  display:
                    mustSupport: true
                    pattern: {type: String, value: Original Message}
                    index: 128
                required: [display, system, code]
              detail:
                short: something short
                array: true
                min: 2
                max: 2
                index: 129
                slicing:
                  rules: open
                  discriminator:
                  - {path: type, type: value}
                  min: 2
                  max: 2
                  slices:
                    ehmiMessageType:
                      match: {type: ehmiMessageType}
                      schema:
                        _required: true
                        index: 130
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            pattern: {type: String, value: ehmiMessageType}
                            index: 131
                          value:
                            choices: []
                            index: 133
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    choices: [valueString]
                                    _required: true
                                    index: 135
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            choiceOf: value
                            index: 136
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, choiceOf: value, _required: true, index: 136}
                                  min: 1
                                  max: 1
                        required: [valueString]
                    ehmiMessageVersion:
                      match: {type: ehmiMessageVersion}
                      schema:
                        _required: true
                        index: 137
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            pattern: {type: String, value: ehmiMessageVersion}
                            index: 138
                          value:
                            choices: []
                            index: 140
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    choices: [valueString]
                                    _required: true
                                    index: 142
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            choiceOf: value
                            index: 143
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, choiceOf: value, _required: true, index: 143}
                                  min: 1
                                  max: 1
                        required: [valueString]
        ehmiOrigTransportEnvelope:
          match:
            type: {code: ehmiOrigTransportEnvelope}
          schema:
            index: 144
            elements:
              what:
                elements:
                  identifier: {mustSupport: true, index: 145}
                required: [identifier]
              type:
                elements:
                  system: {mustSupport: true, index: 146}
                  code:
                    pattern: {type: Code, value: ehmiOrigTransportEnvelope}
                    mustSupport: true
                    index: 147
                  display:
                    mustSupport: true
                    pattern: {type: String, value: Original Transport Envelope}
                    index: 148
                required: [display, system, code]
              detail:
                short: something short
                array: true
                max: 2
                index: 149
                slicing:
                  rules: open
                  discriminator:
                  - {path: type, type: value}
                  min: null
                  max: 2
                  slices:
                    ehmiTransportEnvelopeType:
                      match: {type: ehmiTransportEnvelopeType}
                      schema:
                        index: 150
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            pattern: {type: String, value: ehmiTransportEnvelopeType}
                            index: 151
                          value:
                            choices: []
                            index: 153
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    choices: [valueString]
                                    _required: true
                                    index: 155
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            choiceOf: value
                            index: 156
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, choiceOf: value, _required: true, index: 156}
                                  min: 1
                                  max: 1
                        required: [valueString]
                    ehmiTransportEnvelopeVersion:
                      match: {type: ehmiTransportEnvelopeVersion}
                      schema:
                        index: 157
                        elements:
                          type:
                            binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-entity-detail-type-valueset'}
                            pattern: {type: String, value: ehmiTransportEnvelopeVersion}
                            index: 158
                          value:
                            choices: []
                            index: 160
                            slicing:
                              rules: open
                              ordered: false
                              discriminator:
                              - {path: $this, type: type}
                              min: null
                              slices:
                                valueString:
                                  match: {}
                                  schema:
                                    choices: [valueString]
                                    _required: true
                                    index: 162
                                  min: 1
                                  max: 1
                          valueString:
                            type: string
                            choiceOf: value
                            index: 163
                            slicing:
                              slices:
                                valueString:
                                  match: {}
                                  schema: {type: string, choiceOf: value, _required: true, index: 163}
                                  min: 1
                                  max: 1
                        required: [valueString]
  subtype:
    mustSupport: true
    index: 5
    elements:
      system:
        pattern: {type: Uri, value: 'http://hl7.org/fhir/ValueSet/audit-event-sub-type'}
        index: 6
      code:
        binding: {strength: required, valueSet: 'http://medcomehmi.dk/ig/terminology/ValueSet/ehmi-delivery-status-sub-types-valueset'}
        index: 7
    slicing:
      rules: open
      discriminator:
      - {path: code, type: value}
      min: 1
      max: 1
      slices:
        msg-created-and-sent:
          match: {code: msg-created-and-sent}
          schema:
            mustSupport: true
            index: 8
            elements:
              system: {index: 9}
              code:
                pattern: {type: Code, value: msg-created-and-sent}
                index: 10
            required: [system, code]
        msg-sent:
          match: {code: msg-sent}
          schema:
            mustSupport: true
            index: 11
            elements:
              system: {index: 12}
              code:
                pattern: {type: Code, value: msg-sent}
                index: 13
            required: [system, code]
        msg-received:
          match: {code: msg-received}
          schema:
            mustSupport: true
            index: 14
            elements:
              system: {index: 15}
              code:
                pattern: {type: Code, value: msg-received}
                index: 16
            required: [system, code]
        msg-received-and-finalized:
          match: {code: msg-received-and-finalized}
          schema:
            mustSupport: true
            index: 17
            elements:
              system: {index: 18}
              code:
                pattern: {type: Code, value: msg-received-and-finalized}
                index: 19
            required: [system, code]
package_version: 1.0.1-draft
class: profile
kind: resource
url: http://medcomehmi.dk/ig/eds/StructureDefinition/EdsBasicDeliveryStatus
base: http://hl7.org/fhir/StructureDefinition/AuditEvent
version: 1.0.1-draft
required: [subtype, id, action, outcome]