Koppeltaal 2.0 Implementation Guide (Full Documentation)
0.16.2 - ci-build NL

Koppeltaal 2.0 Implementation Guide (Full Documentation) - Local Development build (v0.16.2) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: KT2_AuditEvent

Official URL: http://koppeltaal.nl/fhir/StructureDefinition/KT2AuditEvent Version: 0.16.2
Draft as of 2023-01-31 Computable Name: KT2_AuditEvent

Copyright/Legal: VZVZ

The AuditEvent resource is used to consolidate and track logging information within the Koppeltaal ecosystem. It captures details about system activities, data access, and interactions between applications for security and compliance purposes.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. AuditEvent 0..* AuditEvent Event record kept for security purposes
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-origin 0..1 Reference(KT2_Device) Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/resource-origin
.... extension:traceId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/trace-id
.... extension:correlationId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/correlation-id
.... extension:requestId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/request-id
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... subtype Σ 0..* Coding More specific type/id for the event
Binding: AuditEventSub-Type (extensible): Sub-type of event.
... recorded Σ 1..1 instant Time when the event was recorded
... agent 1..* BackboneElement Actor involved in the event
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept How agent participated
Binding: ParticipationRoleType (extensible)
.... role 0..* CodeableConcept Agent role in the event
Binding: SecurityRoleType (example): What security role enabled the agent to participate in the event.
.... who Σ 1..1 Reference(KT2_Device) Identifier of who
.... requestor Σ 1..1 boolean Whether user is initiator
... source 1..1 BackboneElement Audit Event Reporter
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... site 0..1 string Logical source location within the enterprise
.... observer Σ 1..1 Reference(KT2_Device) The identity of source detecting the event
... entity C 1..* BackboneElement Data or objects used
Constraints: sev-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 0..1 Coding Type of entity involved
Binding: AuditEventEntityType (extensible): Code for the entity type involved in the audit event.
.... lifecycle 0..1 Coding Life-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible): Identifier for the data life-cycle stage for the entity.
.... securityLabel 0..* Coding Security labels on the entity
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... query ΣC 0..1 base64Binary Query parameters

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
AuditEvent.type Base extensible Audit Event ID 📦4.0.1 FHIR Std.
AuditEvent.subtype Base extensible Audit Event Sub-Type 📍4.0.1 FHIR Std.
AuditEvent.agent.type Base extensible ParticipationRoleType 📦4.0.1 FHIR Std.
AuditEvent.agent.role Base example SecurityRoleType 📍4.0.1 FHIR Std.
AuditEvent.entity.type Base extensible Audit event entity type 📍4.0.1 FHIR Std.
AuditEvent.entity.lifecycle Base extensible ObjectLifecycleEvents 📍4.0.1 FHIR Std.
AuditEvent.entity.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error AuditEvent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error AuditEvent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice AuditEvent A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sev-1 error AuditEvent.entity Either a name or a query (NOT both) name.empty() or query.empty()

