# HL7 v2'den FHIR'a Eşleme

> HL7 v2 ORU^R01'den FHIR R4'e Segment-kaynak ve OBX alan-alan eşlemesi, entegrasyonları bozan tuzaklar ve HTTPS üzerinden çağırabileceğiniz bir dönüştürücü.

Source: https://developers.anpheros.com/tr/guides/hl7-v2-to-fhir-mapping

**HL7 v2'yi FHIR'a eşlemek, boru ile ayrılmış v2 mesajının her bir segmentini FHIR R4 kaynaklarına dönüştürmek anlamına gelir: PID'yi Patient'a, OBR'yi DiagnosticReport'a (veya ServiceRequest'e), her OBX'i Observation'a dönüştürmek, kodlar, birimler, aralıklar ve zamanlar alan alan taşınır.** HL7, yaygın segmentler için kavram haritaları içeren resmi bir [V2-to-FHIR uygulama kılavuzu](https://hl7.org/fhir/uv/v2mappings/) yayınlar. Bu sayfa, laboratuvar sonuçları (ORU^R01) için pratik eşlemeyi, gerçek entegrasyonları bozan tuzakları ve HTTPS üzerinden çağırabileceğiniz bir dönüştürücüyü sunar: Anpheros laboratuvar bağlayıcısı.

<!-- visual:v2map-flow -->

## Segment'ten kaynağa

| HL7 v2 segmenti | Ne taşır | FHIR R4 kaynağı | Anpheros laboratuvar bağlayıcısında |
|---|---|---|---|
| MSH | Ayırıcılar, gönderen sistem, mesaj tipi, mesaj kimliği | `MessageHeader` (veya provenance) | MSH'den okunan ayırıcılar; ORU^R01 için tip kontrol edildi; izlenebilirlik için mesaj kimliği saklandı |
| PID | Hasta tanımlayıcıları, adı, doğum tarihi, cinsiyeti | `Patient` | Kullanılmıyor: hasta istek URL'sindeki hastadır, bu nedenle bir mesaj yanlış kayda yazılamaz |
| PV1 | Ziyaret | `Encounter` | Kullanılmıyor |
| ORC / OBR | Sipariş ve rapor: doldurucu/yerleştirici kimliği, tarih | `ServiceRequest`, `DiagnosticReport` | OBR-3 (veya OBR-2) rapor kimliğidir, OBR-7 varsayılan tarihtir |
| OBX | Bir sonuç | `Observation` | OBX başına bir laboratuvar Gözlemi |
| NTE | Düz metin notu | `Observation.note` | Kullanılmıyor |

## OBX Alanı Alan Bazında

| OBX Alanı | FHIR Observation Öğesi | Notlar |
|---|---|---|
| OBX-2 değer tipi (NM, SN, ST, CWE) | `value[x]` seçimi | NM ve SN `valueQuantity` olur; metin metin olarak kalır |
| OBX-3 tanımlayıcı `code^text^system` | `code.coding` | OBX-3.3'teki `LN` LOINC anlamına gelir; diğer sistemler laboratuvarın yerel kodudur |
| OBX-5 değer, OBX-6 birim | `valueQuantity.value`, `.unit` / `.code` (UCUM) | `<5` ve `6,4` bilinçli olarak ayrıştırılmalıdır |
| OBX-7 referans aralığı | `referenceRange.low` / `.high` | `3.5-5.1`, `<200`, `>40` |
| OBX-8 anormal bayrak | `interpretation` | H, L, HH, LL, A, N |
| OBX-11 sonuç durumu | `status` | F → nihai, C → değiştirilmiş, P → ön, I → kayıtlı |
| OBX-14 gözlem zamanı | `effectiveDateTime` | v2 zamanlarında genellikle saat dilimi eksiktir; FHIR bir tane gerektirir |

## Bir İstekle Mesaj Dönüştürme

```bash
curl -X POST "https://platform.anpheros.com/v1/patients/$PID/labs/import" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: x-application/hl7-v2+er7" \
  -H "Idempotency-Key: $(uuidgen)" \
  --data-binary @oru_r01.hl7
```

Yanıt, kaç Gözlem (Observation) oluşturulduğunu, zaten içe aktarıldığı için kaçının atlandığını, hangi işaretleyicilerin eşleştirilemediğini ve kodlarıyla birlikte yeni Gözlemleri listeler. Her biri rapor, test, zaman ve değerden türetilen kararlı bir tanımlayıcı alır, böylece aynı mesajı yeniden gönderen bir laboratuvar yinelenen kayıt oluşturmaz.

## Gerçek Entegrasyonları Bozan Tuzaklar

1. **Saat Dilimleri.** `20261002074500`'de bir fark bilgisi yoktur; gönderenin saat dilimini açıkça belirleyin.
2. **Yerel Kodlar.** LOINC olmadığında laboratuvarın kendi kodunu saklayın; asla düşürmeyin.
3. **Yeniden Göndermeler.** Sonuç başına sabit bir tanımlayıcı olmadan, yeniden denemeler çoğaltmalara dönüşür.
4. **Düzeltmeler.** OBX-11 `C` bir düzeltmedir; değiştirip değiştirmediğine veya ekleyip eklemediğine karar verin ve eski sonucu işaretleyin.
5. **Sayısal Olmayan Değerler.** `positive`, `<5`, `6,4` tahmin değil, açık kurallar gerektirir.

## Bağlayıcının Yapmadıkları

HTTPS üzerinden ORU^R01 laboratuvar sonuçlarını kabul eder. ADT veya sipariş mesajları almaz, TCP üzerinden MLLP konuşmaz (önündeki bir arayüz motoru iletebilir), DiagnosticReport oluşturmaz ve PID'den hasta eşleştirmesi yapmaz.

## Sıkça Sorulan Sorular

### HL7 v2'yi FHIR'a nasıl eşlersiniz?
Segment segment: PID'den Patient'a, PV1'den Encounter'a, ORC/OBR'den ServiceRequest ve DiagnosticReport'a, OBX'ten Observation'a, NTE'den notlara. HL7'nin V2-to-FHIR uygulama kılavuzu, alan düzeyindeki kavram eşlemelerini tanımlar.

### HL7 v2'den FHIR'a dönüştürücü var mı?
Evet. Arayüz motorları ve açık kaynaklı kütüphaneler mesajları dönüştürür; laboratuvar sonuçları için Anpheros laboratuvar bağlayıcısı, tek bir HTTPS isteğinde bir ORU^R01 mesajını FHIR R4 Observations'a dönüştürür ve bunları hastanın kaydına depolar.

### Anpheros hangi HL7 v2 mesaj türlerini kabul eder?
ORU^R01 laboratuvar sonuçları. Başka bir türdeki bir mesaj uyarı alır ve yalnızca OBX segmentleri okunur; ADT, sipariş ve diğer mesajlar desteklenmez.

### HL7 v2 anormal bayrakları FHIR'da nasıl temsil edilir?
OBX-8, HL7 ObservationInterpretation kodları (H, L, HH, LL, A, N) kullanılarak `Observation.interpretation` olur.

<!-- visual:cta-v2map -->

## İlgili Konular

- [Laboratuvar sonuçları API'si: HL7 v2, FHIR ve LOINC](https://developers.anpheros.com/tr/guides/lab-results-api)
- [FHIR ve HL7 v2: pratik farklılıklar](https://developers.anpheros.com/tr/guides/fhir-vs-hl7-v2)
- [Bir FHIR kaydına laboratuvar sonuçlarının nasıl aktarılacağı](https://developers.anpheros.com/tr/guides/import-lab-results-fhir)
- [Klinik gösterge panelleri için HL7 v2 ve FHIR](https://developers.anpheros.com/tr/guides/clinical-dashboard-hl7-fhir)
- [Laboratuvar bağlayıcısı](https://developers.anpheros.com/tr/guides/lab-connector)
