Добавить разрыв строки в сообщении HL7, созданном с помощью Mirth connect

Добавление разрыва строки в HL7 очень важно, поскольку без него Mirth connect не может проанализировать сообщение.

Я отправляю сообщение XML в Mirth connect для преобразования в HL7. Сообщение имеет один корневой узел и несколько дочерних узлов. Необходимо добавить новую строку после каждого дочернего узла в HL7.

Во-первых, мне неизвестно, должна ли настройка добавления новой строки выполняться при отправке XML или в соединении Mirth?

Я пробовал несколько кодов XML, чтобы включить разрыв строки, например:

  • & # 10 и / или & # 13
  • / r / n и / или / n
  • / br или тег br
  • Тег CDATA
  • & # xD и / или & # xA

Из документации Mirth: http://www.mirthcorp.com/community/wiki/display/resultsHL7mapping/Separators+and+Escape+Sequences

пробовал другие варианты, но не смог получить разрыв строки.

Предложите решение, чтобы добавить новую строку в созданный файл HL7.

XML, отправленный в Mirth Connect:

<?xml
version='1.0'
encoding='utf-8'
?>
    <HL7Message>
        <MSH>
            <MSH.1>|</MSH.1>
            <MSH.2>^~\&amp;</MSH.2>
            <MSH.3>
                <MSH.3.1>SNAP
                    EHR</MSH.3.1>
            </MSH.3>
            <MSH.4>
                <MSH.4.1>Kreetti
                    Clinic</MSH.4.1>
            </MSH.4>
            <MSH.5>
                <MSH.5.1>Receiving
                    Application</MSH.5.1>
            </MSH.5>
            <MSH.6>
                <MSH.6.1>Receiving
                    Facility</MSH.6.1>
            </MSH.6>
            <MSH.7>
                <MSH.7.1>20130719</MSH.7.1>
            </MSH.7>
            <MSH.8/>
            <MSH.9>
                <MSH.9.1>VXU</MSH.9.1>
                <MSH.9.2>V04</MSH.9.2>
            </MSH.9>
            <MSH.10>
                <MSH.10.1>634158415302812500</MSH.10.1>
            </MSH.10>
            <MSH.11>
                <MSH.11.1></MSH.11.1>
            </MSH.11>
            <MSH.12>
                <MSH.12.1>2.3.1</MSH.12.1>
            </MSH.12>
        </MSH>


        <PID>
            <PID.1>
                <PID.1.1>0123</PID.1.1>
            </PID.1>
            <PID.2/>
            <PID.3>
                <PID.3.1>0123</PID.3.1>
                <PID.3.2/>
                <PID.3.3/>
                <PID.3.4/>
                <PID.3.5>Mr</PID.3.5>
            </PID.3>
            <PID.4/>
            <PID.5>
                <PID.5.1>Jacob</PID.5.1>
                <PID.5.2>Oram</PID.5.2>
            </PID.5>
            <PID.6/>
            <PID.7>
                <PID.7.1>19930904</PID.7.1>
            </PID.7>
            <PID.8>
                <PID.8.1>M</PID.8.1>
            </PID.8>
            <PID.9/>
            <PID.10/>
            <PID.11>
                <PID.11.1>1111</PID.11.1>
                <PID.11.2/>
                <PID.11.3>Updated</PID.11.3>
                <PID.11.4>Dyer</PID.11.4>
                <PID.11.5>23323-2342</PID.11.5>
            </PID.11>
            <PID.12/>
            <PID.13>
                <PID.13.1/>
                <PID.13.2/>
                <PID.13.3/>
                <PID.13.4/>
                <PID.13.5/>
                <PID.13.6/>
                <PID.13.7>1111111111 </PID.13.7>
            </PID.13>
        </PID>



        <RXA>
            <RXA.1>
                <RXA.1.1>0</RXA.1.1>
            </RXA.1>
            <RXA.2>
                <RXA.2.1>999</RXA.2.1>
            </RXA.2>
            <RXA.3>
                <RXA.3.1>20091202</RXA.3.1>
            </RXA.3>
            <RXA.4>
                <RXA.4.1>20091202</RXA.4.1>
            </RXA.4>
            <RXA.5>
                <RXA.5.1>88</RXA.5.1>
                <RXA.5.2>Influenza</RXA.5.2>
                <RXA.5.3>CVX</RXA.5.3>
            </RXA.5>
            <RXA.6>
                <RXA.6.1>1</RXA.6.1>
            </RXA.6>
            <RXA.7>
                <RXA.7.1>1</RXA.7.1>
                <RXA.7.2>1</RXA.7.2>
                <RXA.7.3>1</RXA.7.3>
            </RXA.7>
            <RXA.8/>
            <RXA.9>
                <RXA.9.1>00</RXA.9.1>
            </RXA.9>
            <RXA.10>
                <RXA.10.1/>
                <RXA.10.2>Butler</RXA.10.2>
                <RXA.10.3>Internist</RXA.10.3>
                <RXA.10.4/>
                <RXA.10.5/>
                <RXA.10.6>Dr.</RXA.10.6>
            </RXA.10>
            <RXA.11>
                <RXA.11.1>Kreetti
                    Clinic</RXA.11.1>
            </RXA.11>
            <RXA.12/>
            <RXA.13/>
            <RXA.14/>
            <RXA.15>
                <RXA.15.1>42142314</RXA.15.1>
            </RXA.15>
            <RXA.16>
                <RXA.16.1>20100827000000</RXA.16.1>
            </RXA.16>
            <RXA.17>
                <RXA.17.1/>
                <RXA.17.2></RXA.17.2>
            </RXA.17>
        </RXA>


        <RXR>
            <RXR.1>
                <RXR.1.1/>
                <RXR.1.2>Injection</RXR.1.2>
            </RXR.1>
            <RXR.2>
                <RXR.2.1/>
                <RXR.2.2>Hand</RXR.2.2>
            </RXR.2>
        </RXR>
    </HL7Message>

