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.