Программный компонент «FHIR-API и дополнительные компоненты» обеспечивает структурирование, конвертацию и извлечение медицинских записей и документов пациентов, хранимых в ИЭМК.
Сервис предназначен для организации на стороне ИЭМК программного интерфейса (API), реализованного по стандарту FHIR DSTU2. В текущей реализации сервис работает только на извлечение данных из БД ИЭМК.
Основная информация
Список терминов и сокращений
Сокращение (обозначение) |
Значение сокращения (обозначения) |
ИЭМК |
Подсистема «Интегрированная электронная медицинская карта» РС ЕГИСЗ (сервис ИЭМК) |
ЛПУ |
Лечебно-профилактическое учреждение |
МИС |
Медицинская информационная система |
МКБ-10 |
Международная классификация болезней 10-го пересмотра |
МО |
Медицинская организация |
ОДИИ |
Подсистема «Обмен данными инструментальных исследований» РС ЕГИСЗ (сервис ОДИИ) |
ОДЛИ |
Подсистема «Обмен данными лабораторных исследований» РС ЕГИСЗ (сервис ОДЛИ) |
РС ЕГИСЗ |
Региональный сегмент единой государственной информационной системы в сфере здравоохранения региона |
СМО |
Случай медицинского обслуживания |
СЭМД |
Структурированный медицинский электронный документ. Формат обмена медицинскими документами на основе стандарта HL7 CDAr2, утвержденного ЕГИСЗ |
FHIR |
Fast HealthcareInteroperability Resources |
HTTP |
HyperText Transfer Protocol |
SOAP |
Simple Object Access Protocol |
TCP/IP |
Transmission Control Protocol/Internet Protocol |
Назначение
Программный компонент «FHIR-API и дополнительные компоненты» обеспечивает структурирование, конвертацию и извлечение медицинских записей и документов пациентов, хранимых в ИЭМК.
Сервис предназначен для организации на стороне ИЭМК программного интерфейса (API), реализованного по стандарту FHIR DSTU2. В текущей реализации сервис работает только на извлечение данных из БД ИЭМК.
Описание протокола информационного взаимодействия (API)
Общая информация
С общей информацией о стандарте FHIR и используемых ресурсах можно ознакомиться по следующим ссылкам:
-
http://fhir-ru.github.io/summary.html (перевод на русский язык)
Легенда по тексту
- Обычный текст - показан уже реализованный функционал,
- Зеленый текст или текст на зеленом фоне - новый функционал,
- Синий текст (кроме ссылок) или текст на синем фоне - функционал, который находится в разработке.
Поддерживаемые Fhir-ресурсы
Текущая реализация сервиса поддерживает работу со следующими Fhir-ресурсами:
- Encounter - случай медицинского обслуживания;
-
DocumentReference - описание медицинского документа;
- Procedure - медицинская услуга;
- Practitioner - медицинский работник;
- Condition - диагноз;
- Observation - параметры наблюдения за пациентом;
- Immunization - сведения о пробах, прививках и мед.отводах;
- ImmunizationRecommendation - сведения о запланированных прививках;
- AllergyIntolerance - сведения об аллергиях пациента.
-
MedicationAdministration - сведения о назначенных пациенту препаратах
- Medication - наименование назначенного препарата
В качестве протокола взаимодействия используется RESTful API (подробнее см. http://hl7.org/fhir/http.html ).
Далее в качестве обозначения адреса публикации Сервиса будет использована текстовая константа [base] .
Авторизация в сервисе и формат обмена
Для работы с Сервисом возможно использовать авторизацию двух типов:
- С помощью статичного ключа
- С помощью сессионного ключа Сервиса управления доступом
Статичный ключ
В этом случае авторизация в сервисе FhirProxy осуществляется с помощью передачи в заголовке HTTP-сообщения параметра Authorization вида:
N3 {Авторизационный ключ}
Значение ключа должно соответствовать полю System в таблицы dbo.System БД ИЭМК.
Сессионный ключ
В этом случае авторизация в сервисе FhirProxy осуществляется с помощью передачи в заголовке HTTP-сообщения параметра Authorization вида:
Bearer 135c5ee7e5a7ff28c9f83bdf894f3e9332d5850f219b2518b91b8ac945fdcee3
Порядок получения сессионного ключа Сервиса управления доступом описан в соответствующем разделе документации.
Описание поддерживаемых Fhir-ресурсов
Encounter
Fhir-ресурс Encounter (http://hl7.org/fhir/DSTU2/encounter.html) предназначен для передачи данных случая медицинского обслуживания и содержит следующие параметры, отображаемые на комплексный тип Case SOAP-протокола сервиса ИЭМК.
Encounter | Описание | Тип |
CaseAmb, |
CaseTmc | Disp | Мастер-случай |
---|---|---|---|---|---|---|
id | Идентификатор СМО в РЕГИЗ\ИЭМК. | int | 1...1 | 1…1 | 1...1 | 1...1 |
identifier, где http://netrika.ru/iemk-identifier | Идентификатор истории болезни в передающей МО | Element | 1...1 | 1…1 | 1...1 | 1...1 |
identifier, "http://netrika.ru/iemk-mis-identifier | Идентификатор СМО в передающие МИС. | Element | 1...1 | 1…1 | 1...1 | 1...1 |
patient | Идентификатор карточки пациента в сервисе MPI. | Reference (Patient) | 1...1 | 1…1 | 1...1 | 1...1 |
serviceProvider | Медицинская организация, осуществившая случай обслуживания. | Reference (Organization) | 1…1 | 1…1 | 1…1 | 1...1 |
participant.individual | Ссылка на ресурс Practitioner , только для ConsultNote. Лицо, которое придало юридическую силу документу. | Reference (Particioner) | 1…1 | 1…1 | 0...1 | |
participant.type | Роль лечащего врача. Всегда имеет значение "attender" | CodebleConcept | 1…1 | 1…1 | 0...0 | |
class |
Используются следующие коды:
|
code | 1...1 |
1…1 "virtual" |
1...1 "daytime" |
1...1 "other" |
period.start | Дата открытия случая | datetime "DD.MM.YYYY H:MM:SS" |
1...1 | 1…1 | 1...1 | 1...1 |
period.end | Дата закрытия случая |
datetime |
0...1 | 1…1 | 1...1 | |
length |
value - длительность случая; unit - единица измерения длительности (в частности, days). |
Duratation | 0...1 | 1…1 | 1...1 | |
status |
Статус обслуживания. Используются следующие коды статусов:
|
code | 1...1 | 1…1 | 1...1 | 1...1 |
hospitalization. dischargeDisposition |
Состояние пациента при завершении случая обслуживания.
|
CodebleConcept | 0…1 | 0…1 | 0…1 | 0...1 |
indication | Основной заключительный диагноз, поставленный пациенту в рамках СМО | Reference (Condition) | 1...1 | 1...1 | 1...1 | 0...0 |
reason | Идентификатор цели обращения (Справочник OID: 1.2.643.5.1.13.2.1.1.106) | CodebleConcept | 0...1 | 0...0 | 0...0 | 0...0 |
extension, где url = "DeathReason" |
Код МКБ-10 (code) основной причины смерти (OID справочника: 1.2.643.2.69.1.1.1.2), а также значение кода (value) | CodebleConcept | 0...0 | 0...0 | 0...0 | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-caseresult" |
Код исхода заболевания (OID Справочник: 1.2.643.5.1.13.2.1.1.688). | CodebleConcept | 0...1 | 0...1 | 0...1 | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-typecaseresult" |
Код исхода амбулаторного случая обслуживания (OID Справочник: 1.2.643.2.69.1.1.1.17) или госпитального случая медицинского обслуживания (OID Справочник: 1.2.643.2.69.1.1.1.23). |
CodebleConcept | 0...1 | 0...1 | 0...1 | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-privileges" |
Код категории льготы (Льготные категории населения, OID 1.2.643.5.1.13.13.11.1050), который был присвоен в рамках этого Encouter. |
CodebleConcept | 0...1 | 0...1 | 0...1 | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-socialgroupcode" |
Код социальной группы (Занятость (социальные группы) населения, Справочник OID:1.2.643.5.1.13.13.11.1038), который был присвоен в рамках этого Encouter. |
CodebleConcept | 0...1 | 0...1 | 0...1 | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-healthgroupinfo" |
Код группы здоровья (Классификатор групп состояния здоровья взрослого населения справочник OID: 1.2.643.5.1.13.2.1.1.118) который был присвоен последним в рамках этого Encouter. |
CodebleConcept | 0...1 | 0...1 | 0...1 | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-paymenttype" |
Идентификатор источника финансирования (Справочник OID: 1.2.643.2.69.1.1.1.32) |
CodebleConcept | 0...1 | 0...1 | 0...1 | 0...1 |
Пример ресурса Encounter
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Encounter", "id": "487146", "identifier": [ { "system": "http://netrika.ru/iemk-identifier", "value": "1550925" }, { "system": "http://netrika.ru/iemk-mis-identifier", "value": "1550925" } ], "status": "finished", "class": "ambulatory", "patient": { "reference": "Patient/1a477a30-5771-48ee-8c1f-184ed698ef70" }, "participant": [ { "type": [ { "coding": [ { "system": "http://hl7.org/fhir/vs/encounter-participant-type", "code": "attender" } ] } ], "individual": { "reference": "/Practitioner/9314" } } ], "period": { "start": "02.11.2021 0:00:00", "end": "02.11.2021 0:00:00" }, "length": { "value": 1.0, "unit": "days" }, "reason": [ { "coding": [ { "system": "1.2.643.5.1.13.2.1.1.106", "code": "12", "display": "Другие" } ] } ], "indication": [ { "reference": "/Condition/303258" } ], "hospitalization": { "dischargeDisposition": { "coding": [ { "system": "http://hl7.org/fhir/vs/encounter-discharge-disposition", "code": "home" } ] } }, "serviceProvider": { "reference": "Organization/a1b2445d-56b9-4ec6-ba75-fa15b3781625" } } } ] }
Пример ресурса Encounter cо сведениями о смерти
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Encounter", "id": "8132", "extension": [ { "url": "DeathReason", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "Z59.8", "display": "Другие проблемы, касающиеся экономических и жилищных условий" } ] } } ], "identifier": [ { "system": "http://netrika.ru/iemk-identifier", "value": "8132" } ], "status": "finished", "class": "other", "patient": { "reference": "Patient/415b7d61-3741-4b80-b896-6da8d3aacc00" }, "participant": [ { "type": [ { "coding": [ { "system": "http://hl7.org/fhir/vs/encounter-participant-type", "code": "attender" } ] } ], "individual": { "reference": "/Practitioner/9353" } } ], "period": { "start": "28.08.2019 0:00:00", "end": "28.08.2019 0:00:00" }, "length": { "value": 1.0 }, "hospitalization": { "dischargeDisposition": { "coding": [ { "system": "http://hl7.org/fhir/vs/encounter-discharge-disposition", "code": "exp" } ] } }, "serviceProvider": { "reference": "Organization/0fbabd3b-3b99-e5bf-1afb-3e237b0b954a" } } } ] }
Получить Fhir-ресурс Encounter можно с помощью следующих методов:
- Получение общего количества Encounter (СМО) по идентификатору(-ам) пациента
- Получение списка Encounter по идентификатору(-ам) пациента за период
- Получение Encounter по его идентификатору
Особенности
- Если Encounter, который обращается к СМО, который был отменен (например, по нему есть актуальный СМО, а на запрашиваемый в ИЭМК.Сервисе вызвали методы UpdateCase), то такой Encounter вернется в ответе, только при прямом обращении по идентификатору.
DocumentReference
Fhir-ресурс DocumentReference (http://hl7.org/fhir/DSTU2/documentreference.html ) предназначен для передачи сведений о медицинских документах пациента, зарегистрированных в рамках случая обслуживания Encounter , отображаемых на комплексный тип MedDocument SOAP-протокола сервиса ИЭМК:
DocumentReference | Описание | Тип | Кратность |
---|---|---|---|
identifier, где system = "http://netrika.ru/iemk-identifier" | Идентификатор медицинского документа в ИЭМК | Element | 1...1 |
identifier, где system = "http://netrika.ru/iemk-mis-identifier" | Идентификатор медицинского документа в передающий МИС | Element | 1...1 |
type |
Тип документа. Записывается в виде кода, обозначающего определенный тип документа по стандарту FHIR DSTU2. В частности, используются следующие коды и мапинг по Справочнику OID: 1.2.643.2.69.1.1.1.195 " Виды электронных медицинских документов " параметр FHIR-Code:
|
CodebleConcept | 1...1 |
author | Ссылка на ресурса Practicioner - врач, подписавшем документ. | Reference (Particioner) | 1...1 |
indexed | Дата и время создания документа |
datetime "YYYY-MM-DDTHH:MM:SS+HH:MM" |
1...1 |
status |
Статус медицинского документа. Всегда используются код:
|
code | 1...1 |
description | Название документа (Заголовок, краткое описание) | string | 1...1 |
securityLabel | Сведения о защищенности информации. В частности, сведения о наличии электронной подписи документа и уровне конфиденциальности (обозначается кодом и его значением, согласно терминологии FHIR https://www.hl7.org/fhir/valueset-security-labels.html ) | CodebleConcept | |
content.attachment | Вложенный документ, закодированный в формате UTF-8 | Attachment | 1...1 |
attachment.contentType | Формат вложенного документа (PDF) | code | 1...1 |
attachment.url | Ссылка на вложение | uri | 0...1 |
attachment.size | Размер вложенного документа | unsignedInt | 1...1 |
context.encounter | Идентификатор случая медицинского обслуживания в ИЭМК, в рамках которого сформирован медицинский документ | Reference (Encounter) | 1...1 |
context.related.ref, где reference содержит "Observation" | Ссылка на ресурс Observation, которые связаны с этим DocumentRefernce | Reference (Observation) | 0...* |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-HasExpertCareRefferal' |
Дано направление для получения специализированной, в |
boolean | 0...1 |
extention, где url = "http://api.n3med.ru/api/fhir/n3extension-HasHealthResortRefferal' |
Дано направление на санитарно-курортное лечение, если имеет значение True, иначе - False. |
boolean | 0...1 |
extention, где URL = "http://api.n3med.ru/api/fhir/n3extension-additionalinformation/" |
Расширение, в котором передаются дополнительные параметры по медицинским документам. Подсказка Подробней о доступных параметрах смотри в следующем разделе "Описание Extention.AdditionalInformation".
|
string (B64 coded) | 0...1 |
Пример ресурса DocumentReference
{
"resourceType": "Bundle",
"entry": [
{
"resource": {
"resourceType": "DocumentReference",
"id": "217288",
"identifier": [
{
"system": "http://netrika.ru/iemk-identifier",
"value": "217288"
},
{
"system": "http://netrika.ru/iemk-mis-identifier",
"value": "IdDocumentMis08.02.2022_04:41:16470"
}
],
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/vs/c80-doc-typecodes",
"code": "11488-4"
}
]
},
"author": [
{
"reference": "/Practitioner/10785"
}
],
"indexed": "2022-01-25T00:00:00+03:00",
"status": "current",
"description": "Заключение",
"securityLabel": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v3-Confidentiality",
"code": "N",
"display": "normal"
}
]
}
],
"content": [
{
"attachment": {
"size": 0
}
}
],
"context": {
"encounter": {
"reference": "/Encounter/487922"
},
"related": [
{
"ref": {
"reference": "Observation/80708"
}
},
{
"ref": {
"reference": "Observation/80709"
}
},
{
"ref": {
"reference": "Observation/80710"
}
},
{
"ref": {
"reference": "Observation/80711"
}
}
]
}
}
}
]
}
Получить Fhir-ресурс DocumentReference можно с помощью следующих методов:
- Получение списка документов по идентификатору случая,
- Загрузка содержания документа в формате PDF,
- Загрузка содержания документа в нативном формате.
Описание Extention.AdditionalInforamtion
Extention где URL = "http://api.n3med.ru/api/fhir/n3extension-additionalinformation/" в текущей реализации передает в закодированном виде (B64) типом String дополнительные параметры по медицинским документам, которые хранятся в Сервисе-ИЭМК.
Параметр | Обязательность | Тип | Описание |
---|---|---|---|
DocumentReference.type = 64297-5 - Медицинское свидетельство о смерти (DeathCertificate) | |||
CertificateDate | 0...1 | valuedatetime | Дата свидетельства о смерти. |
CertificateS | 0...1 | valueString | Серия свидетельства о смерти. |
CertificateN | 0...1 | valueString | Номер свидетельства о смерти. |
DeathDate | 0...1 | valuedatetime | Дата смерти. |
DeathReasonImmediate | 0...1 | valueCodebleConcept | Непосредственная причина смерти, а), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
DeathReasonIntermediate | 0...1 | valueCodebleConcept | Промежуточная причина смерти б), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
DeathReasonInitial | 0…1 | valueCodebleConcept | Первоначальная причина смерти в), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
DeathReasonExternal | 0...1 | valueCodebleConcept | Внешней причины смерти г), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
DeathReason | 0...1 | valueCodebleConcept | Код МКБ-10 первоначальной причины смерти (Справочник OID: 1.2.643.2.69.1.1.1.2). |
EMK.DeathCertificateDocumentReference.type =71230-7 - Медицинское свидетельство о рождении (BirthCertificate) |
|||
CertificateDate | 0...1 | valuedatetime | Дата свидетельства о рождении. |
CertificateS | 0...1 | valueString | Серия свидетельства о рождении. |
CertificateN | 0...1 | valueString | Номер свидетельства о рождении. |
BirthDate | 0...1 | valuedatetime | Дата рождения. |
Sex | 0...1 | valueCodebleConcept | Пол (Справочник OID 1.2.643.5.1.13.2.1.1.156) |
BirthOrder | 0...1 | valueint | Порядковый номер в родах |
EMK.DeathCertificateDocumentReference.type =55107-7 - Медицинское свидетельство о пренатальной смерти (AddendumDocument) |
|||
CertificateDate | 0...1 | valuedatetime | Дата свидетельства о смерти. |
CertificateS | 0...1 | valueString | Серия свидетельства о смерти. |
CertificateN | 0...1 | valueString | Номер свидетельства о смерти. |
DeathDate | 0...1 | valuedatetime | Дата смерти. |
CodeMainPrenatal | 0...1 | valueCodebleConcept | Основное забол-е плода или ребенка а), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
CodeOtherPrenatal | 0...1 | valueCodebleConcept | Другие забол-я плода или ребенка б), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
CodeMainMother | 0...1 | valueCodebleConcept | Основное забол-е матери в), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
CodeOtherMother | 0...1 | valueCodebleConcept | Другие забол-я матери г), код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
DeathReasonPrenatal | 0...1 | valueCodebleConcept | Основная причина смерти плода или ребенка, код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
DeathReasonMother | 0...1 | valueCodebleConcept | Основная причина, забол-е матери, код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
Пример Extention.AdditionalInforamtion для Медицинского свидетельства о смерти (DeathCertificate),
{ "resourceType": "Parameters", "parameter": [ { "name": "DeathReason", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "U07.1", "display": "COVID-19" } ] } }, { "name": "CertificateDate", "valueDateTime": "2021-12-02T00:00:00+03:00" }, { "name": "CertificateS", "valueString": "7796" }, { "name": "CertificateN", "valueString": "779703" }, { "name": "DeathDate", "valueDateTime": "2021-11-27T00:00:00+03:00" }, { "name": "DeathReasonImmediate", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "Z97.8", "display": "Наличие другого уточненного устройства" } ] } }, { "name": "DeathReasonIntermediate", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "W34.5", "display": "В учреждении и районе торговли и обслуживания" } ] } }, { "name": "DeathReasonInitial", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "J15.2", "display": "Пневмония, вызванная стафилококком" } ] } }, { "name": "DeathReasonExternal", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "X85.4", "display": "На улице или автомагистрали" } ] } } ] }
Пример Extention.AdditionalInforamtion для Медицинского свидетельства о рождении (BirthCertificate),
{ "resourceType": "Parameters", "parameter": [ { "name": "CertificateDate", "valueDateTime": "2021-12-02T00:00:00+03:00" }, { "name": "CertificateS", "valueString": "5132" }, { "name": "CertificateN", "valueString": "513322" }, { "name": "BirthDate", "valueDateTime": "2021-09-02T00:00:00+03:00" }, { "name": "Sex", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.2.1.1.156", "code": "2", "display": "Женский" } ] } }, { "name": "BirthOrder", "valueString": "1" } ] }
Пример Extention.AdditionalInforamtion для Медицинского свидетельства о пренатальной смерти (AddendumDocument)
{ "resourceType": "Parameters", "parameter": [ { "name": "DeathReason", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "U07.1", "display": "COVID-19" } ] } }, { "name": "CertificateDate", "valueDateTime": "2021-12-02T00:00:00+03:00" }, { "name": "CertificateS", "valueString": "7796" }, { "name": "CertificateN", "valueString": "779703" }, { "name": "DeathDate", "valueDateTime": "2021-11-27T00:00:00+03:00" }, { "name": "DeathReasonImmediate", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "Z97.8", "display": "Наличие другого уточненного устройства" } ] } }, { "name": "DeathReasonIntermediate", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "W34.5", "display": "В учреждении и районе торговли и обслуживания" } ] } }, { "name": "DeathReasonInitial", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "J15.2", "display": "Пневмония, вызванная стафилококком" } ] } }, { "name": "DeathReasonExternal", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "X85.4", "display": "На улице или автомагистрали" } ] } } ] }
Condition
Fhir-ресурс Condition (https://www.hl7.org/fhir/DSTU2/condition.html) предназначен для передачи сведений о подозрении на заболевание (Problem) и диагнозах пациента (Diagnosis).
Condition (Diagnosis)
FHIR - ресурс Condition (https://www.hl7.org/fhir/DSTU2/condition.html) данного типа содержит следующие параметры, отображаемые на комплексный тип Diagnosis SOAP-протокола сервиса ИЭМК:
Condition | Описание | Тип | Кратность |
---|---|---|---|
extention | Дополнительная информация по диагнозу. | Identifier | 1...1 |
extention, где URL='http://api.n3med.ru/api/fhir/n3extension-nosologicalunitsofdiagnosis' | Идентификатор статуса диагноза (Справочник OID: 1.2.643.2.69.1.1.1.26). | CodebleConcept | 1...1 |
extention, где URL='http://api.n3med.ru/api/fhir/n3extension-dispensarystatus' | Идентификатор состояния диспансерного учета по данному диагнозу (заболеванию) (Справочник OID: 1.2.643.2.69.1.1.1.11). | CodebleConcept | 0...1 |
extention, где URL ='http://api.n3med.ru/api/fhir/n3extension-verificationStatus' |
Идентификатор этапа установления диагноза (Справочник OID: 1.2.643.2.69.1.1.1.10). Подсказка Этот параметр дополняет verificationStatus и всегда будет содержать больше информации. |
CodebleConcept | 1...1 |
extention, где URL =' http://api.n3med.ru/api/fhir/n3extension-clinicalStatus' |
Идентификатор характера заболевания (Справочник OID: 1.2.643.2.69.1.1.1.8). Подсказка Этот параметр дополняет clinicalStatus и всегда будет содержать больше информации. |
CodebleConcept | 0...1 |
extention, где URL='DiagnosisChangeReason' |
Код причины изменения диагноза (уточнение, отмена и др.) (Справочник OID: 1.2.643.2.69.1.1.1.9). |
CodebleConcept | 0...1 |
extention, где URL='MkbCodeChange' |
Заменяемый код МКБ-10 (Справочник OID: 1.2.643.2.69.1.1.1.2). |
CodebleConcept | 0...1 |
extention, где URL='DiseaseStatus' | Статус заболевания (Справочник OID: 1.2.643.5.1.13.2.1.1.122). | CodebleConcept | 0...1 |
{extention, где URL = ParamValue} | Показатели наблюдения пациента") в виде кода показателя (code) и его наименования (display). | ~ CodebleConcept | 0...1 |
identifier | Идентификаторы ресурса. | Массив Element'ов | 1...1 |
identifier, где system:'"http://netrika.ru/iemk-identifier' | Идентификатор диагноза (Condition). | Element | 1...1 |
identifier, где "system": "http://netrika.ru/parent-condition-identifier" |
Идентификатор родительского диагноза. | Element | 0...1 |
meta | Расширение ресурса Condition. Всегда передает пространство имен в виде "system": " urn:oid:1.2.643.2.69.1.1.1.2 " (из справочника "МКБ10 ред.СПб КЗ") в виде кода группы диагнозов. |
CodebleConcept |
1...1 |
patient | Передает идентификатор карточки пациента Reference(Patient) из MP.I, которому поставлен диагноз. | Reference (Patient) | 1...1 |
encounter | Передает идентификатор случая обслуживания, в рамках которого поставлен диагноз (idCase). | Reference (Encounter) | 1...1 |
dateRecorded | Дата постановки диагноза (создания записи). | datetime | 1...1 |
code | Диагноз, передается из пространства имен "urn:oid:1.2.643.2.69.1.1.1.2". | CodebleConcept | 1...1 |
category | Всегда передает значение "diagnosis", в случае передачи сведений о диагнозе (не о подозрении). | CodebleConcept | 1...1 |
clinicalStatus
|
Код характера заболевания Мапинг значений с Cправочника OID: 1.2.643.2.69.1.1.1.8 на HL7:
|
code | 0...1 |
verificationStatus
|
Код этапа установления диагноза. Мапинг значений с Cправочника OID: 1.2.643.2.69.1.1.1.10 на HL7:
|
code | 1..1 |
Пример ресурса Condition (Diagnosis)
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Condition", "id": "304370", "meta": { "tag": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "XIX" } ] }, "extension": [ { "url": "http://api.n3med.ru/api/fhir/n3extension-nosologicalunitsofdiagnosis", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.26", "code": "1", "display": "Основной" } ] } }, { "url": "http://api.n3med.ru/api/fhir/n3extension-verificationStatus", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.10", "code": "3", "display": "Заключительный" } ] } }, { "url": "http://api.n3med.ru/api/fhir/n3extension-clinicalStatus", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.8", "code": "1", "display": "острое" } ] } }, { "url": "http://api.n3med.ru/api/fhir/n3extension-dispensarystatus", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.11", "code": "3", "display": "взят повторно" } ] } }, { "url": "MkbCodeChange", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.2", "code": "Z59.8", "display": "Другие проблемы, касающиеся экономических и жилищных условий" } ] } }, { "url": "DiseaseStatus", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.2.1.1.122", "code": "2", "display": "Выздоровление с полным восстановлением физиологического процесса (функции)" } ] } }, { "url": "DiagnosisChangeReason", "valueCodeableConcept": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.9", "code": "1", "display": "подозрение снято" } ] } } ], "identifier": [ { "system": "http://netrika.ru/iemk-identifier", "value": "304370" } ], "patient": { "reference": "/Patient/b93c54db-0ed2-4b5b-b8fc-691c6449f8d5" }, "encounter": { "reference": "/Encounter/487872" }, "dateRecorded": "2016-01-02T00:00:00+03:00", "code": { "coding": [ { "system": "http://netrika.ru/diagnosis-code", "code": "T66", "display": "Неуточненные эффекты излучения" } ] }, "category": { "coding": [ { "system": "http://hl7.org/fhir/vs/condition-category", "code": "diagnosis" } ] }, "clinicalStatus": "active", "verificationStatus": "confirmed", "evidence": [ { "extension": [ { "url": "ParamValue", "valueString": "185" } ], "code": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.127", "code": "15", "display": "Мутации гена NRAS" } ] } }, { "extension": [ { "url": "ParamValue", "valueString": "70" } ], "code": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.127", "code": "50", "display": "ЧСС" } ] } } ], "notes": "Комент добавлен" } } ] }
Condition (Problem)
FHIR - ресурс Condition данного типа содержит следующие параметры, отображаемые на комплексный тип Problem SOAP-протокола сервиса ИЭМК:
Condition | Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор подозрения на заболевание в ИЭМК | Identifier | 1...1 |
identifier, где system = "urn:oid:1.2.643.5.1.13.2.7.100.6" | Всегда передает пространство имен в виде "system": "urn:oid: 1.2.643.5.1.13.2.7.100.6", где value - уникальный идентификатор подозрения на заболевания в системе-источнике , а assigner.display - OID системы-источника | Element | 1...1 |
patient | Идентификатор карточки пациента в ИЭМК. | Reference (Patient) | 1...1 |
encounter | Идентификатор СМО в ИЭМК. Передается всегда, кроме мастер-случаев. | Reference (Ecnounter) | 0...1 |
asserter | Идентификатор врача в ИЭМК. | Reference (Particioner) | 1...1 |
dateRecorded | Дата выявления подозрения. Передается, если в CkinicalStatus = true (подозрение установлено). Если Status = false (подозрение снято), не передается. | date | 0...1 |
code | Код диагноза МКБ-10. | CodebleConcept | 1...1 |
category |
Передавать finding из пространства имен http://hl7.org/fhir/vs/condition-category. |
CodebleConcept | 1...1 |
clinicalStatus |
Код характера подозрения. |
code | 1...1 |
verificationStatus |
Код статуса подозрения.
|
code | 1...1 |
abatement. abatementDateTime |
Дата снятия подозрения. | datetime | 0...1 |
notes | Комментарии | string | 0...1 |
Пример ресурса Condition (Problem)
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Condition", "id": "2", "identifier": [ { "system": "urn:oid:1.2.643.5.1.13.2.7.100.6", "value": "2039e788-374b-480f-b055-13ee9ae4b704", "assigner": { "display": "1.2.643.2.69.1.2.17" } } ], "patient": { "reference": "/Patient/effb978f-5adc-4b1c-b034-74012ed41a01" }, "encounter": { "reference": "/Encounter/9647" }, "asserter": { "reference": "/Practitioner/3214" }, "dateRecorded": "14.01.2020 12:34:46", "code": { "coding": [ { "code": "T35.0" } ] }, "category": { "coding": [ { "system": "http://hl7.org/fhir/vs/condition-category", "code": "finding" } ] }, "clinicalStatus": "active", "verificationStatus": "provisional", "notes": "комментарий" } } ] }
Получить Fhir-ресурс Condition можно с помощью следующих методов:
- Получение данных о подозрении на заболевание по его идентификатору
- Получение данных о диагнозе по его идентификатору
-
Получение списка подозрений по дате выявления, коду диагноза и категории
Practitioner
Fhir-ресурс Practitioner (http://hl7.org/fhir/DSTU2/practitioner.html) предназначен для передачи сведений о медицинском работнике, отображаемых на комплексный тип MedicalStaff SOAP-протокола сервиса ИЭМК.
Practitioner | Описание | Тип | Кратность |
---|---|---|---|
id, identifier | Идентификатор медицинского работника (врача) в ИЭМК. | Identifier | 1...1 |
identifier, где system = "urn:oid:1.2.643.2.69.1.1.1.6.223" | СНИЛС врача. | CodebleConcept | 1...1 |
name.text | Полное ФИО медицинского работника. | string | 1...1 |
name.family | [0] - Фамилия и [1] - Отчество медицинского работника. | string | 1...1 |
name.given | Имя медицинского работника. | string | 1...1 |
particionerRole.managingOrganization | Ссылка на место работы врача, где он занимает свою должность. | Reference/Organization | 1...1 |
practitionerRole.speciality | Передается пространство имен (Справочник:1.2.643.5.1.13.2.1.1.181 "Номенклатура специальностей специалистов с высшим и послевузовским медицинским и фармацевтическим образованием в сфере здравоохранения"), в виде кода специальности (code), и ее наименования (display). | CodebaleConcept | 1...1 |
practitionerRole.role. | Идентификатор должности врача. | CodebaleConcept | 1...1 |
Пример ресурса Practitioner
{ "resource": { "resourceType": "Practitioner", "id": "1", "identifier": [ { "system": "http://netrika.ru/iemk-identifier", "value": "1" }, { "system": "urn:oid:1.2.643.2.69.1.1.1.6.223", "value": "05865997537", "assigner": { "display": "ООО \"СМК \"РЕСО-МЕД\"" } } ], "name": { "text": "Андрианов Филипп Владимирович", "family": [ "Андрианов", "Владимирович" ], "given": [ "Филип" ] }, "practitionerRole": [ { "managingOrganization": { "reference": "Organization/b7f76c8-04f6-480c-bbb1-ce24bffdcc2b" } }, { "role": [ { "coding": { "system": "urn:oid:1.2.643.5.1.13.13.11.1002", "code": "422", "display": "Заведующий" } } ] }, { "specialty": [ { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.13.11.1066", "code": "287", "display": "Остеопатия" } ] } ] } ] } }
Получить Fhir-ресурс Practitioner можно с помощью следующих методов:
Procedure
Fhir-ресурс Procedure (https://www.hl7.org/fhir/DSTU2/procedure.html) предназначен для передачи сведений о выполненных (оказанных) медицинских услугах в рамках эпизода случая обслуживания Service , отображаемых на комплексный тип Service SOAP-протокола сервиса ИЭМК :
Procedure | Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор оказанной услуги в ИЭМК. | Identifier | 1...1 |
extention, где URL = ParamCode exntetion, где URL = ParamValue |
Показатели наблюдения пациента в виде кода показателя (code), значение (ParamValue) и его наименования (display) (Справочник OID: 1.2.643.2.69.1.1.1.127). | ~CodebleConcept | 0..1 |
subject | Ссылка на пациента, которому была оказана услуга. | Reference (Patient) | 1...1 |
status |
Код, указывающий на завершенность оказания услуги/проведения медицинской процедуры. Используются следующие коды:
|
code | 1...1 |
code | Код процедуры/услуги (code), согласно справочнику oid:1.2.643.2.69.1.1.1.88 "Номенклатура медицинских услуг" и ее название (text). | CodebleConcept | 1...1 |
performer.actor | Идентификатор врача (Practicioner), который оказывал медицинскую услугу. | Reference (Particioner) | 1...1 |
performedPeriod.start | Дата начала оказания услуги. | datetime | 0...1 |
performedPeriod.end | Дата завершения оказания услуги. | datetime | 0...1 |
encounter |
Идентификатор СМО, в рамках которого передается услуга. |
Reference (Encounter) | 1..1 |
Пример ресурса Procedure
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Procedure", "id": "59", "identifier": [ { "system": "http://netrika.ru/iemk-identifier", "value": "59" } ], "subject": { "reference": "/Patient/396b2429-6fe3-4fe0-9eed-16aff3e17ffe" }, "status": "in-progress", "code": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.88", "code": "B03.016.004" } ], "text": "Анализ крови биохимический общетерапевтический" }, "performer": [ { "actor": { "reference": "/Practitioner/102" } } ], "performedPeriod": { "start": "25.08.2018", "end": "01.09.2018" }, "encounter": { "reference": "/Encounter/308" } } }
Получить Fhir-ресурс Procedure можно с помощью следующих методов:
- Получение списка Procedure по пациенту(-ам)
- Получение Procedure по его идентификатору
- Получение Procedure по идентификатору случая медицинского обслуживания
Observation
Fhir-ресурс Observation (http://hl7.org/fhir/DSTU2/observation.html) предназначен для передачи параметров наблюдения за пациентом и содержит следующие параметры, отображаемые на комплексный тип Observation SOAP-протокола сервиса ИЭМК.
Observation | Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор наблюдения в ИЭМК. | Identifier | 1...1 |
code |
Передает пространство имен в виде "system": "urn:oid:1.2.643.2.69.1.1.1.127" (из справочника "Показатели наблюдения пациента") в виде кода показателя (code) и его наименования (display). | CodebleConcept | 1...1 |
subject |
Передает ИД карточки пациента в MPI. | Reference (Patient) | 1...1 |
encounter | Ссылка на случай обслуживания, в рамках которого передается наблюдение. | Reference (Encounter) | 1...1 |
effective.effectiveDateTime |
Дата измерения показателя. | datetime | 1...1 |
value |
Тип показателя. Могут быть использованы следующие типы данных :
Передавать единицы (при наличии) измерения только для типов:
Подсказка Именно в этом параметре передаются ВИМИС-Observation. Чтобы ознакомиться что это, можно перейти по странице: JSON. Свод |
Actual result | 1...1 |
interpretation |
Интерпретация результатов (Справочник OID:1.2.643.5.1.13.13.11.1381 "Справочник кодов интерпретации результатов"). | CodebleConcept | 0...1 |
referenceRange |
Референсный показатель, зависит от типа ReferenceRange/RangeType, передаются числовые значения из справочника OID:1.2.643.2.69.1.1.1.137 "Тип референтного значения":
|
BackboneElement | 1...1 |
status |
Статус наблюдения. Всегда передается значение “final“ из пространства имен http://hl7.org/fhir/observation-status |
code | 1...1 |
category |
Тип наблюдения. Всегда передается значение “vital-signs“ из пространства имен http://hl7.org/fhir/observation-category | CodebleConcept | 1...1 |
Пример ресурса Observation
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Observation", "id": "5", "status": "final", "category": { "coding": [ { "system": "http://hl7.org/fhir/observation-category", "code": "vital-signs" } ] }, "code": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.127", "code": "1", "display": "Морфологический тип опухоли(код)" } ] }, "subject": { "reference": "/Patient/cdb1e92f-3d54-4ee8-b915-619a3f08f855" }, "encounter": { "reference": "/Encounter/11" }, "effectiveDateTime": "2019-08-24T00:00:00+03:00", "valueQuantity": { "value": 2.0 }, "interpretation": { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.13.11.1381", "code": "A", "display": "Патологический (вне референсного диапазона)" } ] }, "referenceRange": [ { "text": "3" } ] } } ] }
Получить Fhir-ресурс Observation можно получить с помощью следующих методов:
Immunization
FHIR - ресурс Immunization (https://www.hl7.org/fhir/DSTU2/immunization.html) предназначен для передачи следующих данных, отображаемых на комплексный тип Immunize SOAP-протокола сервиса ИЭМК:
- о прививках (комплексный тип Immunize.Vaccination)
- о пробах (комплексный тип Immunize.Reaction)
- о мед. отводах (комплексный тип Immunize.MedicalExemption)
Объект каждого типа передается в рамках отдельного FHIR - ресурса Immunization. То есть, если в ИЭМК в рамках Immunize была передана информация и о прививке (Vaccination) и о медотводе (MedicalExemption), то создадутся два FHIR - ресурса Immunization.
Требования к формированию FHIR - ресурса Immunization:
Immunization (Vaccination)
В рамках ImmunizationType=Vaccination- вакцинация.
Immunization | Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор мероприятия по иммунизации, а также типа иммунизации="Vaccination" | Identifier | 1..1 |
status |
Статус иммунизации. Всегда передается статус "completed" из пространства имен |
code | 1..1 |
date |
Дата вакцинации |
date |
1..1 |
vaccineCode | Передается из пространства имен в виде "system": "urn:oid:1.2.643.5.1.13.13.11.1078" (из "Иммунобиологические препараты для специфической профилактики, диагностики и терапии") в виде кода препарата (code) и его наименования (display) | CodebleConcept |
1.1 |
vaccinationProtocol. description |
Вид вакцинации | string |
1...1 |
vaccinationProtocol. authority |
ИД ЛПУ, в котором проводилась прививка/проба | Reference (Organization) |
1..1 |
explanation.reason | Передается из пространства имен в виде "system": "urn:oid:1.2.643.2.69.1.1.1.130" (из справочника "Код инфекции") в виде кода инфекции, от которой защищает вакцина (code) и ее наименования (display) | CodebleConcept | 1...* |
patient | ИД карточки пациента в сервисе MPI, которому сделана прививка | Reference (Patient) | 1..1 |
identifier.value |
Передается тип иммунизации="Vaccination" |
string | 1..1 |
wasNotGiven | Флаг, указывающий на то, что иммунизация не проводилась. Всегда передается false для Vaccination, означает, что прививка была проведена | boolean |
1..1 |
reported |
Передается заглушка - true |
boolean | 1..1 |
vaccinationProtocol. doseSequence |
Передается заглушка - “1”. Означает номер введенной дозы, в последовательности серии вакцинаций | positiveInt | 1..1 |
vaccinationProtocol. doseStatus |
Передается “заглушка” в doseStatus.CodeableConcept.text, выводить “Не определен“ | CodebleConcept | 1..1 |
Пример ресурса Immunization (Vaccination)
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Immunization", "id": "817", "identifier": [ { "system": "http://netrika.ru/iemk-identifier", "value": "817" }, { "system": "ImmunizationType", "value": "Vaccination" } ], "status": "completed", "date": "2019-09-29", "vaccineCode": { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.13.11.1078", "code": "474", "display": "Иммуноглобулин человека антистафилококковый" } ] }, "patient": { "reference": "Patient/4ab7887f-6c39-4127-919d-05b96497ef00" }, "wasNotGiven": false, "reported": true, "performer": { "reference": "Practitioner/184" }, "explanation": { "reason": [ { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.130", "code": "27", "display": "Холера" }, { "system": "urn:oid:1.2.643.2.69.1.1.1.130", "code": "1", "display": "Туберкулез" }, { "system": "urn:oid:1.2.643.2.69.1.1.1.130", "code": "15", "display": "ХИБ-инфекция" } ] } ] }, "vaccinationProtocol": [ { "doseSequence": 1, "description": "RV16/70", "authority": { "reference": "Organization/20dfadd0-c709-43b0-a130-5a11421b0217" }, "doseStatus": { "text": "Не определен" } } ] } } ] }
Immunization (Reaction)
В рамках ImmunizationType=Reaction - Пробы
Immunization |
Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор проведенной пробы. | Identifier | 1..1 |
status |
Статус иммунизации. Всегда передается статус "completed" из пространства имен https://www.hl7.org/fhir/DSTU2/valueset-medication-admin-status.html |
code | 1..1 |
date |
Дата проведения пробы |
date |
1..1 |
vaccineCode | Код иммунобиологического препарата. Передается из пространства имен в виде "system": "urn:oid:1.2.643.2.69.1.1.1.131" (Справочник "Код пробы") в виде кода пробы (code) и ее наименования (display) | CodebleConcept |
1..1 |
vaccinationProtocol.authority | Ссылка на организацию (МО), в которой проводилась проба | Reference (Organization) | 1..1 |
patient | Ссылка на карточку в MPI - ИД карточки пациента, которому проведена проба | Reference (Patient) | 1..1 |
explanation.reason | Передается из пространства имен в виде "system": "urn:oid:1.2.643.2.69.1.1.1.130" (из "Код инфекции") в виде кода инфекции (code) и ее наименования (display) | CodebleConcept | 1...* |
wasNotGiven | Флаг, указывающий на то, что иммунизация не проводилась. Всегда передается false для Reaction, означает, что проба была проведена | boolean |
1..1 |
reported |
Передается заглушка - true |
boolean | 1..1 |
vaccinationProtocol.doseSequence | Номер пробы, передается заглушка "1" | positiveInt | 1..1 |
doseStatus | Указание на то, имеет ли проба влияние на выработку иммунитета. Передается заглушка "Не определен" | CodebleConcept | 1..1 |
Пример ресурса Immunization (Reaction)
<Bundle xmlns="http://hl7.org/fhir"> <entry> <resource> <Immunization> <id value="649" /> <identifier> <system value="http://netrika.ru/iemk-identifier" /> <value value="649" /> </identifier> <identifier> <system value="ImmunizationType" /> <value value="Reaction" /> </identifier> <status value="completed" /> <date value="2019-08-18" /> <vaccineCode> <coding> <system value="urn:oid:1.2.643.2.69.1.1.1.131" /> <code value="20" /> <display value="Туляриновая" /> </coding> </vaccineCode> <patient> <reference value="Patient/d7917c80-122c-46ef-bf74-4aa9009c7991" /> </patient> <wasNotGiven value="false" /> <reported value="true" /> <explanation> <reason /> </explanation> <vaccinationProtocol> <doseSequence value="1" /> <authority> <reference value="Organization/20dfadd0-c709-43b0-a130-5a16301b0217" /> </authority> <doseStatus> <text value="Не определен" /> </doseStatus> </vaccinationProtocol> </Immunization> </resource> </entry> </Bundle>
Immunization (Medical Exemption)
В рамках ImmunizationType=Medical Exemption - Мед. отвод
Immunization |
Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор записи по медицинскому отводу. | Identifier | 1...1 |
explanation.reasonNotGiven | Передаются сведения о причине медицинского отвода, в виде "system": "urn:oid:1.2.643.2.69.1.1.1.132" (из справочника "Причина отвода") в виде кода (code) и его значения (display) | CodebleConcept | 1...1 |
vaccinationProtocol.targetDisease | Код заболевания по МКБ-10 "urn:oid:1.2.643.2.69.1.1.1.2" в виде кода (code) и его значения (display) | positiveInt | 0...1 |
status |
Статус иммунизации. Всегда передается статус "stopped" из пространства имен |
code | 1..1 |
extension.MedicalExemptionPeriod | extension - расширение ресурса Immunization, передаваемое параметрами "MedicalExemptionInfo". Передает сведения о дате начала (start) и дате окончания(end) медицискного отвода. | date |
1...1 (dateStart) 0...1 (dateEnd) |
extension.MedicalExemptionType |
Передаются сведения о типемедицинского отвода, в виде "system": "urn:oid:1.2.643.2.69.1.1.1.133" (из справочника "Тип отвода") в виде кода (code):
|
CodebleConcept | 1...1 |
extension.MedicalExemptionInf |
Передаются сведения о кодах инфекций, от которых осуществляется отвод (Справочник OID: 1.2.643.2.69.1.1.1.130), в виде кода (code) и инфекции, которую обозначает код (display) |
CodebleConcept | 1..* |
patient | Сcылка на карточку в MPI - ИД карточки пациента, которому дан медицинский отвод. | Reference (Patient) | 1..1 |
vaccineCode | Передается заглушка "Отсутствует" | text |
1..1 |
wasNotGiven | Флаг, указывающий на то, что иммунизация не проводилась. Всегда передается true для MedicalExemption, означает, что вакцинация не проводилась | boolean |
1..1 |
reported |
Передается заглушка - true |
boolean | 1..1 |
vaccinationProtocol.doseStatus | Передается “заглушка” - “Не определен“ | Reference (Organization) | 1..1 |
vaccinationProtocol.doseSequence | Передавать заглушку - “1” | CodebleConcept | 1..1 |
Пример ресурса Immunization(MedicalExemption)
<Bundle xmlns="http://hl7.org/fhir"> <entry> <resource> <Immunization> <id value="649" /> <extension url="MedicalExemptionInfo"> <extension url="MedicalExemptionPeriod"> <valuePeriod> <start value="2019-09-02" /> </valuePeriod> </extension> <extension url="MedicalExemptionType"> <valueCodeableConcept> <coding> <system value="urn:oid:1.2.643.2.69.1.1.1.133" /> <code value="1" /> </coding> </valueCodeableConcept> </extension> <extension url="MedicalExemptionInf"> <valueCodeableConcept> <coding> <system value="urn:oid:1.2.643.2.69.1.1.1.130" /> <code value="27" /> <display value="Холера" /> </coding> <coding> <system value="urn:oid:1.2.643.2.69.1.1.1.130" /> <code value="1" /> <display value="Туберкулез" /> </coding> <coding> <system value="urn:oid:1.2.643.2.69.1.1.1.130" /> <code value="15" /> <display value="ХИБ-инфекция" /> </coding> </valueCodeableConcept> </extension> </extension> <identifier> <system value="http://netrika.ru/iemk-identifier" /> <value value="649" /> </identifier> <identifier> <system value="ImmunizationType" /> <value value="MedicalExemption" /> </identifier> <status value="stopped" /> <vaccineCode> <text value="Отсутствует" /> </vaccineCode> <patient> <reference value="Patient/7db493ed-0b97-4133-ad0e-4e3d8a06fc03" /> </patient> <wasNotGiven value="true" /> <reported value="true" /> <explanation> <reasonNotGiven> <coding> <system value="urn:oid:1.2.643.2.69.1.1.1.132" /> <code value="3" /> <display value="Отказ от прививки/пробы" /> </coding> </reasonNotGiven> </explanation> <vaccinationProtocol> <doseSequence value="1" /> <doseStatus> <text value="Не определен" /> </doseStatus> </vaccinationProtocol> </Immunization> </resource> </entry> </Bundle>
Получить Fhir-ресурс Immunization можно с помощью следующих методов:
- Получение общего количества Immunization по пациенту(-ам)
- Получение Immunization по его идентификатору
Immunization (Recommendation)
FHIR - ресурс ImmunizationRecommendation (https://www.hl7.org/fhir/DSTU2/immunizationrecommendation.html) предназначен для передачи данных о запланированных прививках/пробах, отображаемых на комплексный тип ImmunizationPlan SOAP-протокола сервиса ИЭМК, и является расширением ресурса Immunization:
Требования к формированию FHIR - ресурса ImmunizationRecomendation:
ImmunizationRecomendation | Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор плана проведения иммунизации | Identifier | 1..1 |
extension, где url = "ImmunizationType" |
Тип мероприятия иммунизации. Может принимать значение Vaccination (прививки) или Reaction (пробы). |
Element | 1..1 |
patient | Ссылка на ИД карточки пациента в сервисе MPI, для которого передается план | Reference (Patient) | 1..1 |
recomendation.date | Дата /время поступления записи. | dateTime | 1..1 |
recomendation.vaccineCode | Код инфекции, от которой защищает вакцина/для выявления которой проводится проба (Справочник OID:1.2.643.2.69.1.1.1.130). | CodebleConcept | 1..* |
forecastStatus | Готовность пациента к иммунизации, передается из пространства имен http://hl7.org/fhir/ValueSet/immunization-recommendation-status. Заглушка, всегда заполняется значением code=due - готов | CodebleConcept | 1..1 |
dateCriterion | Контейнер для передачи сведений о сроках проведения иммунизации | CodebleConcept | 1..1 |
dateCriterion.code | Тип срока проведения иммунизации передается из пространства имен https://www.hl7.org/fhir/DSTU2/valueset-immunization-recommendation-date-criterion.html. Заглушка, всегда заполняется значением recommended - рекомендованная дата вакцинации/пробы | BackboneElement | 1..1 |
dateCriterion.value | Дата следующей явки на запланированную прививку/пробу. | dateTime | 1..1 |
protocol.description | Вид вакцинации. | string | 1...1 если extension/valueString - Vaccination 0...1 если extension/valueString- Reaction |
Пример ресурса ImmunizationRecommendation
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "ImmunizationRecommendation", "id": "649", "extension": [ { "url": "ImmunizationType", "valueString": "Vaccination" } ], "patient": { "reference": "/Patient/5673c739-4b0e-4335-b388-953519c98e91" }, "recommendation": [ { "date": "16.03.2020 10:44:50", "vaccineCode": { "coding": [ { "system": "urn:oid:1.2.643.2.69.1.1.1.130", "code": "27", "display": "Холера" }, { "system": "urn:oid:1.2.643.2.69.1.1.1.130", "code": "1", "display": "Туберкулез" }, { "system": "urn:oid:1.2.643.2.69.1.1.1.130", "code": "15", "display": "ХИБ-инфекция" } ] }, "forecastStatus": { "coding": [ { "system": "http://hl7.org/fhir/ValueSet/immunization-recommendation-status", "code": "due" } ] }, "dateCriterion": [ { "code": { "coding": [ { "system": "http://hl7.org/fhir/immunization-recommendation-date-criterion", "code": "recommended" } ] }, "value": "2020-02-23T00:00:00+03:00" } ], "protocol": { "description": "RV86/4" } } ] } } ] }
Получить Fhir-ресурс ImmunizationPlan можно с помощью следующих методов:
- Получение общего количества ImmunizationPlan по заданным параметрам
- Получение ImmunizationPlan по его идентификатору
AllergyIntolerance
FHIR - ресурс AllergyIntolerance (http://hl7.org/fhir/allergyintolerance.html) предназначен для передачи информации об аллергиях пациента и индивидуальной лекарственной непереносимости, отображаемых на комплексный тип AllergyBase SOAP-протокола сервиса ИЭМК, содержащий 2 подтипа:
- AllergyDrug - для передачи данных об индивидуальной непереносимости лекарственных средств;
- AllergyNonDrug - для передачи данных об индивидуальной непереносимости не лекарственных средств.
FHIR - ресурс AllergyIntolerance передает сведения в ИЭМК только об AllergyDrug.
AllergyIntolerance |
Описание | Тип | Кратность |
---|---|---|---|
identifier | Идентификатор записи об аллергии. | Identifier | 1...1 |
extension, где url содержит "Encounter" | Ссылка на СМО. | Reference (Encounter) | 1...1 |
recordedDate | Дата выявления. | dateTime | 1...1 |
patient | ИД карточки пациента в сервисе MPI, у которого выявлена лекарственная аллергия. | Reference (Patient) | 1...1 |
substance |
Передаются сведения о лекарственных средствах, на которые у пациента аллергическая реакция из "system": "urn:oid:1.2.643.5.1.13.2.1.1.179" (из справочника "Классификатор международных непатентованных наименований лекарственных средств") в виде кода (code). | CodebleConcept | 1...1 |
category | Категория вещества. Всегда передается тип "other". | code | 1...1 |
reaction.manifestation | Передаются сведения о клинических проявлениях реакций на указанный лекарственный препарат из "system": "urn:oid:1.2.643.5.1.13.13.11.1063" (из справочника "Основные клинические проявления патологических реакций для сбора аллергоанамнеза") в виде кода (code) | CodebleConcept | 1...1 |
Пример ресурса AllergyIntollerance
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "AllergyIntolerance", "id": "3", "extension": [ { "url": "/Encounter/215" } ], "recordedDate": "08.10.2019", "patient": { "reference": "/Patient/167506fd-685d-46ef-b8f1-85f762958276" }, "substance": { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.2.1.1.179", "code": "386" } ] }, "category": "other", "reaction": [ { "manifestation": [ { "coding": [ { "system": "urn:oid:1.2.643.5.1.13.13.11.1063", "code": "1" } ] } ] } ] } } ] }
Получить Fhir-ресурс AllergyIntolerance можно с помощью следующих методов:
MedicationAdministration и Medication
MedicationAdministration и Medication строятся из одного объекта ИЭМК, и поэтому, идентификатор записи MedicationAdministration и идентификатор Medication идентичны
MedicationAdministration
FHIR - ресурс MedicationAdministration (https://www.hl7.org/fhir/DSTU2/medicationadministration.html) предназначен для передачи информации о назначенных пациенту препаратах, отображаемых на комплексный тип AppointedMedication SOAP-протокола сервиса ИЭМК:
MedicationAdministration |
Описание | Тип | Кратность |
---|---|---|---|
id | Идентификатор записи о назначенных пациенту препаратах | Identifier | 1...1 |
status |
Статус назначения:
|
code | 1...1 |
patient | Ссылка на ресурс Patient, с которым связан этот ресурс. | Reference (Patient) | 1...1 |
encounter | Ссылка на ресурс Encounter, с которым связан этот ресурс. | Reference (Encounter) | 1...1 |
effectiveTimeDateTime | Дата выдачи рецепта /назначения на препарат (IssueDate) | dateTime | 1...1 |
medicationReference
|
Ссылка на ресурс Medication, содержащий сведения о наименовании назначенного препарата, с которым связан этот ресурс | Reference (Medication) | 1...1 |
Пример ресурса MedicationAdministration
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "MedicationAdministration", "id": "2101", "status": "completed", "patient": { "reference": "Patient/4962f68a-7cf5-44d3-bde0-c309fa5037ce" }, "encounter": { "reference": "Encounter/16340" }, "effectiveTimeDateTime": "2020-03-03T11:25:15.57+03:00", "medicationReference": { "reference": "Medication/2101" } } } ] }
Получить Fhir-ресурс MedicationAdministration можно с помощью следующих методов:
-
Получение сведений о назначении препаратов по его идентификатору
-
Получение сведений о назначении препаратов по идентификатору пациента или СМО
Medication
FHIR - ресурс Medication (https://www.hl7.org/fhir/DSTU2/medication.html) предназначен для передачи информации о наименованиях назначенных пациенту препаратов, отображаемых на комплексный тип AppointedMedication SOAP-протокола сервиса ИЭМК:
Medication |
Описание | Тип | Кратность |
---|---|---|---|
id | Идентификатор записи о назначенных пациенту препаратах, идентичен идентификатору в MedicationAdministration. | Identifier | 1...1 |
meta.tag, где value = urn:oid:1.2.643.5.1.13.2.1.1.56 | Код группы препаратов в зависимости от активного вещества (Справочник OID:1.2.643.5.1.13.2.1.1.56 "Анатомо-терапевтическо-химическая классификация"). | CodebleValue | 0...1 |
Code |
Код лекарственного средства (Справочник OID: 1.2.643.5.1.13.2.1.1.179 или Справочник OID: 1.2.643.5.1.13.13.11.1367, в зависимости от региональных установок.) Для уточнения, какой справочник используется в вашем регионе, обратитесь в ваш МИАЦ. |
Code | 1...1 |
Пример ресурса Medication
{ "resourceType": "Bundle", "entry": [ { "resource": { "resourceType": "Medication", "id": "2101", "meta": { "tag": [ { "system": "urn:oid:1.2.643.5.1.13.2.1.1.56", "code": "L02BG", "display": "Ферментов ингибиторы" } ] }, "code": { "coding": [ { "system": "1.2.643.5.1.13.13.11.1367", "code": "220" } ], "text": "Анастрозол" } } } ] }
Получить Fhir-ресурс Medication можно с помощью следующих методов:
Описание методов сервиса
Список методов
Сервис поддерживает следующие методы:
-
Получение общего количества Encounter (СМО) по идентификатору(-ам) пациента
- Получение списка Encounter по идентификатору(-ам) пациента за период
- Получение Encounter по его идентификатору
- Получение списка документов по идентификатору случая
- Загрузка содержания документа в формате PDF
- Загрузка содержания документа в нативном формате
- Получение списка Procedure по пациенту(-ам)
- Получение Procedure по его идентификатору
-
Получение Procedure по идентификатору случая медицинского обслуживания
- Получение данных врача по его идентификатору
- Получение данных о подозрении на заболевание по его идентификатору
- Получение данных о диагнозе по его идентификатору
-
Получение списка подозрений по дате выявления, коду диагноза и категории
- Получение Observation по идентификатору случая
- Получение Immunization по его идентификатору
- Получение общего количества Immunization по пациенту(-ам)
- Получение общего количества ImmunizationPlan по заданным параметрам
- Получение ImmunizationPlan по его идентификатору
- Получение общего количества AllergyIntollerance по пациенту(-ам)
- Получение сведений о назначении препаратов по его идентификатору
- Получение сведений о назначении препаратов по идентификатору пациента или СМО
- Получение сведений о назначенном препарате по его идентификатору/идентификатору назначения
Актуальный список методов, а также диагностическую информацию о работе Сервиса, можно получить по адресу: [ fhirproxy2 ]/Help.
Получение общего количества Encounter (СМО) по пациенту (-ам)
Получение общего количества случаев по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Encounter/_search
Тело запроса должно содержать следующие параметры:
- patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",")
- summary = count - признак подсчета только количества .
Пример вызова метода
POST [base]/Encounter/_search { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString": "c1d2ed45-0c19-4766-8d45-c637f48b8f3a, c1d2ed45-0c19-4766-8d45-c637f48b8f3a" }, { "name": "summary", "valueString": "count" }, ] }
Получение списка Encounter (СМО) по пациенту (-ам) за период
Получение общего количества случаев по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Encounter/_search
Тело запроса должно содержать следующие параметры:
- patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
- count - размер массива результатов;
- offset - смещение выборки;
- date - дата или период выборки;
- {sort_type} - признак сортировки результатов выборки.
Пример вызова метода
POST [base]/Encounter/_search { "resourceType": "Parameters", "parameter": [ { "name": "patients", "valueString": "22b3d76b-bb75-4eaf-b9c2-fd4b51a3563b, c1d2ed45-0c19-4766-8d45-c637f48b8f3a" }, { "name": "count", "valueString": 5 }, { "name": "offset", "valueString": 0 }, { "name": "date", "valueString": { date } }, { "name": "date", "valueString": { date } }, { "name": { sort_type }, "valueString": { sort_field } }, ] }
Получение Encounter (СМО) по его идентификатору
Получение общего количества случаев по пациенту происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Encounter/{идентификатор случая медицинского обслуживания}
Пример вызова метода
GET [base]/Encounter/959
Получение списка DocumentReference по идентификатору случая
Получение списка документов (ресурсов DocumentReference) по идентификатору СМО происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/DocumentReference/_search
Тело запроса должно содержать следующие параметры:
-
Encounter/I{dEncounter} - ссылка на случай медицинского обслуживания;
- summary = true - признак загрузки только описательной части объекта DocumentReference (т.е. без вложения)
Пример вызова метода
POST [base]/DocumentReference/_search { "resourceType": "Parameters", "parameter": [{ "name": "encounter", "valueString": "Encounter/5" }, { "name": "summary", "valueString": "true" }, ] }
Загрузка содержания DocumentReference в формате PDF
Загрузка содержания документа происходит с помощью метода GET и конвертируется, при необходимости, конвертируется в формат PDF. В качестве адреса указывается URL в формате:
[base]/DocumentReference/{идентификатор медицинского документа}?_format=json
Пример вызова метода
GET [base]/DocumentReference/4312?_format=json
Загрузка содержания DocumentReference в нативном формате
Загрузка содержания документа в нативнорм формате (ресурс DocumentReference) происходит с помощью метода GET и параметра mimeTypeOriginal=true. В качестве адреса указывается URL в формате:
[base]/DocumentReference/{идентификатор документа}?mimeTypeOriginal=true&_format=json
Пример вызова метода
GET [base]/DocumentReference/4312?mimeTypeOriginal=true&_format=json
Примечание
Если данные в нативном формате лежат в формате PDF, то они вернутся в формате PDF.
Получение списка Procedure по пациенту (-ам)
Получение общего количества случаев по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Procedure/_search?_format=json
Тело запроса должно содержать следующие параметры:
-
patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
- count - размер массива результатов;
- offset - смещение выборки.
- {sort_type} - признак сортировки результатов выборки.
Пример вызова метода
POST [base]/Procedure/_search?_format=json { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString":"4E117E6C-34E8-4184-87E8-A3F4890C9FB0" }, { "name": "count", "valueString": "1" }, { "name": "offset", "valueString": "0" }, { "name": "sort:desc", "valueString": "date" } ] }
Получение Procedure по его идентификатору
Получение конкретного объекта Procedure происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Procedure/{идентификатор операции}?_format=json
Пример вызова метода
[base]/Procedure/4809?_format=json
Получение Procedure по идентификатору случая медицинского обслуживания
Получение списка Procedure по идентификатору СМО, происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Procedure?encounter={идентификатор СМО}?_format=json
Пример вызова метода
[base]/Procedure?encounter=66666&_format=json
Получение данных врача по его идентификатору
Получение общего количества случаев по пациенту происходит с помощью метода GET. В ответе вернется несколько ресурсов Practicioner, которые были найдены, в случае, если данные врача были обновлены. В качестве адреса указывается URL формате:
[base]/Practitioner/{идентификатор врача}
Пример вызова метода
GET [base]/Practitioner/55959
Получение данных о подозрении на заболевание по его идентификатору
Получение данных о подозрении на заболевание происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Condition/{идентификатор подозрения на заболевание}?_format=json&category=finding
Пример вызова метода
GET [base]/Condition/2?_format=json&category=finding
Получение данных о диагнозе по его идентификатору
Получение данных о диагнозе по его идентификатору происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Condition/{идентификатор диагноза}?_format=json&category=diagnosis
Пример вызова метода
GET [base]/Condition/25874
Получение списка диагнозов по пациенту (-ам)
Получение списка диагнозов происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Condition/_search?_format=json
Тело запроса должно содержать следующие параметры:
-
patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
- count - размер массива результатов;
- offset - смещение выборки.
Пример вызова метода
POST [base]/Condition/_search?_format=json { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString": "da2c0f3a-e45f-4b8d-bcba-f4868d7a8690, 44137d60-5361-4194-8377-00c5cc5126c6" }, { "name": "count", "valueString": "10" }, { "name": "offset", "valueString": "1" }] }
Получение списка подозрений по дате выявления, коду диагноза и категории
Получение списка подозрений, по указанной дате выявления, коду диагноза и категории (по умолчанию finding), может осуществляется 2-мя способами: с помощью метода GET и метода POST.
Метод GET:
В качестве адреса указывается URL в формате:
GET [base]/Condition?dateRecorded=ge{дата}&dateRecorded=le{дата}&category=finding&code:text={код диагноза по МКБ-10}
Параметр dateRecorded (дата выявления подозрения) может отображать конкретную дату поиска, а также промежуток времени, за который он осуществляется:
- Если выбирается конкретная дата поиска, тогда дата задается в следующем формате: dateRecorded=yyyy-mm-dd. Например dateRecorded=2020-01-18
- Если поиск осуществляется за промежуток дней, тогда даты задаются в следующем формате: dateRecorded=ge{yyyy-mm-dd}&dateRecorded=le{yyyy-mm-dd}, где ge - начало промежутка, le-конец промежутка дней в выборке. Например: dateRecorded=ge2020-02-10&dateRecorded=le2020-07-07
Параметр category по умолчанию задается значением finding
Параметр code:text задается кодом диагноза по МКБ-10:
- Если нужна выборка по определенному диагнозу, тогда в параметре code:text указывается полный код по справочнику МКБ-10. Например code:text=Z03.1
- Если нужна выборка по группе диагнозов, в параметре code:text указывается только буквенная часть кода. Например code:text=Z
- Если нужна выборка по нескольким группам/диагнозам, они указываются в параметре code:text через запятую. Например, code:text=C,D,Z03.1
Пример вызова метода
GET [base]/Condition?dateRecorded=ge2020-02-10&dateRecorded=le2020-07-07&category=finding&code:text=Z03.1
В ответе метода выводится массив Condition за указанный в dateRecorded период/дату выявления, по обозначенному в запросе диагнозу/группе диагнозов, по категории finding.
Метод POST:
В качестве адреса указывается URL в формате:
POST [base]/Condition/_search?_format=json
Тело запроса должно содержать следующие обязательные параметры:
- dateRecorded - дата выявления подозрения
- code:text - код диагноза/код группы диагнозов (может быть указано несколько, перечисление через запятую)
- category - тип
А также, тело запроса может содержать необязательный параметры:
- count - количество выводимых ресурсов
- offset - смещение
Принцип заполнения параметров аналогичный, как при вызове методом GET.
Пример вызова метода
POST [base]/Condition/_search?_format=json { "resourceType": "Parameters", "parameter": [{ "name": "code:text", "valueString": "C,D,Z03.1" }, { "name": "count", "valueString": "100" }, { "name": "category", "valueString": "finding" }, { "name": "dateRecorded", "valueString": "ge2020-02-10" }, { "name": "dateRecorded", "valueString": "le2020-07-10" }, { "name":"offset", "valueString":"0" } ] }
Получение общего количества Condition по пациенту
Получение общего количества Condition для типов Problem и Diagnosis, по идентификатору пациента, происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Condition/_search?_format=json
Тело запроса может содержать следующие параметры:
- patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
-
count - размер массива результатов;
-
offset - смещение выборки.
Пример вызова метода
POST [base]/Condition/_search?_format=json { "resourceType":"Parameters", "parameter":[ { "name":"patients", "valueString":"fde3c52a-1a4c-412f-b8db-2f623f05d835" }, { "name":"count", "valueString":"7" }, { "name":"offset", "valueString":"0" } ] }
Для получения данных только по всем подозрениям на заболевания, необходимо в теле запроса добавить параметр:
{ "name":"category", "valueString":"finding" }
Для получения данных только по всем диагнозам пациента, необходимо в теле запроса добавить параметр:
{ "name":"category", "valueString":"diagnosis" }
Получение Observation по идентификатору случая
Получение списка Observation происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Observation/_search?_format=json
Тело запроса может содержать следующие параметры:
- patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
- encounter - идентификатор СМО (idCase), в рамках которого требуется искать дочерние Оbservation;
-
count - размер массива результатов;
-
offset - смещение выборки.
-
{sort_type} - признак сортировки результатов выборки.
-
date - дата или период выборки;
Пример вызова метода
POST [base]/Observation/_search?_format=json { "resourceType": "Parameters", "parameter": [ { "name": "patients", "valueString": "8c3ab753-9b49-47eb-8651-a852418b7140" }, { "name": "encounter", "valueString": "32" }, { "name": "count", "valueString": "2" }, { "name": "offset", "valueString": "0" }, { "name": "date", "valueString": "19-08-2019" }, { "name": "date", "valueString": "08-09-2019" }, { "name": "sort:desc", "valueString": "date" } ] }
Получение Observation по его идентификатору
Получение конкретного объекта Observation происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Observation/{идентификатор}?_format=json
Пример вызова метода
GET [base]/Observation/594?_format=json
Получение Immunization по его идентификатору
Получение конкретного объекта Immunization происходит с помощью метода GET. При этом, имеется различие в GET - запросе, в зависимости от того, какой объект мы ищем, в рамках вакцинации, пробы или медицинского отвода. В качестве адреса указывается URL формате:
[base]/Immunization/{идентификатор}?identifier=ImmunizationType|Reaction [base]/Immunization/{идентификатор}?identifier=ImmunizationType|Vaccination [base]/Immunization/{идентификатор}?identifier=ImmunizationType|MedicalExemption
Пример вызова метода
GET [base]/Immunization/3?identifier=ImmunizationType|Reaction GET [base]/Immunization/25?identifier=ImmunizationType|Vaccination GET [base]/Immunization/87?identifier=ImmunizationType|MedicalExemption
Получение общего количества Immunization по пациенту(-ам)
Получение списка всех Immunization по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Immunization/_search?_format=json
Тело запроса может содержать следующие параметры:
- patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
- count - размер массива результатов;
- offset - смещение выборки.
Пример вызова метода
POST [base]/Immunization/_search?_format=json { "resourceType": "Parameters", "parameter": [ { "name": "patient", "valueString": "138BF80B-4C7F-4453-A402-67F527DE42C6" } { "name": "count", "valueString": "10" }, { "name": "offset", "valueString": "0" } ] }
Если необходимо найти все случаи Immuniztion по пациенту в рамках определенного типа, например только Прививки, необходимо в теле запроса добавить параметр "identifier":
{ "name": "identifier", "valueString": "ImmunizationType|Vaccination" }
В зависимости от того, по какому типу Immunization осуществляется поиск, необходимо использовать:
- ImmunizationType|Vaccination - прививки;
- ImmunizationType|Reaction - пробы;
- ImmunizationType|MedicalExemption - мед.отводы.
Получение общего количества ImmunizationPlan по заданным параметрам
Получение списка всех ImmunizationPlan по заданным параметрам происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/ImmunizationRecommendation/_search?_format=json
В качестве параметров могут быть указаны следующие:
- patients - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",");
- identifier - id мероприятия иммунизации;
- count - размер массива результатов;
- offset - смещение выборки;
- {sort_type} - признак сортировки результатов выборки;
- date - дата или период выборки.
Пример вызова метода
POST [base]/ImmunizationRecommendation/_search?_format=json { "resourceType": "Parameters", "parameter": [ { "name": "patient", "valueString": "138BF80B-4C7F-4453-A402-67F247DE42C6" }, { "name": "identifier", "valueString": "123" }, { "name": "count", "valueString": "10" }, { "name": "offset", "valueString": "0" }, { "name": "_sort:asc", "valueString": "identifier" }, { "name": "date", "valueString": "ge15-03-2020" }, { "name": "date", "valueString": "le17-03-2020" } ] }
Получение ImmunizationPlan по его идентификатору
Получение конкретного объекта ImmunizationPlan происходит с помощью метода GET:
[base]\ImmunizationRecommendation\{id}
Пример вызова метода
GET [base]\ImmunizationRecommendation\12
Получение общего количества AllergyIntollerance по пациенту
Получение списка всех AllergyIntollerance по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/AllergyIntolerance/_search?_format=json
Тело запроса должно содержать параметр "patients" - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",").
Пример вызова метода
POST [base]/AllergyIntolerance/_search?_format=json { "resourceType": "Parameters", "parameter": [ { "name": "patients", "valueString": "f9757b9d-ade4-4349-b334-f043bb12bd83,23d21091-af33-44a9-ae17-6e9f53d4b0fd" } ] }
Получение сведений о назначении препаратов по его идентификатору
Получение сведений о назначении препаратов пациенту на основе идентификатора назначения, происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/MedicationAdministration/{Идентификатор}
Тело запроса должно содержать параметр "patients" - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",").
Пример вызова метода
GET [base]/MedicationAdministration/1
Получение сведений о назначении препаратов по идентификатору пациента или СМО
Получение списка всех назначений препаратов MedicationAdministration по идентификатору пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/MedicationAdministration/_search?_format=json
Тело запроса может содержать параметры:
- patients - идентификаторы пациентов через запятую
- count - размер массива результатов;
- offset - смещение выборки.
- {sort_type} - признак сортировки результатов выборки.
- date - дата или период выборки (выборка должна осуществляться по полю MedicineIssueTypeDate (Дата выдачи рецепта /назначения на препарат) таблицы PrescribedMedication);
- encounter - идентификатор СМО (idCase), в рамках которого требуется искать дочерние MedicationAdministration
Пример вызова метода
POST [base]/MedicationAdministration/_search?_format=json { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString": "DE417D25-E399-409D-96D6-F54C5B3EB6E7" }, { "name": "encounter", "valueString": "130" }, { "name": "summary", "valueString": "count" }, ] }
Получение сведений о назначенном препарате по его идентификатору/идентификатору назначения
Получение сведений о назначенном пациенту препарате на основе идентификатора назначения, происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Medication/{Идентификатор}
Пример вызова метода
GET [base]/Medication/1