Руководство к использованию стандарта FHIR в ЦИСЗ
0.2.6803 - ci-build

Профиль ресурса: Закрепление за медицинской организацией

Официальный URL: https://fhir.by/StructureDefinition/PlaceOfCare
Active as of 2026-06-25 Имя: PlaceOfCare

Профиль для передачи информации о закреплении пациента за медицинской организацией. Временное закрепление за учреждением здравоохранения на основании ПОСТАНОВЛЕНИЯ МИНИСТЕРСТВА ЗДРАВООХРАНЕНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ от 22 декабря 2008 г. № 229 (в редакции постановления Министерства здравоохранения Республики Беларусь 18.12.2023 № 203) Об утверждении Инструкции о порядке оказания медицинской помощи гражданам Республики Беларусь вне их места жительства (места пребывания) и признании утратившим силу постановления Министерства здравоохранения Республики Беларусь от 10 июня 2002 г. № 29. Раздел Запись на прием, Запись на медицинские услуги

Описание профиля:

Профиль предназначен для передачи информации о закреплении пациента к организации здравоохранения.

Профиль содержит следующую информацию:

  • статус закрепления;
  • дата оформления закрепления;
  • период действия закрепления;
  • ссылка на пациента;
  • ссылка на учреждение здравоохранения, за которым закреплен пациент;
  • ссылка на структурное подразделение учреждения здравоохранения, за которым закреплен пациент (при необходимости);
  • автор данного закрепления (ссылка на учреждение здравоохранения или на медицинского работника);
  • тип закрепления (постоянное/временное);
  • подтип закрепления (основное/дополнительное);
  • ссылка на ресурс AttachDocument (скан-копия заявления на закрепление) - при необходимости. Для одного учреждения у пациента может быть только одно закрепление.

Как правило, существует только один актуальный экземпляр ресурса “Закрепление” с type = residence (постоянное) и subtype = main (основное).

При необходимости получения медицинской помощи не по месту регистрации (или обслуживания не по месту постоянного основного закрепления) возможно создание временного основного закрепления (type = temporary и subtype = main). Такое закрепление существует только в единичном экземпляре. Создание нового временного основного закрепления (type = temporary и subtype = main) в другой организации приводит к изменению статуса ранее созданного закрепления (executable изменяется на cancelled).

Примеры работы с ресурсом “Закрепление”:

Создание постоянного закрепления:

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable&type=residence&subtype=main
activate МИС
    ЦИСЗ-->>-МИС: [Resources Not Found]
     deactivate МИС
    МИС->>+ЦИСЗ: POST[FHIR_BASE]/Bundle/$import (Bundle : Contract.status=executable+type=residence+subtype=main)
        activate МИС
    ЦИСЗ-->>МИС: Parameters{ProcessingStatus: Pending}
     deactivate МИС
    МИС->>ЦИСЗ: GET[FHIR_BASE]/Bundle/[BundleId]/$status
        activate МИС
    ЦИСЗ-->>-МИС: Parameters{ProcessingStatus: Success}
deactivate МИС

Закрепление в новом учреждении здравоохранения по месту жительства (постоянное проживание):

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable&type=residence&subtype=main
activate МИС
    ЦИСЗ-->>-МИС: [Contract_1]
     deactivate МИС
    МИС->>+ЦИСЗ: POST[FHIR_BASE]/Bundle/$import (Bundle : Contract_2.status=executable+type=residence+subtype=main)
        activate МИС
    ЦИСЗ-->>МИС: Parameters{ProcessingStatus: Pending}
     deactivate МИС
    ЦИСЗ -) ЦИСЗ: Changed status=cancelled + applies.end in Contract_1
    МИС->>ЦИСЗ: GET[FHIR_BASE]/Bundle/[BundleId]/$status
        activate МИС
    ЦИСЗ-->>-МИС: Parameters{ProcessingStatus: Success}
deactivate МИС

Закрепление в новом учреждении здравоохранения по месту жительства (временное проживание):

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable&type=temporary&subtype=main
activate МИС
    ЦИСЗ-->> -МИС: [Resources Not Found] 
    МИС->> +ЦИСЗ: POST[FHIR_BASE]/Bundle/$import (Bundle : Contract_2.status=executable+type=temporary+subtype=main)
    ЦИСЗ-->> МИС: Parameters{ProcessingStatus: Pending}
    МИС->> ЦИСЗ: GET[FHIR_BASE]/Bundle/[BundleId]/$status
    ЦИСЗ-->> -МИС: Parameters{ProcessingStatus: Success}
deactivate МИС

Закрепление еще в одном новом учреждении здравоохранения по месту жительства (временное проживание):

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable&type=temporary&subtype=main
activate МИС
    ЦИСЗ-->>-МИС: [Contract_1]
deactivate МИС
    МИС->>+ЦИСЗ: POST[FHIR_BASE]/Bundle/$import (Bundle : Contract_2.status=executable+type=temporary+subtype=main)
   activate МИС  
    ЦИСЗ ->> ЦИСЗ: Changed status=cancelled + applies.end in Contract_1
    ЦИСЗ-->>МИС: Parameters{ProcessingStatus: Pending}
    МИС->>ЦИСЗ: GET[FHIR_BASE]/Bundle/[BundleId]/$status
    ЦИСЗ-->>-МИС: Parameters{ProcessingStatus: Success}
deactivate МИС

Дополнительное закрепление в учреждении здравоохранения (диспансере):

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable&type=residence&subtype=additional&authority=Диспансер
activate МИС
    ЦИСЗ-->>-МИС: [Resources Not Found]
            deactivate МИС
    МИС->>+ЦИСЗ: POST[FHIR_BASE]/Bundle/$import (Bundle : Contract_2.status=executable+type=residence+subtype=additional)
    activate МИС
    activate ЦИСЗ
    ЦИСЗ-->>МИС: Parameters{ProcessingStatus: Pending}
            deactivate МИС
    МИС->>ЦИСЗ: GET[FHIR_BASE]/Bundle/[BundleId]/$status
        activate МИС
    ЦИСЗ-->>МИС: Parameters{ProcessingStatus: Success}
     deactivate МИС

deactivate ЦИСЗ

