All the validation text passes through the WebServer Translate method.
(WebServer, not WebHandler here).
s_web._SitesQueue.defaults.InsertPromptText = s_web.Translate('Insert')
s_web._SitesQueue.defaults.CopyPromptText = s_web.Translate('Copy')
s_web._SitesQueue.defaults.ChangePromptText = s_web.Translate('Change')
s_web._SitesQueue.defaults.ViewPromptText = s_web.Translate('View')
s_web._SitesQueue.defaults.DeletePromptText = s_web.Translate('Delete')
s_web._SitesQueue.defaults.RequiredText = s_web.Translate('Required')
s_web._SitesQueue.defaults.NumericText = s_web.Translate('A Number')
s_web._SitesQueue.defaults.MoreThanText = s_web.Translate('More than or equal to')
s_web._SitesQueue.defaults.LessThanText = s_web.Translate('Less than or equal to')
s_web._SitesQueue.defaults.NotZeroText = s_web.Translate('Must not be Zero or Blank')
s_web._SitesQueue.defaults.OneOfText = s_web.Translate('Must be one of')
s_web._SitesQueue.defaults.InListText = s_web.Translate('Must be one of')
s_web._SitesQueue.defaults.InFileText = s_web.Translate('Must be in table')
s_web._SitesQueue.defaults.DuplicateText = s_web.Translate('Creates Duplicate Record on')
s_web._SitesQueue.defaults.RestrictText = s_web.Translate('Unable to Delete, Child records exist in table')
'Alert' flows through the WebHandler, Translate method.
cheers
Bruce