Xalan C++ позволяет вызывать в XSLT-преобразовании пользовательские функции расширения, написанные на языке C. Кроме того, в дополнение к базовым функциям XSLT, Xalan C++ реализует несколько наиболее часто используемых функций, например, функцию nodeset. В текущей версии (1.2) Xalan C++ не поддерживает элементы расширения.
Возможности расширения Xalan Java намного богаче. Xalan Java как и Xalan C++ реализует дополнительную библиотеку функций (которая по сравнению с Xalan C++ также намного шире). Помимо этого, Xalan Java позволяет создавать функции и элементы расширения на Java и других языках программирования.
Остановимся на последнем пункте более подробно. Xalan позволяет использовать библиотеку BSF (англ. bean scripting framework — система скриптовых языков для bean-компонент). BSF — это библиотека, которая позволяет использовать скриптовые языка в Java-приложениях и апплетах. На данный момент BSF позволяет реализовывать в Xalan Java расширения на следующих скриптовых языках:
Mozilla Rhino (фактически, ещё один вариант JavaScript);
NetRexx;
BML;
JPython;
Jacl;
PerlScript;
VBScript;
JavaScript.