The numeric ranges 0-10 and 10-19 overlap, just as the time ranges 00:01:00-00:00:02:00 overlaps 00:02:00-00:03:00.
It's the programmer's responsibility to say what s/he really means, not for "the system" to make that choice.
The system has canonical representation for discrete element range. The upper bound is exclusive, the lower bound is inclusive. All the docs are doing is stating the obvious consequence of that rule.
The “numeric range 0-10” is under specified and thus, as written, one must abide by the rule, implying [). The programmer is free to fully specify their range to have the upper bound inclusive, but canonicalization would then just change it to be “0-11” with the [) implied.
David J.