as noted above, we only want to require this at publish time, but the validate method gets called other times.