#26, #27, #67: Add choice validator