问题标签 [ruta]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
650 浏览

uima - 从我自己的注释器中使用 Apache UIMA Ruta

我有一系列 UIMA Ruta 规则,我希望在我自己的 UIMA 注释器中运行这些规则。这在这里描述,但我无法让它工作:http ://uima.apache.org/d/ruta-current/tools.ruta.book.html#ugr.tools.ruta.integration

当我尝试运行注释器时(从 JUnit 测试中,我过去成功地与其他 UIMA 注释器一起使用过),我收到一个错误,告诉我 Ruta 基本注释类型之一(org.apache.uima.ruta .type.TokenSeed) 在 Java 代码中使用,但未在 XML 中定义。

我已将 Ruta 类型系统(BasicTypeSystem.xml 和 InternalTypeSystem.xml)的绝对路径添加到 descriptorPaths 参数中(详见此处:http://uima.apache.org/d/ruta-current/tools.ruta。 book.html#ugr.tools.ruta.ae.basic.parameter.descriptorPaths),但这似乎没有什么区别。

我查看了 Ruta 源代码,但无法弄清楚我哪里出错了。

有没有人成功地获得了一个 Ruta 脚本来从 UIMA 注释器中运行?你是如何设法让它工作的?

0 投票
1 回答
1318 浏览

uima - UIMA RUTA - 如何使用正则表达式和组进行查找和替换

RUTA 新手在这里。我正在使用 RUTA 处理文档,并且在开始注释之前要做很多规范化。我试图找到使用正则表达式和组在 RUTA 中的原始文档上查找和替换字符序列的最佳方法。本质上,我正在尝试了解如何在 RUTA 中执行类似于 String.replaceAll 的操作。

例如,在 Java 中,

但我想不出在 RUTA 中实现这一目标的简单方法。

谢谢

0 投票
1 回答
367 浏览

uima - 一个简单的 Ruta 注释器

我刚从 Ruta 开始,我想写一个这样的规则:

它会尝试匹配一个单词,例如 XYZ,当它碰到它时,它会将之前出现的文本分配给 Annotator CompanyDetails。

例如 :

这是一个包含我们感兴趣的短语的段落,它位于句子之后。LL, Inc. 特拉华州有限责任公司 (XYZ)。

运行脚本后,注释器 CompanyDetails 将包含以下字符串:LL, Inc. a Delaware limited liability company

0 投票
1 回答
130 浏览

java - RUTA 如何根据条件执行块

我有一个简单的 Ruta 问题。

在取自 tools.ruta.book.pdf 的示例中

段落{IF(keywordAmount > 5)->MARK(KeywordParagraph)};

是否可以执行之前定义的块或函数,而不是只执行一条语句?

0 投票
1 回答
310 浏览

uima - RUTA:如何解析日期-MM/dd/yyyy-并将其存储在一个复杂的结构中?

我想要的是解析日期的三个组成部分,将每个组成部分存储到自己的注释中,然后创建一个复杂的结构,代表整个日期。我尝试了以下方法,但没有奏效。

当我用类似“2014 年 12 月 31 日”的内容输入它时,虽然为三个 CommenceXXX 注释分配了值,但复杂的结构 CommDate 却没有。

0 投票
0 回答
106 浏览

java - Ruta:如何逐行读取文本文件,将每一行视为一个字符串

使用 Ruta 脚本,我尝试读取一个包含多行且每行包含多个单词的文本文件。

我使用了 WORDLIST 和 STRINGLIST,

WORDLIST personNameList = 'PersonName.txt';

STRINGLIST pList = {“约翰”,“保罗牛顿”};

但是两者虽然在一行只包含一个单词时工作得很好,但当一行包含多个单词时似乎不起作用。

0 投票
1 回答
473 浏览

uima - UIMA RUTA - 沙发映射 - 聚合管道

这是关于问题的。

UIMA RUTA - 如何使用正则表达式和组进行查找和替换

我正在尝试按照建议设置沙发映射。我有一个包含多个 AE 的聚合 AE,并尝试在此管道中合并 2 个 RUTA AE/脚本。两个 RUTA AE(和相关脚本)都负责使用修饰符进行 REGEXP 查找和替换。第二个 AE 取决于第一个 AE 的输出。我必须配置修改器的第二个 AE 的输出视图,否则我会收到“沙发数据已设置”异常。

本质上,我无法将一个AE的输出编织为另一个AE的输入。

我的设置类似于下面,

这是聚合 AE 代码

需要注意的几点,

  • 所有三个 RUTA AE(step1、step2、normalizer)都使用 RUTA Modifier
  • 上述设置引发异常“找不到名为 norm_2_out 的沙发FS”。- 这发生在第 2 步之后。
  • 我试图将“norm_2_out”切换为“已修改”作为规范化器的输入沙发,这似乎将处理移至管道中的下一步(规范化器),但这会引发异常“沙发功能 setLocalSofaData() 的数据有已经设置好了。” 在 org.apache.uima.ruta.engine.RutaModifier.process(RutaModifier.java:107)
  • 我尝试使用 RUTA 2.2.0(快照),结果相同

由于我对 UIMA 和 RUTA 都比较陌生,因此不确定我是否做错了什么,或者我是否遇到了限制。

顺便说一句,我正在使用 RUTA 2.1.0

谢谢

0 投票
2 回答
1853 浏览

java - 用于运行 UIMA Ruta 脚本的 Java API

我是 UIMA Ruta 的新手。我使用脚本语言制作了一些注释器。我能够在 EclipseIDE 中运行它们。我想编写一个 JAVA API 来根据提供的输入自动运行脚本。

我正在使用 UIMA 文档中提供的相同示例项目。

到目前为止,我已经能够做到这一点

在使用默认 BasicEngine.xml 和输入文本文件运行上述代码段时。它给出了下面的堆栈跟踪

我被困住了。请帮忙。

编辑:

上面编写的 Java API 来自 uima 文档中的 uimaj-example。我在类路径中添加了一些 ruta jar 和通用 jar,之后文件执行良好。

0 投票
0 回答
809 浏览

java - UIMA Ruta 与 Maven

我是 UIMA Ruta 的初学者。我按照这个将 Ruta 与 Maven 一起使用。我明白这一点,但我想做更多的事情。

下面是我运行这个例子的简单测试用例

这是我下面提到的脚本。

正如教程中所建议的那样。我在同一个 Eclipse 工作区中使用不同的 UIMA Ruta 项目(称为示例项目)制作了这个脚本。我将它作为 UIMA ruta 文件执行并获得了相应的描述符文件(TestAnnotator.xml)。我粘贴了相同的内容,只是将以下内容更改为

它最初指向 BasicTypeSystem.xml 文件。目前我能够构建它并执行此脚本,但生成的描述符文件(TestAnnotator.xml)使用相应 xml 中的本地文件路径。这些本地文件路径是以前 UIMA 项目(示例项目)中的文件夹。

当我尝试在上述路径中配置脚本文件的运行设置时,即在我的 Maven 项目中,配置无法在给定路径中找到脚本。

我应该如何在 Maven 项目中添加 Ruta 脚本的动态特性

请帮忙。

0 投票
1 回答
174 浏览

eclipse - UIMA 中的名称实体关系

我是 UIMA 的新手,目前我陷入了以下情况。

如何对从 UIMA 中的注释器获得的不同标记集进行分类和关联?就像 {John,Smith} 之类的个人实体令牌集名称和 {car,home} 之类的资产实体集。我想编写规则来分类,如下面的 xml。

提前感谢您的帮助..