!7 concept AppliedRule { S ruleID; S modifiedRule; S judgement; S comment; S varMap; S matchedRuleStruct; S intention, context; } cmodule AppliedRules > DynCRUD { start { dbIndexing(AppliedRule, 'ruleID); for (AppliedRule r : cloneList(conceptsWhere AppliedRule(ruleID := null))) { S ruleID = "?"; pcall { ruleID = gazelle_ruleIDFromMatchedRuleStruct(r.matchedRuleStruct); } cset(r, +ruleID); } for (AppliedRule r : cloneList(conceptsWhere AppliedRule(varMap := null))) { S varMap = ""; pcall { varMap = sfu(gazelle_varMapFromMatchedRuleStruct(r.matchedRuleStruct); } cset(r, +varMap); } dm_registerAs('gazelleFeedbackCRUD); } enhanceFrame { internalFrameIcon(f, gazelle_frameIcon()); } // API L feedbackForRule(S ruleID) { ret conceptsWhere AppliedRule(+ruleID); } Map stats() { ret multiSetToMap(collectMultiSet ruleID(concepts())); } }