PackagesCanonicalsLogsProblems
    Packages
    ch.fhir.ig.ch@atc-3.2.0-ballot
    http://fhir.ch/ig/ch-atc/StructureDefinition/HpdAuditEvent
description: This profile defines the content of the HPD audit events which a community has to provide for a patients audit trail.
package_name: ch.fhir.ig.ch
derivation: constraint
name: HpdAuditEvent
type: AuditEvent
elements:
  type:
    binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/audit-event-type'}
    index: 0
  subtype:
    index: 1
    slicing:
      rules: open
      discriminator:
      - {path: system, type: value}
      min: 1
      slices:
        HpdAuditEventType:
          match: {system: 'urn:oid:2.16.756.5.30.1.127.3.10.7'}
          schema:
            short: HPD Audit Event Type
            binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-atc/ValueSet/HpdAuditEventType'}
            _required: true
            index: 2
            elements:
              system:
                pattern: {type: Uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.7'}
                index: 3
            required: [system]
  recorded: {index: 4}
  agent:
    short: Notification service
    index: 5
    elements:
      who:
        elements:
          identifier: {type: Identifier, index: 6}
        required: [identifier]
      name: {short: Name of notification service, index: 7}
      requestor: {index: 8}
    required: [name]
  entity:
    index: 9
    slicing:
      rules: open
      discriminator:
      - {path: role.code, type: value}
      min: null
      slices:
        Patient:
          match:
            role: {code: '1'}
          schema:
            short: Patient
            _required: true
            index: 10
            elements:
              what:
                elements:
                  identifier:
                    short: Patient Id (EPR-SPID)
                    index: 11
                    elements:
                      system:
                        pattern: {type: Uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.3'}
                        index: 12
                    required: [system]
                required: [identifier]
              type:
                index: 13
                elements:
                  code:
                    pattern: {type: Code, value: '1'}
                    index: 14
                required: [code]
              role:
                index: 15
                elements:
                  code:
                    pattern: {type: Code, value: '1'}
                    index: 16
                required: [code]
            required: [role, type]
        HealthcareProfessional:
          match:
            role: {code: HCP}
          schema:
            short: Healthcare professional (HCP)
            array: true
            min: 1
            _required: true
            index: 17
            elements:
              what:
                elements:
                  identifier:
                    short: 'Identifier: HCP (GLN)'
                    index: 18
                    elements:
                      system:
                        pattern: {type: Uri, value: 'urn:oid:2.51.1.3'}
                        index: 19
                    required: [system]
                required: [identifier]
              type:
                index: 20
                elements:
                  code:
                    pattern: {type: Code, value: '1'}
                    index: 21
                required: [code]
              role:
                index: 22
                elements:
                  system:
                    pattern: {type: Uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.6'}
                    index: 23
                  code:
                    pattern: {type: Code, value: HCP}
                    index: 24
                required: [system, code]
              name: {short: Healthcare professional name, index: 25}
            required: [role, name, type]
        Group:
          match:
            role: {code: GRP}
          schema:
            short: Group
            _required: true
            index: 26
            elements:
              what:
                elements:
                  identifier: {short: Identifier for Group (OID), index: 27}
                required: [identifier]
              type:
                index: 28
                elements:
                  code:
                    pattern: {type: Code, value: '3'}
                    index: 29
                required: [code]
              role:
                index: 30
                elements:
                  system:
                    pattern: {type: Uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.14'}
                    index: 31
                  code:
                    pattern: {type: Code, value: GRP}
                    index: 32
                required: [system, code]
              name: {short: Group name, index: 33}
            required: [role, name, type]
package_version: atc-3.2.0-ballot
class: profile
kind: resource
url: http://fhir.ch/ig/ch-atc/StructureDefinition/HpdAuditEvent
base: http://hl7.org/fhir/StructureDefinition/AuditEvent
version: 3.2.0-ballot
required: [subtype]