<div>
再帰的なテンプレート一致を使用して、すべてのxml要素をxhtmlタグに変換しています。
基本的に、要素name()
をクラス名、つまりに変換したいと思います。<div class="name()">value</div>
私は以下を使用しました:
<body>
<xsl:apply-templates />
</body>
<xsl:template match="*">
<div class="{name()}"><xsl:value-of select="."/>
<xsl:apply-templates select="*"/>
</div>
</xsl:template>
親タグの値を取得することを除いて、非常にうまく機能します。たとえば、このxml
<TotalPayments>
<Amount>26.96</Amount>
<TaxableAmount>26.96</TaxableAmount>
<TaxAmount>0.00</TaxAmount>
<ShippingAmount>0.00</ShippingAmount>
</TotalPayments>
になる:
<div class="TotalPayments">
26.96
26.96
0.00
0.00
<div class="Amount">26.96</div>
<div class="TaxableAmount">26.96</div>
<div class="TaxAmount">0.00</div>
<div class="ShippingAmount">0.00</div>
</div>
そして私は欲しいだけです
<div class="TotalPayments">
<div class="Amount">26.96</div>
<div class="TaxableAmount">26.96</div>
<div class="TaxAmount">0.00</div>
<div class="ShippingAmount">0.00</div>
</div>
そして、それはツリーの上でますます悪化します。ルートにもそれがすべてあります。
だから私はテストをするべきですか、それとも特定のタイプだけを選択することができますか?私もマッチングしてみました
* | text()
* | node()
ありがとう。