orbeonフォームビルダーを使用していて、いくつかの要素のクラス属性に値を追加したいと思います。これを行うために私は以下のコードを使用していますが、このコードを最適化する方法を知りたいです。唯一の違いは、ケース1でクラス属性を値に設定し、ケース2でクラス属性にテキストを追加することだけなので、2つのテンプレートタグをそれぞれ組み合わせることができる必要があります。
たぶん、このすべてのコードを1つのテンプレートタグに結合することさえ可能ですか?(複数のセレクター(一致)とset / appendクラス属性を持つもの?
Case 1:
<xsl:template match="xforms:input/@id">
<xsl:attribute name="id" select="."/>
<xsl:attribute name="class">tsbinput-<xsl:value-of select="."/></xsl:attribute>
</xsl:template>
Case 2:
<xsl:template match="xforms:input/@class">
<xsl:attribute name="class"><xsl:value-of select="."/> tsbinput-<xsl:value-of select="../@id"/></xsl:attribute>
</xsl:template>
Case 1:
<xsl:template match="fr:number/@id">
<xsl:attribute name="id" select="."/>
<xsl:attribute name="class">tsbinput-<xsl:value-of select="."/></xsl:attribute>
</xsl:template>
Case 2:
<xsl:template match="fr:number/@class">
<xsl:attribute name="class"><xsl:value-of select="."/> tsbinput-<xsl:value-of select="../@id"/></xsl:attribute>
</xsl:template>
Case 1:
<xsl:template match="fr:textcount/@id">
<xsl:attribute name="id" select="."/>
<xsl:attribute name="class">tsbinput-<xsl:value-of select="."/></xsl:attribute>
</xsl:template>
Case 2:
<xsl:template match="fr:textcount/@class">
<xsl:attribute name="class"><xsl:value-of select="."/> tsbinput-<xsl:value-of select="../@id"/></xsl:attribute>
</xsl:template>
私を助けてください。ありがとう、ニコ