FHIR

Пояснення FHIR Bundle: дев'ять типів бандлів та коли який використовувати

FHIR Bundle — це контейнер для кількох ресурсів. Дев'ять типів бандлів у FHIR R4 (document, message, transaction, transaction-response, batch, batch-response, history, searchset, collection), чим транзакція відрізняється від пакету, та мінімальний приклад JSON.

від Опубліковано 2 хв читання

Коротка відповідь: Bundle — це ресурс FHIR, який групує інші ресурси: результати пошуку, набір записів, надісланих в одному запиті, клінічний документ, такий як резюме пацієнта, або повідомлення. Його тип вказує, що означає група, і як сервер повинен її обробляти.

Дев'ять типів у FHIR R4

  • searchset: результати пошуку з посиланнями на сторінки.
  • transaction: записи обробляються за принципом "все або нічого"; якщо один запис не вдається, жоден не застосовується.
  • batch: записи обробляються незалежно; кожен запис успішно виконується або зазнає невдачі самостійно.
  • transaction-response / batch-response: що сервер повертає для кожного.
  • document: клінічний документ (перший запис — це Composition), такий як Міжнародне резюме пацієнта; він підписується або зберігається як єдине ціле.
  • message: повідомлення, перший запис — це MessageHeader.
  • history: версії ресурсів.
  • collection: набір ресурсів без додаткового значення.

Transaction проти batch

Використовуйте transaction, коли ресурси залежать один від одного, наприклад, Пацієнт та Спостереження, що посилаються на нього: посилання між записами можуть використовувати тимчасові ідентифікатори urn:uuid:, які сервер розпізнає. Використовуйте batch для незалежних операцій, де частковий успіх є прийнятним.

{
  "resourceType": "Bundle",
  "type": "transaction",
  "entry": [
    {"fullUrl": "urn:uuid:61ebe359-bfdc-4613-8bf2-c5e300945f0a",
     "resource": {"resourceType": "Patient", "name": [{"family": "Example"}]},
     "request": {"method": "POST", "url": "Patient"}},
    {"resource": {"resourceType": "Observation", "status": "final",
       "code": {"coding": [{"system": "http://loinc.org", "code": "8867-4"}]},
       "subject": {"reference": "urn:uuid:61ebe359-bfdc-4613-8bf2-c5e300945f0a"},
       "valueQuantity": {"value": 72, "unit": "/min", "system": "http://unitsofmeasure.org", "code": "/min"}},
     "request": {"method": "POST", "url": "Observation"}}
  ]
}

В Anpheros

Платформа Anpheros приймає bundles типу transaction та batch і повертає bundles типу searchset з пагінацією; Міжнародне резюме пацієнта повертається як document bundle. Дивіться пісочницю FHIR, щоб спробувати їх, і Міжнародне резюме пацієнта у FHIR.

Пов'язані сторінки

Джерела

Поширені запитання

Яка різниця між транзакцією FHIR та пакетом (batch)?

Транзакція — це "все або нічого"; пакет обробляє кожен запис незалежно.

Як посилатися на ресурс, створений у тому ж пакеті?

Надайте йому повний URL, наприклад urn:uuid:…, і використовуйте його як посилання; у транзакції сервер замінює його справжнім ідентифікатором.

Який тип має резюме пацієнта?

Bundle типу document, перший запис якого є Composition.

Чому мій пошук повертає Bundle?

Результати пошуку завжди є bundle типу searchset з посиланнями на наступну сторінку.

Anpheros Platform

Спробуйте безкоштовно в пісочниці

Перший запит FHIR за 5 хвилин. API стандарту HL7 FHIR R4 з вбудованою згодою пацієнта: спробуйте в пісочниці, а потім підключіть власну програму чи клінічну систему.

Безкоштовно · 30 синтетичних пацієнтів · без картки

Цей посібник призначений для інформаційних цілей і не замінює медичну консультацію. Для прийняття рішень щодо вашого здоров'я зверніться до лікаря. У надзвичайній ситуації телефонуйте на місцевий номер екстреної допомоги (112 у Європі).
Написано
Команда Anpheros

Anpheros створює медичну карту, яку пацієнт контролює та може ділитися з будь-якою клінікою, на платформі HL7 FHIR R4, розташованій в ЄС. Ці посібники допоможуть вам зрозуміти та організувати своє здоров'я; вони не замінюють вашого лікаря.

Про Anpheros →