separated format factories from dataobjects and fixed unit tests