0

我有以下类型:

  • SpecialDocument继承自uima.tcas.Annotation(或uima.tcas.DocumentAnnotation,理想情况下)具有specialFeature类型特征uima.cas.String
  • SomeAnnotation继承自uima.tcas.Annotation

我有一个成功触发的规则:

Document{ -> MARK(SpecialDocument)};

我知道它正在触发,因为我得到了一个带有's 文本的SpecialDocument注释。Document

但是当我尝试对其进行任何操作时,即在后续规则中使用它时,规则什么也不做。

对于当我从现有创建 a 时不会触发的相同规则,当我从其他东西创建 a 时它们会触发!!!SpecialDocumentDocumentSpecialDocument

因此,例如:

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)};

编辑我注意到这似乎更多地是关于注释的长度而不是类型 - 当我做短文档时,它按预期工作。

这到底是怎么回事?这是一个错误还是我要疯了?

4

0 回答 0