Zum Hauptinhalt springen

Observation

Uebersicht

Die Observation-Ressource repraesentiert Messungen und einfache Aussagen ueber einen Patienten. Dazu gehoeren Vitalzeichen (Herzfrequenz, Blutdruck, Temperatur), Laborergebnisse (Blutzucker) und geraeteerfasste Daten (SpO2, Gewicht).

API-Endpunkte

MethodePfadBeschreibung
GET/api/monitoreds/{id}/observations/Beobachtungen eines Patienten auflisten
POST/api/monitoreds/{id}/observations/Beobachtungen erstellen
GET/api/observations/{id}/Beobachtungsdetails abrufen

Datenmodell

FeldTypBeschreibung
idintegerEindeutiger Identifikator
observation_definitionobjectTyp und Methode der Beobachtung
categorystringKategorie (z.B. physiological_data)
valuestringGemessener Wert
value_typestringDatentyp (float, int, etc.)
value_unitstringMasseinheit (bpm, celsius, mmHg, etc.)
issueddatetimeZeitpunkt der Ausgabe
effective_datetimedatetimeZeitpunkt der Messung
source_idintegerQuellgeraete-Identifikator

Beispiel

{
"id": 810,
"observation_definition": {
"observation_name": "heart_rate",
"observation_method": "device"
},
"category": "physiological_data",
"value": "72",
"value_type": "int",
"value_unit": "bpm",
"issued": "2024-01-15T10:30:00Z",
"effective_datetime": "2024-01-15T10:30:00Z",
"source_id": 1
}

Beobachtungstypen

NameEinheitBeschreibung
heart_ratebpmHerzfrequenz
blood_pressure_systolicmmHgSystolischer Blutdruck
blood_pressure_diastolicmmHgDiastolischer Blutdruck
temperaturecelsiusKoerpertemperatur
oxygen_saturationpercentageSpO2
weightkgKoerpergewicht
blood_glucosemg/dLBlutzuckerspiegel
respiratory_ratebreaths/minAtemfrequenz

SDK v2 Typisierte Beobachtungen

Bei Verwendung des vitalera SDK v2 werden Beobachtungen als typisierte Klassen anstelle von generischem JSON zurueckgegeben. Dies bietet Kompilierzeitsicherheit und Auto-Vervollstaendigung in Ihrer IDE.

API observation_nameSDK v2 Typisierte KlasseSchluesselfelder
heart_rateHeartRateObservationheartRate (bpm)
blood_pressure_systolic / blood_pressure_diastolicBloodPressureObservationsystolic, diastolic (mmHg), pulseRate (bpm)
temperatureTemperatureObservationtemperature (celsius)
oxygen_saturationOxygenSaturationObservationspo2 (%)
weightWeightObservationweight (kg)
blood_glucoseBloodGlucoseObservationglucose (mg/dL)
respiratory_rateRespiratoryRateObservationrespiratoryRate (breaths/min)

Beispiel (Kotlin):

device.collect().collect { observation ->
when (observation) {
is BloodPressureObservation ->
println("BP: ${observation.systolic}/${observation.diastolic} mmHg")
is HeartRateObservation ->
println("HR: ${observation.heartRate} bpm")
is OxygenSaturationObservation ->
println("SpO2: ${observation.spo2}%")
}
}

Beispiel (Swift):

for try await observation in device.collect() {
if let bp = observation as? BloodPressureObservation {
print("BP: \(bp.systolic)/\(bp.diastolic) mmHg")
} else if let hr = observation as? HeartRateObservation {
print("HR: \(hr.heartRate) bpm")
} else if let spo2 = observation as? OxygenSaturationObservation {
print("SpO2: \(spo2.spo2)%")
}
}

Die vollstaendige Liste von 30+ typisierten Beobachtungsklassen finden Sie in der SDK-Uebersicht.

Verwandte Ressourcen

  • Patient - Der Patient, zu dem diese Beobachtung gehoert
  • CarePlan - Der Pflegeplan-Kontext