Extend Product Definition and prepare to generation