All major browsers allow empty values on inputs with a pattern without the required attribute. HtmlUnit's`isValid()` returns `false` in that case. Please check for `!isRequired()` in `HtmlInput.isPatternValid()`