Abstract :
The need to transform, integrate and exchange data is common to many application contexts. In databases, we often use different systems to handle data, with different models, and we therefore need to translate data and their description from one to another. The problem has been considered for decades, but definitive solutions are not yet available. The problem is relevant at the schema level, during the specification or design phase, and at the data level, when we have databases, and we want to translate them into some other system, which may be similar (for example, relational to relational) or completely different (for example, XML to relational or viceversa). In current practice, translation problems are often tackled by means of ad-hoc solutions, for example by writing code for each specific application, but this is clearly very heavy and hard to maintain.