Data factory - more concrete implementation