Закрытие дополнительного закрепления в учреждении здравоохранения (диспансере):

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable&type=residence&subtype=additional&authority=Диспансер
activate МИС
    ЦИСЗ-->>-МИС: [Contract_Диспансер]
        deactivate МИС
    МИС->>+ЦИСЗ: POST[FHIR_BASE]/Organization/[organization-id]/Contract/[Contract_Диспансер]/$set-status (Parameters: status = cancelled)
    activate МИС
    ЦИСЗ-->>-МИС: text = "Статус ресурса Contract_Диспансер успешно изменен на cancelled"
deactivate МИС

Отклонение закрепления в учреждении здравоохранения в случае, если пациент предоставил недостоверные сведения при подаче заявления:

Наличие в системе таких ресурсов закреплений может служить дополнительной информацией для административного персонала, который в будущем будет рассматривать заявления от данного пациента.

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?status=executable
activate МИС
    ЦИСЗ-->>-МИС: [Contract_1]
    deactivate МИС 
    МИС->>+ЦИСЗ: POST[FHIR_BASE]/Organization/[organization-id]/Contract/[Contract_1]/$set-status (Parameters: status = rejected)
    activate МИС
    ЦИСЗ-->>-МИС: text = "Статус ресурса Contract_1 успешно изменен на rejected"
        deactivate МИС 

Просмотр закрепления пациента (есть постоянное закрепление и дополнительное закрепление в диспансере):

sequenceDiagram
    МИС->>+ЦИСЗ: GET[FHIR_BASE]/Patient/[PatientId]/Contract?_profile=https://fhir.by/StructureDefinition/PlaceOfCare
activate МИС
    ЦИСЗ-->>-МИС: [Contract_1+Contract_Диспансер]
deactivate МИС

Использование:

You can also check for usages in the FHIR IG Statistics

Контент профиля

Описание профилей и принципов работы различных представлений..

Профиль ресурса: Contract

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Contract C 0..* Contract Юридическое соглашение
Constraints: PlaceOfCareStatusRule
... meta 1..1 Meta Метаданные о ресурсе
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... source 0..0 Определяет, откуда берется ресурс
.... profile 1..1 canonical(StructureDefinition) Ссылка на профиль
Требуемый шаблон: https://fhir.by/StructureDefinition/PlaceOfCare
.... security 0..0 Метки безопасности, примененные к этому ресурсу
.... tag 0..0 Теги, применяемые к этому ресурсу
... implicitRules 0..0 Набор правил, в соответствии с которыми был создан этот контент
... language 0..0 Language of the resource content
... text 0..0 Краткое изложение текста ресурса для интерпретации человеком
... contained 0..0 Автономные встроенные ресурсы
... Разрезы для extension 1..1 Extension Extension
Разрез: Не упорядочено, Закрыто от value:$this.url
.... extension:attach-address 1..1 (Комплекс) Адрес регистрации/проживания пациента, по которому он закреплен к этой организации
URL: https://fhir.by/StructureDefinition/AddressExtension
..... value[x]
...... extension 0..2 Extension Extension
...... Разрезы для extension Содержимое/правила для всех разрезов
....... extension:country 0..0 Код государства
... modifierExtension 0..0 Extension
... identifier 0..0 Contract number
... url 0..0 Basal definition
... version 0..0 Business edition
... status 1..1 code Статусы ресурса: executable (используется)| cancelled (закрыто)| terminated (окончено)| rejected (отклонено)
... legalState 0..0 Negotiation status
... instantiatesCanonical 0..0 Source Contract Definition
... instantiatesUri 0..0 External Contract Definition
... contentDerivative 0..0 Content derived from the basal information
... issued 1..1 dateTime Дата создания закрепления
... applies 1..1 Period Период действия закрепления
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... start 1..1 dateTime Начало периода действия
... expirationType 0..0 Contract cessation cause
... subject 1..1 Reference(Пациент | Пациент без ИН) Пациент
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... authority 1..1 Reference(Учреждение здравоохранения) Учреждение здравоохранения за которым закреплен пациент
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... domain 0..0 A sphere of control governed by an authoritative jurisdiction, organization, or person
... site 0..1 Reference(Структурное подразделение) Структурное подразделение, за которым закреплен пациент
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... name 0..0 Computer friendly designation
... title 1..1 string Заглавие ресурса. К примеру: "Закрепление пациента за Поликлиникой №53, 2024 год"
... subtitle 0..1 string Причины для закрытия закрепления или его отклонения
... alias 0..0 Acronym or short name
... author 1..1 Reference(Учреждение здравоохранения | Роль медицинского работника) Автор созданного прикрепления, медицинский работник или организация
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... scope 0..0 Range of Legal Concerns
... topic[x] 0..0 Focus of contract interest
... type 1..1 CodeableConcept Тип закрепления пациента: residence (постоянное) или temporary (временное)
Привязка: Тип закрепления пациента за организацией здравоохранения (required)
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... coding 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... id 0..0 Уникальный идентификатор для межэлементных ссылок
..... extension 0..0 Extension
..... system 1..1 uri Ссылка на справочник
..... code 1..1 code Код
..... userSelected 0..0 Если эта кодировка была выбрана непосредственно пользователем
.... text 0..0 Простое текстовое представление концепции
... subType 1..1 CodeableConcept Подтип закрепления пациента: main (основное) или additional (дополнительное)
Привязка: Подтип закрепления (required)
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... coding 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... id 0..0 Уникальный идентификатор для межэлементных ссылок
..... extension 0..0 Extension
..... system 1..1 uri Ссылка на справочник
..... code 1..1 code Код
..... userSelected 0..0 Если эта кодировка была выбрана непосредственно пользователем
.... text 0..0 Простое текстовое представление концепции
... contentDefinition 0..0 Contract precursor content
... term 0..0 Contract Term List
... supportingInfo 0..1 Reference(Неструктурированный документ) Заявление на прикрепление пациента
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... relevantHistory 0..0 Key event in Contract History
... signer 0..0 Contract Signatory
... friendly 0..0 Contract Friendly Language
... legal 0..0 Contract Legal Language
... rule 0..0 Computable Contract Language
... legallyBinding[x] 0..0 Binding Contract

doco Документация для этого формата

Терминологические привязки (дифференциал)

