Skip to main content

JamMPI

v1.0 · Spring Boot · Apache 2.0 · Port 8081

JamMPI is the Master Patient Index for the Jam platform. It maintains a golden record for each patient across all connected facilities, resolves patient identity on every JamBridge message, and exposes IHE PDQm and PIXm conformant FHIR APIs.

How matching works​

Three strategies run in combination on every Patient/$match request:

1. National ID exact match​

If PID-3 carries a national identity number (NIC, NHS number, Aadhaar), this is the primary key. An exact match earns CERTAIN grade (score ≥ 0.95). The comparison is constant-time string equality.

2. Jaro-Winkler name + DOB similarity​

Family name, given name, and date of birth are scored together. The Jaro-Winkler algorithm gives extra weight to matching string prefixes — correct for human names. Above the configurable threshold (default 0.85), the match is PROBABLE.

3. Blocking strategy​

Without blocking, matching one patient against 50M records requires 50M comparisons. JamMPI pre-filters candidates by first-3-chars of family name and birth year, reducing the comparison space from O(n) to O(k ≈ 500).

Golden record structure​

{
"resourceType": "Patient",
"id": "GOLDEN-00441",
"meta": {"tag": [{"code": "golden-record"}]},
"link": [
{"type": "seealso", "other": {"reference": "Patient/MRN12345"}},
{"type": "seealso", "other": {"reference": "Patient/PRIV-9901"}}
],
"extension": [
{"url": "http://jammpi.io/ext/seen-at", "valueString": "BR01,BR03,BR07"}
]
}

IHE profiles​

ProfileTransactionEndpoint
PDQmITI-78GET /fhir/Patient?name=...&birthdate=...
PIXmITI-83GET /fhir/Patient/$ihe-pix?sourceIdentifier=...
PMIRITI-93POST /fhir/Patient
New PIXmITI-119POST /fhir/Patient/$match