How cron translation works
Each field of the cron expression is parsed independently — wildcards (*), lists (1,3,5), ranges (9-17), steps (*/15), aliases (MON-FRI) and modifiers (L, W, #, ?) all get an English equivalent. The translator then stitches the field translations into a single sentence, ordered for natural reading.
Some translations are surprising. 0 0 * * 1-5 reads as “At 00:00, Monday through Friday”. But 0 0 1 * 1-5 reads as “At 00:00, on day 1 of the month, Monday through Friday” — and in standard cron, that's an OR (either condition), not an AND. The calendar clarifies whichever way your scheduler interprets it.