Validating schemas is a little complicated becuase we need the types to do full validation. Thus their validation class cannot just be annotations, but actually involve more logic after we extract the types. Thus in the ValidatorImpls class, validation of schemas is done without using annotations