UIMA RUTA注释组合
问题描述:
我是UIMA RUTA的新手,在阅读UIMA RUTA指南后,我有以下问题。我想编写一套规则,在我的文档中搜索具有特定值(FIRST:“hello”和SECOND:“world”,“pres”)的文档中的两个注释(FIRST,SECOND),如果他们找到它们,它将创建一个新的注解(THIRD),其值为“end”。 但是,脚本不工作,我想知道为什么。UIMA RUTA注释组合
WORDTABLE Firsts= 'FIRST.csv';
WORDTABLE Seconds= 'SECOND.csv';
WORDTABLE Thirds= 'THIRD.csv';
DECLARE Annotation FIRST(STRING value);
DECLARE Annotation SECOND(STRING value, STRING pos);
DECLARE Annotation THIRD(STRING value);
Document{->MARKTABLE(FIRST, 1, Firsts, "value"=2)};
Document{->MARKTABLE(SECOND, 1, Seconds, "value"=2, "pos"=3)};
Document{AND(CONTAINS(FIRST{FEATURE("value","hello")}),CONTAINS(SECOND{FEATURE("value","world","pos","pres")})){->CREATE(THIRD{FEATURE("value","end")})}};
你能帮我吗?感谢名单。
答
最后一条规则无效。
你可以写类似:
(f:FIRST{f.value=="hello"} # s:SECOND{s.value=="world",s.pos=="pres"}){-> CREATE(THIRD, "value" = "end")};
或
Document{-> CREATE(THIRD, "value" = "end")}<-{f:FIRST{f.value=="hello"} # s:SECOND{s.value=="world",s.pos=="pres"};};
或有相合规则的东西。
免责声明:我的UIMA鲁塔
开发商对此没有必要使用wordtable。 Wordlist就够了。 –
我假设他需要MARKTABLE,因为这个特性的值。 –