StructureDefinition: AccessAuditTrailEvent

Formal Views of Profile Content

The official URL for this profile is:

http://fhir.ch/ig/ch-atc/StructureDefinition/AccessAuditTrailEvent

This profile defines the content of the access audit trail event which a community has to provide for a patients audit trail.

This profile builds on AuditEvent.

This profile was published on Mon May 28 00:00:00 CEST 2018 as a active by Federal Office of Public Health (FOPH).

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

This structure is derived from AuditEvent

Summary

Mandatory: 16 elements
Fixed Value: 3 elements

Slices

This structure defines the following Slices:

  • The element AuditEvent.entity is sliced based on the values of value:type.code, value:role.code

This structure is derived from AuditEvent

NameFlagsCard.TypeDescription & Constraintsdoco
.. AuditEvent I0..*Access Audit Trail Event Content Profile
ch-atc-aae-1: subtype needs to be fixed to ATC_LOG_READ
... id Σ1..1idLogical id of this artifact
... text 1..1NarrativeA human-readable narrative that contains the summary of the Audit Event.
... type Σ1..1CodingType/identifier of event
Binding: Audit Event ID (extensible)
... subtype Σ1..1CodingBinding: AccessAuditTrailEventType (required)
... recorded Σ1..1instantTime when the event was recorded
... agent 1..*BackboneElementPatient, repeated if representative
.... role Σ1..1CodeableConceptAgent role in the event
Binding: EprParticipant (required)
.... userId Σ0..1IdentifierUnique identifier for the user
.... name Σ1..1stringHuman-meaningful name for the agent
.... requestor Σ1..1booleanWhether user is initiator
... entity IBackboneElementData or objects used
Slice: Unordered, Open by value:type.code, value:role.code
sev-1: Either a name or a query (NOT both)
... entity Σ1..1BackboneElementPatient
.... identifier Σ1..1IdentifierPatient Id (EPR-SPID)
..... system 1..1uriFixed Value: urn:oid:2.16.756.5.30.1.127.3.10.3
.... type Σ1..1CodingType of entity involved
..... code Σ1..1codeFixed Value: 1
.... role Σ1..1CodingWhat role the entity played
..... code Σ1..1codeFixed Value: 1

doco Documentation for this format

This structure is derived from AuditEvent

