У меня есть три XSL файлов и один входной файл:Как объединить несколько файлов xslt и xml-файлы для ввода как одного другого, чтобы получить окончательный вывод?
-input.xml process1.xsl output1.xml
-output1.xml process2.xsl output3.xml
теперь я хочу просто как:
input.xml process.xslt output.xml
process1.xsl, process2.xsl и их результаты должны передавать как введите в файл xsl и сгенерируйте файл output.xml в том же файле process.xsl.
Как это сделать в xslt, я упомянул об импорте xslt apply, но я не получаю надлежащую ссылку для назначения вывода xml в качестве входных данных для другого xsl-файла в одном xsl .. может ли кто-нибудь помочь мне?
здесь я вызвал input.xml и использовал process1.xsl для первого шага , и полученный результат сгенерирован в переменной $ content, теперь я застрял здесь, как мне импортировать process2.xsl и оспаривать его предыдущий выход в переменных $ содержания, я просто в состоянии отобразить свой вывод я хочу Ассинг его к следующему XSL файл:
<xsl:import href="process1.xsl"/>
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<xsl:variable name="content">
<xsl:apply-imports/>
</xsl:variable>
<xsl:apply-templates select="exsl:node-set($content)/*" mode="m"/>
</xsl:template>
<xsl:template match="@*|*|text()" mode="m">
<xsl:copy>
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="@*|*|text()" mode="m"/>
</xsl:copy>
</xsl:template>
что-то вроде этого, но это не работает?
Какой процессор XSLT 2.0 вы используете? Последние процессоры поддерживают функцию 'transform' от https://www.w3.org/TR/xpath-functions-31/#func-transform, поэтому это будет самый общий и мощный подход, но для этого требуется использовать XSLT 3.0, как это поддерживается Saxon 9. 7 PE или EE или последняя Altova. Вам также нужно будет объяснить/показать, какой вход 'process.xslt' берет и как вы хотите рассматривать два результата как один вход. –
Вы слышали о "https://www.w3.org/TR/xproc/"? Это очередность преобразований. Возможно, это может быть реализовано в вашей среде. – uL1
@MartinHonnen Я использую файл Saxon HE 9.7.0, также я отредактировал вопрос с кодом – divya