Путь Статус Использование ValueSet Версия Источник
Contract.type Base required Тип закрепления пациента за организацией здравоохранения 📦0.2.6803 этот IG
Contract.subType Base required Подтип закрепления 📦0.2.6803 этот IG

Ограничения

Id Градация Путь(и) Описание Выражение
PlaceOfCareStatusRule error Contract Статус ресурса может иметь значения executable | cancelled | terminated | rejected status = 'executable' or status = 'cancelled' or status = 'terminated' or status = 'rejected'
НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Contract C 0..* Contract Юридическое соглашение
Constraints: PlaceOfCareStatusRule
... id Σ 0..1 id Логический идентификатор этого артефакта
... meta Σ 1..1 Meta Метаданные о ресурсе
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... versionId Σ 0..1 id Идентификатор конкретной версии
.... lastUpdated Σ 0..1 instant Когда в последний раз менялась версия ресурса
.... profile Σ 1..1 canonical(StructureDefinition) Ссылка на профиль

Требуемый шаблон: https://fhir.by/StructureDefinition/PlaceOfCare
... Разрезы для extension 1..1 Extension Extension
Разрез: Не упорядочено, Закрыто от value:$this.url
.... extension:attach-address 1..1 (Комплекс) Адрес регистрации/проживания пациента, по которому он закреплен к этой организации
URL: https://fhir.by/StructureDefinition/AddressExtension
..... id 0..1 id Уникальный идентификатор для межэлементных ссылок
..... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
..... url 1..1 uri "https://fhir.by/StructureDefinition/AddressExtension"
..... value[x] 0..1 Address Value of extension
...... Разрезы для extension 0..2 Extension Extension
Разрез: Не упорядочено, Закрыто от value:url
...... Разрезы для extension Содержимое/правила для всех разрезов
....... extension:address S 0..1 CodeableConcept Адрес в соответствии со справочником населенных пунктов и административно-территориальных единиц Республики Беларусь
URL: https://fhir.by/StructureDefinition/StreetGeoRegistry
Привязка: Справочник населенных пунктов,улиц и административно-территориальных единиц (required)
....... extension:apartment S 0..1 string Номер квартиры (комнаты)
URL: https://fhir.by/StructureDefinition/ApartmentRoom
...... use ?!Σ 0..1 code Использование адреса: home | temp
Привязка: AddressUse (required): Использование адреса (home / work / etc.).
Пример General: home
...... text Σ 1..1 string Текстовое представление адреса: значение поля 'Полное наименование' справочника 'Справочник населенных пунктов и административно-территориальных единиц'
Пример General: 220099, Минск, пр-т Победителей, 2, корп. 3, кв. 40
...... line Σ 0..1 string Строчное значение в котором указывается: улица, номер дома, номер квартиры
Этот повторяющийся порядок элементов: Порядок, в котором строки должны появляться в адресной метке
Пример General: пр-т Победителей, 2, корп. 3, кв. 40
...... city Σ 0..1 string Наименование населенного пункта
Пример General: Минск
...... district Σ 0..1 string Наименование района (не городского!). Возможно дополнительно указание наименование сельского совета
Пример General: Минский район
...... state Σ 0..1 string Наименование области
...... postalCode Σ 0..1 string Почтовый индекс: значение поля 'Почтовый индекс' справочника 'Справочник населенных пунктов и административно-территориальных единиц'
Пример General: 220099
...... country Σ 0..1 string Наименование страны
...... period Σ 0..1 Period Период когда данный адрес был действительным. Если не указана дата окончания периода, то можно считать данный адрес действительным.
Пример General: {"start":"2010-03-23","end":"2010-07-01"}
....... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
....... start ΣC 1..1 dateTime Начало периода действия
....... end ΣC 0..1 dateTime Конец периода действия
... issued Σ 1..1 dateTime Дата создания закрепления
... applies Σ 1..1 Period Период действия закрепления
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... start ΣC 1..1 dateTime Начало периода действия
.... end ΣC 0..1 dateTime Конец периода действия
... subject Σ 1..1 Reference(Пациент | Пациент без ИН) Пациент
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... authority 1..1 Reference(Учреждение здравоохранения) Учреждение здравоохранения за которым закреплен пациент
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... site 0..1 Reference(Структурное подразделение) Структурное подразделение, за которым закреплен пациент
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... title Σ 1..1 string Заглавие ресурса. К примеру: "Закрепление пациента за Поликлиникой №53, 2024 год"
... subtitle 0..1 string Причины для закрытия закрепления или его отклонения
... author 1..1 Reference(Учреждение здравоохранения | Роль медицинского работника) Автор созданного прикрепления, медицинский работник или организация
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... type Σ 1..1 CodeableConcept Тип закрепления пациента: residence (постоянное) или temporary (временное)
Привязка: Тип закрепления пациента за организацией здравоохранения (required)
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... coding Σ 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
..... system Σ 1..1 uri Ссылка на справочник
..... version Σ 0..1 string Версия системы
..... code ΣC 1..1 code Код
..... display ΣC 0..1 string Значение кода
... subType Σ 1..1 CodeableConcept Подтип закрепления пациента: main (основное) или additional (дополнительное)
Привязка: Подтип закрепления (required)
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... coding Σ 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
..... system Σ 1..1 uri Ссылка на справочник
..... version Σ 0..1 string Версия системы
..... code ΣC 1..1 code Код
..... display ΣC 0..1 string Значение кода
... supportingInfo 0..1 Reference(Неструктурированный документ) Заявление на прикрепление пациента
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Contract.extension:attach-address.​value[x].use Base required AddressUse 📍5.0.0 Стандарт FHIR
Contract.status Base required Contract Resource Status Codes 📍5.0.0 Стандарт FHIR
Contract.subject.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.authority.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.site.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.author.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.type Base required Тип закрепления пациента за организацией здравоохранения 📦0.2.6803 этот IG
Contract.subType Base required Подтип закрепления 📦0.2.6803 этот IG
Contract.contentDefinition.​type Base example Contract Resource Definition Type codes 📍5.0.0 Стандарт FHIR
Contract.contentDefinition.​subType Base example Contract Resource Definition Subtype codes 📍5.0.0 Стандарт FHIR
Contract.contentDefinition.​publicationStatus Base required Contract Resource Publication Status codes 📍5.0.0 Стандарт FHIR
Contract.term.type Base example Contract Term Type Codes 📍5.0.0 Стандарт FHIR
Contract.term.subType Base example Contract Term Subtype Codes 📍5.0.0 Стандарт FHIR
Contract.term.securityLabel.​classification Base example Contract Resource Scope codes 📍5.0.0 Стандарт FHIR
Contract.term.securityLabel.​category Base example Contract Resource Scope codes 📍5.0.0 Стандарт FHIR
Contract.term.securityLabel.​control Base example Contract Resource Security Control codes 📍5.0.0 Стандарт FHIR
Contract.term.offer.​party.role Base example Contract Resource Party Role codes 📍5.0.0 Стандарт FHIR
Contract.term.offer.​type Base example Contract Term Type Codes 📍5.0.0 Стандарт FHIR
Contract.term.offer.​decision Base extensible ActConsentDirective 📦3.0.0 THO v5.5
Contract.term.offer.​decisionMode Base example Contract Resource Decision Mode codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​scope Base example Contract Resource Asset Scope codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​type Base example Contract Resource Asset Type codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​subtype Base example Contract Resource Asset Sub-Type codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​relationship Base extensible Consent Content Class 📍5.0.0 Стандарт FHIR
Contract.term.asset.​context.code Base example Contract Resource Asset Context codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​periodType Base example Contract Resource Asset Availiability codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​type Base example Contract Action Codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​subject.role Base example Contract Actor Role Codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​intent Base example PurposeOfUse 📦3.0.0 THO v5.5
Contract.term.action.​status Base example Contract Resource Action Status codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​performerType Base example Participation Role Type 📍5.0.0 Стандарт FHIR
Contract.term.action.​performerRole Base example Security Role Type 📍5.0.0 Стандарт FHIR
Contract.term.action.​reason Base example PurposeOfUse 📦3.0.0 THO v5.5
Contract.supportingInfo.​type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.signer.type Base preferred Contract Signer Type Codes 📍5.0.0 Стандарт FHIR

