Пользовательский поисковый ответ HAPI FHIR

Я создаю спокойный API поиска FHIR, который требует пользовательского ответа. Это отличается от пользовательского ресурса. API должен возвращать всех пациентов следующим образом:

{
   "Patients":[
          {
           "patientid": "pat1",
           "gender": "male",
           "birthDate": "1924-10-10",
           "deceasedBoolean": true
          },
         {
          "patientid": "pat2",
           "gender": "female",
           "birthDate": "1957-10-10",
           "deceasedBoolean": false
         }

]
}

Итак, это объект с массивом объектов. Как я могу вернуть это вместо Bundle?


person sotn    schedule 29.06.2019    source источник
comment
Это не ФХИР. Лучше добавить дополнительный слой где-нибудь в вашем бэкенде, который переводит ответ FHIR (обычно Bundle) в ваш пользовательский объект JSON.   -  person Jaime    schedule 30.06.2019
comment
Согласитесь с @Jaime, вам придется перевести пакет поиска пациентов в собственный ответ, как только вы получите ответ от сервера FHIR.   -  person Yusubov    schedule 01.07.2019


Ответы (1)


Если вы вернете это, у вас нет FHIR API. У вас есть собственный API. FHIR определяет, как выглядят результаты поиска. Если вы не соответствуете этим требованиям, вы не соответствуете стандарту.

Весь смысл стандартного API, такого как FHIR, заключается в том, что результаты поиска выглядят одинаково независимо от того, какая система их возвращает, поэтому клиенты должны кодироваться только для одного интерфейса вместо отдельного интерфейса для каждого сервера.

Данные, которые вы пытаетесь предоставить, могут быть представлены как правильный набор ответов Bundle, содержащий действительные ресурсы в формате FHIR. Если вы это сделаете, вы будете соответствовать требованиям и сможете заявить, что внедрили FHIR.

Однако, если вы настаиваете на предоставлении своих данных в формате, который вы описали выше, вы не сможете заявить о соответствии FHIR, и никакие FHIR-совместимые клиенты или библиотеки не будут работать с вашей системой без настройки. (И если у вас нет регулирующих полномочий или значительных денег, шансы на то, что клиенты выполнят такую ​​​​настройку, довольно малы.)

person Lloyd McKenzie    schedule 29.06.2019