Нам нужно сделать несколько XML-документов, каждый из которых содержит один элемент информации из единого документа XML с неизвестным количеством элементов информации. Например, этот документ:Преобразование многоразветвленного XML-документа в несколько XML-документов
<alert>
<identifier>2.49.0.1.124.76fea972.2015</identifier>
<info>
<language>en</language>
</info>
<info>
<language>fr</language>
</info>
</alert>
должны давать эти два документа:
<alert>
<identifier>2.49.0.1.124.76fea972.2015</identifier>
<info>
<language>en</language>
</info>
</alert>
<alert>
<identifier>2.49.0.1.124.76fea972.2015</identifier>
<info>
<language>fr</language>
</info>
</alert>
Хотя обрезке братьев и сестер элемента «информация», нам нужно скопировать все узлы, атрибуты, пространства имен и т.д. всего предков (от корня), а также всех узлов, атрибутов, пространств имен и т. д. конкретного элемента информации.
Я новичок в XSLT и не понимаю, как это сделать. Любая помощь будет принята с благодарностью!
Можете ли вы хотя бы использовать процессор XSLT 2.0, например Saxon 9? Процессоры XSLT 1.0 не поддерживают создание нескольких файлов результатов с одним преобразованием, если не поддерживается некоторым элементом расширения. –
Да, решение XSLT 2.0 было бы хорошо. –