Ограничения

Id Градация Путь(и) Описание Выражение
PlaceOfCareStatusRule error Contract Статус ресурса может иметь значения executable | cancelled | terminated | rejected status = 'executable' or status = 'cancelled' or status = 'terminated' or status = 'rejected'
dom-2 error Contract If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Contract If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Contract If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Contract If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Contract A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ВСЕ** элементы All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ВСЕ** расширения Must have either extensions or value[x], not both extension.exists() != value.exists()

Полная Схема

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Contract C 0..* Contract Юридическое соглашение
Constraints: PlaceOfCareStatusRule
... id Σ 0..1 id Логический идентификатор этого артефакта
... meta Σ 1..1 Meta Метаданные о ресурсе
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... versionId Σ 0..1 id Идентификатор конкретной версии
.... lastUpdated Σ 0..1 instant Когда в последний раз менялась версия ресурса
.... profile Σ 1..1 canonical(StructureDefinition) Ссылка на профиль

Требуемый шаблон: https://fhir.by/StructureDefinition/PlaceOfCare
... Разрезы для extension 1..1 Extension Extension
Разрез: Не упорядочено, Закрыто от value:$this.url
.... extension:attach-address 1..1 (Комплекс) Адрес регистрации/проживания пациента, по которому он закреплен к этой организации
URL: https://fhir.by/StructureDefinition/AddressExtension
..... id 0..1 id Уникальный идентификатор для межэлементных ссылок
..... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
..... url 1..1 uri "https://fhir.by/StructureDefinition/AddressExtension"
..... value[x] 0..1 Address Value of extension
...... Разрезы для extension 0..2 Extension Extension
Разрез: Не упорядочено, Закрыто от value:url
...... Разрезы для extension Содержимое/правила для всех разрезов
....... extension:address S 0..1 CodeableConcept Адрес в соответствии со справочником населенных пунктов и административно-территориальных единиц Республики Беларусь
URL: https://fhir.by/StructureDefinition/StreetGeoRegistry
Привязка: Справочник населенных пунктов,улиц и административно-территориальных единиц (required)
....... extension:apartment S 0..1 string Номер квартиры (комнаты)
URL: https://fhir.by/StructureDefinition/ApartmentRoom
...... use ?!Σ 0..1 code Использование адреса: home | temp
Привязка: AddressUse (required): Использование адреса (home / work / etc.).
Пример General: home
...... text Σ 1..1 string Текстовое представление адреса: значение поля 'Полное наименование' справочника 'Справочник населенных пунктов и административно-территориальных единиц'
Пример General: 220099, Минск, пр-т Победителей, 2, корп. 3, кв. 40
...... line Σ 0..1 string Строчное значение в котором указывается: улица, номер дома, номер квартиры
Этот повторяющийся порядок элементов: Порядок, в котором строки должны появляться в адресной метке
Пример General: пр-т Победителей, 2, корп. 3, кв. 40
...... city Σ 0..1 string Наименование населенного пункта
Пример General: Минск
...... district Σ 0..1 string Наименование района (не городского!). Возможно дополнительно указание наименование сельского совета
Пример General: Минский район
...... state Σ 0..1 string Наименование области
...... postalCode Σ 0..1 string Почтовый индекс: значение поля 'Почтовый индекс' справочника 'Справочник населенных пунктов и административно-территориальных единиц'
Пример General: 220099
...... country Σ 0..1 string Наименование страны
...... period Σ 0..1 Period Период когда данный адрес был действительным. Если не указана дата окончания периода, то можно считать данный адрес действительным.
Пример General: {"start":"2010-03-23","end":"2010-07-01"}
....... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
....... start ΣC 1..1 dateTime Начало периода действия
....... end ΣC 0..1 dateTime Конец периода действия
... issued Σ 1..1 dateTime Дата создания закрепления
... applies Σ 1..1 Period Период действия закрепления
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... start ΣC 1..1 dateTime Начало периода действия
.... end ΣC 0..1 dateTime Конец периода действия
... subject Σ 1..1 Reference(Пациент | Пациент без ИН) Пациент
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... authority 1..1 Reference(Учреждение здравоохранения) Учреждение здравоохранения за которым закреплен пациент
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... site 0..1 Reference(Структурное подразделение) Структурное подразделение, за которым закреплен пациент
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... title Σ 1..1 string Заглавие ресурса. К примеру: "Закрепление пациента за Поликлиникой №53, 2024 год"
... subtitle 0..1 string Причины для закрытия закрепления или его отклонения
... author 1..1 Reference(Учреждение здравоохранения | Роль медицинского работника) Автор созданного прикрепления, медицинский работник или организация
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса
... type Σ 1..1 CodeableConcept Тип закрепления пациента: residence (постоянное) или temporary (временное)
Привязка: Тип закрепления пациента за организацией здравоохранения (required)
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... coding Σ 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
..... system Σ 1..1 uri Ссылка на справочник
..... version Σ 0..1 string Версия системы
..... code ΣC 1..1 code Код
..... display ΣC 0..1 string Значение кода
... subType Σ 1..1 CodeableConcept Подтип закрепления пациента: main (основное) или additional (дополнительное)
Привязка: Подтип закрепления (required)
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... coding Σ 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
..... system Σ 1..1 uri Ссылка на справочник
..... version Σ 0..1 string Версия системы
..... code ΣC 1..1 code Код
..... display ΣC 0..1 string Значение кода
... supportingInfo 0..1 Reference(Неструктурированный документ) Заявление на прикрепление пациента
.... extension 0..0 Extension
Разрез: Не упорядочено, Открыто от value:url
.... reference ΣC 1..1 string Ссылка на ресурс в виде относительного URL
.... type Σ 0..1 uri Тип ресурса
Привязка: ResourceType (extensible): Ресурс (или, для логических моделей, URI логической модели).
.... identifier ΣC 0..1 Identifier Идентификатор ресурса, если не известна ссылка на него
.... display ΣC 0..1 string Текстовая трактовка ресурса

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Contract.extension:attach-address.​value[x].use Base required AddressUse 📍5.0.0 Стандарт FHIR
Contract.status Base required Contract Resource Status Codes 📍5.0.0 Стандарт FHIR
Contract.subject.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.authority.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.site.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.author.type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.type Base required Тип закрепления пациента за организацией здравоохранения 📦0.2.6803 этот IG
Contract.subType Base required Подтип закрепления 📦0.2.6803 этот IG
Contract.contentDefinition.​type Base example Contract Resource Definition Type codes 📍5.0.0 Стандарт FHIR
Contract.contentDefinition.​subType Base example Contract Resource Definition Subtype codes 📍5.0.0 Стандарт FHIR
Contract.contentDefinition.​publicationStatus Base required Contract Resource Publication Status codes 📍5.0.0 Стандарт FHIR
Contract.term.type Base example Contract Term Type Codes 📍5.0.0 Стандарт FHIR
Contract.term.subType Base example Contract Term Subtype Codes 📍5.0.0 Стандарт FHIR
Contract.term.securityLabel.​classification Base example Contract Resource Scope codes 📍5.0.0 Стандарт FHIR
Contract.term.securityLabel.​category Base example Contract Resource Scope codes 📍5.0.0 Стандарт FHIR
Contract.term.securityLabel.​control Base example Contract Resource Security Control codes 📍5.0.0 Стандарт FHIR
Contract.term.offer.​party.role Base example Contract Resource Party Role codes 📍5.0.0 Стандарт FHIR
Contract.term.offer.​type Base example Contract Term Type Codes 📍5.0.0 Стандарт FHIR
Contract.term.offer.​decision Base extensible ActConsentDirective 📦3.0.0 THO v5.5
Contract.term.offer.​decisionMode Base example Contract Resource Decision Mode codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​scope Base example Contract Resource Asset Scope codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​type Base example Contract Resource Asset Type codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​subtype Base example Contract Resource Asset Sub-Type codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​relationship Base extensible Consent Content Class 📍5.0.0 Стандарт FHIR
Contract.term.asset.​context.code Base example Contract Resource Asset Context codes 📍5.0.0 Стандарт FHIR
Contract.term.asset.​periodType Base example Contract Resource Asset Availiability codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​type Base example Contract Action Codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​subject.role Base example Contract Actor Role Codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​intent Base example PurposeOfUse 📦3.0.0 THO v5.5
Contract.term.action.​status Base example Contract Resource Action Status codes 📍5.0.0 Стандарт FHIR
Contract.term.action.​performerType Base example Participation Role Type 📍5.0.0 Стандарт FHIR
Contract.term.action.​performerRole Base example Security Role Type 📍5.0.0 Стандарт FHIR
Contract.term.action.​reason Base example PurposeOfUse 📦3.0.0 THO v5.5
Contract.supportingInfo.​type Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Contract.signer.type Base preferred Contract Signer Type Codes 📍5.0.0 Стандарт FHIR

