[ https://issues.apache.org/jira/browse/CTAKES-314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14180655#comment-14180655 ]
Pei Chen commented on CTAKES-314: --------------------------------- package sparkapps import java.text.BreakIterator import opennlp.tools.postag.POSTagger import opennlp.tools.sentdetect.{SentenceDetectorME, SentenceModel, SentenceDetector} import org.apache.ctakes.assertion.medfacts.cleartk.PolarityCleartkAnalysisEngine import org.apache.ctakes.clinicalpipeline.ClinicalPipelineFactory.{RemoveEnclosedLookupWindows, CopyNPChunksToLookupWindowAnnotations} import org.apache.ctakes.constituency.parser.ae.ConstituencyParser import org.apache.ctakes.contexttokenizer.ae.ContextDependentTokenizerAnnotator import org.apache.ctakes.core.ae.{TokenizerAnnotatorPTB, SimpleSegmentAnnotator} import org.apache.ctakes.dependency.parser.ae.{ClearNLPSemanticRoleLabelerAE, ClearNLPDependencyParserAE} import org.apache.ctakes.dependency.parser.ae.ClearNLPDependencyParserAE._ import org.apache.ctakes.dictionary.lookup.ae.UmlsDictionaryLookupAnnotator import org.apache.ctakes.typesystem.`type`.syntax.BaseToken import org.apache.ctakes.typesystem.`type`.textsem.IdentifiedAnnotation import org.apache.uima.analysis_engine.AnalysisEngineDescription import org.apache.uima.jcas.JCas import org.cleartk.chunker.Chunker import org.uimafit.factory.{AnalysisEngineFactory, AggregateBuilder, JCasFactory} import org.uimafit.pipeline.SimplePipeline import org.uimafit.util.JCasUtil import scala.collection.JavaConverters._ /** * Created by jay on 10/10/14. */ object CTakesExample { def getDefaultPipeline():AnalysisEngineDescription = { /** * not sure if useful. val modelIn = getClass().getResourceAsStream("en-sent.bin"); val sentenceModel = new SentenceModel(modelIn); modelIn.close(); val sentenceDetector = new SentenceDetectorME(sentenceModel); */ var builder = new AggregateBuilder builder.add(SimpleSegmentAnnotator.createAnnotatorDescription()); builder.add(org.apache.ctakes.core.ae.SentenceDetector.createAnnotatorDescription()); builder.add(TokenizerAnnotatorPTB.createAnnotatorDescription()); builder.add(ContextDependentTokenizerAnnotator.createAnnotatorDescription()); builder.add(org.apache.ctakes.postagger.POSTagger.createAnnotatorDescription()); builder.add(org.apache.ctakes.chunker.ae.Chunker.createAnnotatorDescription()); builder.add(AnalysisEngineFactory.createPrimitiveDescription(classOf[CopyNPChunksToLookupWindowAnnotations])); builder.add(AnalysisEngineFactory.createPrimitiveDescription(classOf[RemoveEnclosedLookupWindows])); //builder.add(UmlsDictionaryLookupAnnotator.createAnnotatorDescription()); builder.add(PolarityCleartkAnalysisEngine.createAnnotatorDescription()); return builder.createAggregateDescription(); } def main(args: Array[String]) { val aed:AnalysisEngineDescription = getDefaultPipeline(); val jcas:JCas = JCasFactory.createJCas(); jcas.setDocumentText("The patient is suffering from extreme pain due to shark bite. Recommend continuing use of aspirin, oxycodone, and coumadin. atient denies smoking and chest pain. Patient has no cancer. There is no sign of multiple sclerosis. Continue exercise for obesity and hypertension. "); SimplePipeline.runPipeline(jcas, aed); //Print out the tokens and Parts of Speech val iter = JCasUtil.select(jcas,classOf[BaseToken]).iterator() //val iter = JCasUtil.select(jcas, classOf[BaseToken]).iterator() //val iter = JCasUtil.selectAll(jcas).iterator(); while(iter.hasNext){ val entity = iter.next(); //System.out.println(entity.toString()) //System.out.println(entity.getCAS) System.out.println(entity.getCoveredText() + " - " + entity.getPartOfSpeech()); } } } //============ OUTPUT: The - DT patient - NN is - VBZ suffering - VBG from - IN extreme - JJ pain - NN due - IN to - IN shark - NN bite - NN . - . Recommend - VBP continuing - VBG use - NN of - IN aspirin - NN , - , oxycodone - NN , - , and - CC coumadin - NN . - . atient - NN denies - VBZ smoking - VBG and - CC chest - NN pain - NN . - . Patient - NN has - VBZ no - DT cancer - NN . - . There - EX is - VBZ no - DT sign - NN of - IN multiple - JJ sclerosis - NN . - . Continue - VB exercise - NN for - IN obesity - NN and - CC hypertension - NN . - . > BigTop/Hadoop cTAKES integration > -------------------------------- > > Key: CTAKES-314 > URL: https://issues.apache.org/jira/browse/CTAKES-314 > Project: cTAKES > Issue Type: New Feature > Affects Versions: 3.2.0 > Reporter: Pei Chen > Fix For: 3.2.3 > > Attachments: Napkin_cTAKES_Hadoop.JPG, fix.diff > > > Placeholder to- > Create a simple application that can take in different datasources (public > forums, twitter, etc.), scale up cTAKES using BigTop/Hadoop ecosystem. -- This message was sent by Atlassian JIRA (v6.3.4#6332)