NameFlagsCard.TypeDescription & Constraintsdoco
.. AuditEvent I0..*Access Audit Trail Event Content Profile
ch-atc-aae-1: subtype needs to be fixed to ATC_LOG_READ
... id Σ1..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I1..1NarrativeA human-readable narrative that contains the summary of the Audit Event.
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... type Σ1..1CodingType/identifier of event
Binding: Audit Event ID (extensible)
... subtype Σ1..1CodingMore specific type/id for the event
Binding: AccessAuditTrailEventType (required)
... action Σ0..1codeType of action performed during the event
Binding: AuditEventAction (required)
... recorded Σ1..1instantTime when the event was recorded
... outcome Σ0..1codeWhether the event succeeded or failed
Binding: AuditEventOutcome (required)
... outcomeDesc Σ0..1stringDescription of the event outcome
... purposeOfEvent Σ0..*CodeableConceptThe purposeOfUse of the event
Binding: PurposeOfUse (extensible)
... agent I1..*BackboneElementPatient, repeated if representative
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... role Σ1..1CodeableConceptAgent role in the event
Binding: EprParticipant (required)
.... reference Σ0..1Reference(Practitioner | Organization | Device | Patient | RelatedPerson)Direct reference to resource
.... userId Σ0..1IdentifierUnique identifier for the user
.... altId 0..1stringAlternative User id e.g. authentication
.... name Σ1..1stringHuman-meaningful name for the agent
.... requestor Σ1..1booleanWhether user is initiator
.... location 0..1Reference(Location)Where
.... policy 0..*uriPolicy that authorized event
.... media 0..1CodingType of media
Binding: Media Type Code (extensible)
.... network I0..1BackboneElementLogical network location for application activity
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
..... address 0..1stringIdentifier for the network access point of the user device
..... type 0..1codeThe type of network access point
Binding: AuditEventAgentNetworkType (required)
.... purposeOfUse 0..*CodeableConceptReason given for this user
Binding: PurposeOfUse (extensible)
... source I1..1BackboneElementAudit Event Reporter
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... site 0..1stringLogical source location within the enterprise
.... identifier Σ1..1IdentifierThe identity of source detecting the event
.... type 0..*CodingThe type of source where event originated
Binding: Audit Event Source Type (extensible)
... entity IBackboneElementData or objects used
Slice: Unordered, Open by value:type.code, value:role.code
sev-1: Either a name or a query (NOT both)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... identifier Σ0..1IdentifierSpecific instance of object
.... reference Σ0..1Reference(Resource)Specific instance of resource
.... type 0..1CodingType of entity involved
Binding: AuditEventEntityType (extensible)
.... role 0..1CodingWhat role the entity played
Binding: AuditEventEntityRole (extensible)
.... lifecycle 0..1CodingLife-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible)
.... securityLabel 0..*CodingSecurity labels on the entity
Binding: All Security Labels (extensible)
.... name ΣI0..1stringDescriptor for entity
.... description 0..1stringDescriptive text
.... query ΣI0..1base64BinaryQuery parameters
.... detail I0..*BackboneElementAdditional Information about the entity
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
..... type 1..1stringName of the property
..... value 1..1base64BinaryProperty value
... entity ΣI1..1BackboneElementPatient
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... identifier Σ1..1IdentifierPatient Id (EPR-SPID)
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary (If known)
Binding: IdentifierUse (required)
..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.127.3.10.3
..... value Σ0..1stringThe value that is unique
Example General': 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
.... reference Σ0..1Reference(Resource)Specific instance of resource
.... type Σ1..1CodingType of entity involved
Binding: AuditEventEntityType (extensible)
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 1
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... role Σ1..1CodingWhat role the entity played
Binding: AuditEventEntityRole (extensible)
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 1
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... lifecycle 0..1CodingLife-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible)
.... securityLabel 0..*CodingSecurity labels on the entity
Binding: All Security Labels (extensible)
.... name ΣI0..1stringDescriptor for entity
.... description 0..1stringDescriptive text
.... query ΣI0..1base64BinaryQuery parameters
.... detail I0..*BackboneElementAdditional Information about the entity
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
..... type 1..1stringName of the property
..... value 1..1base64BinaryProperty value

doco Documentation for this format

This structure is derived from AuditEvent

Summary

Mandatory: 16 elements
Fixed Value: 3 elements

Slices

This structure defines the following Slices:

  • The element AuditEvent.entity is sliced based on the values of value:type.code, value:role.code

Differential View

This structure is derived from AuditEvent