person Parth mehta    schedule 19.07.2013    source источник
comment
Напоминаем, что escape-последовательности имеют \, а не /. Итак, конец строки \ n не / n   -  person ChronoFish    schedule 27.08.2013
comment
Глядя на ваш ответ на этот вопрос, эта проблема уже не может быть воспроизведена.   -  person Amit Joshi    schedule 30.09.2020


Ответы (2)


Настройка действительно существует в Mirth connect на вкладке источника, где вы определяете разделитель сообщений и разделитель сегментов в формате HEX. 0x0D - это HEX для разделителя сообщений «возврат каретки».

Показанный вами xml - это закодированное сообщение. Это не исходное сообщение hl7, которое ascii/text основано. Mirth преобразует сообщение в XML для обработки.

Возьмите сообщение HL7, откройте его в Notepad++, если вы видите CR LF коды блоков в конце каждого сегмента сообщения, что означает, что ваше сообщение отформатировано правильно, в противном случае вам нужно использовать хорошее сообщение. ****

person Sid    schedule 21.07.2013
comment
Привет, извините за задержку, но я сомневаюсь, что мне нужно изменить XML, который я отправляю в Mirth connect? Если да, то ? У Mirth connect было значение по умолчанию для разделителя сегментов, но это не помогло. И в сгенерированном HL7 не было блоков CR LF. - person Parth mehta; 25.07.2013
comment
Хорошо, во-первых ... Ваше исходное сообщение HL7 в формате XML или в текстовом формате Ascii? Если это XML ... Тогда, когда вы создаете канал в Mirth, он должен иметь возможность принимать сообщения в формате xml. Вы определяете его при создании канала и указываете формат сообщения. и если эта часть выполнена, а выше - входное сообщение xml, тогда я не вижу никаких проблем с самим сообщением. - person Sid; 25.07.2013
comment
Я просто отправляю этот XML в канал и получаю o / p в hl7, но без разрывов строк. Пробовал значения символа конца сегмента в источнике канала - 0x0D, 0x13. но не помогло. - person Parth mehta; 26.07.2013
comment
Как вы знаете, существуют реализации HL7 как в формате pipe, так и в формате XML. Это просто сообщение xml hl7. - person Nyerguds; 17.06.2014

Когда я проверил сообщение Encoded на панели управления Mirth connect, появилась новая строка. Итак, я подумал, что это может быть проблема с File Writer места назначения.

А потом обнаружил, что это был только Блокнот по умолчанию окон, который не показывает новую строку. Открытие сгенерированного файла в любых других редакторах включало новую строку. :)

person Parth mehta    schedule 16.08.2013
comment
Я знаю, что стандарт для конвейерного hl7 использует только \ r как разрывы строк, что действительно некорректно отображается в Блокноте, поэтому, возможно, ваши разрывы строк переводятся обратно в это. Попробуйте вместо этого использовать Wordpad; он также существует в любой системе Windows и правильно отображает частичные разрывы строк (и даже исправляет их, если вы повторно сохраняете в нем документ). - person Nyerguds; 17.06.2014