This structure is derived from AuditEvent

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. AuditEvent 0..* AuditEvent Event record kept for security purposes
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-origin 0..1 Reference(KT2_Device) Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/resource-origin
.... extension:traceId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/trace-id
.... extension:correlationId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/correlation-id
.... extension:requestId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/request-id
... type 1..1 Coding Type/identifier of event
Binding: AuditEventID (extensible)
... subtype 0..* Coding More specific type/id for the event
... agent
.... type 1..1 CodeableConcept How agent participated
Binding: ParticipationRoleType (extensible)
.... role 0..* CodeableConcept Agent role in the event
.... who 1..1 Reference(KT2_Device) Identifier of who
.... altId 0..0 Alternative User identity
.... name 0..0 Human friendly name for the agent
.... location 0..0 Where
.... policy 0..0 Policy that authorized event
.... media 0..0 Type of media
.... purposeOfUse 0..0 Reason given for this user
... source
.... site 0..1 string Logical source location within the enterprise
.... observer 1..1 Reference(KT2_Device) The identity of source detecting the event
... entity 1..* BackboneElement Data or objects used
.... type 0..1 Coding Type of entity involved
.... lifecycle 0..1 Coding Life-cycle stage for the entity
.... securityLabel 0..* Coding Security labels on the entity
.... query 0..1 base64Binary Query parameters
.... detail 0..0 Additional Information about the entity

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
AuditEvent.type Base extensible Audit Event ID 📦4.0.1 FHIR Std.
AuditEvent.agent.type Base extensible ParticipationRoleType 📦4.0.1 FHIR Std.
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. AuditEvent 0..* AuditEvent Event record kept for security purposes
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-origin 0..1 Reference(KT2_Device) Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/resource-origin
.... extension:traceId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/trace-id
.... extension:correlationId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/correlation-id
.... extension:requestId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/request-id
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... type Σ 1..1 Coding Type/identifier of event
Binding: AuditEventID (extensible)
... subtype Σ 0..* Coding More specific type/id for the event
Binding: AuditEventSub-Type (extensible): Sub-type of event.
... action Σ 0..1 code Type of action performed during the event
Binding: AuditEventAction (required): Indicator for type of action performed during the event that generated the event.
... period 0..1 Period When the activity occurred
... recorded Σ 1..1 instant Time when the event was recorded
... outcome Σ 0..1 code Whether the event succeeded or failed
Binding: AuditEventOutcome (required): Indicates whether the event succeeded or failed.
... outcomeDesc Σ 0..1 string Description of the event outcome
... agent 1..* BackboneElement Actor involved in the event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept How agent participated
Binding: ParticipationRoleType (extensible)
.... role 0..* CodeableConcept Agent role in the event
Binding: SecurityRoleType (example): What security role enabled the agent to participate in the event.
.... who Σ 1..1 Reference(KT2_Device) Identifier of who
.... requestor Σ 1..1 boolean Whether user is initiator
.... network 0..1 BackboneElement Logical network location for application activity
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... address 0..1 string Identifier for the network access point of the user device
..... type 0..1 code The type of network access point
Binding: AuditEventAgentNetworkType (required): The type of network access point of this agent in the audit event.
... source 1..1 BackboneElement Audit Event Reporter
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... site 0..1 string Logical source location within the enterprise
.... observer Σ 1..1 Reference(KT2_Device) The identity of source detecting the event
.... type 0..* Coding The type of source where event originated
Binding: AuditEventSourceType (extensible): Code specifying the type of system that detected and recorded the event.
... entity C 1..* BackboneElement Data or objects used
Constraints: sev-1
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... what Σ 0..1 Reference(Resource) Specific instance of resource
.... type 0..1 Coding Type of entity involved
Binding: AuditEventEntityType (extensible): Code for the entity type involved in the audit event.
.... role 0..1 Coding What role the entity played
Binding: AuditEventEntityRole (extensible): Code representing the role the entity played in the audit event.
.... lifecycle 0..1 Coding Life-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible): Identifier for the data life-cycle stage for the entity.
.... securityLabel 0..* Coding Security labels on the entity
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... name ΣC 0..1 string Descriptor for entity
.... description 0..1 string Descriptive text
.... query ΣC 0..1 base64Binary Query parameters

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
AuditEvent.language Base preferred Common Languages 📍4.0.1 FHIR Std.
AuditEvent.type Base extensible Audit Event ID 📦4.0.1 FHIR Std.
AuditEvent.subtype Base extensible Audit Event Sub-Type 📍4.0.1 FHIR Std.
AuditEvent.action Base required AuditEventAction 📍4.0.1 FHIR Std.
AuditEvent.outcome Base required AuditEventOutcome 📍4.0.1 FHIR Std.
AuditEvent.agent.type Base extensible ParticipationRoleType 📦4.0.1 FHIR Std.
AuditEvent.agent.role Base example SecurityRoleType 📍4.0.1 FHIR Std.
AuditEvent.agent.network.​type Base required AuditEventAgentNetworkType 📍4.0.1 FHIR Std.
AuditEvent.source.type Base extensible Audit Event Source Type 📍4.0.1 FHIR Std.
AuditEvent.entity.type Base extensible Audit event entity type 📍4.0.1 FHIR Std.
AuditEvent.entity.role Base extensible AuditEventEntityRole 📍4.0.1 FHIR Std.
AuditEvent.entity.lifecycle Base extensible ObjectLifecycleEvents 📍4.0.1 FHIR Std.
AuditEvent.entity.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error AuditEvent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error AuditEvent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice AuditEvent A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sev-1 error AuditEvent.entity Either a name or a query (NOT both) name.empty() or query.empty()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. AuditEvent 0..* AuditEvent Event record kept for security purposes
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-origin 0..1 Reference(KT2_Device) Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/resource-origin
.... extension:traceId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/trace-id
.... extension:correlationId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/correlation-id
.... extension:requestId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/request-id
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... subtype Σ 0..* Coding More specific type/id for the event
Binding: AuditEventSub-Type (extensible): Sub-type of event.
... recorded Σ 1..1 instant Time when the event was recorded
... agent 1..* BackboneElement Actor involved in the event
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept How agent participated
Binding: ParticipationRoleType (extensible)
.... role 0..* CodeableConcept Agent role in the event
Binding: SecurityRoleType (example): What security role enabled the agent to participate in the event.
.... who Σ 1..1 Reference(KT2_Device) Identifier of who
.... requestor Σ 1..1 boolean Whether user is initiator
... source 1..1 BackboneElement Audit Event Reporter
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... site 0..1 string Logical source location within the enterprise
.... observer Σ 1..1 Reference(KT2_Device) The identity of source detecting the event
... entity C 1..* BackboneElement Data or objects used
Constraints: sev-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 0..1 Coding Type of entity involved
Binding: AuditEventEntityType (extensible): Code for the entity type involved in the audit event.
.... lifecycle 0..1 Coding Life-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible): Identifier for the data life-cycle stage for the entity.
.... securityLabel 0..* Coding Security labels on the entity
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... query ΣC 0..1 base64Binary Query parameters

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
AuditEvent.type Base extensible Audit Event ID 📦4.0.1 FHIR Std.
AuditEvent.subtype Base extensible Audit Event Sub-Type 📍4.0.1 FHIR Std.
AuditEvent.agent.type Base extensible ParticipationRoleType 📦4.0.1 FHIR Std.
AuditEvent.agent.role Base example SecurityRoleType 📍4.0.1 FHIR Std.
AuditEvent.entity.type Base extensible Audit event entity type 📍4.0.1 FHIR Std.
AuditEvent.entity.lifecycle Base extensible ObjectLifecycleEvents 📍4.0.1 FHIR Std.
AuditEvent.entity.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error AuditEvent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error AuditEvent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice AuditEvent A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sev-1 error AuditEvent.entity Either a name or a query (NOT both) name.empty() or query.empty()

