У меня есть дерево xml с динамическим корневым элементом (а не статическим именем) и некоторыми дочерними элементами под этим корневым элементом. Теперь я хочу добавить к детям элемент во второй позиции с помощью скрипта xslt. Как мне это сделать?Как добавить узел во вторую позицию в корневой узел с помощью xslt
Пример: XML:
<root>
<element1>
<element1a>
..
</element1a>
</element1>
<element2 name="exampleName">This is text.</element2>
</root>
должны быть преобразованы в
<root>
<element1>
<element1a>
..
</element1a>
</element1>
<someNewElement>1234</someNewElement>
<element2 name="exampleName">This is text.</element2>
</root>
То, что я получил до сих пор состоит в следующем. Но с этим решением узел добавляется только в первую позицию. Мне нужно это на второй позиции.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:template match="/">
<xsl:apply-templates select="/*"/>
</xsl:template>
<xsl:template match="/*">
<xsl:copy>
<xsl:element name="newElement">4711</xsl:element>
<xsl:apply-templates select="node() | @*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="node() | @*">
<xsl:copy>
<xsl:apply-templates select="node() | @*"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
Это сработало отлично. Большое спасибо! – Hauke