Clone Tools
  • last updated a few minutes ago
Constraints: committers
Constraints: files
Constraints: dates
decouple ruleunit + pluggable classloader (#2652)

* decouple ruleunit

* pluggable classloader

* create osgi bundle

* register dynamic component factory in osgi Activator

* fix osgi integration

  1. … 190 more files in changeset.
RHDM-1049 Wrong output variable values in PMML mining model (#2505)

* RHPAM-1049 Wrong output variable values in PMML mining model

* Changed output of the target field to be a simple value that is set at

the same time as the Sum_ version is created.

* Updated test to make sure change was effective in adding the output


* Fixed output so that it is based on PMML4OutputField. Actual class name is based on the package name, plus the name of the output field.

  1. … 1 more file in changeset.
RHDM-961 Random test failures (#2352)

The error message indicated that sometimes the format function being

called by an accumulate, in the rule "processDerivedField_MapValues",

was being called with a "type" parameter that was not a String. I

updated the function's signature to take a generic Object for the "type"

parameter, and then modified the function to check to see if the

parameter was indeed a String. If it is a String then the function works

as it was originally coded; otherwise it returns the passed in "val"

parameter, just as though the "type" parameter was null.

RHPAM-1815 Renamed the file (#2290)

* RHPAM-1815 Unit tests fail for drools-scorecards

Declared types in the rules that are used to generate the rules from

PMML cause issues in Windows.

* Removed commented out declare statements

  1. … 5 more files in changeset.
RHPAM-1900 Fixes for XStream marshall/unmarshall using PMML structures (#2273)

  1. … 5 more files in changeset.
RHPAM-1875 Fixes for JSON marshalling/unmarshalling of PMML (#2258)

  1. … 2 more files in changeset.
Moved all the DRLs to the proper directory for the package name (#2252)

Moved the DRL files from the model-based subdirectory to the package

name directory org/kie/pmml/pmml_4_2/compiler

  1. … 3 more files in changeset.
RHDM-766 / DROOLS-3404 (#2202)

* DROOLS-3404 Finish removing 'declare' statements from generated rules

@Ignored tests in guided scorecards that don't work due to empty field names

RHDM-766 Implementing REST API/kie-server support for PMML

Requested updates

Made requested change to the PMML4Compiler

* Added back in tests that had been @Ignored

Added back tests that had been @Ignored. This required updating the

Helper so that it produced scorecard models that had valid output field


    • -27
    • +1
  1. … 32 more files in changeset.
DROOLS-2592 PMML - Fix race conditions caused by corner cases of used "after" and "before" operators (#2067)

* DROOLS-2592 Fix scorecards reason code update race condition

* DROOLS-2592 Fix possible race conditions in PMML rule templates

RHPAM-1509 Mining model modelChain mode does not compile (#2068)

* Fixed an error, in the PMML4Compiler, that was caused when instead of creating a copy of a DataField object the object was being updated

* Fixed problems in the test data...

- Models need to have a modelName attribute

- A target element, in a MiningSchema, must have a corresponding DataField defined

  1. … 6 more files in changeset.
RHPAM-1492 Surrogate operator does not work correctly in decision trees (#2062)

* Fixed problems in the PredicateRuleProducer classes, where the generated constraints

were not correctly taking into account compound predicates

* Changed treeCompiler.drl to use constraints created by PredicateRuleProducer classes

instead of using the compileConstraints query in common.drl

* Added a method to PMML4Helper (utils within treeCompiler.drl) to retrieve the

constraints/predicate for a node

Added fix that uses new ArrayList<>() in place of Collections.emptyList()

  1. … 17 more files in changeset.
RHPAM-1500 PMML compilation problem with weightedAverage mining operator (#2052)

* Removed @Ignore from MiningModelWeightedAverageTest

* Added a method to get the Double value from the MiningSegmentWeight

* Fixed errors in the weightedAvg.mvel including

- making sure that the correct PMML4Result is used for setting a MiningSegmentWeight

- making sure that the correct PMML4Result gets the weighted average for its target field

- making sure that the all possible SegmentExecutions are inserted prior to starting any SegmentExecution

- updating the "Check Segment Can Fire" rules to update the proper SegmentExecution, instead of inserting a new one

* Fixed tests in MiningmodelTest that were broken by the above fixes

  1. … 3 more files in changeset.
DROOLS-2884 Guided Score Card build fails (#2034)

* Fixed issue that prevented build/compile when the guided scorecard referenced a type without a fully qualified name

* Updated tests to include testing for external types referenced without fully qualified names

  1. … 4 more files in changeset.
DROOLS-2875 Problem compiling PMML when multiple output fields are present (#2016)

* scorecardOutputGeneration.drlt - Updated rule names to add the target field for situations where there are

multiple output fields defined.

* regParams.drlt - Changed the insertion of RegTable objects to be insert instead of insertLogical

* Updated test files to include multiple fields tagged as output

* Fixed so that the getMiningFields method would also return any fields that were used by

sub-models. This removes a limitation that previously existed where the all fields that were in a sub-model's

mining schema had to be included in the mining models mining schema.

  1. … 6 more files in changeset.
Removed all references to PMML from drools-compiler module (#1977)

Created PMMLAssemblerService to compile packages that contain PMML resources

  1. … 11 more files in changeset.
RHDM-594 Remove drools-pmml dependency (#1922)

* Helper classes to streamline the creation of the elements necessary for submitting

a request to a PMML rule unit.

Updated tests to make use of the new helper classes

* * Removing dependencies on drools-pmml

* Changed the package for classes generated from the PMML schema and updated references to the package

* Added new methods for retrieving a KieBase, or a string that contains the PMML generated from a spreadsheet,

from the ScoreCardProvider and ScoreCardFactory classes

* * Making drools-scorecards work with kie-pmml

* Removing reliance by guided scorecards and adding in support for external beans

  1. … 65 more files in changeset.
RHDM-522 Add sum mode for MiningModel (#1858)

* Added new template for generating the segmentation rules, when the multipleModelMethod is "sum"

* Added new test that uses a model with the segmentation's multipleModelMethod set to "sum"

    • -0
    • +162
  1. … 5 more files in changeset.
RHDM-515 Add weighted average mode to MiningModel (#1854)

* Added functionality to retrieve the name of a segment's target field

* Added a new class MiningSegmentWeight that is used during the application of a model (as opposed to being used during rule generation)

* Updated the MiningSegmentation to generate rules for weighted average mode

* Added template for weighted average mode rules

* Added test to MiningmodelTest for weighted average mode

* Added a test PMML model

    • -0
    • +165
  1. … 6 more files in changeset.
RHBA-626 Tree model does not work on models expecting numeric output (#1847)

* Updated the process that generates the Java classes to now include a TreeNode so that the node's outcome is of the type needed

* Updated the AbstractModel so that retrieving the mining fields does not exclude any fields

* Added a method to the Treemodel to return the source for a TreeNode java class

* Added context to the name of the generated TreeNode objects, in the templates that use TreeNode

* Created an mvel template to be used in generating the TreeNode java class

  1. … 9 more files in changeset.
RHBA-623 (#1838)

* interim checkin

* RHBA-623 Mining model with modelChain does not properly generate rules

* Added method to PMML4Compiler to retrieve field definitions for fields that are the result/output of an earlier sub-model

* Added methods to AbstractModel to find MiningField and OutputField entries from the model

* Updated the modelChain template so that it only attempts to create PMMLRequestData objects using the fields that are available in the controlling model

* Added a test to the MiningmodelTest for modelChain mode models

* Added the test_mining_model_modelchain.pmml file as a test model

  1. … 9 more files in changeset.
RHDM-341 Last prediction missing value strategy does not work correctly in PMML tree models (#1792)

* Updated test data so that it reflected values that would give the desired results

* Updated TreeNode to provide a method (getWeightedConfidenceWinner) that will return a ScoreDistributionInfo object that reflects the value with the greatest weighted confidence, from the nodes that are submitted

* Updated the generated rules so that they use the new method to find the actual value and confidence information, when there are missing input values

  1. … 4 more files in changeset.
RHDM-316 PMML scorecards are not able to evaluate ComplexPartialScore (#1775)

* Added new class, ComplexScore. Used to hold information that is used by the template process to create rules that will update the value of a ScoreRow.

* Added methods to PMML4Helper that create the formula that is used in calculating the partial score

* Added rule to scorecard_compiler.drl that uses the new complexPartialScore template to insert rules to update the ScoreRow

* Added new template, complexPartialScore.mvel, that creates a rule which will update ScoreRow values

* Updated the tests for complex partial scores to include more than a single complex partial score

  1. … 5 more files in changeset.
RHDM-317 Drools engine does not compile PMML SimpleSetPredicate correctly (#1779)

* Added methods to PMML4Helper class, to use the PredicateRuleProducer to get correct form of the SimpleSetPredicate

* Changed scorecard_compiler.drl to call PMML4Helper method to get the correct string for SimpleSetPredicate

* Removed the @Ignore on the testScorecardWithSimpleSetPredicateWithSpaceValue in ScorecardTest

* Cleaned up/removed System.out statements

  1. … 3 more files in changeset.
Kie pmml (#1758)

* DROOLS-2243 Make PMML visible in execution server

* DROOLS-2243 Fixed an error that was preventing the drools-pmml tests from passing

* DROOLS-2243

Changed the package name for the JAXB generated classes. This will remove an error that occurs in droolsjbpm-integration, which was due to the generated classes in kie-pmml being the same as those that are generated by drools-pmml.

* Add tests for PMML scorecards

testSimpleScorecard - evaluate multiple PMML data requests using scorecard with simple predicates

testScorecardWithCompoundPredicate - evaluate multiple PMML data requests using scorecard with compound predicates

testScorecardWithSimpleSetPredicate - evaluate multiple PMML data requests using scorecard with simple set predicates

testScorecardWithSimpleSetPredicateWithSpaceValue - same as above but set contains value with space

testScorecardWithComplexPartialScore - evaluate multiple PMML data requests using scorecard with complex partial score

* Add tests for PMML descision trees

Add tests for various types of scorecards evaluation strategies:

- noTrueChildStrategy, which defines what to do in situations where scoring cannot reach a leaf node

-- returnNullPrediction strategy - testReturnNullNoTrueChildPredictionStrategy()

-- returnLastPrediction strategy - testReturnLastNoTrueChildPredictionStrategy()

- missingValueStrategy, which defines a strategy for dealing with missing values:

-- lastPrediction strategy - testLastPredictionMissingValueStrategy()

-- nullPrediction strategy - testNullPredictionMissingValueStrategy()

-- defaultChild strategy - testDefaultChildMissingValueStrategy()

-- weightedConfidence - testWeightedConfidenceMissingValueStrategy()

  1. … 71 more files in changeset.
RHDM-243 Rule engine freezes when evaluating multiple PMML scorecards (master) (#1689)

* Added new unit test for scorecards - This also provides an example of how to use PMML with rule units

* Updated test_scorecard.pmml so that it provides reason codes for occupations other than SKYDIVER and ASTRONAUT

* Removed some System.out.println() calls

  1. … 3 more files in changeset.
PMML Update with Rule Units (#1684)

* Begin changeover to using RuleUnit mechanism

* Begin changeover to using RuleUnit mechanism

* PMML using RuleUnit mechanism for managing the invocation of rules, especially with regards to the mining model

* Changes made in anticipation of merging/rebasing master

* Fixed missing import statement

* new test for accumulate

* Catching up

* Several fixes including...

* Updated DefaultAgenda with MarkP's fix for determining when an agenda has finished

* Updates to the DecisionTreeTest to start making use of the rule unit's

* Updates to rule templates to fix problems caused by dialect "mvel" issue and work around for dynamic salience issue

* Updates to fix more of the tests

* Fixed code that provides dump of generated resources

* Fixed scorecard tests

* Removed duplicate test case from RuleUnitTest

* Improving tree model

* Updated to add the ability to retrieve a FactHandle, from a CursoredDataSource, based on an object

* More attempts to get DecisionTree tests fully functioning

* Updates for mining model

* Updates in an effort to make mining model tests pass

* KIE-PMML using RuleUnits

Rule generation now takes into account the rule units and data sources

Compatibility with drools-pmml is maintained via the use of versioning in the PMMLCompiler.

The PMMLCompiler is selected via property in the kie.conf file.

    • -2
    • +30
  1. … 64 more files in changeset.
avoid split packages in new kie-pmml module (#1637)

  1. … 553 more files in changeset.
PMML Update with both old and new version of PMML4Compiler (#1636)

* Initial check-in for updating PMML to use POJOs where possible

* PMML update concentrating on Score card conversion

* Checkpoint before removing most of the old insert of "declare" based items

* Clean up and add license headers

* * Moved generation of the POJO code to be "pre-processor" functionality within KieBuilderImpl

* Added Regression model to the list of models that has been transformed to use the new POJO oriented approach

- Updated the rule generator templates

- Created POJO classes to replace several of the "declare" classes that were being generated; particularly those that were static in their definition

* Lots of updates to get the Tree model working and testing successfully

* More work done towards getting the MiningModel operational

* Checkpoint before building pre-compiler

* Nearing the "done point"

* Started renaming test pmml model files from .xml to .pmml

* More updates to get PMML processing completely done

* More work to get segment-to-segment transfer working

* Added in license headings

* Removed code that was machine specific

* Added fix to KieBuilderImpl so that it will not crash if the PMML compiler is not on the classpath

Disabled the unit tests for drools-scorecards module. This module will need to be updated to use the new PMML

* Revert "Added fix to KieBuilderImpl so that it will not crash if the PMML compiler is not on the classpath"

This reverts commit c332d231b0e219eed3d9c40f078eb5625151c151.

* Moved the new PMML code base to a separate module kie-pmml

* Now contains old PMML (drools-pmml) and new PMML (kie-pmml) to cover the use of drools-scorecards module

NOTE: Only one of the PMML modules should be deployed on the classpath. They both contain versions of the PMML4Compiler.

The KieBuilderImpl checks the version to call code appropriate to the version that is on the classpath.

    • -0
    • +29
    • -0
    • +0
    • -0
    • +208
    • -0
    • +200
    • -0
    • +36
    • -0
    • +417
    • -0
    • +1823
    • -0
    • +891
    • -0
    • +289
  1. … 287 more files in changeset.