Java 如何从uima ruta脚本创建AnalysisEngineDescriptor以在SimplePlipeLine中使用

Java 如何从uima ruta脚本创建AnalysisEngineDescriptor以在SimplePlipeLine中使用,java,maven,uima,ruta,Java,Maven,Uima,Ruta,我无法在我的简单管道中运行uima ruta脚本。我正在与下一个库合作: Uimafit 2.0.0 Uima ruta 2.0.1 ClearTK 1.4.1 马文 我正在使用一个org.apache.uima.fit.pipeline.simplePline和: SimplePipeline.runPipeline( UriCollectionReader.getCollectionReaderFromDirectory(filesDirectory), //directory wi

我无法在我的简单管道中运行uima ruta脚本。我正在与下一个库合作:

  • Uimafit 2.0.0
  • Uima ruta 2.0.1
  • ClearTK 1.4.1
  • 马文
  • 我正在使用一个
    org.apache.uima.fit.pipeline.simplePline
    和:

    SimplePipeline.runPipeline(
        UriCollectionReader.getCollectionReaderFromDirectory(filesDirectory), //directory with text files
        UriToDocumentTextAnnotator.getDescription(),
        StanfordCoreNLPAnnotator.getDescription(),//stanford tokenize, ssplit, pos, lemma, ner, parse, dcoref
    
        AnalysisEngineFactory.createEngineDescription(RUTA_ANALYSIS_ENGINE),//RUTA script
    
        AnalysisEngineFactory.createEngineDescription(//
            XWriter.class, 
            XWriter.PARAM_OUTPUT_DIRECTORY_NAME, outputDirectory,
            XWriter.PARAM_FILE_NAMER_CLASS_NAME, ViewURIFileNamer.class.getName())
    );
    
    我试图做的是使用StandfordNLP注释器(来自ClearTK)并应用ruta脚本。 目前,一切运行都没有错误,默认ruta注释正在添加到CAS中,但我的规则创建的注释没有添加到CAS中

    我的剧本是:

    PACKAGE edu.isistan.carcha.concern;
    TYPESYSTEM org.cleartk.ClearTKTypeSystem; 
    DECLARE persistence
    Token{FEATURE("lemma","storage") -> MARK(persistence)};
    
    查看带注释的文件:

    基本的ruta注释如“SPACE”或“SW”都在那里,因此正在创建RutaEngine并将其添加到管道中

    如何正确创建AnalysisEngineDescriptor以运行Ruta脚本

    注:
    RUTA\u分析\u引擎是我从RUTA工作台复制的引擎描述符。

    尝试在声明后添加半列,并为
    标记使用完全限定的名称
    注释:

    PACKAGE edu.isistan.carcha.concern;
    TYPESYSTEM org.cleartk.ClearTKTypeSystem; 
    DECLARE persistence;
    org.cleartk.token.type.Token{FEATURE("lemma","storage") -> MARK(persistence)};
    
    RUTA中的类型别名有点过于激进。管道中已知的每种类型都可以通过其短名称使用,即使您没有在脚本中导入它们。如果管道中有多个可用的
    令牌
    类型,则目前无法知道将选择哪一种类型(请参阅)