Usually, trying to artificially control or detect the rules execution
to use as part of other "business rules" is not a good thing. In my opinion, I think you should step back and give a new look at the problem. What is your requirement? Rules (in forward chaining systems) react to the working memory state, and when the state is detected, they fire new actions that will usually change the state, possibly (re)activating new rules, and so on.
My advice to you is to try to rewrite your rules (1, 2, 3 or as many as you need) based on the state of the working memory. There are several reasons for the paradigm to work like that, but just as one example, if in the future you have a new rule X that causes a change of state similar to rules 1 and 2, your rule 3 will continue to work just fine, since it is based on state and not "hard coded" as dependent of other rules.
This is obviously a general recommendation. We would need more details about what kind of rules you are trying to model in order to better help you.
Edson
--
Edson Tirelli
JBoss Drools Core Development
JBoss by Red Hat @ www.jboss.com