1. A method of applying a rule to a data object using a computing device having at least a processor, a computer-readable memory, a display device and an input device, the method comprising: providing in the computer-readable memory a rule template having attributes corresponding to attributes of at least one type of data object; providing in the computer-readable memory a rule template icon associated with the rule template and a data object icon associated with a data object having corresponding attributes; allowing a developer of an application to associate the rule template icon with the data object icon; as a result of the association of the rule template icon with the data object icon, at the processor instantiating the rule template with the data object.