Data adaptation is an essential system component in a wide variety of application areas. Adaptation is performed to manage data in response to limited resources and changing system conditions. Recent research has led to the development of general models for adaptive systems, including our own general framework for multidimensional adaptation. In this article, we review our framework, which distills the common elements essential to a broad class of adaptive applications. We then present our design for GAL, a middleware library which implements our generic framework. We include a thorough evaluation of GAL’s adaptive performance in our experimental prototype.