So I am trying to use Bean Validation to assertain that the DiscriminatorValue of a given entity can only be one of a selected few.
If the discriminator would have been an ordinary field, that would have been an easy task using @Pattern
with a matching regexp.
Since it's not, how do I go about this?
The short answer is that you cannot do that with Bean Validation. As you say, the discriminator column/value is not even part of your entity. It is just a JPA internal value.
I guess my second questions is why you would want to do that. What do you want to achieve? At best these discriminator values are determined at development time by the developer. Provided you let the JPA provider handle the data there should never be a problem.