Skip to content

AuditEvent Profile

Canonical../StructureDefinition/nexus-emr-core-auditevent
Statusdraft (experimental) · 1.26.0
BaseAuditEvent (constraint)
SourceFSH · JSON

Nexus EMR profile for AuditEvent -- the access and activity log: who acted, on which record, when, through what interaction, and with what outcome.

Invariants

Every rule in force on a conforming instance. This profile rows are stated here; inherited rows come from the base resource and are listed so that a constraint named on an element is findable. Invariant keys elsewhere on this page link into this table.

Key Source Severity On Rule
auditevent-names-an-actor this profile warning AuditEvent An AuditEvent SHOULD name who acted -- at least one agent carrying a resolvable who reference or an altId user identifier. An entry naming no actor answers none of the questions an access log exists to answer
agent.where(who.exists() or altId.exists()).exists()
dom-2 inherited error AuditEvent If the resource is contained in another resource, it SHALL NOT contain nested Resources
contained.contained.empty()
dom-3 inherited 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
dom-4 inherited 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 inherited error AuditEvent If a resource is contained in another resource, it SHALL NOT have a security label
contained.meta.security.empty()
dom-6 inherited warning AuditEvent A resource should have narrative for robust management
text.div.exists()
ele-1 inherited error AuditEvent.meta All FHIR elements must have a @value or children
hasValue() or (children().count() > id.count())
ext-1 inherited error AuditEvent.extension Must have either extensions or value[x], not both
extension.exists() != value.exists()
sev-1 inherited error AuditEvent.entity Either a name or a query (NOT both)
name.empty() or query.empty()