public RuleSetModelEvaluator(PMML pmml, RuleSetModel ruleSetModel){ super(pmml, ruleSetModel); RuleSet ruleSet = ruleSetModel.getRuleSet(); if(ruleSet == null){ throw new MissingElementException(ruleSetModel, PMMLElements.RULESETMODEL_RULESET); } // End if if(!ruleSet.hasRuleSelectionMethods()){ throw new MissingElementException(ruleSet, PMMLElements.RULESET_RULESELECTIONMETHODS); } }
@Override public BiMap<String, SimpleRule> load(RuleSetModel ruleSetModel){ ImmutableBiMap.Builder<String, SimpleRule> builder = new ImmutableBiMap.Builder<>(); RuleSet ruleSet = ruleSetModel.getRuleSet(); builder = collectRules(ruleSet.getRules(), new AtomicInteger(1), builder); return builder.build(); }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = PMMLObject.traverse(visitor, getExtensions()); } if (status == VisitorAction.CONTINUE) { status = PMMLObject.traverse(visitor, getMiningSchema(), getOutput(), getModelStats(), getModelExplanation(), getTargets(), getLocalTransformations(), getRuleSet(), getModelVerification()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = PMMLObject.traverse(visitor, getExtensions()); } if (status == VisitorAction.CONTINUE) { status = PMMLObject.traverse(visitor, getMiningSchema(), getOutput(), getModelStats(), getModelExplanation(), getTargets(), getLocalTransformations(), getRuleSet(), getModelVerification()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
RuleSetModel ruleSetModel = getModel(); RuleSet ruleSet = ruleSetModel.getRuleSet();