The ResolveURIComponent does not catch the exceptions: if a RuntimeException is thrown by the URIResolver, it's transmitted to the XSL and the zoneitem is not rendered (an error is displayed in the back-office). Exceptions should be catched and the empty string returned to avoid this.