Skip to content

docs(event-messages): document tightened EHealthApplicationEvent schema constraints (CCR0303 AC-7)#270

Merged
jhntrifork merged 3 commits intorelease_2026.3from
fix/CCR0303-ig-schema-constraints
Apr 29, 2026
Merged

docs(event-messages): document tightened EHealthApplicationEvent schema constraints (CCR0303 AC-7)#270
jhntrifork merged 3 commits intorelease_2026.3from
fix/CCR0303-ig-schema-constraints

Conversation

@jhntrifork
Copy link
Copy Markdown
Contributor

Summary

Follow-up to #241 (merged). Adds the tightened JSON schema contract to the public IG so subscribers can validate received events against the same constraint we now enforce at the publisher.

Changes

  • input/pagecontent/event-messages.mdEHealthApplicationEvent section now:

    • Declares resourceReference.minItems: 1 and marks label/reference as required on each item.
    • Adds an allOf block with five if/then/contains rules, one per eventType, each guaranteeing the obligatory resourceReference.label for that event type.
    • The existing Event Types table header is clarified to "Obligatory resourceReference label" and a sentence above it points readers at the schema's enforcement mechanism.
  • input/pagecontent/changelog.md — new ### Event messages bullet under Release 2026.2.

Contract summary (same as ehealth-commons)

eventType Obligatory resourceReference label
AppointmentReminder Appointment
VideoAppointmentReminder Appointment
ReminderSubmitMeasurement ServiceRequest
MissingMeasurement ServiceRequest
NewEHealthMessage EhealthMessage

Cross-repo dependency

  • Mirror of trifork/ehealth#3143 which applies the same constraints in the JSON schema shipped with the Java event model.
  • No FHIR profile is introduced — EHealthApplicationEvent is a JMS message, and this repo's convention is to document JMS events as prose on event-messages.md.

Verification

  • sushi . passes (0 errors). Pre-existing warnings are unrelated.
  • Change is limited to pagecontent/*.md; no FSH resources or StructureDefinitions altered.

…ma constraints (CCR0303 AC-7)

Mirrors the schema tightening from ehealth-commons (trifork/ehealth#3143)
so the IG and the Java-runtime schema agree on the contract:

- resourceReference requires minItems: 1.
- allOf / if-then / contains rules assert the obligatory resourceReference.label
  per eventType (AppointmentReminder, VideoAppointmentReminder,
  ReminderSubmitMeasurement, MissingMeasurement, NewEHealthMessage).

Changelog updated under Release 2026.2 > Event messages.
Base automatically changed from release_2026.2 to master April 21, 2026 07:23
@jhntrifork jhntrifork changed the base branch from master to release_2026.3 April 22, 2026 06:58
@jhntrifork jhntrifork requested a review from ohetrifork April 28, 2026 10:27
…ts (CCR0303 AC-7)

- declare JSON Schema Draft-07 (clarifies that if/then/contains semantics apply)
- mark eventType and resourceReference as top-level required
- add required: [eventType] inside each if-clause to avoid the missing-discriminator gotcha
- reword inline description; expand changelog with vendor-facing note about the item-level required: [label, reference]
@jhntrifork jhntrifork merged commit 9619623 into release_2026.3 Apr 29, 2026
@jhntrifork jhntrifork deleted the fix/CCR0303-ig-schema-constraints branch April 29, 2026 07:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants