Я предполагаю, что вы имеете дело с HL7 v2.x
HL7 добровольно чрезвычайно гибок. Это имеет большие преимущества, но также создает проблемы. Основное правило, которое нужно иметь в виду, заключается в том, что каждая реализация будет отличаться. Если вы развернете один и тот же продукт в 2 разных средах (например, в 2 больницах), правило обмена данными, вероятно, будет другим. Ваш продукт должен быть готов удовлетворить эти скрытые требования, если вы хотите иметь возможность масштабировать количество интерфейсов HL7, с которыми он будет взаимодействовать.
В большинстве систем здравоохранения, работающих с HL7, мы сталкиваемся с частичным списком общих проблем:
- Каждая система может интерпретировать значение каждого элемента данных. Также контекст и рабочие процессы могут влиять на семантику. Я видел некоторые системы, использующие номер счета (PID.18) или номер посещения (PV1.19), чтобы определить пациента, который должен был соответствовать некоторым клиническим рабочим процессам. Этот тип семантического разрыва, вероятно, окажет некоторое влияние на то, как система получает эти данные.
- Обязательно и необязательно: поскольку часть данных может быть обменена для достижения нескольких целей в нескольких различных контекстах, большинство сегментов и полей документированы как необязательные в официальной документации (и некоторых анализаторах). Однако для удовлетворения конкретных рабочих процессов продукты для здравоохранения, вероятно, добавят правила ограничения данных и ослабят некоторые другие. В большинстве случаев для их выявления необходимо проводить индивидуальный анализ.
- Таблицы: HL7 предоставляет список предлагаемых значений для некоторых полей. Например, предлагаемый список значений для пола имеет длину 6 ... Очевидно, что большинство систем не реализуют все 6, но какова ваша стратегия отображения, если вы получаете такую, которую вы не поддерживаете заранее?
- Сегменты и поля могут быть настроены: длина поля, типы данных и другие атрибуты определения могут быть настроены. Вам необходимо сопоставить его с известной вам структурой данных без потери важной информации.
jlmorin
www.caristix.com
Первая проблема - убедиться, что все знают, что такое HL7.
Это морщина на вершине всех нормальных проблем в разработке программного обеспечения.
Итак, вы связываетесь со своей [Аптекой | Банком | Страховой компанией], которая хочет выкинуть все деньги из интерфейса HL7 в учреждение, которое использует ваше программное обеспечение. Ваш контракт с учреждением, их контракт с аптекой, [Аптека | Банк | Страховая компания] не имеет ни малейшего представления о том, как работает ваше программное обеспечение, учреждение не имеет ни малейшего понятия, что такое HL7, и вы отмечены галочкой в аптеке, потому что они постоянно говорю вам, что ваше программное обеспечение глючит.
Я считаю, что проблема с HL7 в том, что он в основном делается по дешевке. HL7 3.0 может никогда не осуществиться, потому что он никогда не будет превращаться в деньги.
Если вы собираетесь «платить за HL7», помните, что вы также платите за HL [1-6]. Интерфейс SOAP не является HL7. Анализатор сообщений HL7 - это не HL7 и не генератор сообщений.
источник