Страница предназначена для пользователей и разработчиков и содержит информацию об описании объектов и методов работы с ними. Программный компонент «FHIR-API и дополнительные компоненты» обеспечивает структурирование, конвертацию и извлечение медицинских записей и документов пациентов, хранимых в ИЭМК. Сервис предназначен для организации на стороне ИЭМК программного интерфейса (API), реализованного по стандарту FHIR DSTU2. В текущей реализации сервис работает только на извлечение данных из БД ИЭМК.
С общей информацией о стандарте FHIR и используемых ресурсах можно ознакомиться по следующим ссылкам:
http://fhir-ru.github.io/summary.html (перевод на русский язык)
Для работы с Сервисом возможно использовать авторизацию двух типов:
В этом случае авторизация в сервисе FhirProxy осуществляется с помощью передачи в заголовке HTTP-сообщения параметра Authorization вида:
N3 {Авторизационный ключ}
Значение ключа должно соответствовать полю System в таблицы dbo.System БД ИЭМК.
В этом случае авторизация в сервисе FhirProxy осуществляется с помощью передачи в заголовке HTTP-сообщения параметра Authorization вида:
Bearer 135c5ee7e5a7ff28c9f83bdf894f3e9332d5850f219b2518b91b8ac945fdcee3
Порядок получения сессионного ключа Сервиса управления доступом описан в соответствующем разделе документации.
Текущая реализация сервиса поддерживает работу со следующими Fhir-ресурсами:
DocumentReference - описание медицинского документа;
MedicationAdministration - сведения о назначенных пациенту препаратах
В качестве протокола взаимодействия используется RESTful API (подробнее см. http://hl7.org/fhir/http.html ).
Далее в качестве обозначения адреса публикации Сервиса будет использована текстовая константа [base] .
FHIR-концепция CodeableConcept (http://hl7.org/fhir/DSTU2/datatypes.html#CodeableConcept) представляет собой значение, которое обычно предоставляется путем предоставления ссылки на одну или несколько терминологий или онтологий, но также может быть определено путем предоставления текста. Должен быть заполнен хотя бы один параметр.
CodeableConcept | Описание | Тип | Кратность |
---|---|---|---|
coding | Представление определенной концепции с использованием символа из определенной "coding.system" | Coding | 0..* |
coding.system | Идентификатор терминологический системы | uri | 0..1 |
coding.version | Версия терминологический системы. Примечание Если в БД ИЭМК явно не указана версия справочника, то в ответе сервиса будет возвращаться та версия и значение кода из справочника, которая была актуальна на момент создания записи в БД. |
string | 0..1 |
coding.code | Символ или синтаксис, который определяется системой. | code | 0..1 |
coding.display | Человеко-читаемое представление, которое определяется системой. | string | 0..1 |
text | Представление концепции в виде простого текста | string | 0..1 |
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 |
Тип\Класс случая медицинского обслуживания (Cправочник OID: 1.2.643.2.69.1.1.1.35). Используются следующие коды:
|
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 |
{ "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" } } } ] }
Получение общего количества Encounter (СМО) по пациенту (-ам)
Получение общего количества случаев по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Encounter/_search
Тело запроса должно содержать следующие параметры:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
summary |
valueString |
Признак подсчета только количества. |
1..1 |
POST [base]/Encounter/_search { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString": "c1d2ed45-0c19-4766-8d45-c637f48b8f3a, c1d2ed45-0c19-4766-8d45-c637f48b8f3a" }, { "name": "summary", "valueString": "count" }, ] }
Получение общего количества случаев по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Encounter/_search
Тело запроса должно содержать следующие параметры:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
date |
valueString |
Дата или период выборки |
0..* |
_sort:[valueType] |
valueString |
Признак сортировки результатов выборки. ValueType может принимать значения:
Может принимать значения:
|
0..1 |
Пример вызова метода
POST [base]/Encounter/_search { "resourceType": "Parameters", "parameter": [ { "name": "patients", "valueString": "533487DE-1CAA-4997-8A6D-2FE84BA85472" }, { "name": "_count", "valueString": "100" }, { "name": "_offset", "valueString": "0" }, { "name": "date", "valueString": "ge2015-03-28" }, { "name": "date", "valueString": "le2019-09-28" }, { "name": "_sort:asc", "valueString": "id" } ] }
Получение конкретного случая по пациенту происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Encounter/{идентификатор случая медицинского обслуживания}
GET [base]/Encounter/959
Fhir-ресурс DocumentReference (http://hl7.org/fhir/DSTU2/documentreference.html ) предназначен для передачи сведений о медицинских документах пациента, зарегистрированных в рамках случая обслуживания Encounter , отображаемых на комплексный тип MedDocument SOAP-протокола сервиса ИЭМК.
DocumentReference | Описание | Тип | Кратность |
---|---|---|---|
meta.tag, где system = "1.2.643.2.69.1.1.1.169" | Статус выгрузки медицинского документа в РЭМД по справочнику 1.2.643.2.69.1.1.1.169. | CodebleConcept | 0..1 |
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 ". Предупреждение Если в Справочнике 1.2.643.2.69.1.1.1.195 у объекта отсутствует параметр FHIR-Code, то этот такой ресурс не сформируется. |
CodebleConcept | 1...1 |
type.text | Наименование медицинского документа по справочнику 1.2.643.2.69.1.1.1.195 |
string | 0...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 ) | 0..* | |
securityLabel.coding, где system = "http://terminology.hl7.org/CodeSystem/v3-ObservationValue" | Бинарный признак наличия открепленной цифровой подписи у документа. | CodebleConcept | 0..1 |
securityLabel.coding, где system = "http://terminology.hl7.org/CodeSystem/v3-Confidentiality" | Признак наличия скрытых данных из-за политик доступ Сервиса Управления Доступом. Если code = N, то такие данные есть, иначе code = R. | CodebleConcept | 1..1 |
content |
Объект, который содержит документ. Документы: вызов скорой помощи и диспансеризация могут иметь два оригинальных документа, которые дополняют друг друга. |
BackboneElement | 1..* |
content.attachment | Объект, в котором передаются вложения. | Attachment | 1...0 |
content.attachment.data | Вложенный документ, закодированный в формате base64. | data | 1...1 |
content.attachment.id | Идентификатор вложения. Идентификатор не указан у сгенерированных вложений. | string | 0...1 |
content.attachment.contentType |
mimeType вложенного документа:
|
code | 1...1 |
content.attachment.url | Ссылка на вложение в сервис XDS. | uri | 0...1 |
content.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 |
Описание 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). |
DocumentReference.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 | Порядковый номер в родах |
DocumentReference.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). |
С FHIR-ресурсом DocumentReference можно взаимодействовать с помощью методов GET и POST.
Для GET запросов доступны параметры запроса. Чтобы получить к ним доступ, необходимо после наименование ресурса и символа / добавить строку _search?. Параметры которые перечисляются через символ & в любом порядке без учета регистра. Входные параметры представлены в таблице ниже
Наименование параметра | Типа данных | Описание параметра |
---|---|---|
[ID] | int | Идентификатор ресурса DocumentReference в Сервисе-ИЭМК |
format | string | Определяет формат ответа. Доступны значения:
|
mimeTypeOriginal | boolean | Определяет формат content.attachment. Доступны значения:
Примечание Если данные в исходном формате лежат в формате PDF, то они вернутся в формате PDF. |
IsIgnoreFHIRcode | boolean |
Регулирует чувствительность к кратности параметра type. Доступны значения:
|
Пример вызова метода GET
GET [base]/DocumentReference/123456?_format=json&mimeTypeOriginal=true&IsIgnoreFHIRcode=true
Получение списка документов (ресурсов DocumentReference) по идентификатору СМО происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/DocumentReference/_search
Тело запроса должно содержать следующие параметры:
Имя параметра | Тип данных | Описание параметра | Кратность |
---|---|---|---|
encounter | valueString | Ссылка на ресурс Encounter, по которому необходимо получить ресурсы DocumentReference | 1..1 |
summary | valueString | Признак загрузки только описательной части объекта DocumentReference (т.е. без Attachment.data).
|
0..1 |
IsIgnoreFHIRCode | valueString |
Признак игнорирования обязательности параметра type.
|
0..1 |
Пример вызова метода POST
POST [base]/DocumentReference/_search { "resourceType": "Parameters", "parameter": [ { "name": "encounter", "valueString": "Encounter/5" }, { "name": "summary", "valueString": "true" }, "name": "IsIgnoreFHIRCode", "valueString": "true" }, ] }
Fhir-ресурс Condition (https://www.hl7.org/fhir/DSTU2/condition.html) предназначен для передачи сведений о подозрении на заболевание (Problem) и диагнозах пациента (Diagnosis).
FHIR - ресурс Condition (https://www.hl7.org/fhir/DSTU2/condition.html) данного типа содержит следующие параметры, отображаемые на комплексный тип Diagnosis SOAP-протокола сервиса ИЭМК:
Condition | Описание | Тип | Кратность |
---|---|---|---|
meta | Расширение ресурса Condition. Всегда передает пространство имен в виде "system": " urn:oid:1.2.643.2.69.1.1.1.2 " (из справочника "МКБ10 ред.СПб КЗ") в виде кода группы диагнозов. | CodebleConcept |
1...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 |
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 |
evidance | В этом блоке перечисляются сопровождающие доказательства. | BackboneElement | 0..1 |
evidance.extention, где URL = ParamValue | Показатели наблюдения пациента в виде кода показателя (code) и его наименования (display). | ~ CodebleConcept | 0...1 |
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 |
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 |
Получение данных о подозрении на заболевание происходит с помощью метода 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 |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
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 (дата выявления подозрения) может отображать конкретную дату поиска, а также промежуток времени, за который он осуществляется:
Параметр category по умолчанию задается значением finding
Параметр code:text задается кодом диагноза по МКБ-10:
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
Тело запроса должно содержать следующие параметры:
Имя параметра |
Тип данных |
писание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ","). |
1..* |
dateRecorded |
valueString |
Дата выявления подозрения. |
1..* |
code:text |
valueString |
Код диагноза/код группы диагнозов (может быть указано несколько, перечисление через запятую). |
1..1 |
category |
valueString |
Тип диагноза. |
1..1 |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
0..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
Принцип заполнения параметров аналогичный, как при вызове методом GET.
POST [base]/Condition/_search?_format=json { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString": "da2c0f3a-e45f-4b8d-bcba-f4868d7a8690, 44137d60-5361-4194-8377-00c5cc5126c6" }, { "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 для типов Problem и Diagnosis, по идентификатору пациента, происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Condition/_search?_format=json
Тело запроса должен содержать следующие параметры:
Имя параметра |
Тип данных |
писание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ","). |
1..* |
summary |
valueString |
Получение общего числа Condition. |
1..1 |
category |
valueString |
Тип диагноза. Должен быть "diagnosis" либо "finding". |
1..1 |
POST [base]/Condition/_search?_format=json { "resourceType":"Parameters", "parameter":[ { "name":"patients", "valueString":"fde3c52a-1a4c-412f-b8db-2f623f05d835" }, { "name":"summary", "valueString":"count" }, { "name":"category", "valueString":"diagnosis" } ] }
Для получения данных только по всем подозрениям на заболевания, необходимо в теле запроса добавить параметр:
{ "name":"category", "valueString":"finding" }
Для получения данных только по всем диагнозам пациента, необходимо в теле запроса добавить параметр:
{ "name":"category", "valueString":"diagnosis" }
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 |
Получение общего количества случаев по пациенту происходит с помощью метода GET. В ответе вернется несколько ресурсов Practicioner, которые были найдены, в случае, если данные врача были обновлены. В качестве адреса указывается URL формате:
[base]/Practitioner/{идентификатор врача}
GET [base]/Practitioner/55959
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 |
Получение общего количества случаев по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Procedure/_search?_format=json
Тело запроса должно содержать следующие параметры:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
_sort:[valueType] |
valueString |
Признак сортировки результатов выборки. ValueType может принимать значения:
Может принимать значения:
|
0..1 |
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 происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Procedure/{идентификатор операции}?_format=json
[base]/Procedure/4809?_format=json
Получение списка Procedure по идентификатору СМО, происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Procedure?encounter={идентификатор СМО}?_format=json
[base]/Procedure?encounter=66666&_format=json
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 |
related |
Этим параметром перечисляются ресурсы, с которым связан этот Observation, из параметра component. | BackboneElement | 0...* |
related.type |
Тип связи. Может принимать значения:
|
code | 1...1 |
related.target |
Ссылка на ресурс, с которым связан этот | Reference (Observation) | 1...1 |
component |
Используется для передачи наблюдений, которые невозможно интерпретировать вне родительского ресурса. | BackboneElement | 0...* |
component.id |
Идентификатор Observation в ИЭМК |
Int | 1..1 |
component.code |
Передает пространство имен в виде "system": "urn:oid:1.2.643.2.69.1.1.1.127" (из справочника "Показатели наблюдения пациента") в виде кода показателя (code) и его наименования (display). | CodebleConcept | 1...1 |
component.value |
Тип показателя. Могут быть использованы следующие типы данных :
Передавать единицы (при наличии) измерения только для типов:
Подсказка Именно в этом параметре передаются ВИМИС-Observation. Чтобы ознакомиться что это, можно перейти по странице: JSON. Свод |
Actual Result | 1...1 |
component.referenceRange |
Референсный показатель, зависит от типа ReferenceRange/RangeType, передаются числовые значения из справочника OID:1.2.643.2.69.1.1.1.137 "Тип референтного значения":
|
Backbone Element | 0..1 |
Получение списка Observation происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Observation/_search?_format=json
Тело запроса может содержать следующие параметры:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
encounter |
valueString |
Идентификатор СМО (idCase), в рамках которого требуется искать дочерние Оbservation. |
1..1 |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
date |
valueString |
Дата или период выборки |
0..* |
_sort:[valueType] |
valueString |
Признак сортировки результатов выборки. ValueType может принимать значения:
Может принимать значения:
|
0..1 |
POST [base]/Observation/_search?_format=json { "resourceType": "Parameters", "parameter": [ { "name": "patients", "valueString": "c4e9725a-fed1-4edd-9854-b811e8902a17" }, { "name": "encounter", "valueString": "1684" }, { "name": "count", "valueString": "10" }, { "name": "offset", "valueString": "0" }, { "name": "date", "valueString": "ge2019-09-01" }, { "name": "date", "valueString": "le2021-12-31" }, { "name": "_sort:desc", "valueString": "date" } ] }
Получение конкретного объекта Observation происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Observation/{идентификатор}?_format=json
GET [base]/Observation/594?_format=json
FHIR - ресурс Immunization (https://www.hl7.org/fhir/DSTU2/immunization.html) предназначен для передачи следующих данных, отображаемых на комплексный тип Immunize SOAP-протокола сервиса ИЭМК:
Объект каждого типа передается в рамках отдельного FHIR - ресурса Immunization. То есть, если в ИЭМК в рамках Immunize была передана информация и о прививке (Vaccination) и о медотводе (MedicalExemption), то создадутся два FHIR - ресурса Immunization.
Требования к формированию FHIR - ресурса Immunization:
В рамках 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 |
В рамках 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 |
В рамках 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 |
Получить Fhir-ресурс Immunization можно с помощью следующих методов:
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 |
Получение конкретного объекта 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 по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/Immunization/_search?_format=json
Тело запроса может содержать следующие параметры:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
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 осуществляется поиск, необходимо использовать:
Получение списка всех ImmunizationPlan по заданным параметрам происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/ImmunizationRecommendation/_search?_format=json
В качестве параметров могут быть указаны следующие:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
identifier |
valueString |
Идентификатор мероприятия иммунизации. |
1..1 |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
date |
valueString |
Дата или период выборки |
0..* |
_sort:[valueType] |
valueString |
Признак сортировки результатов выборки. ValueType может принимать значения:
Может принимать значения:
|
0..1 |
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 происходит с помощью метода GET:
[base]\ImmunizationRecommendation\{id}
GET [base]\ImmunizationRecommendation\12
FHIR - ресурс AllergyIntolerance (http://hl7.org/fhir/allergyintolerance.html) предназначен для передачи информации об аллергиях пациента и индивидуальной лекарственной непереносимости, отображаемых на комплексный тип AllergyBase SOAP-протокола сервиса ИЭМК, содержащий 2 подтипа:
Примечание
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 по пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/AllergyIntolerance/_search?_format=json
Тело запроса должно содержать
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
POST [base]/AllergyIntolerance/_search?_format=json { "resourceType": "Parameters", "parameter": [ { "name": "patients", "valueString": "f9757b9d-ade4-4349-b334-f043bb12bd83,23d21091-af33-44a9-ae17-6e9f53d4b0fd" } ] }
MedicationAdministration и Medication строятся из одного объекта ИЭМК, и поэтому, идентификатор записи MedicationAdministration и идентификатор Medication идентичны.
MedicationAdministration |
Описание |
Тип |
Кратность |
---|---|---|---|
id | Идентификатор записи о назначенных пациенту препаратах | Identifier | 1...1 |
status |
Статус назначения:
|
code | 1...1 |
patient | Ссылка на ресурс Patient, с которым связан этот ресурс. | Reference (Patient) | 1...1 |
encounter | Ссылка на ресурс Encounter, с которым связан этот ресурс. | Reference (Encounter) | 1...1 |
prescription |
Ссылка на ресурс MedicationOrder (рецепт) ([Seria]-[Number]) Если отсутствует один из параметров, то отображается частично: «111-» или «-111» |
Reference (MedicationOrder) | 0...1 |
effectiveTimeDateTime | Дата выдачи рецепта /назначения на препарат (IssueDate) | dateTime | 1...1 |
medicationReference |
Ссылка на ресурс Medication, содержащий сведения о наименовании назначенного препарата, с которым связан этот ресурс | Reference (Medication) | 1...1 |
Получение сведений о назначении препаратов по его идентификатору
Получение сведений о назначении препаратов пациенту на основе идентификатора назначения, происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/MedicationAdministration/{Идентификатор}
Тело запроса должно содержать параметр "patients" - идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",").
GET [base]/MedicationAdministration/1
Получение списка всех назначений препаратов MedicationAdministration по идентификатору пациенту происходит с помощью метода POST. В качестве адреса указывается URL формате:
[base]/MedicationAdministration/_search?_format=json
Тело запроса может содержать параметры:
Имя параметра |
Тип данных |
Описание параметра |
Кратность |
patients |
valueString |
Идентификаторы пациентов, по которым требуется выполнить поиск (перечисление делается через запятую ",") |
1..* |
encounter |
valueString |
Идентификатор СМО (idCase), в рамках которого требуется искать дочерние MedicationAdministration. |
1..1 |
count |
valueString |
Размер массива результатов. Если -1, то вывести все ресурсы. |
1..1 |
offset |
valueString |
Смещение выборки для пагинации запросов. Если count = -1, то можно не указывать. |
0..1 |
date |
valueString |
Дата или период выборки (выборка должна осуществляться по полю MedicineIssueTypeDate (Дата выдачи рецепта /назначения на препарат) таблицы PrescribedMedication). |
0..* |
_sort:[valueType] |
valueString |
Признак сортировки результатов выборки. ValueType может принимать значения:
Может принимать значения:
|
0..1 |
Пример вызова метода
POST [base]/MedicationAdministration/_search?_format=json { "resourceType": "Parameters", "parameter": [{ "name": "patients", "valueString": "b4cfa5fc-7332-475b-9f6c-ff7125b1244b" }, { "name": "count", "valueString": "10" }, { "name": "encounter", "valueString": "236234040" }, { "name": "_offset", "valueString": "0" }, { "name": "_sort:asc", "valueString": "date" }, { "name": "date", "valueString": "ge2021-02-17" }, { "name": "date", "valueString": "le2022-12-31" } ] }
MedicationAdministration и Medication строятся из одного объекта ИЭМК, и поэтому, идентификатор записи MedicationAdministration и идентификатор Medication идентичны.
FHIR - ресурс Medication (https://www.hl7.org/fhir/DSTU2/medication.html) предназначен для передачи информации о наименованиях назначенных пациенту препаратов, отображаемых на комплексный тип AppointedMedication SOAP-протокола сервиса ИЭМК:
Medication |
Описание | Тип | Кратность |
---|---|---|---|
id | Идентификатор записи о назначенных пациенту препаратах, идентичен идентификатору в MedicationAdministration. | Identifier | 1...1 |
code | Код лекарственного средства (Справочник OID: 1.2.643.5.1.13.2.1.1.179 или Справочник OID: 1.2.643.5.1.13.13.11.1367, в зависимости от региональных установок.) Для уточнения, какой справочник используется в вашем регионе, обратитесь в ваш МИАЦ. |
CodebleConcept | 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 |
Получение сведений о назначенном пациенту препарате на основе идентификатора назначения, происходит с помощью метода GET. В качестве адреса указывается URL формате:
[base]/Medication/{Идентификатор}
GET [base]/Medication/1