There are some use cases where you want to avoid that the user makes a “wrong” choice. This could be done by making an option “always false” based on certain conditions (previous answers). However, that does not seem possible at the moment, if I’m not mistaken. That said, there is a work-around to obtain kind of the same result.
That work-around could be to use two different change-sets to change the datafield, and don’t show the question (or delete it), but this is a bit less transparent for the user, unless you combine it with showing a certain comment. And, in my experience, using change-sets for this purpose makes the maintenance of the Q&A a bit more difficult (as you have to remember that there was a change-set for this purpose, or you have to be very explicit when you name both change-sets).
That said, this work-around is only possible for true/false datafields and is less of an option to exclude certain predefines for a list datafield (well, it may be technically possible but that would make it rather complicated, I think).
I just want to make sure that I did not overlook the possibility to make an answer option “always false” based on a condition.
Another work-around could be to make the question invisible, tie it to a switch condition, and show a comment to the user. But it is actually not a real work-around as it is not possible to block the visibility of a question and still enable the linked datafield. If you do not show the question, the datafield is ignored (which makes sense).