DataMap is a class structure that maps a single key to multiple values. I'm supposed to design a class structure called JoinMap which keeps a pair of keys of two DataMaps. As far as I understood, a JoinMap is meant to join data from two DataMaps into a single view. It somehow reminds of the CompositeMap class structure available in the Jakarta Apache Commons Collections. Any idea how I should implement this ? Does anyone how a CompositeMap actually works?