AnpherosAnpheros PlatformDevelopers

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Laboratuvar Sonuçları API'si: HL7 v2, FHIR ve LOINC

Laboratuvar sonuçları HL7 v2 ve FHIR R4 verisi olarak nasıl seyahat eder, bir sonucun neleri taşıması gerekir ve bir laboratuvar raporunu bir FHIR kaydına nasıl alacağınız, gerçek bir örnekle.

Bir laboratuvar sonuçları API'si, laboratuvar sonuçlarını yapılandırılmış veri olarak — test kodu, değeri, birimi, referans aralığı, durumu ve zamanı — PDF yerine sunar, böylece yazılımlar bunları depolayabilir, karşılaştırabilir, grafikleyebilir ve paylaşabilir. Bugün bu veriler üç biçimde iletilmektedir: HL7 v2 ORU^R01 mesajları (hala laboratuvarlar ve hastaneler arasındaki omurga), HL7 FHIR R4 Observation ve DiagnosticReport kaynakları (modern API'lerin formatı) ve laboratuvara özel CSV, JSON veya PDF dışa aktarımları. Bu sayfa, parçaların nasıl bir araya geldiğini, iyi bir laboratuvar sonuçları API'sinin neleri içermesi gerektiğini ve Anpheros ile bir hastanın FHIR kaydına laboratuvar verilerinin nasıl alınacağını açıklar.

Laboratuvar Sonuçlarını Kimler, Hangi Formatlarda Değiştirir

