Вы можете использовать таблицу стилей XSL для объединения ваших таблиц стилей. Однако это эквивалентно использованию элемента xsl: include, а не xsl: import (как уже указывал Азат Разетдинов). Вы можете прочитать разницу здесь .
Поэтому сначала вы должны заменить xsl: import на xsl: include, разрешить все конфликты и проверить, получаете ли вы по-прежнему правильные результаты. После этого вы можете использовать следующую таблицу стилей для объединения существующих таблиц стилей в одну. Просто примените его к вашей основной таблице стилей:
<?xml version="1.0" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="xsl:include">
<xsl:copy-of select="document(@href)/xsl:stylesheet/*"/>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Первый шаблон заменяет все xsl: include на включенные таблицы стилей с помощью функции document, которая считывает файл, указанный в атрибуте href. Второй шаблон - преобразование идентичности .
Я проверил это с Xalan, и, кажется, он работает нормально.