After searching a little bit, I found this patent reference from 2002 for a "Declarative data transformation engine": http://www.google.com/patents/US20070220022 (Disclaimer: that kind of patents are the reason why I think the american software patent system is totally flawed and needs to be changed). However, I don't know if someone made a product based on this patent for the usage you described above. In theory, that should be possible, by performing those steps: 1. create a new database schema as a copy of your existing one (version 1) 2. apply schema transformations to transform it into "version 2" 3. apply data migration from database version 1 into database version 2 4. replace database version 1 by version 2 If this is a good idea to solve your "data movement" problem this way, depends a lot on your circumstances and your database system, since it involves making a whole copy instead of applying the migration in-place. Where it works, you can solve step 3 by any "Extract-Transform-Load" tool available on the market. AFAIK, tools like Microsoft SSIS or Oracle ODI seem to offer declarative definitions of transformation rules as well as non-declarative.