This document describes an e-infrastructure and data service that was designed to provide modular access to different computing resources from applications. The service allows reading and writing data to multiple e-infrastructures in a straightforward way. It identifies four types of e-infrastructures - local, remote, grid, and cloud - and allows defining policies and quotas for each. The data service implements common file operations independently of the underlying technologies through storage interfaces. This provides a virtual file system view of data stored across different infrastructure implementations.