A method of aggregating and updating heterogeneous data objects for a client subsystem of a plurality of client subsystems, the method comprising, at an aggregator server : storing a set of data object definitions , each data object definition providing a mapping between an aggregated data object format and a plurality of supplier data object formats; storing a set of update definitions, each update definition providing a mapping between an aggregated update operation and a plurality of supplier-specific supplier update mechanisms; receiving, in response to one or more requests transmitted from the aggregator server following a request from the client subsystem , multiple data objects in multiple of the supplier data object formats from multiple supplier sub-systems (104, 104-1, 104-2); selecting, based on the supplier data object formats of the received multiple supplier data objects , corresponding ones of the data object definitions and generating one or more aggregated data objects according to the selected data object definitions ; storing the one or more generated aggregated data objects in an aggregated data record in a repository ; presenting the one or more generated aggregated data objects to the client subsystem ; receiving, via an application programming interface implementing a common set of the aggregated update operations for use by all of the plurality of client subsystems , an aggregated update operation from the client subsystem for updating the one or more presented aggregated data objects ; updating the aggregated data objects stored in the aggregated data record in the repository in accordance with the aggregated update operation; selecting, based on the received aggregated update operation, corresponding ones of the update definitions and initiating supplier-specific supplier update mechanisms according to the selected update definitions; repeating the receiving, selecting and generating for a further aggregated data object ; and storing the further aggregated data object in the aggregated data record prior to the presenting. storing a set of data object definitions , each data object definition providing a mapping between an aggregated data object format and a plurality of supplier data object formats; storing a set of update definitions, each update definition providing a mapping between an aggregated update operation and a plurality of supplier-specific supplier update mechanisms; receiving, in response to one or more requests transmitted from the aggregator server following a request from the client subsystem , multiple data objects in multiple of the supplier data object formats from multiple supplier sub-systems (104, 104-1, 104-2); selecting, based on the supplier data object formats of the received multiple supplier data objects , corresponding ones of the data object definitions and generating one or more aggregated data objects according to the selected data object definitions ; storing the one or more generated aggregated data objects in an aggregated data record in a repository ; presenting the one or more generated aggregated data objects to the client subsystem ; receiving, via an application programming interface implementing a common set of the aggregated update operations for use by all of the plurality of client subsystems , an aggregated update operation from the client subsystem for updating the one or more presented aggregated data objects ; updating the aggregated data objects stored in the aggregated data record in the repository in accordance with the aggregated update operation; selecting, based on the received aggregated update operation, corresponding ones of the update definitions and initiating supplier-specific supplier update mechanisms according to the selected update definitions; repeating the receiving, selecting and generating for a further aggregated data object ; and storing the further aggregated data object in the aggregated data record prior to the presenting. <EOS>