There is a design limit in the Saxon namepool that it
permits a maximum of 255 prefixes for a given namespace
However (a) the code is written so that it is not
actually possible to exceed 127 prefixes, and (b) when
the limit is exceeded, an unhelpful Null Pointer
Exception is produced.
The problem is present in both 6.5.2 and 7.6.5.
It has been source cleared in both branches. The
clearance ensures that the namepool can handle 255
prefixes and that a specific error message is produced
when the limit is exceeded; it does not actually remove
Apparently JAXB can generate XML documents that
allocate a very large number of prefixes to the same
The W3C XSLT specification leaves it to implementations
to decide what limits can sensibly be imposed; there
are no conformance requirements relating to limits.