Differential View

This structure is derived from AuditEvent

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. AuditEvent 0..* AuditEvent Event record kept for security purposes
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-origin 0..1 Reference(KT2_Device) Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/resource-origin
.... extension:traceId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/trace-id
.... extension:correlationId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/correlation-id
.... extension:requestId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/request-id
... type 1..1 Coding Type/identifier of event
Binding: AuditEventID (extensible)
... subtype 0..* Coding More specific type/id for the event
... agent
.... type 1..1 CodeableConcept How agent participated
Binding: ParticipationRoleType (extensible)
.... role 0..* CodeableConcept Agent role in the event
.... who 1..1 Reference(KT2_Device) Identifier of who
.... altId 0..0 Alternative User identity
.... name 0..0 Human friendly name for the agent
.... location 0..0 Where
.... policy 0..0 Policy that authorized event
.... media 0..0 Type of media
.... purposeOfUse 0..0 Reason given for this user
... source
.... site 0..1 string Logical source location within the enterprise
.... observer 1..1 Reference(KT2_Device) The identity of source detecting the event
... entity 1..* BackboneElement Data or objects used
.... type 0..1 Coding Type of entity involved
.... lifecycle 0..1 Coding Life-cycle stage for the entity
.... securityLabel 0..* Coding Security labels on the entity
.... query 0..1 base64Binary Query parameters
.... detail 0..0 Additional Information about the entity

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
AuditEvent.type Base extensible Audit Event ID 📦4.0.1 FHIR Std.
AuditEvent.agent.type Base extensible ParticipationRoleType 📦4.0.1 FHIR Std.

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. AuditEvent 0..* AuditEvent Event record kept for security purposes
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:resource-origin 0..1 Reference(KT2_Device) Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/resource-origin
.... extension:traceId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/trace-id
.... extension:correlationId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/correlation-id
.... extension:requestId 0..* id Extension
URL: http://koppeltaal.nl/fhir/StructureDefinition/request-id
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... type Σ 1..1 Coding Type/identifier of event
Binding: AuditEventID (extensible)
... subtype Σ 0..* Coding More specific type/id for the event
Binding: AuditEventSub-Type (extensible): Sub-type of event.
... action Σ 0..1 code Type of action performed during the event
Binding: AuditEventAction (required): Indicator for type of action performed during the event that generated the event.
... period 0..1 Period When the activity occurred
... recorded Σ 1..1 instant Time when the event was recorded
... outcome Σ 0..1 code Whether the event succeeded or failed
Binding: AuditEventOutcome (required): Indicates whether the event succeeded or failed.
... outcomeDesc Σ 0..1 string Description of the event outcome
... agent 1..* BackboneElement Actor involved in the event
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... type 1..1 CodeableConcept How agent participated
Binding: ParticipationRoleType (extensible)
.... role 0..* CodeableConcept Agent role in the event
Binding: SecurityRoleType (example): What security role enabled the agent to participate in the event.
.... who Σ 1..1 Reference(KT2_Device) Identifier of who
.... requestor Σ 1..1 boolean Whether user is initiator
.... network 0..1 BackboneElement Logical network location for application activity
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... address 0..1 string Identifier for the network access point of the user device
..... type 0..1 code The type of network access point
Binding: AuditEventAgentNetworkType (required): The type of network access point of this agent in the audit event.
... source 1..1 BackboneElement Audit Event Reporter
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... site 0..1 string Logical source location within the enterprise
.... observer Σ 1..1 Reference(KT2_Device) The identity of source detecting the event
.... type 0..* Coding The type of source where event originated
Binding: AuditEventSourceType (extensible): Code specifying the type of system that detected and recorded the event.
... entity C 1..* BackboneElement Data or objects used
Constraints: sev-1
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... what Σ 0..1 Reference(Resource) Specific instance of resource
.... type 0..1 Coding Type of entity involved
Binding: AuditEventEntityType (extensible): Code for the entity type involved in the audit event.
.... role 0..1 Coding What role the entity played
Binding: AuditEventEntityRole (extensible): Code representing the role the entity played in the audit event.
.... lifecycle 0..1 Coding Life-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible): Identifier for the data life-cycle stage for the entity.
.... securityLabel 0..* Coding Security labels on the entity
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
.... name ΣC 0..1 string Descriptor for entity
.... description 0..1 string Descriptive text
.... query ΣC 0..1 base64Binary Query parameters

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
AuditEvent.language Base preferred Common Languages 📍4.0.1 FHIR Std.
AuditEvent.type Base extensible Audit Event ID 📦4.0.1 FHIR Std.
AuditEvent.subtype Base extensible Audit Event Sub-Type 📍4.0.1 FHIR Std.
AuditEvent.action Base required AuditEventAction 📍4.0.1 FHIR Std.
AuditEvent.outcome Base required AuditEventOutcome 📍4.0.1 FHIR Std.
AuditEvent.agent.type Base extensible ParticipationRoleType 📦4.0.1 FHIR Std.
AuditEvent.agent.role Base example SecurityRoleType 📍4.0.1 FHIR Std.
AuditEvent.agent.network.​type Base required AuditEventAgentNetworkType 📍4.0.1 FHIR Std.
AuditEvent.source.type Base extensible Audit Event Source Type 📍4.0.1 FHIR Std.
AuditEvent.entity.type Base extensible Audit event entity type 📍4.0.1 FHIR Std.
AuditEvent.entity.role Base extensible AuditEventEntityRole 📍4.0.1 FHIR Std.
AuditEvent.entity.lifecycle Base extensible ObjectLifecycleEvents 📍4.0.1 FHIR Std.
AuditEvent.entity.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error AuditEvent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error AuditEvent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error AuditEvent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice AuditEvent A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sev-1 error AuditEvent.entity Either a name or a query (NOT both) name.empty() or query.empty()

 

