Git Product home page Git Product logo

poc-hpo-on-fhir's Introduction

Proof of Concept: HPO on FHIR

This web application demonstrates the use of the fhir2hpo Java library for converting FHIR-encoded laboratory results with LOINC information to terms in the Human Phenotype Ontology. Users can search for patients in an unauthenticated FHIR sandbox and display the phenotypes derived from converting Observation LOINCs.

This application can connect to STU2 and STU3 servers, and uses the HAPI Converter library to format responses as STU3 for use in the fhir2hpo library.

Setup

Compiling this library requires installation of Maven and Java 8.

In addition, you need to locally install two libraries that are not yet available on Maven Central. The monarch-initiative phenol library defines the domain around the HPO. From the command line:

git clone https://github.com/monarch-initiative/phenol.git
cd phenol
git checkout v.1.2.6
mvn install

This checks out and builds Release 1.2.6 of phenol.

Next install the fhir2hpo library.

git clone https://github.com/OCTRI/fhir2hpo
cd fhir2hpo
git checkout v1.0.0
mvn install

This checks out and builds Release 1.0.0 of fhir2hpo. Both libraries are now installed in your local Maven repository.

Finally, clone this library and run mvn install to build the jar.

Running the Application

You can run this application in a few different ways. Run as a jar:

java -jar target/hpoOnFhir.jar

Or as a spring-boot app:

mvn spring-boot:run

You can also set up the Eclipse Spring Tool Suite with all the projects and run using the Boot dashboard. This is best for development as it will track changes in the underlying library so you don't have to rerun maven each time.

Changing Sandboxes

The application is configured by default to work with the R3 SmartHealth IT sandbox. It is designed with SMART principles in mind and should work with any other open FHIR servers. To modify the sandbox, open the file application.properties and look for the following variables:

fhir-server-configuration.name=SmartHealth IT
fhir-server-configuration.url=https://r3.smarthealthit.org
fhir-server-configuration.version=STU3

Change these properties and restart the application to connect to a different sandbox. The properties file has connection details to the Open Epic STU2 server commented out as another example.

Other servers we have tested with are:

poc-hpo-on-fhir's People

Contributors

aeyates avatar wsams avatar octrici avatar dfear2112 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.