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
- I need the BIRT.war that is compatible with Java 17 and Tomcat 10
- Creating global Class holder
- No method found for class java.lang.String in Kafka
- Issue edit a jtable with a pictures
- getting error when trying to launch kotlin jar file that use supabase "java.lang.NoClassDefFoundError"
- Does the && (logical AND) operator have a higher precedence than || (logical OR) operator in Java?
- Mixed color rendering in a JTable
- HTTPS configuration in Spring Boot, server returning timeout
- How to use Layout to create textfields which dont increase in size?
- Function for making the code wait in javafx
- How to create beans of the same class for multiple template parameters in Spring
- How could you print a specific String from an array with the values of an array from a double array on the same line, using iteration to print all?
- org.telegram.telegrambots.meta.exceptions.TelegramApiException: Bot token and username can't be empty
- Accessing Secret Variables in Classic Pipelines through Java app in Azure DevOps
- Postgres && statement Error in Mybatis Mapper?
Related Questions in HL7
- HL7 encoding characters in non-ASCII strings
- What does ZCD segment refer to in HL7 message?
- Variable tokens in ANTLR grammar
- HL7v2: Should the empty/blank repeating fields be removed?
- Combine multiple OBX segments in ORU_R01 message hl7 using python hl7apy
- Can single HL7 file contain multiple messages or just one?
- How to add extra components to HL7 message using Java Hapi?
- Biztalk BTAHL7 batching - cannot start a Batch process
- HL7 Spy - Clearing field OBX-5.5.1
- How to extend a primitive data type in FHIR with an extension?
- How to write an HL7 Ping Script?
- How to encode maiden name
- Mirth Connect does reply/response back at all when connected through TCP
- How to deal with a VARIES datatype using HL7-dotnetcore?
- message validation throws "No Message Found" exception
Related Questions in MIRTH
- IRT -- Problem (?) or unxepected result using the mirt package with a 2pl model for binary variables
- How to generate jti ( JWT Id) in java script?
- mirth file reader to read fhir-json content and replace few string
- certain table sizes are increasing continuously in mirth server i.e. installed on amazon Linux
- Getting SyntaxError: Empty JSON string in Mirth Connect while sending an empty Message
- How to replace accent french character in filename with no accent character
- Mirth JSON Object Population
- Mirth Connect - Grab HL7V2 Segment via Attachment Handler
- What regex engine does NextGen Mirth Connect use?
- Add Column Headers in Mirth Transformer
- Mith Load Capacity
- Cannot access value from Mirth Connect server's globalMap
- set http response status dinamically in mirth from destination channel
- Get values from repeated parameter in query string accessing 'parameters' in sourceMap
- Compare Two DateUtil Objects
Related Questions in HAPI
- Pending requests with authorization header (bearer token) - hapi.js + jwt
- POST request pending in hapijs + jwt
- Cannot implement JWT authorization in `hapi.js`
- Upgrading Hapi and Joi validation issues
- Node Hapi.js bulk update to mariaDB
- I am struggling to get async working with Hapi and MySQL in Node.js
- Is @nuxtjs/hapi available for Node 18 ? (Nuxt 3, Vue 3)
- Not getting expected results from plot
- Hapi.js - Question about the architecture for caching
- Hapi.js Server - "Debug: request, error, close" Messages but GET Method Works Fine
- Hapi server having 403 errors with GET route
- HAPI complie Exception class file version 55.0 file versions up to 52.0
- How to implement redash into my website dashboard
- Unable to generate crumb cookie with Hapi/crumb
- Spring Camel: Fhir Route without explicit serverUrl parameter on XML
Related Questions in GOOGLE-HEALTH
- Integrating Google Health Connect into Xamarin Forms Project
- Google Healthcare API Nodejs - Filter Appointment using start and end date
- How to get data from Samsung Galaxy Watch4 Classic?
- Flutter Fitness App - Any way to integrate health in flutter app
- 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?
- 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 can i get calories data from any health band?
- Custom Health check with GCP
- GCP health check for internal load balancer
- Connecting Samsung Gear with Android via BLE, Rest API
- Getting Steps details with respect to fitness activities?
- HL7 version 2.7 parser using java except Hapi
- Partial retrieval of results from the Google Health API
- OAuth H9 Google Health
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 :)