WASEL · Architecture & data map

ER Crisis Command Center for Nexus 26, Track 3 (Informatics). Ten hospital systems and the paramedic responder app feed one FHIR R4 gateway. An event engine and AI decision layer turn that data into suggestions, and each screen shows only what its role needs. AI does the watching, counting and matching. Humans do the judging, treating and deciding.

10 source systems 1 responder pre-alert feed 5 role-filtered screens HL7 FHIR R4 · HL7 v2.5 · IEEE 11073 · LOINC · ICD-10-CM All patient data is fictional

Data flow

Read left to right. The standard or message type sits on every feed. The responder path (blue) is the team's own addition.

WASEL data-flow diagram Ten source systems, grouped as pre-hospital dispatch, clinical records, devices and location, and operations, each send data in a named standard to a FHIR R4 integration gateway. The responder app and an on-device face-ID service, which only returns a candidate match, send an ATMIST pre-alert to the same gateway. The gateway passes FHIR resources to an event engine and AI decision layer (NEWS2, forecasting, matching, medication safety, decision queue, role filter, audit log). That layer feeds five role-filtered screens: wall board, charge tablet, clinician drawer, commander view (production design) and admin console. Approvals flow back from the charge tablet and clinician drawer. Responder (field) Integration Processing Role-filtered screens Face-ID service on-device match candidate only no image is sent Responder app ATMIST + ESI or START no match → temp T-### never delays care ATMIST pre-alert v1 initials only · no images Pre-hospital dispatch Standard / message Clinical records Devices & location Operations & logistics Ambulance dispatch (EMS) Incidents, ambulance ETAs, field triage FHIR · CAD feed EHR Patient, Encounter, Condition (ICD-10-CM) HL7 FHIR R4 Registration (ADT) Arrival A04 · transfer A02 · discharge A03 HL7 v2.5 ADT Laboratory (LIS) Lab results and critical flags HL7 v2 ORU · LOINC Radiology (RIS/PACS) CT scanner status and scan queue DICOM · HL7 v2 ORM Monitors & wearables HR, BP, RR, SpO₂, temp (LOINC-coded) IEEE 11073 SDC Asset tracking (RTLS) Equipment location · backup bed sensors BLE / RFID tags Bed management Bed status, cleaning, reservations FHIR Location Pharmacy & blood bank Blood units, medication and supply stock FHIR · GS1 barcodes Staff rostering Shifts, hours on duty, on-call list REST API · OAuth 2.0 FHIR R4 integration gateway Maps each feed to FHIR R4 resources Terminology: LOINC · ICD-10-CM · ATC Validates pre-alerts; drops unknown fields Heartbeat per feed: live · offline · STALE Patient Encounter Condition Observation Location Requests out on approval Event engine + AI decision layer Event engine ADT, CAD and device events mode: Steady · Strain · Surge · MCI NEWS2 + 12-min trend every patient, every sim-minute flags deterioration early Forecasting bed occupancy 30 min ahead supply run-out countdowns Matching patient → bed zone (by ESI) → nurse load → free equipment Medication safety allergy class, anticoagulant hard stops (ATC-coded drugs) Decision queue suggestion + why + owner escalates after 3 / 6 / 10 min Role filter minimum-necessary masking applied before every render Audit log views, approvals, overrides, blocked access, role switches initials only ESI · ETA · beds masked names accept / dismiss full record orders, confirm ID aggregates mode · forecast audit log feed health Wall board IN DEMO De-identified: initials only ESI, ETA, beds, journey Read-only: no clicks, no record access Charge tablet IN DEMO Initial + surname, MRN shown Approves placement, re-triage, staffing, supply, surge Every card shows why Clinician drawer IN DEMO Physician: full name + record Nurse: assigned patients only; others need break-glass (v2) LOINC vitals · NEWS2 · FHIR Commander view DESIGN Incident-level overview: mode, journey, 30-min forecast family board: status only Demo: journey strip + forecast Admin console IN DEMO IT / Admin: reads audit log Feed health, outage fallback Initials only, no chart rights Prod.: SSO + MFA, SIEM stream data flow HL7 v2.5 ADT = standard / message on that feed production design (not in demo build) IN DEMO working in the demo build team-built responder path Demo build: the 10 source feeds and the gateway are simulated in the browser (src/10-engine.js) with the same message types and codes. All patient data is fictional.
Pre-alert schema validation (invalid fields become Unknown) No names, images or Emirates ID in pre-alerts HTML-escaped rendering (XSS) CSP blocks all network loads Role-based masking Audit log, IT / Admin only 5-min auto-lock for clinical roles

Data mapping

Every feed, the standard it speaks, what it carries and where it lands on screen. Rows come from SOURCES in src/00-core.js, plus the responder pre-alert from src/15-wasel.js.

