我正在尝试在RUTA工作台中使用DKPro Core组件,如以下示例中的德语小说: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获取依赖项。虽然我能够在Eclipse中执行主ruta脚本并在输出目录中获取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.
我想Workbench无法访问DKPro Core导入的类型系统,我也不知道如何解决这个问题。我尝试将父项目升级到当前的ruta版本(2.6.1,与我的ruta工作台相同),没有任何更好的结果。
答案 0 :(得分:1)
有不同的选项可以解决这个问题。您可以在Ruta脚本中导入包含TagsetDescription的DKPRo Core类型系统,以便生成的类型系统描述也提供类型,以防使用类型系统描述在CAS编辑器中打开XMI。
我经常生成一个类型系统描述,其中包含项目类路径中可用的所有类型系统描述(uimaFIT types.txt),以便在CAS编辑器中打开XMI。例如,使用以下代码:
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);
}
}
您可以在该项目的属性中指定应该用于项目中所有文件的类型系统描述:属性 - &gt; UIMA型系统。默认情况下,它指向上面的示例代码创建的文件。
免责声明:我是UIMA Ruta的开发者