我有以下类型:
SpecialDocument
继承自uima.tcas.Annotation
(或uima.tcas.DocumentAnnotation
,理想情况下)具有specialFeature
类型特征uima.cas.String
SomeAnnotation
继承自uima.tcas.Annotation
我有一个成功触发的规则:
Document{ -> MARK(SpecialDocument)};
我知道它正在触发,因为我得到了一个带有's 文本的SpecialDocument
注释。Document
但是当我尝试对其进行任何操作时,即在后续规则中使用它时,规则什么也不做。
对于当我从现有创建 a 时不会触发的相同规则,当我从其他东西创建 a 时它们会触发!!!SpecialDocument
Document
SpecialDocument
因此,例如:
Document{ -> MARK(SpecialDocument)}; // creates a SpecialDocument
SomeAnnotation -> SpecialDocument; // creates a SpecialDocument
// This sets specialFeature for every SpecialDocument EXCEPT the one created ƒrom Document.
SpecialDocument{ -> SETFEATURE("specialFeature", "whatever")};
// This marks a new annotation of SomeOtherAnnotation, again for every SpecialDocument EXCEPT the one I care about!!!
SpecialDocument{ -> MARK(SomeOtherAnnotation)};
编辑我注意到这似乎更多地是关于注释的长度而不是类型 - 当我做短文档时,它按预期工作。
这到底是怎么回事?这是一个错误还是我要疯了?