1. A method for automatic composition of model transformations in a data processing system from a predetermined set of model transformations stored in memory of the system, the method comprising: providing in the memory a state machine which defines, for all possible execution sequences of transformations in said predetermined set, start and potential end states of a model for each transformation in each execution sequence, said start and potential end states being defined in the state machine in terms of predetermined model attributes; in response to specification of a target state for an input model to be transformed by the system, selecting an execution sequence in the state machine between a start state corresponding to the input model and an end state corresponding to the target state; successively executing on the input model each transformation in the selected execution sequence; and after executing each transformation in the selected execution sequence, comparing a transformed input model state resulting from executing each transformation to a model state defined in the state machine to determine if the selected sequence is inoperable for the input model and, if so, selecting an alternative execution sequence in the state machine between the start state corresponding to the input model state and the target state; wherein the steps of executing transformations and comparing states are continued until either the target state is achieved for the input model or no alternative execution sequence is available in the state machine.