Data is shared between multiple enterprise data sources and mobile clients in a distributed system such that requests from a mobile client for enterprise data are received, the appropriate enterprise data sources that contain the requested data are determined, and the enterprise data is retrieved from the determined enterprise data sources. Data maintained at a mobile client is shared with multiple enterprise data sources. The mobile clients send requests to an application server for synchronization of data records maintained at the mobile client with corresponding data records at the enterprise data sources. The client request includes metadata that identifies enterprise data sources for the requested data records and that specifies a relational correspondence between the requested data. The mobile client data records and the corresponding data records of the enterprise data sources are compared to identify any data conflicts between the two sets of data records. Any identified data conflicts are resolved.