Ограничения

Id Градация Путь(и) Описание Выражение
PlaceOfCareStatusRule error Contract Статус ресурса может иметь значения executable | cancelled | terminated | rejected status = 'executable' or status = 'cancelled' or status = 'terminated' or status = 'rejected'
dom-2 error Contract If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Contract If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Contract If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Contract If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Contract A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ВСЕ** элементы All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ВСЕ** расширения Must have either extensions or value[x], not both extension.exists() != value.exists()

Схема различий

Профиль ресурса: Contract

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Contract C 0..* Contract Юридическое соглашение
Constraints: PlaceOfCareStatusRule
... meta 1..1 Meta Метаданные о ресурсе
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... source 0..0 Определяет, откуда берется ресурс
.... profile 1..1 canonical(StructureDefinition) Ссылка на профиль
Требуемый шаблон: https://fhir.by/StructureDefinition/PlaceOfCare
.... security 0..0 Метки безопасности, примененные к этому ресурсу
.... tag 0..0 Теги, применяемые к этому ресурсу
... implicitRules 0..0 Набор правил, в соответствии с которыми был создан этот контент
... language 0..0 Language of the resource content
... text 0..0 Краткое изложение текста ресурса для интерпретации человеком
... contained 0..0 Автономные встроенные ресурсы
... Разрезы для extension 1..1 Extension Extension
Разрез: Не упорядочено, Закрыто от value:$this.url
.... extension:attach-address 1..1 (Комплекс) Адрес регистрации/проживания пациента, по которому он закреплен к этой организации
URL: https://fhir.by/StructureDefinition/AddressExtension
..... value[x]
...... extension 0..2 Extension Extension
...... Разрезы для extension Содержимое/правила для всех разрезов
....... extension:country 0..0 Код государства
... modifierExtension 0..0 Extension
... identifier 0..0 Contract number
... url 0..0 Basal definition
... version 0..0 Business edition
... status 1..1 code Статусы ресурса: executable (используется)| cancelled (закрыто)| terminated (окончено)| rejected (отклонено)
... legalState 0..0 Negotiation status
... instantiatesCanonical 0..0 Source Contract Definition
... instantiatesUri 0..0 External Contract Definition
... contentDerivative 0..0 Content derived from the basal information
... issued 1..1 dateTime Дата создания закрепления
... applies 1..1 Period Период действия закрепления
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... start 1..1 dateTime Начало периода действия
... expirationType 0..0 Contract cessation cause
... subject 1..1 Reference(Пациент | Пациент без ИН) Пациент
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... authority 1..1 Reference(Учреждение здравоохранения) Учреждение здравоохранения за которым закреплен пациент
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... domain 0..0 A sphere of control governed by an authoritative jurisdiction, organization, or person
... site 0..1 Reference(Структурное подразделение) Структурное подразделение, за которым закреплен пациент
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... name 0..0 Computer friendly designation
... title 1..1 string Заглавие ресурса. К примеру: "Закрепление пациента за Поликлиникой №53, 2024 год"
... subtitle 0..1 string Причины для закрытия закрепления или его отклонения
... alias 0..0 Acronym or short name
... author 1..1 Reference(Учреждение здравоохранения | Роль медицинского работника) Автор созданного прикрепления, медицинский работник или организация
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... scope 0..0 Range of Legal Concerns
... topic[x] 0..0 Focus of contract interest
... type 1..1 CodeableConcept Тип закрепления пациента: residence (постоянное) или temporary (временное)
Привязка: Тип закрепления пациента за организацией здравоохранения (required)
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... coding 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... id 0..0 Уникальный идентификатор для межэлементных ссылок
..... extension 0..0 Extension
..... system 1..1 uri Ссылка на справочник
..... code 1..1 code Код
..... userSelected 0..0 Если эта кодировка была выбрана непосредственно пользователем
.... text 0..0 Простое текстовое представление концепции
... subType 1..1 CodeableConcept Подтип закрепления пациента: main (основное) или additional (дополнительное)
Привязка: Подтип закрепления (required)
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... coding 1..1 Coding Код, определенный в справочнике НСИ Терминология
..... id 0..0 Уникальный идентификатор для межэлементных ссылок
..... extension 0..0 Extension
..... system 1..1 uri Ссылка на справочник
..... code 1..1 code Код
..... userSelected 0..0 Если эта кодировка была выбрана непосредственно пользователем
.... text 0..0 Простое текстовое представление концепции
... contentDefinition 0..0 Contract precursor content
... term 0..0 Contract Term List
... supportingInfo 0..1 Reference(Неструктурированный документ) Заявление на прикрепление пациента
.... id 0..0 Уникальный идентификатор для межэлементных ссылок
.... extension 0..0 Extension
.... reference 1..1 string Ссылка на ресурс в виде относительного URL
... relevantHistory 0..0 Key event in Contract History
... signer 0..0 Contract Signatory
... friendly 0..0 Contract Friendly Language
... legal 0..0 Contract Legal Language
... rule 0..0 Computable Contract Language
... legallyBinding[x] 0..0 Binding Contract

