Geliştiriciler İçin

Laboratuvar bağlayıcısı: HL7 v2, CSV veya JSON formatındaki bir laboratuvar raporu tek bir istekte FHIR Gözlemlerine nasıl dönüşür

Bir laboratuvarı hasta kaydına nasıl bağlarsınız: tüm rapor (HL7 v2 ORU^R01, CSV veya JSON), birimler, referans aralıkları ve laboratuvarın performans gösterdiği şekilde LOINC'e eşlenen sonuçlar ile tek bir POST isteği, eşlenemeyen belirteçler geri bildirilir. Anpheros laboratuvar bağlayıcısı ve uyguladığı kurallar.

yazan Yayınlandı 4 dk okuma

Bir laboratuvarın entegrasyonda tek bir görevi vardır: raporu hastanın kaydına yeniden yazmadan, referans aralığını kaybetmeden ve kimsenin okumadığı bir format icat etmeden aktarmak. Anpheros laboratuvar bağlayıcısı, raporu laboratuvarın zaten ürettiği şekilde, HL7 v2, CSV veya JSON olarak alır ve her sonucu bir LOINC kodu, bir birim, bir referans aralığı, bir tarih ve performans gösteren olarak laboratuvar adıyla bir FHIR Observation'a dönüştürür. Bu kılavuz sözleşmedir.

Geliştiriciler için teknik sürüm: Laboratuvar bağlayıcısı · developers.anpheros.com adresinde Laboratuvar sonuçları API'si, istekler, yanıtlar ve sınırlar ile birlikte. Bu sayfa, herkesin anlayabileceği dildeki sürümdür.

Tek istek

