<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Jaikishan Didwania on Medium]]></title>
        <description><![CDATA[Stories by Jaikishan Didwania on Medium]]></description>
        <link>https://medium.com/@jaididwania?source=rss-6c74b36fdb3f------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*D58IE_JutSRfca-rP2DEBg.png</url>
            <title>Stories by Jaikishan Didwania on Medium</title>
            <link>https://medium.com/@jaididwania?source=rss-6c74b36fdb3f------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 09:23:30 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@jaididwania/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Integrating HL7 using MuleSoft]]></title>
            <link>https://medium.com/@jaididwania/integrating-hl7-using-mulesoft-7421fd6d535d?source=rss-6c74b36fdb3f------2</link>
            <guid isPermaLink="false">https://medium.com/p/7421fd6d535d</guid>
            <category><![CDATA[hl7-integration]]></category>
            <category><![CDATA[mulesoft]]></category>
            <category><![CDATA[integration]]></category>
            <dc:creator><![CDATA[Jaikishan Didwania]]></dc:creator>
            <pubDate>Mon, 29 May 2023 05:07:41 GMT</pubDate>
            <atom:updated>2023-05-29T05:07:41.612Z</atom:updated>
            <content:encoded><![CDATA[<h3>What is HL7?</h3><p><em>What if all hospital information systems were independent states that communicated with each other by sending diplomatic notes — each in their own language? This might sound like fiction, but it describes the situation in many medical facilities before HL7 integration. Of course, the era of passing paper notes is over, but manual data exchange between multiple systems is still a harsh reality of today’s medical industry.</em></p><ul><li><strong>HL7 was designed to address this communication issue by improving the content of clinical data and providing the necessary structure.</strong> With HL7, the entire cycle of collecting, interpreting, and exchanging medical information is efficient and error-free. Practices can easily share diagnoses and lab results across <strong>EHRs</strong>, doctors can quickly access medical histories, and nurses are able to monitor planned procedures.</li><li>HL7 is supported by more than 1600 members from over 50 countries, including 500+ corporate members representing healthcare providers, government stakeholders, payers, pharmaceutical companies, vendors/ suppliers, and consulting firms.</li><li><strong>Health Level Seven (HL7) is a set of standards that define how medical information is collected, processed, and exchanged. It’s a universal healthcare IT language spoken by the majority of the world.</strong> The <strong>eponymous non-profit organization</strong> created HL7 with the intention “to provide standards that empower global health data interoperability.” Here are the most essential of these standards:</li><li><strong>HL7 V2</strong> is the most widely adopted messaging standard for health and medical data transactions in use today.</li><li><strong>HL7 V3</strong> is the next iteration that includes both messages and documents, and introduces a more comprehensive information model</li><li><strong>HL7 CDA</strong> standards (Clinical and Administrative Domain) are a part of the HL7 V3 specification that focuses on clinical documents</li><li><strong>HL7 CCD</strong> standards (Continuity Care Document) define patient medical summaries for the US market</li><li><strong>HL7 EHR</strong> is a collection of profiles and functional models for managing Electronic Health Records</li><li><strong>HL7 FHIR</strong>, or Fast Health Interoperable Resources, is the newly developed standard built with modular components and optimized for use with web-based APIs (Application Programming Interfaces)</li></ul><h3>How does HL7 in healthcare work?</h3><p>It provides a common framework for effective data communication within medical practices, between organizations, and with patients. Let’s have a detailed look at why HL7 is well worth the methodical and thorough integration it requires.</p><p>The US healthcare industry is incredibly complex and is sitting on an ever-increasing mountain of information. <strong>Studies suggest</strong> that each patient contributes about 80 megabytes of EMR and imaging data annually. Most of this data is stored and processed in isolated pools that belong to different medical institutions. What’s even more disturbing is that data can be dissociated and poorly structured even within the IT systems of a single institution.</p><p>Large healthcare providers usually rely on a variety of IT systems to keep their administrative, diagnostic, and treatment services running. A typical hospital, for instance, may use an HIS (Hospital Information System), an EMR (Electronic Medical Record), an LIS (Laboratory Information System), an RIS (Radiology Information System), and a PACS (Picture Archiving and Communication System). These systems all gather and generate information, but the different data formats they use prevent effective communication between them.</p><p>HL7 data integration can solve this problem in a number of ways. Below, we outline the main benefits you can achieve by implementing HL7 standards.</p><h3>Why does healthcare need HL7?</h3><p>Many healthcare providers, particularly specialists, are required to access multiple electronic systems to see relevant diagnoses for a patient. This can be even more challenging if they provide services in outpatient clinics that are not integrated with the local hospital system. This is where Fast Healthcare Interoperability Resources (FHIR) comes in and HL7 interoperability standards, such as the messaging format HLv2 or the most recent FHIR, exercise their value.</p><p>By providing a common language around content and structures for clinical data classes (e.g. diagnoses, allergies, procedures, …) data can be exchanged across EHRs without ambiguity and risk of misinterpretation.</p><h4>Types of HL7 Messages Processing in MuleSoft:</h4><ul><li><strong>In MuleSoft we have different schemas for HL7 and the HL7 message is validated against that schema.</strong></li><li>That schema contains all the information for any kind of message (different message: different schema), describing which field will be mandatory and optional.</li></ul><p>Messages example:</p><ul><li><strong>ACK — </strong>General acknowledgement</li><li><strong>ADT — </strong>Admit, Discharge, Transfer</li><li><strong>BAR — </strong>Add/change billing account</li><li><strong>DFT — </strong>Detailed financial transaction</li><li><strong>MDM — </strong>Medical document management</li><li><strong>MFN — </strong>Master files notification</li><li><strong>ORM — </strong>Order (Pharmacy/treatment)</li><li><strong>ORU — </strong>Observation result (unsolicited)</li><li><strong>QRY — </strong>Query, original mode</li><li><strong>RAS — </strong>Pharmacy/treatment administration</li><li><strong>RDE — </strong>Pharmacy/treatment encoded order</li><li><strong>RGV — </strong>Pharmacy/treatment give</li><li><strong>SIU — </strong>Scheduling information unsolicited</li></ul><h3><strong>Use Case:</strong></h3><h3>Patient Registration (using ADT Message: hl7v2.3.1 &amp; ADT_A04)</h3><h3>Strategy:</h3><ol><li>Make use of existing connectors present in the Anypoint exchange.</li></ol><p><strong>HL7 EDI Connector</strong> — To facilitate integration with healthcare systems by providing the tools needed to easily create, read, and transform HL7 version v2.x messages within Mule.</p><p><strong>Salesforce Connector</strong> — To insert data into Salesforce.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/716/1*XDODFy9T1sHyrdLjxpLDPA.png" /></figure><p>2. Making these APIs reusable for future implementation.</p><h3>Establishing a connection with HL7 EDI Connector:</h3><ol><li>In the <strong>Mule Palette</strong> view, click <strong>(X) Search in Exchange</strong>.</li><li>In the <strong>Add Dependencies to Project</strong> window, type HL7 in the search field.</li><li>Click HL7 EDI in <strong>Available modules</strong>.</li><li>Click <strong>Add </strong>and then<strong> Finish</strong>.</li><li>In the <strong>Mule Palette</strong> view, select <strong>HL7</strong> and then select the desired operation (read operation is used in this use case).</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/498/1*AHpzMhot_jL5fmosM7EMGA.png" /></figure><p>6. Drag the operation onto the Studio canvas to the right of the input source.</p><p>7. Select the operation in the Studio canvas.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/829/1*8exzLONCvJkxR6trqol2jw.png" /></figure><p>8. In the configuration screen for the operation, click the plus sign (<strong>+</strong>) next to the <strong>Connector configuration</strong> field to access the global element configuration fields.</p><p>9. Go to the Document tab in config to reference the schema.</p><p>a. Select <strong>Edit Inline </strong>in the schema definitions.</p><p>b. Click on <strong>(+) </strong>to add the Schema provided in the project folder structure.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/735/1*qFvI60LwHALxIBSlIOYY_Q.png" /></figure><p>10. Click on <strong>Test Connection</strong> to confirm that Mule can connect with the specified server.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/715/1*zz6j_Qvacmo17HL2DZQ0kw.png" /></figure><p>11. Click <strong>OK.</strong></p><h3>Establishing a connection with Salesforce:</h3><ol><li>Add Salesforce connector from exchange using <strong>(X) Search in Exchange</strong>.</li><li>Drag and drop the required operation in the mule canvas.</li><li>Add a <strong>connector configuration</strong> for the added operation by clicking on <strong>(+) </strong>in the operation properties.</li></ol><figure><img alt="" src="https://cdn-images-1.medium.com/max/763/1*BenhG31vzLouGf5dMHZVJA.png" /></figure><p>4. In the connector config, select the <strong>connection strategy.</strong></p><p>5. Add the required details as per your connection strategy.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/658/1*z4VOwz15J0DWwX-EexhJyg.png" /></figure><p>6. Click on <strong>Test Connection </strong>to confirm that Mule can connect with the specified server.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/673/1*y-MCpK80El-LV5PJSQJi_w.png" /></figure><p>7. Click <strong>OK.</strong></p><h3>How you can implement STEP BY STEP</h3><p><strong>Mule Flow</strong></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/808/1*pdDZE2iNeUG4xu5Y5vr1uw.png" /></figure><p>Step 1: Set up a Http Listener with allowing method as <strong>POST</strong>, listening to port:8081 and path /patient.</p><p>Step 2: Create a <strong>POST </strong>request in Postman/ARC having an ADT_A04 message as the body.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/767/1*6sUBg5fQWTPIeh5C-M2qDg.png" /></figure><p>Step 3: Drag and drop a HL7 EDI read connector and configure the connector as described above.</p><p>Step 4: Extract the PID information from the postman/arc body message for patient details.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/785/1*W2Y-XZE4jpWTVV_h4eJRVg.png" /></figure><p>Step 5: Extract the PV1 and PV2 information from the postman/arc body message for patient visit details.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/775/1*ZidAAiBXYhgtVNlsxwjaxQ.png" /></figure><p>Step 6: Insert the patient details into the patient object created in salesforce using salesforce connector.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/813/1*ANSvgGtAgs6jmjMVROXmng.png" /></figure><p>Step 7: Extract the inserted record id,name from salesforce so that look up can be implemented on patient visit object.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/776/1*cUDMnJrU2RS8jjfvvG5Mxg.png" /></figure><p>Step 8: Insert the patient visit data into the patient visit details object created in the salesforce.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/786/1*HExozB9734oN71TixEFb4Q.png" /></figure><p>Step 9: Create a Digital experience using the salesforce experience cloud to show the data in real-time.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/806/1*k3oYgOu9yJtF7iZuiCLruA.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7421fd6d535d" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>