Some fixes in data value generation, added firstPrimitiveFieldType() method