Sorry for the delayed response, but this is really great. A few follow-up points: 1) There was a figure on the website that showed the standard pipeline flow, but not the detailed inputs and outputs.
2) I believe that UIMA xml descriptors are intended to contain this information, but I'm not sure how mandatory it is, and how well that actually is done in current implementations. 3) UIMAFit has annotations that can specify much of this information. See, for example the Dependency Parser AE: /ctakes-dependency-parser/src/main/java/org/apache/ctakes/dependency/parser/ae/ClearNLPDependencyParserAE.java which has TypeCapability annotations specifying its inputs. I believe outputs can be specified as well. Thanks for sharing this document -- wonder if there is a good place to put it if others might find it useful? Tim On 05/06/2014 05:35 PM, N M wrote: Hi, Documentation which I was hoping to find as a user (hopefully eventually developer) of cTAKES, was a detailed description of each component (or analysis engine) and their interplay. As I've been looking at the cTAKES source code, I've been creating a chart for each pipeline that I've analyzed, hoping to essentially create a more useful component library than the one available at https://cwiki.apache.org/confluence/display/CTAKES/cTAKES+3.0+Component+Use+Guide (a "developer version" of this, if you will). I've attached a pdf example of one of my personal note charts I've been working on, this one is specific to the UMLS plaintext aggregate AE. My idea is to have some sort of diagram for each pipeline that I can refer to, so that when I need to customize things in the future, I have a pretty good idea of where to go. I think it is important to chart inputs and output types especially. Has anyone written a UIMA library to automatically document these kinds of things for UIMA components? running something akin to one would save a lot of time and effort, and would be much more maintainable than manually created charts. (of course, the inputs and outputs would have to be noted in the xml files, which doesn't seem to be the case for many of the AE's). Looking at the previous discussions (notably the one regarding lvg entries), it seems to me that having a chart or other type of documentation which lists what types come out of and go into each component would go a long ways. Does anyone know if anything similar exists? Thanks. On Fri, May 2, 2014 at 2:17 PM, ravi garg <[email protected]<mailto:[email protected]>> wrote: Hi Xiayuan, I hope this [1] will be of help to you. [1] https://github.com/ravigarg27/phenotips/blob/master/components/ctakes-service/src/main/java/edu/toronto/cs/phenotips/ctakes/AbstractScriptService.java Regards, Ravi On Fri, May 2, 2014 at 10:07 PM, Miller, Timothy <[email protected]<mailto:[email protected]>> wrote: James posted the links to the API docs earlier, but I suspect you may find examples more helpful. If you look at the classes under /ctakes-clinical-pipeline/org.apache.ctakes.clinicalpipeline.runtime, you will see how to instantiate the default pipelines from within UimaFit using the xml descriptors. You can override BagOfAnnotationsGenerator with your own extractInformation() method and do whatever you like for each annotation, or you can just copy the layout to do something you like. Alternatively, if you want to build your own pipelines programatically, I would look at some of the pipelines in the ctakes-temporal project: /ctakes-temporal/src/main/java/org/apache/ctakes/temporal/pipelines/TemporalExtractionPipeline_ImplBase.java if you aren't up to date on trunk (i.e. you are working off of a release), then look at the most recent version in svn: http://svn.apache.org/viewvc/ctakes/trunk/ctakes-temporal/src/main/java/org/apache/ctakes/temporal/pipelines/TemporalExtractionPipeline_ImplBase.java?view=markup Finally, there is work-in-progress to define factory methods for getting commonly used pipelines, not ready for primetime but may give you some more examples of how pipelines can be put together: http://svn.apache.org/viewvc/ctakes/trunk/ctakes-clinical-pipeline/src/main/java/org/apache/ctakes/clinicalpipeline/ClinicalPipelineFactory.java?view=markup Hope this helps. Tim On 05/02/2014 12:16 PM, Xiayuan Huang wrote: > Actually I am looking for some API documentation like how to use and > code with ctakes pipelines. Can anyone share the experience how do you > write codes with some pipelines, (maybe in JAVA or else). > > Thanks, > Xiayuan > > > On 2014-05-02 10:55, Miller, Timothy wrote: >> Yes Pei, thanks, though now that I see it I'm not as sure that it >> will be useful to Maha and Xiayuan. >> Tim >> >> On 05/02/2014 11:17 AM, Pei Chen wrote: >> >>> Tim, >>> Do you mean: >>> >> https://svn.apache.org/repos/asf/ctakes/tags/ctakes-3.1.1/ctakes-type-system/src/main/resources/org/apache/ctakes/typesystem/types/TypeSystem.xml >>> [3] >>> >>> ? >>> >>> On Fri, May 2, 2014 at 11:14 AM, Miller, Timothy >>> <[email protected]<mailto:[email protected]>> >>> wrote: >>> >>>> Another resource that may be more useful for many use cases is the >>>> type >>>> system documentation. I seem to have lost that link -- can anyone >>>> please >>>> chime in with it? >>>> >>>> On 05/02/2014 11:05 AM, Masanz, James J. wrote: >>>>> Try >>>>> >>>>> http://ctakes.apache.org/apidocs/3.1.1/ [1] >>>>> >>>>> -- James >>>>> >>>>> -----Original Message----- >>>>> From: Xiayuan Huang >>>>> [mailto:[email protected]<mailto:[email protected]>] >>>>> Sent: Thursday, May 01, 2014 7:41 PM >>>>> To: [email protected]<mailto:[email protected]> >>>>> Cc: Maha Zohbi >>>>> Subject: Re: cTAKES API documentation >>>>> >>>>> Yes, same question. I have been looking for API or >>>> documentation for >>>>> long. Could some one help guide to it? >>>>> >>>>> Thanks, >>>>> Xiayuan >>>>> >>>>> On 2014-05-01 18:53, Maha Zohbi wrote: >>>>>> Hi, >>>>>> >>>>>> We are looking to developing an application that processes >>>>>> unstructured medical data and feeds it into a decision support >>>> system. >>>>>> To do that we will use cTAKES. We downloaded the binary and >>>> followed >>>>>> the user guide. However, I couldn't find any API >>>> documentation. >>>>>> Can anyone point me to API documentation for cTAKES or a >>>> samples >>>>>> guide to use the API? >>>>>> >>>>>> Thanks >>>> -- >>>> Tim Miller >>>> Instructor >>>> Boston Children's Hospital and Harvard Medical School >>>> [email protected]<mailto:[email protected]> >>>> 617-919-1223<tel:617-919-1223> [2] >> -- >> Tim Miller >> Instructor >> Boston Children's Hospital and Harvard Medical School >> [email protected]<mailto:[email protected]> >> 617-919-1223<tel:617-919-1223> >> >> >> Links: >> ------ >> [1] http://ctakes.apache.org/apidocs/3.1.1/ >> [2] tel:617-919-1223<tel:617-919-1223> >> [3] >> https://svn.apache.org/repos/asf/ctakes/tags/ctakes-3.1.1/ctakes-type-system/src/main/resources/org/apache/ctakes/typesystem/types/TypeSystem.xml -- Tim Miller Instructor Boston Children's Hospital and Harvard Medical School [email protected]<mailto:[email protected]> 617-919-1223<tel:617-919-1223> -- Ravi Garg 4th Year MSc (hons) Biological Sciences B.E (hons) Computer Science and Engineering BITS Pilani KK Birla Goa Campus -- Tim Miller Instructor Boston Children's Hospital and Harvard Medical School [email protected]<mailto:[email protected]> 617-919-1223
