I think, Mike's been pondering over this issue, although he knows his software (Saxon) is right (and I do as well). Mathematicians and scientists some times have these doubts.
I think, when a processor like that for XSD 1.1 is made with java language (as in case of Mike I think), we use underlying implementations of java.lang.Integer, or the primitive "int" to implement respectively xs:integer.