changed internal interface IDataProvider