[ 
https://issues.apache.org/jira/browse/UIMA-6405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17470567#comment-17470567
 ] 

Peter Klügl commented on UIMA-6405:
-----------------------------------

Thanks for reporting. The problems was caused by the resetting of all temp 
label variables when then complete rule failed at the end. This should not 
happen if the rule is just evaluated for some complex lookahead like in the 
wildcard match. It should be fixed now.

> Local variable not captured properly in a wildcard matching condition.
> ----------------------------------------------------------------------
>
>                 Key: UIMA-6405
>                 URL: https://issues.apache.org/jira/browse/UIMA-6405
>             Project: UIMA
>          Issue Type: Bug
>          Components: Ruta
>    Affects Versions: 2.8.1ruta, 3.0.1ruta, 3.1.0ruta
>         Environment: Environment:
> - SO: macOS 10.14.6
> - AdoptOpenJDK 1.8.0_252-b09
> - uimaj-core 3.2.0
> - ruta-core 3.1.0
>            Reporter: Beni Santos
>            Assignee: Peter Klügl
>            Priority: Major
>
> Suppose there is a rule such as:
> {code:java}
> t1:MyType.featX=="foo" # t2:MyType.featX=="_pending"{-> SETFEATURE("featX", 
> t1.featX)};{code}
> If there is other annotation of type MyType with {{featX!="foo"}} between t1 
> and t2, all feats captured in the t1 variable are null.
> It fails with Ruta 3.0.1, 3.1.0, 2.8.1, 2.8.0. It works with Ruta 2.7.0, 
> 2.6.1.
> A complete junit test is provided here: 
> [https://github.com/benisantos/ruta3-wildcard-bug]
> {*}UPDATE{*}: If {{t2:MyType.featX=="_pending"}} is changed by 
> {{t2:MyType\{FEATURE("featX", "_pending")}}}, it works :)



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to