We introduce a formal framework for the refactorization of complete information systems, i. e. the data model and the data itself. Within this framework model transformations are uniquely extended to the data level and result in data migrations that protects the information contained in the data. The framework is described using general and abstract notions of category theory. Two concrete instances of this framework show the applicability of the abstract concept to concrete object models. In the first instance, we only handle addition, renaming and removal of model objects. The second instance can also handle folding and unfolding within object compositions. Finally, we discuss how an instance of the framework should look like that is able to handle inheritance structures as well.