Я работаю над существующей системой, которая генерирует XML для устаревшей системы с использованием простого языка шаблонов. Это, очевидно, не идеально, потому что трудно увидеть структуру сгенерированного XML, он страдает от побега проблем и легко генерировать неверный XML.
Для любых здравомыслящих форматов XML я бы просто использовал Xstream или другую библиотеку сериализации Java XML, но в этой унаследованной системе есть много странных правил, таких как «этот узел должен быть исключен, если значение меньше десяти» и «форматирование дата в узле x зависит от значения узла y ". Есть и другие странные правила, но этого должно быть достаточно, чтобы понять идею.
Как я уже сказал, шаблонный подход далек от идеи, но он прагматичен и работает (с некоторыми усилиями). Есть ли лучший способ создания XML-кода для устаревших систем с таким количеством правил форматирования? XSL приходил мне в голову, но реализация любого количества логики в XSL, откровенно говоря, не очень заманчива.