Yone Moreno · Mar 3, 2021

Is there any recommended way to replace HL7 Escape Sequences with the correct symbol in XML?


First of all thanks for your time to read and reply,

We would need some help,

We have an ORM_O01 which has a NTE.3 with a Line Feed

Our Process converts the XML to ER7 using the ITB as follows:

set context.mensajeHL7 = ##class(ITB.HL7.Util.Convert).XMLToER7(hl7,.tSC,"2.5")

When we show the ER7 we observe:

INTE|1||Psa libre\X0A\ Indice psa

We have thought about the following solution, where mensajeXML is the XML representation of the ER7 shown:

set mensajeXML = $REPLACE(mensajeXML,"\X0A\",$CHAR(13))

It would work only for the Line Feed case


Is there any recommended way to convert the escaped HL7 sequences back to the symbols used in a XML message?


We ask this because there could be other symbols like:

\X0D\  for carriage return...


Thanks for your help


We have read:

1 0 1 70
Log in or sign up to continue


Hi Yone,

Hope this is not too late, can you try the following code, 

set NTE3Updated = ##class(EnsLib.HL7.Segment).UnescapeEx(NTE3String,"|^~\&")