Skip to content

Tools to create a clinical knowledge graph from biomedical literature. Includes wrappers for NCBI Eutils, cTakes annotator and Neo4J

License

Notifications You must be signed in to change notification settings

dermatologist/ckblib

Repository files navigation

Clinical Knowledgebase Library - ckblib

         _________  ____  __.__________           __
         \_   ___ \|    |/ _|\______   \          \ \
  ______ /    \  \/|      <   |    |  _/  ______   \ \
 /_____/ \     \___|    |  \  |    |   \ /_____/   / /
          \______  /____|__ \ |______  /          /_/
                 \/        \/        \/

ckblib

ckblib

About

Providing clinical decision support requires some formal way of representing clinical knowledge and complex algorithms for sophisticated inference. ckblib is a java library to facilitate knowledge extraction, annotation and representation as a Neo4J graph. These knowledge graphs can be visualized in a semantically enriched way that we call ClinGraph (see above). ckblib consists of four modules:

  • The 'library' module wraps the NCBI's E-Utils API for published article abstracts.
  • The 'qtakes' module provides a programmable interface to quick-ctakes or the quarkus based apache ctakes, a fast clinical text annotation engine.
  • The 'umls' module is a wrapper for UMLS REST API managing the TGT and ST tokens using the reactive WebClient. See RestTicketServiceTest.java for example use. A list of available UMLS REST APIs are here.. My Javascript library for similar purpose (umlsjs) is here.
  • Finally, the graph module provides the Neo4J models, repositories and services for abstracting as a knowledge graph.

How to use

<dependency>
  <groupId>com.canehealth.ckblib</groupId>
  <artifactId>library</artifactId>
  <version>${latest-version-from-releases-tab}</version>
</dependency>

<dependency>
  <groupId>com.canehealth.ckblib</groupId>
  <artifactId>qtakes</artifactId>
  <version>${latest-version-from-releases-tab}</version>
</dependency>

<dependency>
  <groupId>com.canehealth.ckblib</groupId>
  <artifactId>graph</artifactId>
  <version>${latest-version-from-releases-tab}</version>
</dependency>

<dependency>
  <groupId>com.canehealth.ckblib</groupId>
  <artifactId>umls</artifactId>
  <version>${latest-version-from-releases-tab}</version>
</dependency>

Author

Contributors

  • PR welcome.
  • Please see CONTRIBUTING.md for details.