A Data warehouse (DW) integrates data from multiple dis- tributed heterogeneous data sources. A DW can be seen as a set of ma- terialized views defined over the source relations. The materialized views are eventually updated upon changes of the source relations. For differ- ent reasons (e.g. reduction to the view maintenance cost, unavailability of the sources etc) it is desirable to make the DW self-maintainable. This means that the materialized views can be maintained, for every source relation change, without accessing the sources. In this paper we deal with the problem of selecting auxiliary views to materialize in the DW such that the original materialized views and the auxiliary views taken together are self-maintainable. A distinguish- ing feature of our approach is that we consider that a data source can store multiple source relations referenced by the materialized views. Fur- ther, the data sources are of cooperative type, that is, they can compute and transmit to the DW the changes for (complex) views defined over their own relations. We first formally model the problem by using an AND/OR dag structure for multiple views that allows the representa- tion of common subexpression sharing. We then provide a method for computing auxiliary views that fit in the space available for materializa- tion and minimize the cost of computing the changes to be applied to the materialized views during the maintenance process.