PackagesCanonicalsLogsProblems
    Packages
    de.gematik.dipag@1.0.8
    https://gematik.de/fhir/dipag/StructureDefinition/dipag-nutzungsprotokoll
description: null
package_name: de.gematik.dipag
derivation: constraint
name: DiPagNutzungsprotokoll
type: AuditEvent
elements:
  type:
    binding: {strength: required, valueSet: 'https://gematik.de/fhir/dipag/ValueSet/dipag-audit-event-type-vs'}
    mustSupport: true
    index: 0
  subtype:
    binding: {strength: required, valueSet: 'https://gematik.de/fhir/dipag/ValueSet/dipag-audit-event-sub-type-vs'}
    mustSupport: true
    index: 1
  action: {mustSupport: true, index: 2}
  recorded: {mustSupport: true, index: 3}
  outcome: {mustSupport: true, index: 4}
  agent:
    mustSupport: true
    index: 5
    elements:
      type:
        binding: {strength: required, valueSet: 'https://gematik.de/fhir/dipag/ValueSet/dipag-audit-event-agent-type-vs'}
        mustSupport: true
        index: 6
      who:
        mustSupport: true
        index: 7
        elements:
          identifier: {mustSupport: true, index: 8}
          display: {mustSupport: true, index: 9}
        required: [display]
    required: [type]
  source:
    elements:
      observer:
        elements:
          identifier: {mustSupport: true, index: 10}
          display: {mustSupport: true, index: 11}
  entity:
    mustSupport: true
    index: 12
    elements:
      detail:
        mustSupport: true
        index: 13
        elements:
          type:
            binding: {strength: required, valueSet: 'https://gematik.de/fhir/dipag/ValueSet/dipag-audit-event-detail-vs'}
            mustSupport: true
            index: 14
          value:
            choices: []
            index: 16
            slicing:
              rules: open
              ordered: false
              discriminator:
              - {path: $this, type: type}
              min: null
              slices:
                valueString:
                  match: {}
                  schema:
                    mustSupport: true
                    choices: [valueString]
                    index: 18
                  min: 0
                  max: 1
          valueString:
            type: string
            mustSupport: true
            choiceOf: value
            index: 19
            slicing:
              slices:
                valueString:
                  match: {}
                  schema: {type: string, mustSupport: true, choiceOf: value, index: 19}
                  min: 0
                  max: 1
    slicing:
      rules: open
      discriminator:
      - {path: what.type, type: pattern}
      min: 1
      slices:
        Versicherter:
          match:
            what: {type: Patient}
          schema:
            mustSupport: true
            _required: true
            index: 20
            elements:
              what:
                index: 21
                elements:
                  reference: {mustSupport: true, index: 22}
                  type:
                    pattern: {type: Uri, value: Patient}
                    mustSupport: true
                    index: 23
                required: [type]
        DocumentReference:
          match:
            what: {type: DocumentReference}
          schema:
            mustSupport: true
            array: true
            index: 24
            elements:
              what:
                index: 25
                elements:
                  reference: {mustSupport: true, index: 26}
                  type:
                    pattern: {type: Uri, value: DocumentReference}
                    mustSupport: true
                    index: 27
                required: [type]
              name: {mustSupport: true, index: 28}
            required: [name]
        Binary:
          match:
            what: {type: Binary}
          schema:
            mustSupport: true
            array: true
            index: 29
            elements:
              what:
                index: 30
                elements:
                  reference: {mustSupport: true, index: 31}
                  type:
                    pattern: {type: Uri, value: Binary}
                    mustSupport: true
                    index: 32
                required: [type]
              name: {mustSupport: true, index: 33}
            required: [name]
package_version: 1.0.8
class: profile
kind: resource
url: https://gematik.de/fhir/dipag/StructureDefinition/dipag-nutzungsprotokoll
base: http://hl7.org/fhir/StructureDefinition/AuditEvent
version: 1.0.7
required: [subtype, entity]