I have written below code..
package com.shyam.Test;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import org.apache.ctakes.clinicalpipeline.ClinicalPipelineFactory;
import org.apache.ctakes.dictionary.
lookup.ae.UmlsDictionaryLookupAnnotator;
import org.apache.ctakes.typesystem.type.textsem.IdentifiedAnnotation;
import org.apache.uima.UIMAException;
import org.apache.uima.analysis_engine.AnalysisEngineDescription;
import org.apache.uima.analysis_engine.AnalysisEngineProcessException;
import org.apache.uima.cas.CASRuntimeException;
import org.apache.uima.fit.factory.JCasFactory;
import org.apache.uima.fit.pipeline.SimplePipeline;
import org.apache.uima.fit.util.JCasUtil;
import org.apache.uima.jcas.JCas;
import org.apache.uima.resource.ResourceInitializationException;
public class DefaultPipeLine {
public static void main(String[] args) {
try {
final String note = " History of diabetes and hypertension."
+ " Mother had breast cancer."
+ " Sister with multiple sclerosis."
+ " The patient is suffering from extreme pain due to shark bite."
+ " Recommend continuing use of aspirin, oxycodone, and coumadin."
+ " Continue exercise for obesity and hypertension.";
final JCas jcas = JCasFactory.createJCas();
jcas.setDocumentText( note );
// final AnalysisEngineDescription aed = ClinicalPipelineFactory.getDefaultPipeline();
final AnalysisEngineDescription aed = ClinicalPipelineFactory.getFastPipeline(); // Outputs from default and fast pipelines are identical
// final AnalysisEngineDescription uml = UmlsDictionaryLookupAnnotator.createAnnotatorDescription();
SimplePipeline.runPipeline( jcas, aed );
final Collection<String> codes = new ArrayList<>();
for ( IdentifiedAnnotation entity : JCasUtil.select( jcas, IdentifiedAnnotation.class ) ) {
System.out.println( "Entity: " + entity.getCoveredText()
+ " === Polarity: " + entity.getPolarity()
);
// System.out.println("!!!!!!!!!! Task is Completed !!!!!!!!!!!!!!!");
}
} catch (CASRuntimeException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (AnalysisEngineProcessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ResourceInitializationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UIMAException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Entity: History of === Polarity: 1
Entity: History === Polarity: 1
Entity: diabetes === Polarity: 1
Entity: hypertension === Polarity: 1
Entity: breast cancer === Polarity: 1
Entity: breast === Polarity: 1
Entity: cancer === Polarity: 1
Entity: multiple sclerosis === Polarity: 1
Entity: sclerosis === Polarity: 1
Entity: pain === Polarity: 1
Entity: shark bite === Polarity: 1
Entity: bite === Polarity: 1
Entity: bite === Polarity: 1
Entity: aspirin === Polarity: 1
Entity: oxycodone === Polarity: 1
Entity: oxycodone === Polarity: 1
Entity: coumadin === Polarity: 1
Entity: exercise === Polarity: 1
Entity: obesity === Polarity: 1
Entity: hypertension === Polarity: 1
im getting non medical and medical terms , so how can avoid non medical terms , i want o/p is only medical terms .
please help me.