doco Документация для этого формата

Терминологические привязки (дифференциал)

Путь Статус Использование ValueSet Версия Источник
Contract.type Base required Тип закрепления пациента за организацией здравоохранения 📦0.2.6803 этот IG
Contract.subType Base required Подтип закрепления 📦0.2.6803 этот IG

Ограничения

Id Градация Путь(и) Описание Выражение
PlaceOfCareStatusRule error Contract Статус ресурса может иметь значения executable | cancelled | terminated | rejected status = 'executable' or status = 'cancelled' or status = 'terminated' or status = 'rejected'

 


Примечания:

Правила использования ресурсов.

Основное постоянное закрепление создается для оказания медицинской помощи в организации здравоохранения на основании регистрации пациента (по территориальному признаку). Может быть только одно. В случае изменения места регистрации должно изменяться и закрепление, предыдущее будет автоматически закрыто. Основное временное закрепление создается на основании заявления пациента или его представителя и подтверждающих документов (иных документов, определенных в НПА) указывающих на проживание по определенному адресу, но не зарегистрированному там (по территориальному признаку). Может быть только одно. Срок действия - до 1 года. В случае временного закрепления за другой организацией, предыдущее закрепление автоматически закрывается. В случае если пациент регистрируется по адресу, по которому ранее имел временное закрепление, оно закрывается и создается основное постоянно закрепление. Дополнительные закрепления предназначены для закрепления пациента с целью оказания ему специализированной медицинской помощи (диспансеры, женская консультация, стоматологические поликлиники) или с целью оказания первичной, специализированной, высокотехнологичной помощи в организациях, принадлежащих ведомствам или предприятиям (пол-ки МВД, ВС, медсанчасти, медцентры). Может быть несколько закреплений. Может быть закрепление за организацией, за которой пациент закреплён по основному закреплению. Постоянные Дополнительные закрепления могут не иметь срока действия, временные Дополнительные закрепления обязаны иметь окончание периода действия (определенное государственными или внутренними НПА).

  • Должно быть указано окончание периода действия закрепления для пациента с временным закреплением.
  • Период действия временного закрепления не может превышать один год.
  • Пациент не может повторно закрепляться (создавать основное (main) постоянное (residence) или временное (temporary) закрепление) за одной и той же организацией при наличии активного закрепления.
  • Дополнительное закрепление может быть создано для организации, в которой у пациента уже есть активное (executable) основное (main) закрепление.

Типы и подтипы закреплений

