Как правильно работать с форматом HL7 в рамках .NET?

Ссылка скопирована
1 ответ

Поступило предложение для программы обменна данными в рамках медицинском микро компании, одним из правил есть работа с HL7, но больше никакой конкретики. От заказа я не отказался, т.к. система не является очень сложной, но столкнулся с проблемой понимания этого HL7.

Понятное дело, что я с ноги влетел в интернет, что бы обучиться новым знаниям в сфере, с которой не так уж и много работал, но я обнаружил... Ничего ¯_(ツ)_/¯

Что такое HL7 v3? Что некий медицинский цифровой формат для данных, который начал разрабатываться в 1998 году и выпустился в 2005 году (Вроде бы как). И ещё очень много другой воды, но я не нашёл ничего, что хоть как-то объясняло как с ним работать. Вообще ничего конкретного, тем более, для .NET. То ли это какой-то протокол, то ли это какой-то сервер, или это просто стандарт для оформления классов в моей программе, ограничение надёжности передачи информации.

Может кто-то имел дело, объясните пожалуйста, что к чему и как с этим работать, или может я что-то прям упустил.

Что говорит GPT по этому поводу. Есть библиотека NHapi которая вроде бы как порт Hapi с Java, но в интернете лучше вообще не гуглить Hapi, потому что, как оказывается это протокол... Который продают за деньги...

В общем, остро нуждаюсь в объяснении

Дополнительно:

С ходу нашёл:
https://hl7.org/fhir/
https://github.com/HL7/fhir
https://github.com/SaravananSubramanian/hl7
https://github.com/search?q=HL7&ref=opensearch&typ...

  • Иерокопус Таманский, спасибо, мне, почему-то hl7.org вообще не попадался в поиске... Вижу, что документация там конечно... Оставляет желать лучшего, но в любом случае спасибо. Напиши это ответом, я позже отмечу решением
  • Как-то слабо вы искали, ибо третья же ссылка в гугле выдает пример: https://infocentral.infoway-inforoute.ca/en/resour...
  • Ответы:

    Я тоже не работал с HL7, но если просуммировать что нашел, то:
    - HL7 - Health Level 7
    - Это прикладной протокол (протокол приложений), как 7 уровень OSI. Описывает данные для приложения. Как например, HTTP - текстовый и ничего про TCP
    - Т.к. это стандарт, то есть множество реализаций (Version 2, Version 3, CDA, CDD и другие)
    - Предназначен для работы с медицинскими документами (электронный документооборот)

    Без этих всяких GPT нашел библиотеки:
    - clear-hl7-net - реализация Version 2.0 лежит на гитхабе для netstandard2.1 и net7.0
    - целая статья на хабре, в которой гора этих реализация

    Лично от меня: я бы не советовал браться за этот заказ - слишком велики риски и ответственность высокая (тут жизнь людей)

    • - clear-hl7-net - реализация Version 2.0 лежит на гитхабе для netstandard2.1 и net7.0

      Нужна новая библиотека под .NET 8. Там последний коммит год назад

    • Nik Faraday, и в чем проблема? просто убери net7 из фреймворков проекта и все, netstandard2.1 достаточно
    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Антон С. Ответ

    Для работы с форматом HL7 в рамках .NET можно использовать различные библиотеки и инструменты. Одним из самых популярных способов является использование библиотеки NHAPI (NHibernate HL7 API). NHAPI предоставляет удобные классы и методы для работы с сообщениями HL7.

    Для начала, необходимо установить NHAPI через NuGet пакет менеджер в Visual Studio. После установки библиотеки, можно начать работу с HL7 сообщениями.

    Пример работы с HL7 сообщением в рамках .NET с использованием NHAPI:

    using NHapi.Base.Parser;
    
    string hl7Message = "HL7 сообщение здесь";
    
    PipeParser parser = new PipeParser();
    var message = parser.Parse(hl7Message);
    
    // Получение значения из сообщения
    string patientName = message.GetElement("PID-5-1").Value;
    

    В данном примере, мы используем PipeParser для парсинга HL7 сообщения и получения нужных значений из него. Метод GetElement позволяет получить значение определенного элемента в сообщении.

    Также, существуют и другие библиотеки для работы с HL7 в .NET, такие как HAPI (HL7 API) или HL7-dotnet. Выбор конкретной библиотеки зависит от ваших предпочтений и требований проекта.

    Важно помнить, что работа с форматом HL7 может быть сложной из-за его специфической структуры и правил. Поэтому, рекомендуется изучить документацию по HL7 и ознакомиться с примерами работы с сообщениями для более эффективной работы с данным форматом в рамках .NET.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно