The process of selecting representations for data structures is considered. The model of the selection process we suggest is centered around a base of known abstract data structures and their representations. The abstract data structure for which a representation is required would not necessarily be in the base, but should be a combination of base data structures. After describing this model of selection and its motivation, two aspects of the process are examined in more detail: a) The interaction with the user is treated by defining a language for the natural description of data structure requirements and b) two main types of combinations—hierarchical and cross-product—are analyzed, clarifying the relation between representations for component data structures and a representation for the combination. © 1977, ACM. All rights reserved.