assume form is valid before processing
return empty array if no messages