[
https://issues.apache.org/jira/browse/UIMA-4392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marshall Schor resolved UIMA-4392.
----------------------------------
Resolution: Fixed
> subiterator edge case needs correction - begin value with multiple instances
> ----------------------------------------------------------------------------
>
> Key: UIMA-4392
> URL: https://issues.apache.org/jira/browse/UIMA-4392
> Project: UIMA
> Issue Type: Bug
> Reporter: Marshall Schor
> Assignee: Marshall Schor
> Priority: Minor
> Fix For: 2.7.1SDK
>
>
> The definition of a subiterator requires that the FSs returned by strictly
> greater than the bounding FS (greater-than is with respect to the sort order
> for Annotations). The current implementation makes two mistakes - it uses
> the "equal" method on the FeatureStructure - which returns true only for the
> indentical FS (same heap address in same heap), and doesn't allow for
> multiple occurances of annotation-index-ordering-equals items. For example,
> if there were multiple "Tokens" each of which had different non-indexed field
> "lemma" which were set to different values, and one of these FSs was used as
> the bounds, then the iterator incorrectly currently skips over that one but
> only if it happens to be the first one in the sort order, and never skips the
> others which would also compare equal (using the annotator comparator). The
> correct behavior is to skip over all until an item is found which would
> compare as not-equal-using-standard-annotator comparer.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)