Запуск GATE автоматически

Я начинающий Java, и мне нужно сделать следующее: - У меня есть txt файл в качестве ввода с текстом, который я хочу проанализировать в GATE; - Я хочу, чтобы GATE начал автоматически и запустил свой лингвистический анализ (Corpus Pipeline) в этом тексте.

Моя идея - открыть и прочитать файл txt на Java, а затем преобразовать его в документ GATE, но у меня есть следующие сомнения:

1) как преобразовать текст в документ GATE?

2) Как мне заставить GATE начать автоматически?

Спасибо, что помогли мне.

1 ответ

В GATE вам не нужно беспокоиться о чтении и конвертации общих файлов, таких как.txt,.pdf,.html и т.д. GATE автоматически делает это.

Инициализируйте GATE следующим образом:

private static void initGateApplication(String gateXgappFileLoc, String gateHome) {
 try { 
 try {
 if (Gate.getGateHome() == null)
 Gate.setGateHome(new File(gateHome));
 } 
 catch (Exception ex) {
 ex.printStackTrace(System.out);
 } 
 try {
 if (!Gate.isInitialised())
 Gate.init();
 } 
 catch (GateException e) {
 e.printStackTrace(System.out);
 }
 System.out.println("Initializing gate application...");
 gappFile = new File(gateXgappFileLoc);
 gateApplication = (CorpusController) PersistenceManager.loadObjectFromFile(gappFile);
 } 
 catch (Exception e) {
 e.printStackTrace(System.out);
 }
 }

И запустите свой конвейер GATE с вашим текстовым файлом:

public void extract(String inputFileName, String docID, CorpusController gateApplication) throws GateException, IOException 
{

 CorpusController application = gateApplication;

 Corpus corpus = Factory.newCorpus("Sample Corpus");
 application.setCorpus(corpus);

 File docFile = new File(inputFileName);
 System.out.print("Processing document " + docFile + "...");
 Document doc = Factory.newDocument(docFile.toURL(), encoding);

 // add document to the corpus
 corpus.add(doc);

 // run the application
 application.execute();
 System.out.println("Done running GATE pipeline...");
 // Now use get annotations from 'doc' object
}

licensed under cc by-sa 3.0 with attribution.