PackagesCanonicalsLogsProblems
    Packages
    ch.fhir.ig.ch@atc-3.1.0
    http://fhir.ch/ig/ch-atc/StructureDefinition/AccessAuditTrailEvent
description: 'This profile defines the content of the access audit trail event which a community has to provide for a patients audit trail. '
package_name: ch.fhir.ig.ch
derivation: constraint
name: AccessAuditTrailEvent
type: AuditEvent
elements:
  type:
    short: Type/identifier of event
    type: Coding
    binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/ValueSet/audit-event-type'}
    index: 0
  subtype:
    type: Coding
    binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-atc/ValueSet/AccessAuditTrailEventType'}
    index: 1
  recorded: {short: Time when the event was recorded, type: instant, index: 2}
  agent:
    min: 1
    short: Patient, repeated if representative
    type: BackboneElement
    array: true
    index: 3
    elements:
      role:
        short: Agent role in the event
        type: CodeableConcept
        binding: {strength: required, valueSet: 'http://fhir.ch/ig/ch-atc/ValueSet/EprParticipant'}
        index: 4
      who:
        short: Identifier of who
        refers: ['http://hl7.org/fhir/StructureDefinition/Device', 'http://hl7.org/fhir/StructureDefinition/Organization', 'http://hl7.org/fhir/StructureDefinition/Patient', 'http://hl7.org/fhir/StructureDefinition/Practitioner', 'http://hl7.org/fhir/StructureDefinition/PractitionerRole', 'http://hl7.org/fhir/StructureDefinition/RelatedPerson']
        type: Reference
        index: 5
      name: {short: Human-meaningful name for the agent, type: string, index: 6}
      requestor: {short: Whether user is initiator, type: boolean, index: 7}
    required: [role, requestor, name]
  entity:
    constraint:
      sev-1: {human: Either a name or a query (NOT both), severity: error, expression: name.empty() or query.empty()}
    short: Data or objects used
    type: BackboneElement
    array: true
    index: 8
    slicing:
      rules: open
      discriminator:
      - {path: type.code, type: value}
      - {path: role.code, type: value}
      min: 0
      slices:
        Patient:
          match:
            type: {code: '1'}
            role: {code: '1'}
          schema:
            short: Patient
            _required: true
            index: 9
            elements:
              what:
                elements:
                  identifier:
                    short: Patient Id (EPR-SPID)
                    type: Identifier
                    index: 10
                    elements:
                      system:
                        pattern: {type: Uri, value: 'urn:oid:2.16.756.5.30.1.127.3.10.3'}
                        index: 11
                    required: [system]
                required: [identifier]
              type:
                short: Type of entity involved
                type: Coding
                index: 12
                elements:
                  code:
                    pattern: {type: Code, value: '1'}
                    index: 13
                required: [code]
              role:
                type: Coding
                short: What role the entity played
                index: 14
                elements:
                  code:
                    pattern: {type: Code, value: '1'}
                    index: 15
                required: [code]
            required: [role, type]
package_version: atc-3.1.0
class: profile
kind: resource
url: http://fhir.ch/ig/ch-atc/StructureDefinition/AccessAuditTrailEvent
base: http://hl7.org/fhir/StructureDefinition/AuditEvent
version: 3.1.0
required: [subtype, agent, recorded, type]