ОБСУЖДЕНИЕ

Работа с xml-файлами

22 ответов 8,8 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Это я к пример у написал соответствие двух строк. В действительности может быть отношение один ко многим. Блоков может быть 50-60 тысяч.
Вы же не планировали запихнуть всё это в код? Где-то же надо хранить эти значения. Или в шаблоне, или в какой-то базе.
Если XSLT не устраивает, то я думаю, надо иметь таблицу-справочник в РСУБД с соответствием значений r1/r3. Загружать в какую-то временную (in memory?) таблицу исходный XML файл, попутно дополняя недостающие поля значениями из справочника. Потом выгружаем всё это в новый XML файл. Вот как-то так...
 
пример использование switch/case,
я не нашел онлайн xquery тестера подддерживающего replace, поэтому в полной работоспособности примера не уверен, но подход должен быть понятен

 
если пар значений много, то switch/case явно не лучший выбор

saxon по крайнер мере, поддерживает передачу аргументов в xquery и вызов java методов из запроса, я бы копал в эту сторону