何もしないXSLT part.2
最近、また同じようなXSLTを書いたので、前に書いたのと見比べてみた。
前のもの
<xsl:template match="/">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="*">
<xsl:copy>
<xsl:apply-templates select="*|@*|text()" />
</xsl:copy>
</xsl:template>
<xsl:template match="@*">
<xsl:copy />
</xsl:template>新しいもの
<xsl:template match="/">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="node()">
<xsl:copy>
<xsl:apply-templates select="node()|attribute::*" />
</xsl:copy>
</xsl:template>
<xsl:template match="attribute::*">
<xsl:copy />
</xsl:template>node()になっている方がコメントノードとかもコピーできて良いような気がする。
以前に書いたものはtext()を宣言しているが、これは必要なんだっけ?
…「*」ではテキストノードにマッチしないからか。
「attribute::*」より「@*」の方が文字数が少ない分「正義」かもしれない(笑)