Author: schor Date: Wed Jul 25 20:11:13 2018 New Revision: 1836666 URL: http://svn.apache.org/viewvc?rev=1836666&view=rev Log: [UIMA-5846] don't do reverse order when bounds are switched in select.between. Update javadocs, add a test case
Modified: uima/uv3/uimaj-v3/trunk/uima-docbook-v3-users-guide/src/docbook/uv3.select.xml uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/SelectFSs.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/SelectFSs_impl.java uima/uv3/uimaj-v3/trunk/uimaj-core/src/test/java/org/apache/uima/cas/impl/SelectFsTest.java Modified: uima/uv3/uimaj-v3/trunk/uima-docbook-v3-users-guide/src/docbook/uv3.select.xml URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uima-docbook-v3-users-guide/src/docbook/uv3.select.xml?rev=1836666&r1=1836665&r2=1836666&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uima-docbook-v3-users-guide/src/docbook/uv3.select.xml (original) +++ uima/uv3/uimaj-v3/trunk/uima-docbook-v3-users-guide/src/docbook/uv3.select.xml Wed Jul 25 20:11:13 2018 @@ -476,8 +476,7 @@ startAt(begin, end, shifted) // same as <term><emphasis role="strong">between</emphasis></term> <listitem> <para>uses two Annotations, and returns Annotations that are in between - the two bounds, specified by Annotations. If the bounds are backwards, then they are automatically used in reverse order, - and the results are returned in reverse order. + the two bounds, specified by Annotations. If the bounds are backwards, then they are automatically used in reverse order. The meaning of between is that an included Annotation's begin has to be >= the earlier bound's <code>end</code>, and the Annotation's end has to be <= the later bound's <code>begin</code>. </para> Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/SelectFSs.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/SelectFSs.java?rev=1836666&r1=1836665&r2=1836666&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/SelectFSs.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/SelectFSs.java Wed Jul 25 20:11:13 2018 @@ -331,7 +331,7 @@ public interface SelectFSs<T extends Fea * is the end of fs1, and whose end is the begin of fs2. * Requires an Annotation Index. * <p> - * If fs1 > fs2, they are swapped, and the selected values are returned in reverse order. + * If fs1 > fs2, they are swapped. * * @param fs1 the beginning bound * @param fs2 the ending bound Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/SelectFSs_impl.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/SelectFSs_impl.java?rev=1836666&r1=1836665&r2=1836666&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/SelectFSs_impl.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/main/java/org/apache/uima/cas/impl/SelectFSs_impl.java Wed Jul 25 20:11:13 2018 @@ -442,7 +442,6 @@ public class SelectFSs_impl <T extends F this.boundingFs = makePosAnnot(begin, end); } this.boundsUse = BoundsUse.coveredBy; - this.isBackwards = reverse; // this.isIncludeAnnotWithEndBeyondBounds = true; // default return this; } Modified: uima/uv3/uimaj-v3/trunk/uimaj-core/src/test/java/org/apache/uima/cas/impl/SelectFsTest.java URL: http://svn.apache.org/viewvc/uima/uv3/uimaj-v3/trunk/uimaj-core/src/test/java/org/apache/uima/cas/impl/SelectFsTest.java?rev=1836666&r1=1836665&r2=1836666&view=diff ============================================================================== --- uima/uv3/uimaj-v3/trunk/uimaj-core/src/test/java/org/apache/uima/cas/impl/SelectFsTest.java (original) +++ uima/uv3/uimaj-v3/trunk/uimaj-core/src/test/java/org/apache/uima/cas/impl/SelectFsTest.java Wed Jul 25 20:11:13 2018 @@ -218,6 +218,15 @@ public class SelectFsTest { prec2 =jCas.select(Token.class).following(sentence).shifted(-1).asList(); assertEquals(Arrays.asList(c, d, e), prec2); + prec2 = jCas.select(Token.class).between(b, e).asList(); + assertEquals(Arrays.asList(c, d), prec2); + + prec2 = jCas.select(Token.class).between(e, b).asList(); + assertEquals(Arrays.asList(c, d), prec2); + + prec2 = jCas.select(Token.class).between(b, e).backwards().asList(); + assertEquals(Arrays.asList(d, c), prec2); + } }