i am looking for a good c++ rule engine. can you please let me know if there there any XML based rule engine for C++
Check CLIPS (developed originally by NASA) Its a rules engine written in C. It is under continuous development for many years. However, the rules are defined in LISP like rule defintion language.
Its hosted on sourceforge http://clipsrules.sourceforge.net/
I guess the answer to "what is a rule engine" is there : What can Rules Engines accomplish?
But that's a too broad definition. In fact a "rule engine" should be totally dependant on your domain. The engine will provide settings (XML based or anything else suitable for the task) and then apply the rules.
So look for domain-specific engines and you'll certainly find something useful.
ILog Rules(IBM) is writen in C++.