The RuleCategory allows for the definition of categories of rules to be applied\n to various objects and indicates the expected interface to be implemented by a rule instance.\n A RuleDefinition may belong to multiple categories. \n
\n RuleCategories fall into two broad types, ATTRIBUTE and CLASS level, as specified via the ruleType\n attribute. When a RuleDefinition belongs to an ATTRIBUTE level category, its instances will have\n a mandatory applyToAttribute attribute. Both ATTRIBUTE and CLASS level RuleDefinitions have an optional\n applyToClass attribute by default.\n
\n Specifying a RuleCategory will cause the generation of several artifacts including:\n
\n - a category interface: this interface will be created based on the ruleParam values and will be\n implemented by RuleDefinitions that are part of the category\n
a rule collection: this is a category specific collection of rules that organize the rule instances\n in this category.\n
\n Exactly how a RuleCategory applies rule instances is category specific and this behaviour should be\n part of the description of a rule category.\n
\n For CLASS level rules, you must specify the classInfoFromParam attribute to indicate how to \n get the DmcClassInfo from whatever object you are passing to the rule. For ATTRIBUTE level rules,\n you must specify both attributeInfoFromParam and classInfoFromParam.
@author Auto GeneratedGenerated from: org.dmd.dms.meta.MetaGenerator.dumpDMOClasses(MetaGenerator.java:1847)