Rule-based transformation systems vary widely in the mechanisms that determine the order in which individual rules are applied. The rule application mechanism can vary in four main respects: form, rule selection, rule iteration, and phasing . Rule form refers to whether order of rule application is implicit or explicit. In implicit scheduling, the transformation engine selects the execution order, and the user has no explicit control over the scheduling algorithm specified by the tool. Refinements of implicit scheduling include binding-based scheduling. In explicit style, the user has direct control over execution order of rules using explicit features of the transformation language.