Is there any good parser which can parser HL7 V2.7 message using Java except HAPI. My goal is to convert the message into a XML file.
HL7 version 2.7 parser using java except Hapi
2k views Asked by user1321939 At
2
There are 2 answers
0
Philipp
On
There is my own open source alternative called HL7X, which does work with any HL7v2 version. It converts your HL7 String into a XML String.
Example:
MSH|^~\&|||||20121116122025||ADT^A01|5730224|P|2.5||||||UNICODE UTF-8
EVN|A01|20130120151827
PID||0|123||Name^Firstname^^^^||193106170000|w
PV1||E|
Gets transformed to
<?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>
Related Questions in JAVA
- Add image to JCheckBoxMenuItem
- How to access invisible Unordered List element with Selenium WebDriver using Java
- Inheritance in Java, apparent type vs actual type
- Java catch the ball Game
- Access objects variable & method by name
- GridBagLayout is displaying JTextField and JTextArea as short, vertical lines
- Perform a task each interval
- Compound classes stored in an array are not accessible in selenium java
- How to avoid concurrent access to a resource?
- Why does processing goes slower on implementing try catch block in java?
- Redirect inside java interceptor
- Push toolbar content below statusbar
- Animation in Java on top of JPanel
- JPA - How to query with a LIKE operator in combination with an AttributeConverter
- Java Assign a Value to an array cell
Related Questions in HL7
- Parse XML doc (Clinical Document Architecture-CDA,HL7 standard) using Everest Framework
- Using a Mirth Transformer to loop through multiple PID.3 Segments
- Will FHIR and HL7 v3 be used concurrently? Or is FHIR to replace v3?
- Centerlized EMR System
- Trouble grabbing understanding data elements hL7
- Perl : UTF8 characters gets distorted while trasnmitting
- HapiTestPanel, ORU-R01 message
- How to display hl7 code in MS-Word with its format
- HL7 V3 ITS R2 - Person Name
- BizTalk 2010 - Create acknowledgements
- HL7 messaging using Mule ESB Community
- Use device serial number instead of PID in HL7?
- What is the fixed format of CDA document
- considering using NHapi
- Generating HL7 file using Chameleon
Related Questions in MIRTH
- NCPDP D.0 integration using mirth Connect
- Using a Mirth Transformer to loop through multiple PID.3 Segments
- Perl : UTF8 characters gets distorted while trasnmitting
- Testing (C1+C3) on Cypress 3.0.3 throws error on QRDA 1 which are available for QRDA 3
- Mirth performance benchmark
- issue in writing multiple segments in the database through Mirth
- Mirth 3.5.0 - Importing Code Libraries via REST API
- How to insert created_timestamp in MongoDB using its Java Driver for Javascript
- How to get values from a field in Mongo, using its Java Driver (3.5.0)
- Java HotSpot(TM) 64-Bit Server VM warning: Insufficient space for shared memory file
- Mirth Connect Script to Re-process Errors?
- mirth can connect with Cache,sybase,informix database?
- Mirth Connect: Javascript Reader - Error listing files in dir (shared folder)
- Mirth Property File Corrupted on Editing using powershell
- Losing custom segments in batch file transformation
Related Questions in HAPI
- HapiTestPanel, ORU-R01 message
- Error with H3DNodeDatabase PhantomDevice::database in PhantomDevice.cpp
- Hapi Fhir importing Snomed-CT
- Bad Request uploading file to hapi
- HAPI FHIR @Create Operation not returning MethodOutcome Response
- Correct boom error not being returned in hapijs v17
- Ampersand character in OBX segment causing problems - HL7 formatting
- Hapi API: how to modify the Message ACK ID behaviour
- How can we integrate the B2B endpoint based on eBXML with the Node.js application?
- Conditional Validation with Joi not working
- cannot store data to cookies storage
- Patient Authority Update (ADT~A43) Even though PID Segment is there it says PID Id not There in the HL7 Message
- Spring Camel: Fhir Route without explicit serverUrl parameter on XML
- How to handle 3D card authentication through Stripe in node
- Convert FHIR model into FHIR JSON schema
Related Questions in GOOGLE-HEALTH
- Getting Steps details with respect to fitness activities?
- Using Google fit API in Flutter
- I import image in gcp dicom store, but on my pubsub topic assigned dicom store is not publishing message
- How to get Google Fit auth token in Android and send it to back end in order for them to get the user's data?
- OAuth H9 Google Health
- HL7 version 2.7 parser using java except Hapi
- GCP health check for internal load balancer
- Google Healthcare API Nodejs - Filter Appointment using start and end date
- Integrating Google Health Connect into Xamarin Forms Project
- Custom Health check with GCP
- How can i get calories data from any health band?
- Connecting Samsung Gear with Android via BLE, Rest API
- Flutter Fitness App - Any way to integrate health in flutter app
- How to get data from Samsung Galaxy Watch4 Classic?
- Partial retrieval of results from the Google Health API
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
this http://www.dcm4che.org/confluence/display/ee2/Home open source Java software can receive various HL7 messages through the MLLP protocol, convert them to XML, run through XSLT transformer and then load them into database and serve to DICOM clients as needed. In order to do this in the code base there is the HL7->XML code. Just find it, copy/paste it and use it.
Once I knew where exactly this code is as I was troubleshooting message character set problem. At that time I have found that the HL7 parser is rather simple-minded and can understand only 1 character set provided in the configuration. It does not read/use character set (MSH-18, Table 0211, Grahame Grieve's encoding tips) provided in the messages neither does it support switching character sets during the message decoding (see chapter "Escape sequences supporting multiple character sets" in HL7 specification).
So I know the parser code is there. It is in Java. It produces XML inputs for the customer-specific XSLT transformation script. It should be quite easy to reuse.
You should be able to find it by yourself. Otherwise your question would turn out as plain finding a tool ยง4 is an off-topic :)