Implementation of a dataprovider