Implement String.Validate and simplify subtypes