Source systemStandard / messageData elementsDashboard panelRefresh
Responder app + Face-ID service WASEL pre-alert v1 (JSON) · ATMIST · ESI or START priority Encounter T-###; identity status, method, confidence + initials; ATMIST (age, time, mechanism, injuries, HR, SBP, RR, SpO₂, GCS, treatment); ETA; safety summary (allergies, anticoagulant, blood type, HIE source + date) Inbound pre-alert cards, decision queue (confirm identity), patient record Per message. Resending the same encounter id updates vitals and ETA, with no duplicate.
Ambulance dispatch (EMS) FHIR · CAD feed Incidents (detection channel, expected casualties), ambulance status and ETA, field triage Journey strip, Inbound Per CAD event: detected, on scene, en route, arrived
EHR HL7 FHIR R4 Patient, Encounter, Condition (ICD-10-CM, e.g. R07.9, S72.90XA); identity link; MedicationRequest (ATC); safety summary from Riayati, Malaffi or NABIDH Patient list, patient record Per event: encounter, priority change, identity confirmed, order
Registration (ADT) HL7 v2.5 ADT Arrivals A04, transfers A02, discharges A03 Journey strip, patient list Per event
Laboratory (LIS) HL7 v2 ORU^R01 · LOINC Results with LOINC code (e.g. 718-7 Hemoglobin) and OBX-8 flags L, H, LL, HH Patient record, integration feed Per result (demo: one every 150 sim-seconds)
Radiology (RIS/PACS) DICOM · HL7 v2 ORM CT scanner online/offline, scan queue, repair work orders Equipment & supplies On status or queue change
Monitors & wearables IEEE 11073 SDC HR 8867-4, SBP 8480-6, RR 9279-1, SpO₂ 59408-5, temp 8310-5 (LOINC) Patient list, NEWS2, patient record Continuous. NEWS2 sampled every sim-minute; one feed line every 20 sim-seconds.
Asset tracking (RTLS) BLE / RFID tags Location of ventilators and monitors; backup bed sensors Equipment, bed board Per tag event
Bed management FHIR Location Bed status: free, occupied, cleaning, reserved Bed board Per status change. On outage: STALE snapshot overlay, then backup RTLS sensors.
Pharmacy & blood bank FHIR · GS1 barcodes O-negative blood, burn kits, O₂ cylinders; SupplyRequest out, GS1 barcode receipt in Equipment & supplies Per request or receipt (restock ETA 15 min)
Staff rostering REST API · OAuth 2.0 Shifts, hours on duty, on-call list; I-PASS handovers Staff Per shift event; hours on duty accrue live

Feed health: every live source sends a heartbeat every 30 sim-seconds, and the footer shows each source as live or offline. Unknown is not none: allergies: null means Unknown, and [] means confirmed none.

Patient journey

One patient, end to end, and the system that feeds each step.

  1. Step 1

    Detection

    EMS · CAD

    998/997 call, smart traffic cameras or a building fire-alarm link opens an incident. Mode can step up to MCI.

  2. Step 2

    Dispatch

    EMS · CAD

    Ambulances on scene, field triage (ESI, or START colours in MCI), live ETAs.

  3. Step 3

    Scene / ID

    Responder app + Face-ID

    Face match returns a candidate only. With no match, care goes on under a temporary T-###.

  4. Step 4

    Pre-alert

    Pre-alert v1 → gateway

    ATMIST and safety summary (Riayati, Malaffi, NABIDH). AI proposes a bay and pages the team.

  5. Step 5

    Arrival

    ADT A04 · FHIR Location

    Registered; a reserved bed means door-to-bed 0 min. A nurse confirms identity at the door.

  6. Step 6

    Treatment

    IEEE 11073 · LIS · RIS · Pharmacy · RTLS · Roster

    NEWS2 watch, CT queue, blood and supplies, nurse load and hours.

  7. Step 7

    Disposition

    ADT A03 / A02 · EHR

    Home, ward, ICU or OR. The family board shows status only, never medical details.

Human in the loop

The AI only suggests. Each suggestion names who may approve it, explains why, and is written to the audit log when accepted or dismissed. Approval rights come from ROLES[…].act in src/00-core.js.

AI suggestsHuman approvesSafeguard
Bed placement: zone by ESI, lightest-load nurse, nearest free monitorCharge nurse, Physician, NurseThe bed is held, not taken, until someone accepts. Auto-accept is opt-in, covers bed placements only, and is logged as "Auto-accepted (policy)".
Pre-arrival prep: reserve a bay and page the team (ESI 1–2, ETA ≤ 15 min)Charge nurse, Physician, NurseBed and team are ready before the doors open; nothing is reserved until a person accepts.
Re-triage when NEWS2 and its 12-min trend worsenCharge nurse, PhysicianThe card shows the vital-sign changes and the likely pattern behind them.
Confirm identity of a face matchCharge nurse, Physician, NurseA candidate never merges charts. The nurse checks with the patient, a relative or documents.
Lobby risk: offer fast-track or the partner clinicCharge nurse, NurseApplies to ESI 4–5 patients waiting more than 60 min.
Supplies, staffing (fatigue relief, call-in, reassignment), diversion, equipment loans, silent surgeCharge nurseAn unanswered task escalates to the next owner after 3, 6 or 10 min, depending on its level.
Interface outage: switch to backup bed sensorsCharge nurse, IT / AdminStale bed data is overlaid as STALE and never shown as current.
Medication check: allergy-class or anticoagulant hard stopOrdering clinicianThe clinician can override only with a reason of 10+ characters, and every override is audited.

Never automated

  • Diagnosis, treatment and orders stay with clinicians.
  • Chart merging: a biometric match is only a candidate until a nurse confirms it.
  • Mode changes (Steady → Strain → Surge → MCI) follow published thresholds, but the actions they trigger, such as a silent surge, still need approval.
  • Dismissed suggestions stay suppressed for 10 min, and the dismissal is audited.