Там какой-либо прием должен соответствовать двум XML одним XSLT? Я имею в виду способ, которым я могу подать заявку, XSLT к параметру передал.
Например (я пропустил объявления, чтобы быть коротким). XML1: XML, который будет преобразован:
<myData>
<Collection>
</Collection>
</myData>
XSLT должен быть применен к предыдущему XML:
<xsl:param name='items' />
<xsl:template match='Collection'>
<!-- some transformation here -->
</xsl:template>
XML2: Данные XML передали как параметр 'объекты':
<newData>
<Item>1</Item>
<Item>2</Item>
<Item>3</Item>
</newData>
И я должен создать ряд узлов в узле 'Набора' в XML1 для каждого элемента 'Объекта' в XML2 с помощью XSLT. И я не знаю то, что XML2 содержит точно во время проектирования. Это сгенерировано во времени выполнения, таким образом, я не могу поместить его в XSLT, я знаю только его схему.
(1). Вы можете сгенерировать XSLT вместо использования статического XSLT:
преобразовать xml2 с помощью xslt1, что приведет к xslt2
преобразовать xml1 с помощью xslt2, что приведет к желаемому результату
(2). Вы можете использовать функцию document ()
для загрузки xml2. Для этого требуется, чтобы xml2 сохранялся на диске или был доступен по uri.
<xsl:copy-of select="document('xml2.xml')//newData" />
Прочтите и используйте стандартную функцию XSLT document ()
.