public void close(){ annieController.cleanup(); }
pipeline.add((ProcessingResource) Factory.createResource("gate.creole.tokeniser.DefaultTokeniser")); pipeline.add((ProcessingResource) Factory.createResource("gate.creole.splitter.SentenceSplitter")); pipeline.setCorpus(corpus); pipeline.execute(); for (ProcessingResource pr : pipeline.getPRs()) { Factory.deleteResource(pr);
public String annotate(String original) { DocumentImpl doc; AnnotationSet defaultAnnotSet; try{ doc = new DocumentImpl(); doc.setStringContent(original); doc.init(); corpus.clear(); corpus.add(doc); annieController.setCorpus(corpus); annieController.execute(); defaultAnnotSet = doc.getAnnotations(); defaultAnnotSet= defaultAnnotSet.get(annotTypesRequired); return "<?xml version=\"1.0\" encoding=\"windows-1252\"?>\n<doc>"+doc.toXml(defaultAnnotSet, false)+"</doc>"; } catch(Exception e){ e.printStackTrace(); return null; } }
public void initAnnie(String gateHome) throws Exception{ // initialise the GATE library Gate.setGateHome(new File(gateHome)); Gate.setPluginsHome(new File(gateHome)); Gate.setUserConfigFile(new File(Gate.getGateHome(), "gate.xml")); Gate.init(); Gate.getCreoleRegister().registerDirectories(new File(Gate.getGateHome(), "ANNIE").toURL()); System.out.println("Initializing ANNIE..."); // create a serial analyser controller to run ANNIE with annieController = (SerialAnalyserController) Factory.createResource("gate.creole.SerialAnalyserController", Factory.newFeatureMap(), Factory.newFeatureMap(), "ANNIE_" + Gate.genSym()); // load each PR as defined in ANNIEConstants // we don't need the last processing resource: Orthomatcher for (int i = 0; i < ANNIEConstants.PR_NAMES.length-1; i++) { FeatureMap params = Factory.newFeatureMap(); // use default parameters ProcessingResource pr = (ProcessingResource) Factory.createResource(ANNIEConstants.PR_NAMES[i], params); annieController.add(pr); } System.out.println("...ANNIE loaded"); corpus = (Corpus) Factory.createResource("gate.corpora.CorpusImpl"); annotTypesRequired = new HashSet(); annotTypesRequired.add("Person"); annotTypesRequired.add("Location"); annotTypesRequired.add("Organization"); }
pipeline.add((ProcessingResource) Factory.createResource("gate.creole.tokeniser.DefaultTokeniser")); pipeline.add((ProcessingResource) Factory.createResource("gate.creole.splitter.SentenceSplitter")); pipeline.add((ProcessingResource) Factory.createResource("gate.stanford.Parser")); corpus.add(document); pipeline.setCorpus(corpus); pipeline.execute();