Kaynak → Hedef Günümüzdeki Yaygın Format Notlar
Laboratuvar → Hastane veya Klinik Sistemi HL7 v2 ORU^R01 (ABD'de genellikle HL7 v2.5.1 Laboratuvar Sonuçları Arayüzü kılavuzuna göre) Siparişler diğer yönde ORM/OML mesajları olarak gider
Laboratuvar → Halk Sağlığı Kurumu HL7 v2 elektronik laboratuvar raporlaması, giderek artan şekilde FHIR Yalnızca raporlanabilir durumlar
Klinik Sistemi → Hasta Uygulaması FHIR R4, bir hasta erişim API'si aracılığıyla ABD'de sertifikalı EHR'ler laboratuvar sonuçlarını FHIR (US Core) olarak sunar; AB'de Avrupa Sağlık Veri Alanı, laboratuvar sonuçlarını öncelikli veri kategorileri arasında listeler
Laboratuvar → Hasta PDF raporu, portal, bazen CSV Hastaların fiilen aldığı format
Uygulama → Yapay Zeka Modeli Gözlemlerden (Observations) oluşturulan yapılandırılmış bağlam Güvenilir olması için kodlar ve birimler gerekir

Yön önemlidir: bir laboratuvar bilgi sistemi (LIS), bir sonuç için doğruluk kaynağıdır ve aşağı akışındaki her sistem bir kopya tutar. Kopyaları güvenilir kılan şey, her birinin değerin kodunu, birimini, aralığını ve kökenini saklamasıdır.

Bir laboratuvar sonucunun taşıması gerekenler

"Glikoz 126" diyen bir sonuç güvenli bir şekilde yorumlanamaz. Tam bir sonuç şunları içerir:

FHIR R4'te her sonuç bir Observation'tir ve category = laboratory içerir, bunları gruplayan rapor ise result'deki Gözlemleri listeleyen bir DiagnosticReport'dir. Her ikisinin de geçerli örnekleri, doğrulayıcıların en sık bildirdiği hatalarla birlikte FHIR R4 JSON örneklerinde bulunur — ayrıca DiagnosticReport örneğine de bakınız.

HL7 v2 ve FHIR Yan Yana

Laboratuvarların bugün gönderdiği şekliyle ve bir API'nin saklaması gereken şekilde aynı lipid paneli sonucu:

OBX|1|NM|2093-3^Cholesterol^LN||212|mg/dL|<200|H|||F|||20261002074500
HL7 v2 alanı Anlamı FHIR R4 Observation öğesi
OBX-3 2093-3^Cholesterol^LN LOINC ile kodlanmış test code.coding (sistem http://loinc.org)
OBX-5 212, OBX-2 NM Sayısal değer valueQuantity.value
OBX-6 mg/dL Birim valueQuantity.unit
OBX-7 <200 Referans aralığı referenceRange.high
OBX-8 H Anormal bayrak interpretation
OBX-11 F Nihai sonuç status = final
OBX-14 Gözlem zamanı effectiveDateTime

İkisi arasında dönüşüm çoğunlukla alan eşleştirmesidir. Zor kısımlar başka yerdedir: LOINC yerine kendi kodlarını gönderen laboratuvarlar, metin olarak yazılmış sayılar ("6,4", "<5"), çeşitli gösterimlerdeki aralıklar ve bir zaman aşımından sonra tekrar gönderilen raporlar. Tıbbi verileri normalleştirme bu konuları ayrıntılı olarak ele almaktadır.

Anpheros ile FHIR kaydına laboratuvar sonuçlarını alma

Anpheros, her hastanın kaydını HL7 FHIR R4 olarak saklar ve bir laboratuvar bağlayıcısına sahiptir: bir istek, HL7 v2, CSV veya JSON olarak tüm raporu alır ve LOINC kodları, referans aralıkları, yorumlama ve köken bilgileriyle laboratuvar Gözlemleri (Observations) döndürür.

curl -s -X POST "https://platform.anpheros.com/v1/patients/$PID/labs/import" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: x-application/hl7-v2+er7" \
  -H "X-Anpheros-Source-System: springfield-lis" \
  --data-binary @lipid-panel.hl7

Üç satırlık bir lipid paneli (kolesterol, HDL, trigliserit) için, platformun yerel bir çalıştırmasından elde edilen yanıt şöyledir:

{
  "created": 3, "skipped": 0, "unmapped": [], "warnings": [],
  "observations": [
    {"id": "26ed9219-…", "marker": "Cholesterol", "code": "2093-3", "system": "http://loinc.org",
     "value": 212.0, "unit": "mg/dL", "date": "2026-10-02T07:45:00Z"},
    {"id": "2633d1d4-…", "marker": "HDL cholesterol", "code": "2085-9", "system": "http://loinc.org",
     "value": 48.0, "unit": "mg/dL", "date": "2026-10-02T07:45:00Z"},
    {"id": "a02520bb-…", "marker": "Triglyceride", "code": "2571-8", "system": "http://loinc.org",
     "value": 165.0, "unit": "mg/dL", "date": "2026-10-02T07:45:00Z"}
  ]
}

Saklanan her sonuç, standart bir FHIR R4 Gözlemi'dir ve herhangi bir FHIR istemcisi tarafından okunabilir:

{
  "resourceType": "Observation",
  "status": "final",
  "category": [{"coding": [{"system": "http://terminology.hl7.org/CodeSystem/observation-category", "code": "laboratory"}]}],
  "code": {"coding": [{"system": "http://loinc.org", "code": "2093-3",
                        "display": "Cholesterol [Mass/volume] in Serum or Plasma"}], "text": "Cholesterol"},
  "subject": {"reference": "Patient/4c3062d9-…"},
  "effectiveDateTime": "2026-10-02T07:45:00Z",
  "valueQuantity": {"value": 212.0, "unit": "mg/dL"},
  "interpretation": [{"coding": [{"system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation", "code": "H"}]}],
  "referenceRange": [{"high": {"value": 200.0, "unit": "mg/dL"}}]
}

Aynı mesajı tekrar göndermek yeni bir şey oluşturmaz ("created": 0, "skipped": 3): her satır, rapor kimliği, kod, tarih ve değerden kararlı bir tanımlayıcı alır. Platformun LOINC'e eşleyemediği işaretleyiciler, laboratuvarın kodunu korur ve unmapped'de geri döner, böylece eşlemeyi kaynakta düzeltebilirsiniz.

Sonuçları geri okumak standart bir FHIR aramasıdır:

curl -s "https://platform.anpheros.com/fhir/R4/Observation?patient=$PID&category=laboratory&code=http://loinc.org|2093-3" \
  -H "Authorization: Bearer $KEY"

Aynı veriye girip çıkmanın diğer yolları:

CSV raporu, bir HL7 v2 mesajı, eşlenmemiş işaretleyiciler ve sentetik bir hastada yeniden gönderilen raporlarla tam adım adım anlatım, Bir FHIR kaydına laboratuvar sonuçlarının nasıl aktarılacağı eğitiminde yer almaktadır.

Sonuçları Göndermeden Önce Kontrol Edin

Ücretsiz FHIR R4 validator, bir Observation'ın yapısını ve gerekli değer kümelerini kontrol eder ve eu-lab profili ile bir laboratuvar sonucunun neleri içermesi gerektiğini de kontrol eder: laboratory kategorisi, bir LOINC kodu, bir konu, bir final-tip durumu, bir zaman, bir değer, bir UCUM birimi ve bir referans aralığı. Aynı kontroller platformda POST /fhir/R4/Observation/$validate?profile=eu-lab aracılığıyla da çalışır.

Laboratuvar sonuçları API'si seçimi: kontrol listesi

Anpheros Neler Yapmaz

Anpheros bir laboratuvar bilgi sistemi değildir ve ticari laboratuvar ağlarına bağlı değildir: raporu laboratuvar, klinik veya hastanın uygulaması gönderir. Laboratuvar siparişlerini yönlendirmez, bu API aracılığıyla PDF raporlarını okumaz (Anpheros Daily uygulaması, hastanın tarafındaki fotoğraf ve PDF'lerden sonuçları çıkarır) ve sonuçları klinik olarak yorumlamaz. Birimler, laboratuvarın gönderdiği şekilde saklanır; bunları UCUM kodlarına dönüştürmek, Tıbbi Verileri Normalleştirme bölümünde açıklandığı gibi gönderenin sorumluluğundadır.

Sıkça Sorulan Sorular

Laboratuvar Sonuçları API'si nedir?

Yazılımın, yapılandırılmış bir veri olarak laboratuvar sonuçlarını — kodlanmış bir test, bir birimle birlikte bir değer, bir referans aralığı, bir durum ve bir zaman — belge yerine göndermesini veya almasını sağlayan bir arayüzdür. Modern laboratuvar sonuçları API'leri HL7 FHIR R4 Observation ve DiagnosticReport kaynaklarını kullanır; çoğu laboratuvar hala HL7 v2 ORU^R01 mesajları yaymaktadır.

Laboratuvar testlerini hangi kod sistemi tanımlar?

LOINC. Her LOINC kodu analitiği, örneği ve genellikle yöntemi adlandırır, bu nedenle 2345-7 (serum veya plazmada glukoz) ve 2339-0 (tam kanda glukoz) farklı sonuçlardır. Birimler en iyi UCUM ile ifade edilir.

Observation ve DiagnosticReport arasındaki fark nedir?

Bir Observation tek bir sonuçtur, örneğin kolesterol 212 mg/dL. Bir DiagnosticReport ise raporun tamamıdır — istenen panel, kimin tarafından düzenlendiği ve ne zaman — ve result'de Gözlemlerini listeler.

HL7 v2 laboratuvar mesajlarını bir FHIR sunucusuna aktarabilir miyim?

Evet. Her OBX segmenti bir Observation'a eşlenir (OBX-3 code'e, OBX-5 ve OBX-6 valueQuantity'ye, OBX-7 referenceRange'e, OBX-8 interpretation'ye). Anpheros laboratuvar bağlayıcısı bunu tek bir istekte yapar ve laboratuvarın rapor kimliğini Provenance'da saklar.

Bir rapor yeniden gönderildiğinde yinelenen laboratuvar sonuçlarından nasıl kaçınırım?

Her sonuca rapordan, testten, zamandan ve değerden türetilmiş kararlı bir tanımlayıcı verin ve tanımlayıcısı zaten mevcut olan satırları atlayın. Anpheros laboratuvar bağlayıcısı bunu otomatik olarak yapar ve sayımı skipped olarak bildirir.

İlgili Kaynaklar

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Product updates by email

New features, guides and the end of the beta. One email a month at most.

Send me occasional Anpheros Platform updates by email (new features, API changes, guides). I'll confirm by email and can unsubscribe in one click from any email. Privacy