Details
Description
new Version(-1) leads to a date version (i.e. version.isDateTime() == true) due to how the union works.
But, new Version(-1) is invalid by the (FES 2.0) spec, and so is stated on Version.getIndex(). So the simplest solution is to throw an IllegalArgumentException on the index constructor of Version if it's not a positive integer > 0.