我在示例短语上构建了一些自定义注释,以便识别关键字。我现在遇到的问题是我无法将这些注释组合起来构建注释的上层模式。
例如。这些短语是: 1。"我想买鸡蛋。" 2。"我想和面包一起吃早餐。" 3。"我想早餐吃鸡蛋。"
DECLARE Annotation Eggs;
Entity{FEATURE("text","eggs")->MARK(Eggs)};
DECLARE Annotation Breakfast;
Entity{FEATURE("text","breakfast")->MARK(Breakfast)};
我如何构建一个新的注释,它结合/合并已经构建的两个注释并识别第三个短语? 我已经尝试过以下类型,但它不起作用:
DECLARE Annotation EggsForBreakfast;
Entity{AND(CONTAINS(Eggs),CONTAINS(Breakfast))->MARK(EggsForBreakfast)};
答案 0 :(得分:1)
最后一条规则中的CONTAINS检查匹配项中是否有这些注释,即实体。你需要的是:
Document{CONTAINS(Eggs),CONTAINS(Breakfast)->MARK(EggsForBreakfast)};
您可以使用不同的语言元素来设计这些模式,例如带有通配符的顺序规则,内联规则和上述示例中的各种条件。最佳解决方案取决于实际用例,例如,我们是否包括块或语法树等结构?
免责声明:我是UIMA Ruta的开发者