Scoring Algorithm
How quality scores are computed across five dimensions and combined into a composite score
Completeness
30% weightMeasures whether required fields are present and populated. Evaluates required_field rules from all active Blueprints. A missing required field reduces this score proportionally.
- ·PID-3 (Patient ID) is present
- ·OBR-4 (Order code) is non-empty
- ·PV1-44 (Admit date) is populated
Conformance
25% weightMeasures whether field values conform to expected formats, data types, and vocabulary standards. Evaluates value_set rules and field format checks. An invalid code or malformed value reduces this score.
- ·OBX-3 contains a valid LOINC code
- ·DG1-3 contains a valid ICD-10-CM code
- ·PID-7 (DOB) is in valid YYYYMMDD format
Accuracy
20% weightMeasures whether field values are clinically and operationally plausible. Evaluates business_rule checks — NPI validation, reference range presence, insurance segment completeness. Implausible or missing contextual data reduces this score.
- ·Provider NPI (ROL-4) is a valid 10-digit NPI
- ·Lab result includes reference range (OBX-7)
- ·Insurance segment (IN1) present for inpatient ADT
Consistency
10% weightMeasures internal logical coherence across fields within a single message. Evaluates cross_field rules. Logical contradictions (e.g., discharge before admission) reduce this score.
- ·Discharge date (PV1-45) is after admit date (PV1-44)
- ·Patient birth date is before encounter date
- ·Result status aligns with order status
Timeliness
15% weightMeasures how promptly the message was received relative to the clinical event it represents. Based on the delta between the message timestamp and the event datetime. Significant delays reduce this score.
- ·ADT A01 received within 15 minutes of admission
- ·Lab result delivered within SLA window
- ·Message timestamp is not in the future
Each dimension produces a score between 0 and 1. The composite score is a weighted average:
Dimension weights are configurable in Settings → Dimension Weights. Changes affect all future scores; historical scores retain the weights active at the time they were computed.
For each partner, message type, and dimension, the platform maintains a baseline profile — mean (μ) and standard deviation (σ) computed from a rolling window of historical scores (default: last 30 days).
When a new score is computed, the platform calculates the z-score:
If the z-score falls below the configured threshold (default: −2.0), a DRIFT alertis raised for that dimension. This indicates the partner's current quality is statistically abnormal compared to their own historical performance — not compared to a fixed absolute threshold.
DRIFTZ-score below threshold (−2.0 default)AnyTHRESHOLDAbsolute score below fixed floorAnyRULE_SPIKESingle Blueprint rule failure rate spikeConformance / CompletenessMPI_RISKADT Completeness below 75% (default)CompletenessADT messages (patient admissions, discharges, transfers) carry the identity data used by downstream Master Patient Index (MPI) systems. Incomplete ADTs risk creating duplicate or split patient records.
The platform applies a dedicated completeness threshold to ADT messages:
≥70%
of threshold → MEDIUM severity
<70%
of threshold → HIGH severity
The threshold value (default 75%) is configurable per partner in the partner detail page. MPI_RISK alerts are routed to the MPI team channel via escalation rules, independently of other alert routing.