Вы спрашиваете: есть ли другой способ загрузить несколько файлов и сохранить каждый из них в переменной, а затем обработать эти несколько переменных в xsl: copy-of?
Ну, нет: если вы хотите 18 переменных, каждый из которых содержит один файл, тогда вам понадобится 18 объявлений переменных.Но вы можете добиться того же эффекта, не имея 18 переменных.
Во-первых, вам вообще не нужны никакие переменные, поскольку каждая из них используется только один раз.Вы можете просто вставить их все (заменить ссылку на переменную $Fig6
на выражение, используемое для инициализации переменной Fig6
).
Во-вторых, если URI всегда будут систематически называться так, то вы неНе нужно их прописывать: вы можете поместить имена в одну переменную
<xsl:variable name="figs" select="(2 to 18)!(. || '_Figuration_transformiert.xml')"/>
, а затем заменить ссылку на $Fig6
ссылкой на $figs[6]
.И, конечно же, вам не нужно прописывать $figs[1]
, $figs[2]
и т. Д .: вы можете обрабатывать их все в цикле.
(Приведенное выше объявление переменной является синтаксисом XSLT 3.0, но вы можетедобиться того же в XSLT 2.0 с немного большим количеством кода).