Can we track who has created/updated a rule in RMA?
Yes you can.
First of all, you have to use a versioning repository, for example BVS, CVS, Subversion, etc. All changes will be committed with a user id. For CVS and Subversion, authorization is handled by the versioning system, for BVS, you will have to roll your own.
If you want really fine grained control, store your rule template instances as separate entities in the repository. That way, every rule will have its own version track.
If you don't need that, every change will still be tracked, but you might have to do a compare on to versions to see what the user changed.
Was just curious to know, how can we invoke these individual rule template instances ?
I assumed we can only invoke a ruleset or a function.
If we club them within a ruleset they we loose the version control at rule level.
You are correct - you can't invoke individual rules. What you do is that you create a RuleSet Template that contains an entity placeholder that references the Rule Template. The RuleSet Template value holder you use to create Rule Template Instances has a check box that you need to check ("Store instances separately" or something like that).
That way, rule instances are stored as separate entities, and the SRL for the rules is included in the generated ruleset.
Retrieving data ...