implementation of TransformableDataSource