[jboss-jira] [JBoss JIRA] Reopened: (JBRULES-3083) DecisionTable incorrectly parsed with 5.2.0.CR1

Kara Melba (JIRA) jira-events at lists.jboss.org
Thu Jun 23 08:21:23 EDT 2011


     [ https://issues.jboss.org/browse/JBRULES-3083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kara Melba reopened JBRULES-3083:
---------------------------------



Marc, thanks for taking a look at the ticket. 
In my opinion, it is allowed to include patterns without constraint before other patterns.
The expert doc for version 5.2.0.cr1 states:
"Text in the first cell below CONDITION develops into a pattern for the rule condition, with the snippet in the next line becoming a constraint. If the cell is merged with one or more neighbours, a single pattern with multiple constraints is formed: all constraints are combined into a parenthesized list and appended to the text in this cell. The cell may be left blank, which means that the code snippet in the next row must result in a valid conditional element on its own.

To include a pattern without constraints, you can write the pattern in front of the text for another pattern."

This is just what my spreadsheets do: declare patterns without constraints before a pattern with constraint. 
And this is working really fine with version 5.1.0.M1.
Could you please explain, why the usage of a documented feature, working in 5.1.0M1, should be a usage-bug in 5.2.0.cr1?

Could you please take a look again at this ticket? 

Best Regards,
Kara

> DecisionTable incorrectly parsed with 5.2.0.CR1
> -----------------------------------------------
>
>                 Key: JBRULES-3083
>                 URL: https://issues.jboss.org/browse/JBRULES-3083
>             Project: Drools
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 5.2.0.CR1
>            Reporter: Kara Melba
>            Assignee: Mark Proctor
>             Fix For: 5.2.0.Final
>
>         Attachments: decisiontable.jpg
>
>
> 5.2.0.CR1 creates incorrect drl from decision table. With 5.1.0.M1 the drl for the same decision table is correct.
> Wrong DRL from 5.2.0.CR1:
> rule "ProcessState"
> 	salience 65522
> 	ruleflow-group "CompleteSubOrder"
> 	activation-group "ProcessState"
> 	when
> 		$m:ModifiedMarker(processState==null, state ==null)
> $s:SubOrder
> 	then
> 		$m.setIsModified(true);
> $s.setProcessState(ProcessState.CREATED);
> 		
> end
> Correct DRL with 5.1.0.M1:
> rule "ProcessState"
> 	salience 65522
> 	ruleflow-group "CompleteSubOrder"
> 	activation-group "ProcessState"
> 	when
> 		$m:ModifiedMarker()
> $s:SubOrder(processState==null, state ==null)
> 	then
> 		$m.setIsModified(true);
> $s.setProcessState(ProcessState.CREATED);
> 		
> end
> The difference is that the constraints are put to $m instead of putting them to $s.
> The attached jpg contains the decision table snippet.
> The behaviour in 5.2.0.CR1 is the same for all decision tables in my project and prevents me from upgrading to newer drools versions.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list