Тип Подтип Количество Описание  
residence main одно активный Основное постоянное закрепление
temporary main одно активный Основное временное закрепление
residence additional несколько активный Дополнительное постоянное. Может быть несколько в одной организации.
temporary additional несколько активный Дополнительное временное. Может быть несколько в одной организации.

Правила замены закреплений

Основные постоянные (residence + main) Перед созданием нового основного постоянного GET /Contract?status=executable&type=residence&subtype=main Если в ответе нет ресурсов: POST /Bundle/$import Body: Contract(PlaceOfCare).type=residence&subtype=main

Если в ответе есть ресурс, необходимо принятие решение со стороны медработника о закреплении пациента. Если положительное: POST /Bundle/$import Body: Contract(PlaceOfCare).type=residence&subtype=main

После успешной валидации в БД должна произойти изменение статуса ресурса (Contract(PlaceOfCare).type=residence&subtype=main), который был активен до этого (`executable` -> `cancelled`)

Иначе: не создавать ресурсы

Основные временные (temporary + main) Перед созданием нового основного временного
GET /Contract?status=executable&subtype=main Если в ответе нет ресурсов: POST /Bundle/$import Body: Contract(PlaceOfCare).type=temporary&subtype=main

Если в ответе Contract(PlaceOfCare).type=residence&subtype=main для Организации из которой исходит запрос: Создание ресурса для временного закрепления не требуется, так как у пациента есть постоянное основное закрепление за этой организацией

Если в ответе Contract(PlaceOfCare).type=temporary&subtype=main для Организации из которой исходит запрос: Создание ресурса для временного закрепления не требуется, так как у пациента уже есть временное основное закрепление за этой организацией

Если в ответе Contract(PlaceOfCare).subtype=main для Организации, отличной от той, из которой исходит запрос: POST /Bundle/$import Body: Contract(PlaceOfCare).type=temporary&subtype=main

После успешной валидации в БД должна произойти изменение статуса ресурса (Contract(PlaceOfCare).type=temporary&subtype=main), который был активен до этого (`executable` -> `cancelled`)

Статусы закреплений

Статус Описание Когда используется
executable Активное Текущее закрепление
cancelled Закрыто автоматически Заменено новым закреплением
terminated Окончено Истек срок действия
rejected Отклонено Отказ по причине недостоверных данных

Операции:

  • Создать/заменить основное постоянное POST /Bundle/$import (с автоматической отменой предыдущего закрепления)

  • Создать/заменить основное временное
    POST /Bundle/$import (с автоматической отменой предыдущего закрепления)

  • Создать дополнительное (любого типа) POST /Bundle/$import (без ограничений)

  • Отменить дополнительное POST /Contract/$set-status (status=cancelled)

  • Аннулировать закрепление POST /Contract/$set-status (status=rejected)

Основные правила:

  • Создать закрепление можно только со статусом executable
  • Для одного пациента разрешено иметь одно основное постоянное и одно основное временное закрепления в разных организациях со статусом executable
  • Для одного учреждения у пациента может быть только одно основное закрепление со статусом executable. Если пациент имел основное временное разрешение в организации и для этой организации создается основное постоянное закрепление, то временное закрепление закрывается (status cancelled). Нельзя создать временное закрепление взамен постоянному (Если ситуация, когда пациент лишился прав на получение медицинской помощи в организациях ЗО РБ, требуется закрыть постоянное основное закрепление со статусом executable на статус cancelled, и только после этого создавать временной постоянное закрепление)
  • Временное закрепление должно иметь дату окончания и период между applies.start и applies.end не должен превышать 1 год. По истечении срока указанного в applies.end временное закрепление должно получить статус terminated
  • Операция $set-status применима только к ресурсам, имеющим статус executable

  • Разрешены комбинации в одной организации:
    • Основное постоянное + дополнительные постоянные/временные
    • Основное временное + дополнительные постоянные/временные

Автоматические переходы:

  • Новое основное → отмена старого основного того же типа
  • Без восстановления предыдущих состояний

Логические проверки

При выполнении импорта ресурса | № | Описание ошибки | Ответ для разработчика ИС | Ответ для пользователя МИС | |—|—————-|———————-|———————| | 1 | Попытка импортировать ресурс Contract профиля «Закрепление за медицинской организацией» для пациента без указания периода действия | Элемент Contract.applies.end должен иметь значение для ресурсов Contract с type = temporary | Не указана дата окончания действия закрепления | | 2 | Попытка импортировать ресурс Contract профиля «Закрепление за медицинской организацией» для пациента c периодом превышающим 1 год в Contract.applies | Элемент Contract.applies имеет значение периода, превышающее один год | Период действия закрепления превышает 1 год | | 3 | Попытка импортировать ресурс Contract профиля «Закрепление за медицинской организацией» с указанием Contract.authority организации, для которой уже существует закрепление со статусом executable с типом постоянное (residence) или временное (temporary), и subtype - основное (main). ИСКЛЮЧЕНИЕ: замена временного закрепления (temporary) на постоянное (residence) | У пациента уже есть действующее закрепление с Contract.subtype = main за указанной в элементе Contract.authority организацией | У пациента уже есть действующее основное закрепление за выбранной организацией | | 4 | Попытка импортировать ресурс Contract профиля «Закрепление за медицинской организацией» где дата начала периода действия закрепления позже даты окончания действия | Дата начала периода действия в элементе Contract.applies.start не может быть больше даты завершения в элементе Contract.applies.end | Дата начала периода действия не может быть больше даты завершения |

При выполнении операции изменения статуса | № | Описание ошибки | Ответ для разработчика ИС | Ответ для пользователя МИС | |—|—————-|———————-|———————| | 1 | Попытка изменить ресурс Contract профиля «Закрепление за медицинской организацией», который имеет статус отличный от executable | Нельзя изменять статус ресурса имеющий статус | Нельзя изменить статус ресурса , так как его статус не имеет значения «используется» | | 2 | Попытка выполнить операцию изменения статуса без токена организации | Токен должен содержать id медицинской организации | Недостаточно прав на выполнение операции |

В зависимости от профиля возможен поиск в контексте информации о пациенте или информации об организации.

Синтаксис метода получения ресурса

Метод получения осуществляет доступ к текущему содержимому ресурса. Взаимодействие осуществляется с помощью HTTP GET команды:

