Improved validation, including setting of error strings as a title on invalid elements