move validation logic
 - into service layer, out of process layer
 - null/empty string is okay
 - update migration script to have tz code