Done https://issues.apache.org/jira/browse/UIMA-4261
On 24 February 2015 at 19:35, Peter Klügl <[email protected]> wrote: > Hi, > > could you open an issue and attach it there? That would be great. > > Best, > > Peter > > Am 24.02.2015 um 18:13 schrieb Silvestre Losada: > > Hi Peter, >> >> The problem happens if the Annotations are created by external analysis >> engine, using something like this >> >> ENGINE TestAE; >> Document{-> EXEC(TestAE,{TestType})}; >> (TestType{-> UNMARKALL(TestType)}){PARTOFNEQ(TestType)}; >> >> It seems that ExecAction is removing the Type form RutaBasic.partOf array >> at some point of the execution. After that in PartOfNeqCondition in method >> check next condition is always returning false because the Type was >> removed >> previously from ruta basic. >> >> boolean partOf = beginAnchor.isPartOf(t) || endAnchor.isPartOf(t); >> if (!partOf) { >> return false; >> } >> >> I have uima ruta test project that reproduces the error I can send to you >> in zip file. >> >> Best. >> >> On 20 February 2015 at 20:41, Peter Klügl <[email protected]> >> wrote: >> >> Hi, >>> >>> hmmm, that's strange. When I apply the rules on the document "A B C D", >>> only one T1 annotation remains. >>> >>> On which document did you test the rules? >>> >>> Best, >>> >>> Peter >>> >>> Am 20.02.2015 um 09:17 schrieb Silvestre Losada: >>> >>> HI again, >>> >>>> Now I'm running into this problem >>>> DECLARE T1; >>>> "A B C D" -> T1; >>>> "B" -> T1; >>>> "C D" -> T1; >>>> "D" -> T1; >>>> >>>> (T1{-> UNMARKALL(T1)}){PARTOFNEQ(T1)}; >>>> >>>> The ouput is >>>> "A B C D" -> T1; >>>> "D" -> T1; >>>> >>>> I suspect that this is because D is part of "A B C D" and "C D" >>>> >>>> Im using lastest version in trunk. >>>> >>>> >>>> Kind regards >>>> >>>> On 14 February 2015 at 09:29, Silvestre Losada < >>>> [email protected]> >>>> wrote: >>>> >>>> Thanks Peter, >>>> >>>>> >>>>> It seems to work. >>>>> >>>>> On 13 February 2015 at 22:18, Peter Klügl <[email protected]> >>>>> wrote: >>>>> >>>>> This should work just fine and should remove both contained >>>>> annotations. >>>>> >>>>>> I just tested it with the current trunk and the following script: >>>>>> >>>>>> DECLARE T1; >>>>>> "A B" -> T1; >>>>>> "B" -> T1; >>>>>> "B" -> T1; >>>>>> >>>>>> (T1{-> UNMARK(T1)}){PARTOFNEQ(T1)}; >>>>>> >>>>>> If applied on the test "A B", only the largest annotation remains. >>>>>> >>>>>> Can you test it with the current trunk in case I fixed the bug a few >>>>>> minutes ago by accident. If not, can you give me more information >>>>>> about >>>>>> the >>>>>> context of your rule? >>>>>> >>>>>> Best, >>>>>> >>>>>> Peter >>>>>> >>>>>> Am 12.02.2015 um 10:12 schrieb Silvestre Losada: >>>>>> >>>>>> I dont know if this is a bug or if it is wokring well. I have the >>>>>> >>>>>> following >>>>>>> annotations. >>>>>>> >>>>>>> AnnotationA >>>>>>> begin:0 >>>>>>> ends:8 >>>>>>> id:1 >>>>>>> AnnotationA >>>>>>> begin:4 >>>>>>> ends:8 >>>>>>> id:2 >>>>>>> AnnotationA >>>>>>> begin: 4 >>>>>>> ends:8 >>>>>>> id:3 >>>>>>> >>>>>>> Then if apply the following ruta >>>>>>> >>>>>>> (AnnotationA{-> UNMARK(AnnotationA)}){PARTOFNEQ(AnnotationA)}; >>>>>>> >>>>>>> The output is >>>>>>> AnnotationA >>>>>>> begin:0 >>>>>>> ends:8 >>>>>>> id:1 >>>>>>> AnnotationA >>>>>>> begin: 4 >>>>>>> ends:8 >>>>>>> id:3 >>>>>>> >>>>>>> I expect that annotations with id 2 and 3 will be removed. Is there >>>>>>> any >>>>>>> way >>>>>>> to remove both >>>>>>> >>>>>>> Kind regards >>>>>>> >>>>>>> >>>>>>> >>>>>>> >
