У меня когда-то был клиент с похожей проблемой - тысячи строк XSLT, постоянно растущих.Я потратил час, читая его с растущей недоверием, а затем переписал его в 20 строк XSLT.
Рефакторинг - это часто хорошая идея, и чем хуже код, тем выгоднее рефакторинг.Но нет никаких оснований полагать, что только из-за того, что код плохой и нуждается в рефакторинге, вам нужно перейти на другой язык программирования.XST на самом деле очень хорошо справляется с разнообразием и сложностью, если вы знаете, как правильно его использовать.
Возможно, код является накоплением специальной обработки особых случаев, и каждый новый обнаруженный особый случай приводит к появлению новых правил.добавляется.Это сложная проблема для любого языка, но XSLT может справиться с этим лучше, чем большинство, если вы все время прикладываете усилия к поиску абстрактных общих правил, которые охватывают все специальные правила, поэтому вам нужно только кодировать специальные правила какисключения.