Reversible data hiding (RDH) is a specific information hiding technique in which both the embedded data and the original cover medium can be exactly extracted from the marked data. In this paper, we present a general expansion-shifting model for RDH by introducing the so-called reversible embedding function (REF) which maps each point of Zn to a nonempty subset of Zn. Moreover, to guarantee the reversibility, the mapped subsets of distinct points should be disjoint from each other. With REF, RDH can be designed and the corresponding rate-distortion formulations can be established, providing a possibility to optimize the reversible embedding performance. Some examples of REF are given, and a preliminary theoretical investigation on REF is conducted as well.