Standards
Every report, baseline and alert is an HL7 FHIR R4 resource you can check at the source.
At a glance
HL7 FHIR R4
Every record is a resource
OneAquaHealth IG
Sites, indicators, cohorts, health measures
Our FSH profiles
Alerts, clinic messages, lineage
HL7 FHIR Validator
Checked on every change
SMART App Launch 2.0
Clinician sign-in for the clinic view
Model Context Protocol
Any AI client can read the data
POST https://oneaquahealth.duckdns.org/mcp
How each concept maps to FHIR
| Concept | FHIR resource | Profile |
|---|---|---|
| Stream site | Location | LocationOah (opens in a new tab)OAH |
| Citizen report | Observation | ObservationIndicatorsOah (opens in a new tab)OAH |
| Report photo | Media + Binary | Core R4 |
| Who reported it, and when | Provenance | StcReportProvenance (opens in a new tab)ours |
| District cohort near a stream | Group | GroupOah (opens in a new tab)OAH |
| Baseline disease prevalence | Observation | ObservationHealthMeasureOah (opens in a new tab)OAH |
| Clinic and the streams it serves | Organization + HealthcareService | Core R4 |
| Health alert with its evidence | DetectedIssue | StcStreamRiskAlert (opens in a new tab)ours |
| Alert sent to a clinic | Communication | StcClinicAlert (opens in a new tab)ours |
| Clinic's reply | Communication (inResponseTo) | StcClinicResponse (opens in a new tab)ours |
| AI-drafted plain-language notice | Communication (sender Device) + Provenance | StcClinicAdvisory (opens in a new tab)ours |
| Trigger for outside observations | Subscription (rest-hook) | Core R4 |
Our own profiles, built on the OAH IG
Seven profiles for what happens after the stream: alert, clinic messages, AI advisory, lineage.
- StcStreamRiskAlert (opens in a new tab)DetectedIssue
Health alert with evidence
- StcClinicAlert (opens in a new tab)Communication
Alert sent to a clinic
- StcClinicResponse (opens in a new tab)Communication
Clinic's coded reply
- StcClinicAdvisory (opens in a new tab)Communication
AI-drafted notice
The language model
- StcReportProvenance (opens in a new tab)Provenance
Who reported what
Where AI text came from
Live examples
Real resources on the public FHIR server, right now.
Conformance, checked on every change
Build the OAH IG at a pinned commit
b907cf0Generate samples from the app's code
Build our profiles from FSH
Validate with the HL7 validator
validator_cli
Plugging in another system
Any system that writes an ObservationIndicatorsOah Observation gets the same assessment.
Partner writes an Observation
ObservationIndicatorsOahSubscription passes it on
Risk engine re-checks the site
Alert reaches the clinics
DetectedIssue + CommunicationClinic replies in FHIR
inResponseToPlain-language advisory, marked as AI
sender: Device + Provenance
Try it with curl
Show commands
# What the server supports curl -s https://oneaquahealth.duckdns.org/fhir/metadata # Stream sites conforming to LocationOah curl -s "https://oneaquahealth.duckdns.org/fhir/Location?_profile=http://hl7.eu/fhir/ig/oah/StructureDefinition/location-oah" # Latest citizen reports at one site curl -s "https://oneaquahealth.duckdns.org/fhir/Observation?subject=Location/Loc-Almyros&_sort=-date&_count=5" # Health alerts and the messages sent to clinics curl -s "https://oneaquahealth.duckdns.org/fhir/DetectedIssue?_sort=-_lastUpdated" curl -s "https://oneaquahealth.duckdns.org/fhir/Communication?category=alert" # Clinic replies, found by our profile curl -s "https://oneaquahealth.duckdns.org/fhir/Communication?_profile=https://oneaquahealth.duckdns.org/fhir/StructureDefinition/stc-clinic-response" # Everything about one site as a single Bundle curl -s https://oneaquahealth.duckdns.org/sites/Loc-Almyros/bundle