次の XML ドキュメントがあります。
<root someAttribute="someValue" />
ここで、ドキュメントが次のようになるように、XSLT を使用してタグを追加します。
<root someAttribute="someValue">
<item>TEXT</item>
</root>
XSLT をもう一度使用する場合は、別の項目を追加するだけです。
<root someAttribute="someValue">
<item>TEXT</item>
<item>TEXT</item>
</root>
とても簡単に聞こえますよね?いろいろ試した結果、以下がベストです。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" >
<xsl:param name="message" />
<xsl:output method="xml" encoding="utf-8"/>
<xsl:template match="/*">
<xsl:copy>
<xsl:copy-of select="*"/>
<item>
<xsl:value-of select="$message" />
</item>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
ルート要素の属性を「忘れる」ことを除いて、私が要求したことを/ほぼ/実行します。ここで、スタックオーバーフローや他の場所で、ルート要素の属性を失うという私のソリューションと共通する他の多くのソリューションを見つけました。どうすれば修正できますか?