The Zorba XQuery processor by default has arbitrary precision for the xs:integer
type. Compared to a C++ int
, however, arbitrary precision integers are orders of magnitude slower. If arbitrary precision integers are not needed, they can be disabled by configuring Zorba with the ZORBA_WITH_BIG_INTEGER
option set to OFF
.
When arbitrary precision integers are disabled, Zorba uses a C++ long long
for xs:integer
, the precision for which is dependent on your C++ implementation. Typically, however, the precision is at least 64 bits. However, in order to maintain the condition that the value space for xs:nonNegativeInteger
is a subset of that of xs:integer
, one less bit is allowed for xs:nonNegativeInteger
.