GET [FHIR_BASE]/Organization/[organizationId]/Contract/[id]

GET [FHIR_BASE]/Patient/[patientId]/Contract/[id]

Метод возвращает один экземпляр ресурса.

Возможные значения логического идентификатора («id») описаны в типе Id

При попытке доступа к несуществующему ресурсу будет возвращен HTTP статус код - 404 Not Found

Синтаксис поиска ресурса

Во всех поисковых взаимодействиях в этом руководстве используется HTTP GET команда со следующим синтаксисом:

GET [FHIR_BASE]/Organization/[organizationId]?[parameter1]{:m1|m2|...}={c1|c2|...}[value1{,value2,...}]{&[parameter2]{:m1|m2|...}={c1|c2|...}[value1{,value2,...}]&...}

GET [FHIR_BASE]/Patient/[patientId]/[Resource-type]?[parameter1]{:m1|m2|...}={c1|c2|...}[value1{,value2,...}]{&[parameter2]{:m1|m2|...}={c1|c2|...}[value1{,value2,...}]&...}

  • GET — это HTTP метод, используемый для получения ресурса.

  • Переменные указанные в «[]», обязательны для предоставления клиентом и будут заменены указанным строковым литералом.

  • Переменные указанные в «{}», не являются обязательными для предоставления клиентом и будут заменены указанным строковым литералом.

  • FHIR_BASE: URL-адрес сервера

  • Resource-type: имя типа ресурса (например, “Contract”).

  • parameter: параметры поиска, определенные для конкретного взаимодействия (например, «?clinical-status=active»).

  • value: значение параметра поиска

  • {:m1 m2 …}: модификатор параметра поиска

  • {c1 c2 …}: компаратор параметра поиска

  • {,value2,…}: логическое ИЛИ

  • {&parameter2={:m1 m2 …}={c1 c2 …}[value1{,value2,…}]&…}: логическое И

Простой пример запроса поиска в RESTful с использованием HTTP GET команды:

GET [FHIR_BASE]/Organization/[organizationId]/Contract?type=value&...

GET [FHIR_BASE]/Patient/[patientId]/Contract?type=value&...

Поддерживаемые параметры поиска ресурса

Параметр поиска Тип Описание Выражение Пример
_id token По логическому идентификатору Contract.id GET [FHIR_BASE]/Patient/[patientId]/Contract?_id=00001
_profile reference По профилю организации Contract.meta.profile GET [FHIR_BASE]/Patient/[patientId]/Contract?_profile=https://fhir.by/StructureDefinition/RejectionBy
address token Адрес по которому закреплен пациент за этой организацией Contract.type GET [FHIR_BASE]/Patient/[patientId]/Contract?address=Минск ул Лучшая
author reference Автор отказа Contract.author GET [FHIR_BASE]/Patient/[patientId]/Contract?author=Patient0012
authority reference Учреждение здравоохранения за которым закреплен пациент Contract.authority GET [FHIR_BASE]/Patient/[patientId]/Contract?authority=Organization00012
author-related-person reference Автор отказа - законный представитель Contract.author.extension(‘https://fhir.by/StructureDefinition/RelatedPersonPermanentExt’).value.as(Reference) GET [FHIR_BASE]/Patient/[patientId]/Contract?author-related-person=RelatedPerson/[relatedPerson_id]
domain reference Структурное подразделение учреждения здравоохранения за которым закреплен пациент Contract.domain GET [FHIR_BASE]/Patient/[patientId]/Contract?domain=Location0021
issued date Дата создания закрепления (для PlaceOfCare) Дата создания отказа от направления (для RejectionBy) Contract.issued GET [FHIR_BASE]/Patient/[patientId]/Contract?issued=2024-09-09
patient reference Пациент Contract.subject.where(resolve() is Patient) GET [FHIR_BASE]/Patient/[patientId]/Contract?patient=Patient0012
period date Период закрепления Contract.applies GET [FHIR_BASE]/Patient/[patientId]/Contract?period=ge2024-09-09
rejection-reason token Причина отказа Contract.extension(‘https://fhir.by?StructureDefinition/RejectionReason’).value.as(CodeableConcept) GET [FHIR_BASE]/Patient/[patientId]/Contract?rejection-reason=pat-crs
site reference Структурное подраздение за которым закреплен пациент Contract.site GET [FHIR_BASE]/Patient/[patientId]/Contract?site=Location00012
status token Статус контракта Contract.status GET [FHIR_BASE]/Patient/[patientId]/Contract?status=active
subtype token Подтип закрепления пациента: main (основное) или additional (дополнительное) Contract.subtype GET [FHIR_BASE]/Patient/[patientId]/Contract?subtype=additional
topic reference Ссылка на направление, от которого происходит отказ Contract.topic.as(Reference) GET [FHIR_BASE]/Patient/[patientId]/Contract?topic=ServiceRequest/[serviceRequest_guid]
type token Тип закрепления пациента: residence (постоянное) или temporary (временное) Contract.type GET [FHIR_BASE]/Patient/[patientId]/Contract?type=resisdense

Параметры поиска, поддерживаемые профилем CancelOrder

Параметр поиска Тип Описание Выражение Пример
_id token По логическому идентификатору Contract.id GET [FHIR_BASE]/Patient/[patientId]/Contract?_id=00001
_profile reference По профилю организации Contract.meta.profile GET [FHIR_BASE]/Patient/[patientId]/Contract?_profile=https://fhir.by/StructureDefinition/CancelOrder
_lastUpdated date Возвращает отмены назначений по дате создания Contract.meta.lastUpdated GET [FHIR_BASE]/Patient/[patientId]/Contract?_lastUpdated=2025-05-05T10:30:00Z
patient reference Возвращает отмены назначений конкретного пациента Contract.subject.where(resolve() is Patient) GET [FHIR_BASE]/Patient/[patientId]/Contract?patient=Patient0012
authority reference Возвращает отмены назначений, созданные конкретном учдеждении здравоохранения Contract.authority GET [FHIR_BASE]/Patient/[patientId]/Contract?authority=Organization00012
author reference Возвращает отмены назначений, созданные конкретным медицинским работником Contract.author GET [FHIR_BASE]/Patient/[patientId]/Contract?author=Patient0012

Права доступа