6. The computer implemented method of claim 1 wherein executing the identified one or more applicable rules subject to rule execution criteria further comprises locating virtual machine instructions for execution of the one or more applicable rules in one or more files based on a rule identifier associated with each rule.
1. A computer implemented method for rule based data driven validation comprising: receiving over a communication network a target data object in a validation request from an executing software application; identifying one or more target data member items of the target data object based on stored data type definitions; identifying a data type and any inherited data type for the one or more target data member items; identifying one or more rules applicable to each target data item based on a target data identifier associated with each applicable rule having a same data type or an inherited data type of the target data item by a rule engine identifying one or more rule instance data items based on the one or more target data items, at least one rule instance data item comprises a condition which is implemented as another rule instance data item accessible by the rule engine like any other rule instance data items, and the rule engine identifying one or more rules linked to the identified one or more rule instance data items as the one or more applicable rules; in response to determining, via rule execution criteria, the condition of the at least one rule instance data item has been satisfied, as determined by a result of separately executing the another rule instance data item using rule logic decoupled from the software application to determine whether the at least one rule instance data item is to be executed, executing the identified one or more applicable rules after determining that the condition has been satisfied; returning a validation result data object to the software application, wherein the target data object identifies each target data member item by a class identifier and a property identifier; and identifying a data type and any inherited data type for the one or more target data item members comprises determining data types and class membership based on identifying matches with the class identifier and the property identifier for each target data member item and the data type and any inherited data type.