This repository contains the complete work for the Healthcare Interoperability Project, aimed at achieving seamless data exchange between healthcare systems. This project demonstrates interoperability principles, focusing on HL7 standards, CDA document transformations, XSLT workflows, and real-time API interactions.
- Objective: Enhance interoperability between healthcare systems (System A: OpenMRS, System B: Surescripts) by leveraging HL7 standards, CDA templates, XSLT transformations, and REST APIs.
- Use Case: A clinician diagnoses a patient and generates an electronic prescription, which is transmitted to a pharmacy network for dispensing.
- Standards: HL7 CDA, FHIR, NCPDP SCRIPT
- Terminologies: ICD-10-CM, SNOMED-CT, RxNorm, LOINC
- Tools:
- Oxygen XML Editor: Used to create and validate CDA documents and XSLT transformations.
- Postman: Used for API interactions to send and retrieve data between systems.
- Languages: XML, XSLT, JSON
- File:
part-1-use-case-selection-clinician-to-pharmacy.pdf - Summary: Defined the clinician-to-pharmacy use case, identified clinical concepts (e.g., diagnosis, medication), and mapped them to terminologies like ICD-10-CM, SNOMED-CT, and RxNorm.
- File:
part-2-problem-analysis-modeling-electronic-prescription.pdf - Summary: Developed UML and BPMN models to represent semantic and syntactic interoperability between clinicians, EHRs, and pharmacies. Focused on the e-prescription workflow.
- Folder:
part-3-cda-entry-mockups - Files:
annotated-complete-cda.xmlcda-viewer-screenshot1.pngcda-viewer-screenshot2.png
- Summary: Created a customized CDA document including sections like patient demographics, encounters, medications, and diagnoses. Validated the CDA document using Oxygen XML Editor and HL7 Viewer.
- Folder:
part-4-interoperability-pipeline - Files:
encounter-diagnosis-histories.xslfinal-customized-cda.xmlinteroperability-pipeline-report.pdfmedication-order-system-a.xslmedication-order-system-b.xslmedications-system-a.xslmedications-system-b.xslpatient-details-system-a.xslpatient-details-system-b.xslvital-signs-physical-exam.xsl
- Summary: Implemented XSLT transformations to convert CDA data into formats compatible with System A (JSON) and System B (XML). Data was processed and validated successfully.
- Folder:
part-5-terminology-demo - Files:
encounter-system-a-final.xslmed-order-system-a-telmisartan.xslmed-order-system-a-atenolol.xslpatient-details-system-a-final.xslsystemb-telmisartan-final.xslsystemb-atenolol.xslncpdp-new-rx-example.xmlps3-validated.xml
- Summary: Demonstrated real-time interoperability:
- System A: Posted JSON data to OpenMRS via REST API and validated updates in the system.
- System B: Transformed retrieved data into XML for Surescripts, validated NCPDP standards, and ensured successful message exchange.
-
View CDA Documents:
- Open
annotated-complete-cda.xmlorfinal-customized-cda.xmlusing Oxygen XML Editor or any HL7 CDA Viewer.
- Open
-
Test XSLT Transformations:
- Run XSLT files located in
part-4-interoperability-pipelineandpart-5-terminology-demousing Oxygen XML Editor or an XSLT processor (e.g., Saxon).
- Run XSLT files located in
-
API Interactions:
- Use Postman to POST JSON payloads to System A (OpenMRS) and verify updates.
- Validate System B XML transformations against Surescripts’ NCPDP SCRIPT standards.
- Keerthika Sunchu
- Eswar Kamisetti
- Ramya Keerthi Majji
- April Taylor
- Vaibhav Thakur
For questions or suggestions, contact:
Keerthika Sunchu - ksunchu@iu.edu
Ramya Keerthi Majji- [rmajji@iu.edu]