Is there a reason this needs to inherit from `ValidationMatcher`?