Metadata-Version: 2.1
Name: ctakesclient
Version: 1.0.1
Summary: cTAKES client support for accessing cTAKES REST services
Author-email: "Andy McMurry, PhD" <andrew.mcmurry@childrens.harvard.edu>, Michael Terry <michael.terry@childrens.harvard.edu>, Tim Miller <timothy.miller@childrens.harvard.edu>
License: Apache License 2.0
Project-URL: Homepage, https://github.com/Machine-Learning-for-Medical-Language/ctakes-client-py
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE

Purpose: Extract Medical Concepts from Physician Notes
=======================================================
This package simplifies communication with CTAKES NLP servers which produce matches with UMLS Concepts.

- Clinical Text and Knowledge Extraction System (http://ctakes.apache.org)  
- UMLS Unified Medical Language System / National Library of Medicine (https://nlm.nih.gov/research/umls)


Quickstart
==============================
Clinical text fragment or entire physician note.

::

   physician_note = 'Chief Complaint: Patient c/o cough, denies fever, recent COVID test negative. Denies smoking.'
   output = ctakesclient.post(physician_note)

Output
==========================================
This client parses responses into lists of MatchText and UmlsConcept.

::

    CtakesJSON(output)

    list_match() -> List[MatchText]
    
    list_concept() -> List[UmlsConcept]

    list_sign_symptom() -> List[MatchText]

    list_disease_disorder() -> List[MatchText]

    list_medication() -> List[MatchText]

    list_procedure() -> List[MatchText]

    list_anatomical_site() -> List[MatchText]


MatchText: Physician Notes
===================================
MatchText(s) are the character positions in the physician note where a UmlsConcept was found.

.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/MatchText.png
  :width: 400
  :alt: MatchText::= begin end text polarity UmlsConcept+

MatchText: Polarity
===================================
.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/polarity.png

UMLS Concept
================================================
.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/UmlsConcept.png
.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/cui.png
.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/tui.png

UMLS Vocabulary
================================================
.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/codingScheme.png
.. image:: https://raw.githubusercontent.com/Machine-Learning-for-Medical-Language/ctakes-client-py/de43929/docs/diagram/code.png

UMLS Semantic Types and Groups
=========================================================
You can browse the `list of UMLS Semantic Types`_ at the
National Library of Medicine.

.. _list of UMLS Semantic Types: https://uts.nlm.nih.gov/uts/umls/semantic-network/root
