Парсер HL7 версии 2.7, использующий Java, кроме Hapi
Есть ли хороший анализатор, который может анализировать сообщения HL7 V2.7 с использованием Java, кроме HAPI. Моя цель - преобразовать сообщение в файл XML.
2 ответа
Есть моя собственная альтернатива с открытым исходным кодом под названием HL7X, которая работает с любой версией HL7v2. Он преобразует вашу строку HL7 в строку XML.
Пример:
MSH|^~\&|||||20121116122025||ADT^A01|5730224|P|2.5||||||UNICODE UTF-8
EVN|A01|20130120151827
PID||0|123||Name^Firstname^^^^||193106170000|w
PV1||E|
Превращается в
<?xml version="1.0" encoding="UTF-8"?>
<HL7X>
<HL7X>
<MSH>
<MSH.1>^~\&</MSH.1>
<MSH.6>20121116122025</MSH.6>
<MSH.8>
<MSH.8.1>ADT</MSH.8.1>
<MSH.8.2>A01</MSH.8.2>
</MSH.8>
<MSH.9>5730224</MSH.9>
<MSH.10>P</MSH.10>
<MSH.11>2.5</MSH.11>
<MSH.17>UNICODE UTF-8</MSH.17>
</MSH>
<EVN>
<EVN.1>A01</EVN.1>
<EVN.2>20130120151827</EVN.2>
</EVN>
<PID>
<PID.2>0</PID.2>
<PID.3>123</PID.3>
<PID.5>
<PID.5.1>Name</PID.5.1>
<PID.5.2>Firstname</PID.5.2>
</PID.5>
<PID.7>193106170000</PID.7>
<PID.8>F</PID.8>
</PID>
<PV1>
<PV1.2>E</PV1.2>
</PV1>
</HL7X>
Это http://www.dcm4che.org/confluence/display/ee2/Home программное обеспечение Java с открытым исходным кодом может получать различные сообщения HL7 через протокол MLLP, преобразовывать их в XML, выполнять через преобразователь XSLT и затем загружать их в базу данных и использовать для DICOM клиенты по мере необходимости. Для этого в базе кода есть код HL7->XML. Просто найдите, скопируйте / вставьте и используйте.
Однажды я знал, где именно этот код, поскольку я решал проблему с набором символов сообщения. В то время я обнаружил, что синтаксический анализатор HL7 довольно прост и может понимать только один набор символов, представленный в конфигурации. Он не читает / не использует набор символов (MSH-18, таблица 0211, советы по кодированию Грэма Грива), предоставленный в сообщениях, а также не поддерживает переключение наборов символов во время декодирования сообщения (см. Главу "Escape-последовательности, поддерживающие несколько наборов символов" в спецификации HL7).).
Так что я знаю, что код парсера есть. Это на Яве. Он создает входные данные XML для сценария XSLT-преобразования для конкретного клиента. Это должно быть довольно легко использовать повторно.
Вы должны быть в состоянии найти это самостоятельно. В противном случае ваш вопрос окажется простым: найти инструмент §4 не по теме:)