Я работаю над реализацией XQuery конвейера Stanford CoreNLP для eXist-db . eXist-db - база данных с открытым исходным кодом XML.
Я написал функциональный модуль для eXist, который написан на Java, который охватывает конвейер CoreNLP.
Вот пример вызова:
xquery version "3.1";
import module namespace nlp="http://exist-db.org/xquery/stanford-nlp";
let $text := "The fate of Lehman Brothers, the beleaguered investment bank, " ||
"hung in the balance on Sunday as Federal Reserve officials and " ||
"the leaders of major financial institutions continued to gather in " ||
"emergency meetings trying to complete a plan to rescue the stricken " ||
"bank. Several possible plans emerged from the talks, held at the " ||
"Federal Reserve Bank of New York and led by Timothy R. Geithner, " ||
"the president of the New York Fed, and Treasury Secretary Henry M. Paulson Jr."
let $properties := map {
"annotators" : "tokenize, ssplit, pos, lemma, ner, depparse, coref",
"tokenize.language" : "en"
}
return nlp:parse($text, $properties)
Функция должна иметь возможность отвечать на вызов, чтобы убить текущий запрос. Вызов: system:kill-running-xquery()
Есть ли в StanfordCoreNLP функция прослушивания или функция обратного вызова, которая позволит чисто завершить конвейер?