ctakes-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gandhi Rajan Natarajan <Gandhi.Natara...@arisglobal.com>
Subject RE: cTAKES as REST service [EXTERNAL]
Date Mon, 04 Dec 2017 16:34:52 GMT
Hi Sean, Tim, Alex, Matthew, James and All,

I have placed the first cut version of cTAKES REST module in the following path - https://github.com/GoTeamEpsilon/ctakes-rest-service/tree/master/ctakes-web-rest/

Things pending in the module:
1) Index Page to test the rest module using AJAX call
2) Revamping the final output XML

Request you all to have a look at this module and provide your feedback. I would also require
expert advice to clean up the resources folder - https://github.com/GoTeamEpsilon/ctakes-rest-service/tree/master/ctakes-web-rest/src/main/resources/org

This module can be deployed as a web-app in Tomcat using the generated WAR file . It can be
tested using any REST client (like Chrome's Postman app) by accessing the following URL -
http://<hostt_name>:<port>/ctakes-web-rest/service/analyze and providing the analysis
text as request body.

Sample input : "Patient has cancer and nausea. Earlier he has been deducted for red eye."
Sample output:
 {
    "DrugChangeStatusAnnotation": [],
    "StrengthAnnotation": [],
    "FractionStrengthAnnotation": [],
    "FrequencyUnitAnnotation": [],
    "CompanyAnnotation": [],
    "DiseaseDisorderMention": [
        "CANCER"
    ],
    "SignSymptomMention": [
        "RED EYE",
        "NAUSEA"
    ],
    "RouteAnnotation": [],
    "DateAnnotation": [],
    "MeasurementAnnotation": [],
    "ProcedureMention": [],
    "TimeMention": [],
    "StrengthUnitAnnotation": []
}

Regards,
Gandhi

-----Original Message-----
From: Gandhi Rajan Natarajan [mailto:Gandhi.Natarajan@arisglobal.com]
Sent: Sunday, November 19, 2017 1:45 PM
To: dev@ctakes.apache.org
Subject: RE: cTAKES as REST service [EXTERNAL]

Hi All,

Have completed cTAKES Spring upgrade changes and checked in the same to SVN. Please revert
in case of any issues.

@Alex, Thanks a lot for taking time out and providing your review comments on Spring upgrade.
Really appreciate it.

Now it will ease our effort in creating ctakes rest module.

Regards,
Gandhi


-----Original Message-----
From: Gandhi Rajan Natarajan [mailto:Gandhi.Natarajan@arisglobal.com]
Sent: Sunday, November 19, 2017 4:20 AM
To: dev@ctakes.apache.org
Subject: RE: cTAKES as REST service [EXTERNAL]

Hi,

I have attached the patch file for cTAKES Spring upgrade in https://issues.apache.org/jira/browse/CTAKES-472
 Unfortunately I'm not able to assign this issue to me as I don’t have access. Could someone
help me out with the access?

For time being I have commented out the DataAnnotatorTest failure in the patch.

Could someone test the patch and let us know so that I can commit the changes in SVN?

This change will lay the foundation for REST module implementation in cTAKES.

Regards,
Gandhi


-----Original Message-----
From: Matthew Vita [mailto:matthewvita48@gmail.com]
Sent: Wednesday, November 01, 2017 8:24 AM
To: dev@ctakes.apache.org
Subject: Re: cTAKES as REST service [EXTERNAL]

Alex,

Gandhi covered everything we are working on. Please do mail me if you'd like to join in and
I can give you some open tasks.

Thanks,

Matthew Vita
www.matthewvita.com

On Mon, Oct 30, 2017 at 8:46 PM, Gandhi Rajan Natarajan < Gandhi.Natarajan@arisglobal.com>
wrote:

> Hi Alex and Sean,
>
> Thanks for the acknowledgement.
>
> As mentioned earlier in the thread, I have sent the github link -
> https://github.com/gandhirajan/cTAKES/tree/master/SpringUpgrade/ctakes
> - SVN-src  that contains changes to be made to upgrade cTAKES to
> Spring4x.
> I have done it on my local sandbox and it works. But as I mentioned
> earlier, I was not able to test ytex module changes as I'm not aware
> of those modules. Matthew is already testing the spring upgrade
> changes and hopefully we will able be close it. If you could test the
> ytex modules, it will be of great help I guess.
>
> Regarding docker works on cTAKES, hats off to Matthew. We can assist
> him if he needs any help out there.
>
> Regarding REST API, we are planning to use Spring REST service as
> introducing Jersey container may be an overhead I feel. Also regarding
> your idea on new module, I too agree with you. But in the new module,
> we can improvise Chei Pen's work in this link -
> https://github.com/healthnlp/
> examples/tree/master/ctakes-temporal-demo and name it as 'ctakes-web'
> or 'ctakes-web-rest' so that the module can be used to build cTAKES as
> both traditional web app as well as expose it as an REST service. It's just a thought
from my side which we can discuss upon.
>
> Once the web-rest module is ready, I feel it will take cTAKES to a
> whole new level as you can even plug it with mobile applications that
> can send the clinical text for analysis and get JSON response that can
> be rendered on mobile app UI.
>
> Suggestions are welcome. Cheers.
>
> Regards,
> Gandhi
>
>
> -----Original Message-----
> From: Alexandru Zbarcea [mailto:zbarcea.a@gmail.com]
> Sent: Monday, October 30, 2017 6:07 PM
> To: Apache cTAKES Dev <dev@ctakes.apache.org>
> Subject: Re: cTAKES as REST service [EXTERNAL]
>
> Gandhi and Matthew, thank you for your hard work.
>
> I was working on upgrading libraries and fixing dependencies too. I
> would love to help with Spring dependency. For that reason, I have created issue:
> "upgrade Spring dependency from 3.1.2 to 4.x" (CTAKES-472 [1]).
>
> Another great idea is the REST service, for that reason I created
> CTAKES-473 [2]. It was also requested by Chei Pen in CTAKES-188 [3]. I
> would like to know if you settled already to any framework (e.g.
> Jersey vs
> CXF) and if you also manage the dictionaries and different profiles
> through the API.
>
> The last important idea I get is the Dockerfile, which sounds great
> for the community to just test and play with cTAKES without the need
> of building and exploring the source code. I was testing your work
> Matthew, and I think it is a great start.
>
> What is the community practice in code for features that require a
> longer time to be developed? Would it use a branch until it gets
> stable, or it is preferred to have it in trunk for a faster
> integration. The REST API feature, it will require a new module. Does
> the community prefers a name for it (i.e ctakes-rest-api) ?
>
> Alex
>
> [1] - https://issues.apache.org/jira/browse/CTAKES-472
> [2] - https://issues.apache.org/jira/browse/CTAKES-473
> [3] - https://issues.apache.org/jira/browse/CTAKES-188
>
>
> On Sun, Oct 29, 2017 at 11:36 PM, Gandhi Rajan Natarajan <
> Gandhi.Natarajan@arisglobal.com> wrote:
>
> > Matthew,
> >
> > Looking forward to hear from you. Please let me know if there are
> > any changes required to make the rest service more superior and
> > performance effective. Cheers.
> >
> > Regards,
> > Gandhi
> >
> >
> > -----Original Message-----
> > From: Matthew Vita [mailto:matthewvita48@gmail.com]
> > Sent: Sunday, October 29, 2017 9:30 PM
> > To: dev@ctakes.apache.org
> > Subject: Re: cTAKES as REST service [EXTERNAL]
> >
> > Sean,
> >
> > Ghandi and I have met and we both agreed that his solution is
> > superior to the one I was working on. Therefore, I will be helping
> > to see this project through to the end so we can get it into the codebase!
> >
> > Here are the remaining work items that I will be spending time on:
> >
> >    1. Get it running (I'm using Linux Mint)
> >    2. Test it out (including stress tests)
> >    3. Automate it to run in Docker (just need UMLS credentials)
> >    4. Make a call to
> >    https://github.com/GoTeamEpsilon/cTAKES-Concept-Mention-Parser to
> get a
> >    nice JSON payload that is easy to traverse (this can be an
> > optional switch,
> >    of course - I believe it may be best to rewrite this in Java
> > should this be
> >    included with the solution)
> >    5. Test the output in my web viewer:
> >    https://github.com/GoTeamEpsilon/cTAKES-Friendly-Web-UI
> >    6. Work on preparing the solution for the cTAKES core codebase. I will
> >    prepare it with a very rich README.
> >
> > I will provide my updates over the coming days.
> >
> > Thanks,
> >
> > Matthew Vita
> > www.matthewvita.com
> >
> > On Sun, Oct 29, 2017 at 7:47 AM, Finan, Sean <
> > Sean.Finan@childrens.harvard.edu> wrote:
> >
> > > Hi Gandhi,
> > >
> > > Thank you for the additional information.  Having a reliable rest
> > > service included with ctakes would be a boon for everybody
> > > interested in web access.  I look forward to checking out the info
> > > in github as soon as I am able.
> > >
> > > Thanks to you and Mathew both!
> > >
> > > Sean
> > >
> > >
> > > -----Original Message-----
> > > From: Gandhi Rajan Natarajan
> > > [mailto:Gandhi.Natarajan@arisglobal.com]
> > > Sent: Sunday, October 29, 2017 5:44 AM
> > > To: dev@ctakes.apache.org
> > > Subject: RE: cTAKES as REST service [EXTERNAL]
> > >
> > > Hi Sean,
> > >
> > > I feel it's better to upgrade cTAKES Spring version to 4x so that
> > > exposing it as rest service becomes seamless. Please find the
> > > github link that contains the proposed changes for Spring upgrade
> > > in cTAKES,
> > >
> > > https://urldefense.proofpoint.com/v2/url?u=https-3A__github.
> > > com_gandhirajan_cTAKES_tree_master_SpringUpgrade_ctakes-
> > > 2DSVN-2Dsrc&d=DwIFAg&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU
> > > &r
> > > =
> > > fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=cedfmyhdY7P3qZdiVB-
> > > gp0T0WinfllT61pLMqbP_Jyw&s=eMYiHpgQwJ5Zjc7-gW6qyAJ3AS3-H622ZVSJEJc
> > > gd
> > > 8s
> > > &e=
> > >
> > > I have not tested the changes in ytex modules as I'm not sure how
> > > to go about that.
> > >
> > > Matthew Vita will be reviewing the changes. He is also reviewing
> > > and testing my rest service changes. He will provide more info to
> > > us once we are done with our testing. So that we can discuss about
> > > productizing the same.
> > >
> > > Regards,
> > > Gandhi
> > >
> > >
> > > -----Original Message-----
> > > From: Finan, Sean [mailto:Sean.Finan@childrens.harvard.edu]
> > > Sent: Friday, October 27, 2017 12:53 AM
> > > To: dev@ctakes.apache.org
> > > Subject: RE: cTAKES as REST service [EXTERNAL]
> > >
> > > Hi Gandhi,
> > >
> > > That sounds really great!  Thank you for sharing the process!
> > >
> > > Sean
> > >
> > > -----Original Message-----
> > > From: Gandhi Rajan Natarajan
> > > [mailto:Gandhi.Natarajan@arisglobal.com]
> > > Sent: Thursday, October 26, 2017 3:02 PM
> > > To: dev@ctakes.apache.org
> > > Subject: RE: cTAKES as REST service [EXTERNAL]
> > >
> > > Hi Sean,
> > >
> > > I'm glad to inform that I was able to upgrade cTAKES to Spring 4
> > > in my sandbox. As you have mentioned, it is used by uima fit for
> > > firing some queries.
> > >
> > > To brief it, I did the following changes:
> > >
> > > 1) Changing SimpleJdbcTemplate to JdbcTemplate in uima modules
> > > 2) Changing Spring version in cTAKES root pom.xml
> > > 3) Adding Spring versions in ctakes type system, ctakes assertion,
> > > ctakes ytex and ctakes ytex web modules.
> > >
> > > Now I'm able to expose cTAKES as a rest service which takes the
> > > clinical text as Input and outputs the result.
> > >
> > >  Hope it helps someone.
> > >
> > > Regards,
> > > Gandhi
> > >
> > > -----Original Message-----
> > > From: Gandhi Rajan Natarajan
> > > [mailto:Gandhi.Natarajan@arisglobal.com]
> > > Sent: Wednesday, October 25, 2017 7:33 PM
> > > To: dev@ctakes.apache.org
> > > Subject: RE: cTAKES as REST service [EXTERNAL]
> > >
> > > Hi Sean,
> > >
> > > Thanks for the instant response. Will try to upgrade to Spring 4
> > > and keep you posted about the progress.
> > >
> > > Regards,
> > > Gandhi
> > >
> > >
> > > -----Original Message-----
> > > From: Finan, Sean [mailto:Sean.Finan@childrens.harvard.edu]
> > > Sent: Wednesday, October 25, 2017 7:28 PM
> > > To: dev@ctakes.apache.org
> > > Subject: RE: cTAKES as REST service [EXTERNAL]
> > >
> > > Hi Gandhi,
> > >
> > > You can always build ctakes in your sandbox with spring 4 and see
> > > if it works.  This may require some "maven magic"(overrides) on
> > > your part.  If it does seem to work please create a jira item to
> > > upgrade the
> > spring version.
> > > Then hopefully before the next release somebody will thoroughly
> > > test an update.
> > >
> > > Offhand I don't know if or why spring is needed for ctakes itself.
> > > At a quick search it looks like uimafit requires it.  Does anybody
> > > out there know what spring capabilities are used, directly or
> > > indirectly, by ctakes modules?
> > >
> > > Thanks,
> > > Sean
> > >
> > > -----Original Message-----
> > > From: Gandhi Rajan Natarajan
> > > [mailto:Gandhi.Natarajan@arisglobal.com]
> > > Sent: Wednesday, October 25, 2017 9:20 AM
> > > To: dev@ctakes.apache.org
> > > Subject: cTAKES as REST service [EXTERNAL]
> > >
> > > Hi All,
> > >
> > > We have extended the cTAKES web application available under
> > > https://urldefense.proofpoint.com/v2/url?u=https-3A__github.
> > > com_healthnlp_examples_tree_master_ctakes-2Dtemporal-2Ddemo&d=DwIF
> > > Ag &c = qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=
> > > fs67GvlGZstTpyIisCYNYmQCP6r0bcpKGd4f7d4gTao&m=e5GMRO_
> > > 5OwQhQrkfpV5fwBp7uG07tZVd1u_xJRo9wDs&s=meOj7MzEliqIQEhU_
> > > FeQwEnsUrWFSzgk5ihSEzoGRCI&e= and added our custom annotator. We
> > > have tested the same and it works fine with CVD. But we are facing
> > > problems while trying to expose this as rest service.
> > >
> > > cTAKES uses Spring 3.1.2 version internally which don't have out
> > > of the box support for rest controller. Can we go ahead and update
> > > the spring version to 4x in cTAKES? Will it have any impact in the
> > > cTAKES
> > behavior?
> > > Also is there a better way to expose cTAKES as rest service apart
> > > from spring?
> > >
> > > Please advise.
> > >
> > > Regards,
> > > Gandhi
> > >
> > > This email and any files transmitted with it are confidential and
> > > intended solely for the use of the individual or entity to whom
> > > they are
> > addressed.
> > > If you are not the named addressee you should not disseminate,
> > > distribute or copy this e-mail. Please notify the sender or system
> > > manager by email immediately if you have received this e-mail by
> > > mistake and delete this e-mail from your system. If you are not
> > > the intended recipient you are notified that disclosing, copying,
> > > distributing or taking any action in reliance on the contents of
> > > this information is strictly prohibited and against the law.
> > > This email and any files transmitted with it are confidential and
> > > intended solely for the use of the individual or entity to whom
> > > they are
> > addressed.
> > > If you are not the named addressee you should not disseminate,
> > > distribute or copy this e-mail. Please notify the sender or system
> > > manager by email immediately if you have received this e-mail by
> > > mistake and delete this e-mail from your system. If you are not
> > > the intended recipient you are notified that disclosing, copying,
> > > distributing or taking any action in reliance on the contents of
> > > this information is strictly prohibited and against the law.
> > > This email and any files transmitted with it are confidential and
> > > intended solely for the use of the individual or entity to whom
> > > they are
> > addressed.
> > > If you are not the named addressee you should not disseminate,
> > > distribute or copy this e-mail. Please notify the sender or system
> > > manager by email immediately if you have received this e-mail by
> > > mistake and delete this e-mail from your system. If you are not
> > > the intended recipient you are notified that disclosing, copying,
> > > distributing or taking any action in reliance on the contents of
> > > this information is strictly prohibited and against the law.
> > > This email and any files transmitted with it are confidential and
> > > intended solely for the use of the individual or entity to whom
> > > they are
> > addressed.
> > > If you are not the named addressee you should not disseminate,
> > > distribute or copy this e-mail. Please notify the sender or system
> > > manager by email immediately if you have received this e-mail by
> > > mistake and delete this e-mail from your system. If you are not
> > > the intended recipient you are notified that disclosing, copying,
> > > distributing or taking any action in reliance on the contents of
> > > this information is strictly prohibited and against the law.
> > >
> > This email and any files transmitted with it are confidential and
> > intended solely for the use of the individual or entity to whom they
> > are
> addressed.
> > If you are not the named addressee you should not disseminate,
> > distribute or copy this e-mail. Please notify the sender or system
> > manager by email immediately if you have received this e-mail by
> > mistake and delete this e-mail from your system. If you are not the
> > intended recipient you are notified that disclosing, copying,
> > distributing or taking any action in reliance on the contents of
> > this information is strictly prohibited and against the law.
> >
> This email and any files transmitted with it are confidential and
> intended solely for the use of the individual or entity to whom they are addressed.
> If you are not the named addressee you should not disseminate,
> distribute or copy this e-mail. Please notify the sender or system
> manager by email immediately if you have received this e-mail by
> mistake and delete this e-mail from your system. If you are not the
> intended recipient you are notified that disclosing, copying,
> distributing or taking any action in reliance on the contents of this
> information is strictly prohibited and against the law.
>
This email and any files transmitted with it are confidential and intended solely for the
use of the individual or entity to whom they are addressed. If you are not the named addressee
you should not disseminate, distribute or copy this e-mail. Please notify the sender or system
manager by email immediately if you have received this e-mail by mistake and delete this e-mail
from your system. If you are not the intended recipient you are notified that disclosing,
copying, distributing or taking any action in reliance on the contents of this information
is strictly prohibited and against the law.
This email and any files transmitted with it are confidential and intended solely for the
use of the individual or entity to whom they are addressed. If you are not the named addressee
you should not disseminate, distribute or copy this e-mail. Please notify the sender or system
manager by email immediately if you have received this e-mail by mistake and delete this e-mail
from your system. If you are not the intended recipient you are notified that disclosing,
copying, distributing or taking any action in reliance on the contents of this information
is strictly prohibited and against the law.
This email and any files transmitted with it are confidential and intended solely for the
use of the individual or entity to whom they are addressed. If you are not the named addressee
you should not disseminate, distribute or copy this e-mail. Please notify the sender or system
manager by email immediately if you have received this e-mail by mistake and delete this e-mail
from your system. If you are not the intended recipient you are notified that disclosing,
copying, distributing or taking any action in reliance on the contents of this information
is strictly prohibited and against the law.
Mime
View raw message