Extend contract model to allow id to be set.