Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Primary mentor

~janflowersJan Flowers / ~jsibley Jim Sibley

Backup mentor

Bill Lober

Assigned to

~arahulkmit Rahul Akula

Background

OpenMRS allows you to store and access patient-level medical data in a flexible and configurable way. But a true, large-scale electronic medical record requires multiple software applications, all interoperating together. A large hospital might use OpenMRS for the clinical patient record, and a separate Laboratory Information System to store detailed information about specimens and samples. Or a national-scale medical record might have OpenMRS running as a centralized database-of-record, with multiple mobile applications connecting to it.

...

Objectives

  1. Fully parse and handle all types of basic query parameters (name, gender, address, wildcards, etc.first and last name).
  2. Use dynamic/configurable values instead of hard-coded ones for the required message segments.
  3. Handle the case of multiple patient matches.
  4. Consider using OpenMRS's current HL/7 receiver code/module for receiving the query messages instead of the current method (HTTP POST).

...

Extra Credit/Wish List

  1. Handle additional types of queries other than just first and last name (address, gender, wildcards).
  2. Handle PDQ continuation queries ("give me results 11-20", etc.).
  3. Add ability to register a patient.
  4. Add the ability to restrict the ability to query to specific institutions only (via configuration options page).

Project Plan

...

Milestones

...

  • Mid-Term milestones
    1. Remove all hard-coded pieces and use standard HL/7 parsing (HAPI).
    2. Get the module to a point where it can successfully handle a simple query using first and last name and return the appropriate results over HTTP(S).
  • Final milestones
    1. Add extra credit/wish list features (see above).
    2. Investigate the possibility of using sockethl7listener module (or similar), or other transport options instead of (or in addition to) HTTP(S).

...

Timeline

...

April 25 – May 23

...

  • Set up development environment
  • Go through the existing implementation of PIX/PDQ

...

May 24 – June 13

...

  • Fully parse the  message using HAPI           

...

June 13 -- July 1

...

  • Handle basic query parameters (first and last name).

...

July 1 – July 18

...

  • Get the module to a point where it can successfully handle a simple query using first and last name and return the appropriate results over HTTP(S).

...

July 18 – July 25

...

  •  Implement extra credit/wish list features

...

July 25 – August 1

...

  • Documentation of the project

...

August 1 – August 22

...

  • Make further improvements if required

Resources