Пытается переместить сразу дочерние элементы из корневых элементов, а затем скопировать их под новый корневой элемент. Способный сделать это один дочерний элемент, но не уверен, как применить or
с в select
.
Current XSLT для рекурсивного дочернего элемента:XSLT: не включая более одного дочернего элемента при применении шаблона
<xsl:template match="Element1">
<Information>
<xsl:apply-templates select="*[name()!='Element1']"/>
</Information>
<xsl:apply-templates select="Element1"/>
</xsl:template>
<xsl:template match="Element1/Element1">
<Metadata>
<xsl:apply-templates/>
</Metadata>
</xsl:template>
Я хочу, чтобы применить то же самое для другого дочернего элемента и попытался
<xsl:template match="Element1">
<Information>
<xsl:apply-templates select="*[name()!='Element1'] | *[name()!='Element2']"/>
</Information>
<xsl:apply-templates select="Element1"/>
</xsl:template>
<xsl:template match="Element1/Element1">
<Metadata>
<xsl:apply-templates/>
</Metadata>
</xsl:template>
<xsl:template match="Element1/Element2">
<Metadata2>
<xsl:apply-templates/>
</Metadata2>
</xsl:template>
Но это не сработало. Пожалуйста помоги.
Где бы я использовал группу в xslt, упомянутом в вопросе? –
Вы имеете в виду 'mode'? Я не думаю, что 'group' является допустимым атрибутом на' xsl: template' или 'xsl: apply-templates'. –
Да, режим. Обслуживает меня правильно, чтобы ответить на вопрос с моего iPad и не запускать его, хотя процессор. –