(Un)escaping for XML messages was not handled very well in released HAPI
versions (see https://sourceforge.net/p/hl7api/bugs/139/); it should have
been fixed on trunk, at least regarding the reported problem.
Though character references (\Xxxx\) may not be handled correctly yet, but
I need to check on this.

\X0d\ for a line break is critical anyway, \.br\ should be used instead.

As such, there's currently no alternative besides postprocessing the XML in
a way you described.

cheers
Christian


2013/1/10 Fabio Daprile <fabio.dapr...@syncromed.it>

>  Hello,
>
> i have an issue with HAPI.
>
> Consider the following Pipe Delimited Message:
>
>
> MSH|^~\&|G2|Insiel|RIS|Syncromed|200708150420||ORM^O01|G2070000003306650100|P|2.5|
> PID|||100100100||PAZIENTE^TEST1^^^^^L||193004100000|M|||VIA BARTOLI
> 9^^036023^^^^L~VIA BARTOLI
> 9^^036023^^^^M|||||||MLMSRG30D10I903B|39461967||||036045|||100
> PV1||I|||||M84838^BERETTA^GIACOMO
> ANDREA^^^^^^^^^^5^&&L|^^^^^^^^^^^^^&&L||SBA681E1||||03|||||2875872|10||||04||||||||||||||||||SBA82|SBA82E01|200708150355|||||0||V|SBA681E1
>
> ORC|NW|2555519||2302760|||^^20^200708150424||200708150419|^DELLEMONACHEA|||||||SBA681E1|BGD12|||SBA681E1
> OBR|0|2555519||RX00001|03||||||||A.P.P. ed E.O.:\T\comparsa questa notte
> di difficoltà \X0d\respiratoria associata a preesistente peso epigastrico.
> sudorazione non profusa. non febbre. non
> ortopnea.||||||||||||||^^10^200708150424|||CART
>
>
> i parse the message first with :
>
> PipeParser hapiPipeParser = new PipeParser();
>
> and then with:
>
> DefaultXMLParser xmlparser = new DefaultXMLParser();
>
> The result i get for the field OBR.13 is the following:
>
>             <OBR.13>A.P.P. ed E.O.:&amp;comparsa questa notte di
> difficoltà \X0d\respiratoria associata a preesistente peso epigastrico.
> sudorazione non profusa. non febbre. non ortopnea.</OBR.13>
>             <OBR.27>
>
> The HL7 standard defines the following escape sequences:
>
>   Character Description Conversion  \Cxxyy\ Single-byte character set
> escape sequence with two hexadecimal values not converted  \E\ Escape
> character converted to escape character (e.g., ‘\’)  \F\ Field separator
> converted to field separator character (e.g., ‘|’)  \H\ Start
> highlighting not converted  \Mxxyyzz\ Multi-byte character set escape
> sequence with two or three hexadecimal values (zz is optional) not converted
> \N\ Normal text (end highlighting) not converted  \R\ Repetition
> separator converted to repetition separator character (e.g., ‘~’)  \S\ 
> Component
> separator converted to component separator character (e.g., ‘^’)  \T\ 
> Subcomponent
> separator converted to subcomponent separator character (e.g., ‘&’)  *
> \Xdd…\* *Hexadecimal data (dd must be hexadecimal characters) converted
> to the characters identified by each pair of digits*  \Zdd…\ Locally
> defined escape sequence not converted
> The \T\ sequence is correctly translated to &amp;
> But \X0d\ is not.
>
> I would expect something like this XML i get from another HL7 translation
> tool:
>
>             <OBR.13>A.P.P. ed E.O.:&amp;comparsa questa notte di
> difficoltà
> respiratoria associata a preesistente peso epigastrico. sudorazione non
> profusa. non febbre. non ortopnea.</OBR.13>
>
> As you can see here the sequence \X0d\ has been replaced by the Carriage
> Return character as expected.
>
> Actually with HAPI i have to re-parse the XML with a separate tool to
> replace all the escape sequences.
>
>
> Is there a standard HAPI parser which does this job correctly?
> Is it a problem of configuration?
>
> In case is it possible to plan this Enhancement?
>
> Greetings,
> Fabio Daprile
>
>
>
>
>
>
>
> --
>
>
>  ------------------------------
>
>
> *Fabio Daprile*
>
>  via Galilei, 2
> 39100 Bolzano (BZ) - Italy
> tel. +39.0471065901
> fax. +39.0471065919
> e-mail fabio.dapr...@syncromed.it
>
>
>
> ------------------------------------------------------------------------------
> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
> MVPs and experts. ON SALE this month only -- learn more at:
> http://p.sf.net/sfu/learnmore_122712
> _______________________________________________
> Hl7api-devel mailing list
> Hl7api-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/hl7api-devel
>
>

<<Logo_SM_200.jpg>>

------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122712
_______________________________________________
Hl7api-devel mailing list
Hl7api-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hl7api-devel

Reply via email to