NameFlagsCard.TypeDescription & Constraintsdoco
.. AuditEvent I0..*Access Audit Trail Event Content Profile
ch-atc-aae-1: subtype needs to be fixed to ATC_LOG_READ
... id Σ1..1idLogical id of this artifact
... text 1..1NarrativeA human-readable narrative that contains the summary of the Audit Event.
... type Σ1..1CodingType/identifier of event
Binding: Audit Event ID (extensible)
... subtype Σ1..1CodingBinding: AccessAuditTrailEventType (required)
... recorded Σ1..1instantTime when the event was recorded
... agent 1..*BackboneElementPatient, repeated if representative
.... role Σ1..1CodeableConceptAgent role in the event
Binding: EprParticipant (required)
.... userId Σ0..1IdentifierUnique identifier for the user
.... name Σ1..1stringHuman-meaningful name for the agent
.... requestor Σ1..1booleanWhether user is initiator
... entity IBackboneElementData or objects used
Slice: Unordered, Open by value:type.code, value:role.code
sev-1: Either a name or a query (NOT both)
... entity Σ1..1BackboneElementPatient
.... identifier Σ1..1IdentifierPatient Id (EPR-SPID)
..... system 1..1uriFixed Value: urn:oid:2.16.756.5.30.1.127.3.10.3
.... type Σ1..1CodingType of entity involved
..... code Σ1..1codeFixed Value: 1
.... role Σ1..1CodingWhat role the entity played
..... code Σ1..1codeFixed Value: 1

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. AuditEvent I0..*Access Audit Trail Event Content Profile
ch-atc-aae-1: subtype needs to be fixed to ATC_LOG_READ
... id Σ1..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: Common Languages (extensible)
... text I1..1NarrativeA human-readable narrative that contains the summary of the Audit Event.
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional Content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... type Σ1..1CodingType/identifier of event
Binding: Audit Event ID (extensible)
... subtype Σ1..1CodingMore specific type/id for the event
Binding: AccessAuditTrailEventType (required)
... action Σ0..1codeType of action performed during the event
Binding: AuditEventAction (required)
... recorded Σ1..1instantTime when the event was recorded
... outcome Σ0..1codeWhether the event succeeded or failed
Binding: AuditEventOutcome (required)
... outcomeDesc Σ0..1stringDescription of the event outcome
... purposeOfEvent Σ0..*CodeableConceptThe purposeOfUse of the event
Binding: PurposeOfUse (extensible)
... agent I1..*BackboneElementPatient, repeated if representative
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... role Σ1..1CodeableConceptAgent role in the event
Binding: EprParticipant (required)
.... reference Σ0..1Reference(Practitioner | Organization | Device | Patient | RelatedPerson)Direct reference to resource
.... userId Σ0..1IdentifierUnique identifier for the user
.... altId 0..1stringAlternative User id e.g. authentication
.... name Σ1..1stringHuman-meaningful name for the agent
.... requestor Σ1..1booleanWhether user is initiator
.... location 0..1Reference(Location)Where
.... policy 0..*uriPolicy that authorized event
.... media 0..1CodingType of media
Binding: Media Type Code (extensible)
.... network I0..1BackboneElementLogical network location for application activity
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
..... address 0..1stringIdentifier for the network access point of the user device
..... type 0..1codeThe type of network access point
Binding: AuditEventAgentNetworkType (required)
.... purposeOfUse 0..*CodeableConceptReason given for this user
Binding: PurposeOfUse (extensible)
... source I1..1BackboneElementAudit Event Reporter
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... site 0..1stringLogical source location within the enterprise
.... identifier Σ1..1IdentifierThe identity of source detecting the event
.... type 0..*CodingThe type of source where event originated
Binding: Audit Event Source Type (extensible)
... entity IBackboneElementData or objects used
Slice: Unordered, Open by value:type.code, value:role.code
sev-1: Either a name or a query (NOT both)
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... identifier Σ0..1IdentifierSpecific instance of object
.... reference Σ0..1Reference(Resource)Specific instance of resource
.... type 0..1CodingType of entity involved
Binding: AuditEventEntityType (extensible)
.... role 0..1CodingWhat role the entity played
Binding: AuditEventEntityRole (extensible)
.... lifecycle 0..1CodingLife-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible)
.... securityLabel 0..*CodingSecurity labels on the entity
Binding: All Security Labels (extensible)
.... name ΣI0..1stringDescriptor for entity
.... description 0..1stringDescriptive text
.... query ΣI0..1base64BinaryQuery parameters
.... detail I0..*BackboneElementAdditional Information about the entity
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
..... type 1..1stringName of the property
..... value 1..1base64BinaryProperty value
... entity ΣI1..1BackboneElementPatient
.... id 0..1stringxml:id (or equivalent in JSON)
.... extension 0..*ExtensionAdditional Content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... identifier Σ1..1IdentifierPatient Id (EPR-SPID)
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary (If known)
Binding: IdentifierUse (required)
..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible)
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: urn:oid:2.16.756.5.30.1.127.3.10.3
..... value Σ0..1stringThe value that is unique
Example General': 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
.... reference Σ0..1Reference(Resource)Specific instance of resource
.... type Σ1..1CodingType of entity involved
Binding: AuditEventEntityType (extensible)
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 1
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... role Σ1..1CodingWhat role the entity played
Binding: AuditEventEntityRole (extensible)
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
Slice: Unordered, Open by value:url
..... system Σ0..1uriIdentity of the terminology system
..... version Σ0..1stringVersion of the system - if relevant
..... code Σ1..1codeSymbol in syntax defined by the system
Fixed Value: 1
..... display Σ0..1stringRepresentation defined by the system
..... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... lifecycle 0..1CodingLife-cycle stage for the entity
Binding: ObjectLifecycleEvents (extensible)
.... securityLabel 0..*CodingSecurity labels on the entity
Binding: All Security Labels (extensible)
.... name ΣI0..1stringDescriptor for entity
.... description 0..1stringDescriptive text
.... query ΣI0..1base64BinaryQuery parameters
.... detail I0..*BackboneElementAdditional Information about the entity
..... id 0..1stringxml:id (or equivalent in JSON)
..... extension 0..*ExtensionAdditional Content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
..... type 1..1stringName of the property
..... value 1..1base64BinaryProperty value

