[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