1. A computer-implemented method of processing data in a feature-based computer-aided design system, the method comprising: determining an occurrence of an error condition that affects a feature of a three-dimensional model and that requires correction; automatically correcting the condition by performing an action; and wherein: the action is any one or combination of actions that reorder a sequence of features in the three-dimensional model, actions that change at least one parameter of the feature, and actions that delete or change a feature reference; and the action has one or more constraints that bound the action by determining on which if any of a plurality of directly and indirectly related features the action operates.