I think following is a valid cron expression: "50 21 ? \* 3,6" But cron-parser throws exception for it. At the same time 50 21 \* \* 3,6 is invalid, but goes through without any exception.