ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

EventDefinition — Triggering event definition

The reusable "when X happens" pattern. PlanDefinition, Subscription and Measure reference EventDefinitions to fire their flows.

Purpose of the resource

EventDefinition encapsulates the definition of an event that can be consumed by other resources. Rather than each PlanDefinition or Subscription defining its own internal trigger, the logic is encoded once in a reusable, versioned, published EventDefinition.

Key fields

FieldTypeCardinalityRole
urluri0..1Canonical URL.
identifierIdentifier[]0..*Business identifiers.
versionstring0..1Version.
namestring0..1Technical name.
titlestring0..1Title.
subtitlestring0..1Subtitle.
statuscode1..1draft | active | retired | unknown.
experimentalboolean0..1Test vs production.
subject[x]CodeableConcept | Reference0..1Subject.
datedateTime0..1Date.
usagemarkdown0..1Usage context.
triggerTriggerDefinition[]1..*Trigger definitions (named-event, data-changed, data-added, data-modified, data-removed, periodic).

JSON example

json eventdefinition-example.json
{
  "resourceType": "EventDefinition",
  "id": "critical-lab-result",
  "url": "http://example.org/EventDefinition/critical-lab-result",
  "version": "5.0.0",
  "name": "CriticalLabResult",
  "title": "Critical Lab Result Detected",
  "status": "active",
  "experimental": false,
  "date": "2026-05-15",
  "trigger": [{
    "type": "data-changed",
    "name": "Observation-critical",
    "data": [{
      "type": "Observation",
      "profile": ["http://example.org/StructureDefinition/critical-observation"]
    }]
  }]
}

Common pitfalls

  • Trigger without data — the system does not know what to watch.
  • Confusion with ActivityDefinition — EventDefinition describes a trigger; ActivityDefinition describes an action.
  • No version — subscriptions lose their reference.