UIMA Ruta Workbench с ядром Maven и DKPro
Я пытаюсь использовать компоненты DKPro Core в рабочей среде RUTA, как в следующем примере с немецким романом: https://github.com/pkluegl/ruta
IMPORT PACKAGE de.tudarmstadt.ukp.dkpro.core.api.lexmorph.type.pos FROM desc.type.POS AS pos;
IMPORT de.tudarmstadt.ukp.dkpro.core.api.segmentation.type.Lemma FROM desc.type.LexicalUnits;
Maven правильно получает зависимости от DKPro Core. Хотя я могу выполнить основной скрипт ruta в Eclipse и получить файл xmi в выходной каталог, я не могу открыть этот файл xmi в браузере аннотаций:
Caused by: XCASParsingException: Error parsing XCAS or XMI-CAS from source <unknown> at line <unknown>, column <unknown>: unknown type: de.tudarmstadt.ukp.dkpro.core.api.metadata.type.TagsetDescription.
Я думаю, что системы типов импорта DKPro Core недоступны для Workbench, и я понятия не имею, как решить эту проблему. Я попытался обновить родительский проект до текущей версии ruta (2.6.1, так же, как и в моей рабочей среде ruta) без какого-либо лучшего результата.
1 ответ
Есть разные варианты решения этой проблемы. Вы можете импортировать систему типов DKPRo Core, содержащую TagsetDescription, в свой скрипт Ruta, чтобы сгенерированное описание системы типов также предоставляло тип, в случае если это описание системы типов используется для открытия XMI в редакторе CAS.
Я часто генерирую описание системы типов, содержащее все описания систем типов, доступные в пути к классам проекта (uimaFIT types.txt), чтобы открыть XMI в редакторе CAS. Например, с помощью следующего кода:
protected void storeTypeSystem() {
File tsFile = new File("TypeSystem.xml");
try {
TypeSystemDescription typeSystemDescription = TypeSystemDescriptionFactory.createTypeSystemDescription();
try (OutputStream os = new FileOutputStream(tsFile)) {
typeSystemDescription.toXML(os);
}
} catch (Exception e) {
throw new RuntimeException(e);
}
}
Вы можете указать описание системы типов, которое должно использоваться для всех файлов в проекте, в свойствах этого проекта: Свойства -> Система типов UIMA. По умолчанию он указывает на файл, созданный в приведенном выше примере кода.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я разработчик UIMA Ruta