POST /v1/patients/{patient_id}/labs/import
Authorization: Bearer <project key>
Content-Type: text/csv | x-application/hl7-v2+er7 | application/json
X-Anpheros-Source-System: labx        (isteğe bağlı; Provenance'da kaydedilir)
Idempotency-Key: <report id>          (isteğe bağlı; tekrar deneme aynı cevabı verir)

Yanıt ne olduğunu söyler:

{"created": 3, "skipped": 0, "unmapped": ["Marker çok nadir"], "warnings": [],
 "observations": [{"id": "…", "marker": "TSH", "code": "3016-3", "system": "http://loinc.org",
                   "value": 2.1, "unit": "mUI/L", "date": "2026-09-01"}]}

Formatlar

HL7 v2 ORU^R01, ER7 metni olarak. OBX-3 tanımlayıcıdır (code^text^LN LOINC'dir; yerel bir kod laboratuvarın kendi kodu olarak saklanır), OBX-5 değer, OBX-6 birim, OBX-7 referans aralığı, OBX-8 anormal bayrağı (interpretation olur), OBX-11 durum, OBX-14 veya OBR-7 tarihtir. MSH-4 gönderen tesisi adlandırır, bu da performans gösteren olur; OBR-3 ve MSH-10 Provenance'daki rapor kimliği olur. Bekleyen, silinmiş veya yanlış sonuçlar (I, X, D, W) ve değeri olmayan OBX segmentleri Gözlemler olmaz ve warnings içinde adlandırılır.

CSV bir başlık satırı ile; ayırıcılar , ; veya sekme, ondalık virgül kabul edilir, tarihler ISO, DD.MM.YYYY veya DD/MM/YYYY. Romence veya İngilizce tanınan sütunlar: marker, value, unit, reference range (70-100, <5, >3.5) veya ref_low/ref_high, date, isteğe bağlı LOINC kodu, note. Bir CSV laboratuvar taşımaz, bu nedenle X-Anpheros-Acting-As göndermediğiniz sürece performans gösteren eksiktir.

Analiza;Rezultat;UM;Interval de referinta;Data
Hemoglobina glicozilata (HbA1c);6,4;%;4,0-5,6;01.09.2026
TSH;2,1;mUI/L;0,4-4,0;01.09.2026

JSON zaten yapılandırılmış verileriniz olduğunda: {"date": "2026-09-01", "origin": "report-77", "laboratory": "Synevo", "items": [{"marker": "TSH", "value": 2.1, "unit": "mUI/L", "ref_low": 0.4, "ref_high": 4.0, "code": "3016-3"}]}.

Önemli eşleme kuralları

  • LOINC verildiğinde, aksi takdirde isme göre. İsimler, Romence ve İngilizce LOINC isimleri ve eş anlamlıları ile eşleştirilir. Birden fazla kavrama uyan veya kavramın sahip olmadığı bir niteleyici taşıyan (idrar, non-HDL, serbest, oran) bir isim tahmin edilmez: laboratuvarın kendi kodunu urn:anpheros:lab-code altında saklar ve unmapped içinde görünür, böylece eşlemeyi kendi tarafınızda iyileştirebilirsiniz. Mümkün olduğunda LOINC kodları gönderin.
  • Değerler asla dönüştürülmez. Üre ve üre nitrojeni farklı kodlardır; LDL doğrudan ve LDL hesaplanmış farklı kodlardır; serumdan glikoz ve kapiller kandan glikoz farklı kodlardır. Bağlayıcı, isim ve yöntemden doğru olanı seçer ve sayıyı olduğu gibi bırakır.
  • Saatler bölgelerini korur. Bir ofsetli v2 saati korunur; ofsetsiz ise MSH-7'nin ofseti bir uyarıyla kullanılır; hiçbir yerde ofset yoksa, yalnızca tarih saklanır. CSV saatleri bölge taşımaz ve tarihler olarak saklanır.
  • İdempotent. Aynı raporu aynı Idempotency-Key ile iki kez gönderin ve aynı cevabı ve yinelenenleri alırsınız.
  • Her sonuçta Provenance: kaynak sistem, rapor kimliği ve performans gösteren, HL7 Europe Laboratuvar Raporu'nun gerektirdiği gibi.

Hasta ne görür

Sonuçlar kişinin kaydında görünür ve Anpheros Daily kullananlar için telefonlarında geldikleri anda, referans aralığı ve önceki raporlardaki eğilim ile birlikte görünür. Tarama veya yeniden yazma gerekmez. Bir sonuç anormal ise kişi bayrağı görür; uygulama onu yorumlamaz.

Test etme

Sandbox ücretsizdir ve sentetik hastaların zaten laboratuvar geçmişi vardır. Onlardan birine bir rapor gönderin ve geri okuyun:

curl -X POST "$BASE/v1/patients/$PID/labs/import" -H "Authorization: Bearer $KEY" \
     -H "Content-Type: text/csv" --data-binary @report.csv
curl "$BASE/fhir/R4/Observation?patient=$PID&category=laboratory&_sort=-date" -H "Authorization: Bearer $KEY"

HL7 Europe uyumluluk notları dahil tam spesifikasyon developers.anpheros.com/guides/lab-connector adresinde bulunmaktadır.

Sık sorulan sorular

LIS'imizin ürettiğini değiştirmemiz gerekiyor mu?

Hayır. ORU^R01 mesajını veya CSV dışa aktarımını olduğu gibi gönderin. LOINC kodları ekleyebilirseniz, ekleyin; aksi takdirde bağlayıcı isme göre eşleştirir ve eşleştiremediği şeyleri size bildirir.

Eşleyemediğiniz sonuçlar ne olacak?

Laboratuvarın kendi kodu ve rapordan tam metin ile saklanır, böylece hiçbir şey kaybolmaz ve bir dahaki sefere bir LOINC kodu ekleyebilmeniz için unmapped içinde listelenir.

Referans aralıkları ve anormal bayraklar saklanıyor mu?

Evet: aralık referenceRange'a, bayrak interpretation'a gider, birim UCUM olarak saklanır ve değer asla dönüştürülmez.

Bir laboratuvar, oluşturmadığı bir hasta için sonuç gönderebilir mi?

Yalnızca kişinin rızasıyla veya projenin temsil ettiği kuruluş olarak X-Anpheros-Acting-As ile. Bir proje, oluşturduğu hastaları görür; diğer her şey bir izin gerektirir.

Entegrasyon için bir maliyet var mı?

Sandbox ücretsizdir. Üretim, kuruluş başına ayda 49 €'dan başlar, ilk ay ücretsizdir; fiyatlandırmaya bakın.

Bu rehber bilgilendirme amaçlıdır ve tıbbi muayenenin yerini tutmaz. Sağlığınızla ilgili kararlar için doktorunuzla konuşun. Acil durumda 112’yi arayın.
Yazar hakkında
Adrian Kereky

Anpheros’un kurucusu. Elektronik mühendisi; Samsung ve NVIDIA ile ortaklık içinde yürütülen otomotiv projelerinde altı yıl otonom sürüş alanında, NVIDIA çipleri ve CUDA üzerinde çalışan sürücü destek ve yapay zekâ sistemlerinin mimarisi üzerinde çalıştı. Ardından Anpheros’u kurdu: hastanın kontrolündeki sağlık kaydını ve onun üzerinde çalıştığı HL7 FHIR R4 platformunu.

Anpheros ve yazar hakkında daha fazlası →

Sağlık kaydınız hep yanınızda

Anpheros Daily semptomları, tahlilleri, ilaçları ve belgeleri tek bir yerde, standart bir formatta ve sizin kontrolünüzde saklar. Basic planı ücretsizdir.

Anpheros Daily’yi indir