Other representations of profile: CSV, Excel, Schematron

Notes:

AuditEvent.type

For the type element the generic VZVZ ValueSet for this element is used. This set contains only the relevant codes from the DICOM CodeSystem as used in Koppeltaal. The other Codesystems contain the remaining codes.

Note: for the code transmit use

{
    "system": "http://terminology.hl7.org/CodeSystem/iso-21089-lifecycle",
    "code": "transmit"
}

AuditEvent.subtype

The ValueSet for this element contains codes from several Codesystems. See: ValueSet AuditEvent Subtype

For FHIR actions such as read, search and create, use the codes from the CodeSystem http://hl7.org/fhir/restful-interaction. Example:

{
    "system": "http://hl7.org/fhir/restful-interaction",
    "code": "search"
}

For interactions related to application launches and such use codes from the DICOM CodeSystem. Example (Application Start):

{
    "system": "http://dicom.nema.org/resources/ontology/DCM",
    "code": "110120"
}

Agent

The AuditEvent resource instance should always contain at least 2 agents, one for the source, one for the destination.

If necessary the patient to which this event relates can be added as a third agent. For examples see the section Agent.type.

The agent.network.address is used to store the url of the source and the endpoint of the destination.

####### Agent.type

For the type element the generic VZVZ ValueSet for this element is used. This set contains only the relevant codes from the DICOM CodeSystem as used in Koppeltaal. The other Codesystems contain the remaining codes.

As mentioned above, there are several agent elements, one for the source, one for the destination and one that refers to the patient. The examples below only show the relevant elements of agent, not the full set.

source

{
  "agent": [
    {
      "type": {
        "coding": {
          "system": "http://dicom.nema.org/resources/ontology/DCM",
          "code": "110153"
        }
      },
      "requestor": "true"
    }
  ]
}

destination

{
  "agent": [
    {
      "type": {
        "coding": {
          "system": "http://dicom.nema.org/resources/ontology/DCM",
          "code": "110152"
        }
      },
      "requestor": "false"
    }
  ]
}

patient

{
  "agent": [
    {
      "type": {
        "coding": {
          "system": "http://terminology.hl7.org/CodeSystem/v3-RoleClass",
          "code": "PAT"
        }
      },
      "requestor": "false"
    }
  ]
}

Entity.type

For this element, from the ValueSet only use the CodeSystem ResourceType to indicate which FHIR Resource type was used. Example:

{
    "system": "http://hl7.org/fhir/resource-types",
    "code": "CareTeam"
}