doco Documentation for this format

 

Terminology Bindings

PathNameConformanceValueSet
AuditEvent.languageCommon LanguagesextensibleCommon Languages
AuditEvent.typeAudit Event IDextensibleAudit Event ID
AuditEvent.subtypeAccessAuditTrailEventTyperequiredAccessAuditTrailEventType
AuditEvent.actionAuditEventActionrequiredAuditEventAction
AuditEvent.outcomeAuditEventOutcomerequiredAuditEventOutcome
AuditEvent.purposeOfEventPurposeOfUseextensiblePurposeOfUse
AuditEvent.agent.roleEprParticipantrequiredEprParticipant
AuditEvent.agent.mediaMedia Type CodeextensibleMedia Type Code
AuditEvent.agent.network.typeAuditEventAgentNetworkTyperequiredAuditEventAgentNetworkType
AuditEvent.agent.purposeOfUsePurposeOfUseextensiblePurposeOfUse
AuditEvent.source.typeAudit Event Source TypeextensibleAudit Event Source Type
AuditEvent.entity.typeAuditEventEntityTypeextensibleAuditEventEntityType
AuditEvent.entity.roleAuditEventEntityRoleextensibleAuditEventEntityRole
AuditEvent.entity.lifecycleObjectLifecycleEventsextensibleObjectLifecycleEvents (missing link)
AuditEvent.entity.securityLabelAll Security LabelsextensibleAll Security Labels
AuditEvent.entity.identifier.useIdentifierUserequiredIdentifierUse
AuditEvent.entity.identifier.typeIdentifier Type CodesextensibleIdentifier Type Codes
AuditEvent.entity.typeAuditEventEntityTypeextensibleAuditEventEntityType
AuditEvent.entity.roleAuditEventEntityRoleextensibleAuditEventEntityRole
AuditEvent.entity.lifecycleObjectLifecycleEventsextensibleObjectLifecycleEvents (missing link)
AuditEvent.entity.securityLabelAll Security LabelsextensibleAll Security Labels

Constraints

IdPathDetailsRequirements
dom-2AuditEventIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-1AuditEventIf the resource is contained in another resource, it SHALL NOT contain any narrative
: contained.text.empty()
dom-4AuditEventIf 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-3AuditEventIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource
: contained.where(('#'+id in %resource.descendants().reference).not()).empty()
ch-atc-aae-1AuditEventsubtype needs to be fixed to ATC_LOG_READ
: subtype.exists() and subtype.count()=1 and subtype[0].code='ATC_LOG_READ'
ele-1AuditEvent.agentAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1AuditEvent.agent.networkAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1AuditEvent.sourceAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1AuditEvent.entityAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
sev-1AuditEvent.entityEither a name or a query (NOT both)
: name.empty() or query.empty()
ele-1AuditEvent.entity.detailAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
ele-1AuditEvent.entityAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
sev-1AuditEvent.entityEither a name or a query (NOT both)
: name.empty() or query.empty()
ele-1AuditEvent.entity.detailAll FHIR elements must have a @value or children
: hasValue() | (children().count() > id.count())
.