While it works fine and is certainly what I would do in many contexts, I
wonder if a negative value is the best we can do for "unlimited". Could we
not use a field with no value, or with a descriptive value of "unlimited" (I
realize perhaps you want to have this match the data types xep and that's
why you restricted to integer)