# Инфраструктура цифровой медицинской карты

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

Source: https://developers.anpheros.com/ru/guides/digital-medical-record

**Цифровая медицинская карта требует двух разных компонентов: приложения для пациента, которым люди пользуются ежедневно, и нижележащей инфраструктуры, которая хранит, защищает и передает карту.** Anpheros предоставляет второй компонент: хранение, версионирование, идентификацию, управление согласиями, аудит и обмен данными карты через API. Приложением для пациента может быть Anpheros Daily или приложение, разработанное вами.

## Приложение и инфраструктура

| | Приложение для пациента | Инфраструктура медицинских данных |
|---|---|---|
| Что это | экраны, уведомления, напоминания, графики, ассистент | сама запись и правила, связанные с ней |
| Часто меняется | да — дизайн, функции, платформы | редко — должна оставаться стабильной и совместимой |
| Примеры работ | дневник симптомов, напоминание о приеме лекарств, семейный календарь | хранилище FHIR, история версий, согласие, происхождение, аудит, импорт лабораторных данных, веб-хуки |
| В Anpheros | Anpheros Daily (Android, macOS, веб) | Anpheros Platform (`platform.anpheros.com`) |

Разделение этих компонентов позволяет записи сохраняться дольше любого отдельного приложения и использоваться несколькими приложениями. Anpheros Daily следует этому разделению: данные, которые пользователи записывают в приложении, записываются на платформу через тот же публичный API, который использует любое другое приложение, поэтому они доступны — с согласия пациента — другим приложениям в той же форме FHIR.

## Что должна предоставлять инфраструктура

### Структура
Запись полезна только в том случае, если другие программы могут ее понять. Anpheros хранит ее в виде ресурсов HL7 FHIR R4 — 26 типов — со стандартными кодами (LOINC, ICD-10, ATC, UCUM) и сохраняет исходный текст рядом с каждым кодом. [Платформа FHIR](https://developers.anpheros.com/ru/guides/fhir)

### История
Медицинские данные корректируются, а не перезаписываются. Каждое обновление создает новую версию, доступную для чтения через `/fhir/R4/{type}/{id}/_history`; условные обновления с помощью `If-Match` предотвращают перезапись данных двумя разными источниками (устаревшая версия отвечает `412`).

### Документы
Сканы и PDF-файлы хранятся как `DocumentReference` с исходным файлом: загружаются через платформу или напрямую в хранилище, затем финализируются с помощью контрольной суммы SHA-256 и размера. После финализации оригинал изменить нельзя; извлеченные из него значения ссылаются на него (`derived_from`). Файлы хранятся в европейском бакете хранилища, зашифрованном ключом, управляемым клиентом, размером до 25 МиБ каждый.

### Идентификация и изоляция
Каждое приложение работает внутри проекта и видит только своих пациентов (плюс тех, кто предоставил ему доступ) под своими собственными парными идентификаторами. Запись вне зоны его досягаемости для него не существует (`404`).

### Согласие
Пациент предоставляет приложению доступ на определенный период (30–365 дней) к конкретным типам ресурсов и действиям, опционально ограниченным категорией. Предоставленные доступы отражаются как ресурсы FHIR `Consent` и могут быть отозваны в любое время. [Модель согласия и доступа](https://developers.anpheros.com/ru/guides/consent)

### Происхождение и аудит
Каждая запись о записи указывает, кто ее создал (пациент, врач, устройство, импорт или ИИ), для какой организации и из какой системы. Каждое чтение регистрируется и отображается пациенту по приложениям.

### Обмен
Запись может быть экспортирована целиком (`Patient/$everything`), суммирована в формате International Patient Summary (`Patient/$summary`), поступать из лабораторий (CSV, HL7 v2 ORU^R01, JSON) и отслеживаться через подписанные вебхуки. [Интеграции в здравоохранении](https://developers.anpheros.com/ru/guides/healthcare-integrations)

### Резидентность и удаление
Данные хранятся и обрабатываются в Европейском Союзе. Удаление пациента удаляет все ресурсы записи.

## Создание собственного пациентского приложения

Если вы создаете приложение, вы можете сосредоточиться на пользовательском опыте, а Anpheros использовать для хранения записей:

1. создайте пациента для каждого пользователя (`POST /v1/patients`) или запросите согласие у существующего пользователя Anpheros;
2. записывайте данные, которые пользователь вводит (`/v1/patients/{id}/observations`, `/conditions`, `/medications`, `/documents`);
3. считывайте их обратно в виде списков или временной шкалы (`/v1/patients/{id}/timeline`);
4. подпишитесь на веб-хуки для обновления экранов, когда лаборатория или клиника добавляет что-либо.

Полное руководство находится в разделе [Создание медицинского приложения](https://developers.anpheros.com/ru/guides/build-a-healthcare-app).

## Связанные материалы

- [Медицинская карта пациента](https://developers.anpheros.com/ru/guides/patient-medical-record)
- [Серверная часть и база данных медицинского приложения](https://developers.anpheros.com/ru/guides/medical-app-backend)
- [Безопасность, конфиденциальность и местоположение данных](https://developers.anpheros.com/ru/guides/security)
- [Инфраструктура медицинских данных](https://developers.anpheros.com/ru/guides/medical-data-infrastructure)
