There is a functional Rule Maintenance document in place now however it does not have any validation so that piece still needs to be added.
Additional work which I still need to do here:
1) Create a page to "front" this maintenance document for selecting RuleTemplate and DocumentType
2) Add validation to the form (including validation provided by WorkflowAttribute implementations and RuleValidator)
3) Implement copy functionality
4) Add Lookup links for groups and persons
5) Add role responsibilities (currently only has persons and groups)
6) Update RuleQuickLinks so that it passes properly formed urls for creation of these documents
7) Implement the Delegate Rule maintenance document (should be similar to rule with the addition of delegation type and selection of responsibility to delegate from)
8) Clean up all the old rule GUIs and remove all the uneeded methods from RuleService (makeCurrent2, save2, etc.)
Jeremy is working on the lookup.
The data model behind all of this should essentially be stable at this point. I made a minor change to the KREW_DLGN_RSP_T table so that it points to it's delegating "responsibility id" instead of "rule responsibiliy id".
The difference between these two is that "responsibility id" does not change across different versions of a rule, with the "rule responsibility id" is just a surrogate key generated from an oracle sequence which changes will every edit to a rule. This allowed me to break the hard link between RuleResponsibility and it's list of RuleDelegation objects. I modifed FlexRM appropriately to handle fetching of delegations under this tweak to the data model. Making this change should make the rule versioning code exponentially easier to maintain!