add in validations for presence of vairous properties