使用:
sum(/*/*)
これにより、ドキュメントの最上位要素の子である XML ドキュメント内のすべての要素の、数値に変換された文字列値の合計が生成されます。
原則として: 不要な非効率的な評価につながる可能性があるため、可能な限り疑似演算子の使用を避けるようにしてください。//
この場合、多くの XPath エンジンは、コンテキスト ノードをルートとするツリー全体を完全に走査します。
XSLT ベースの検証:
この変換:
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:value-of select="sum(/*/*)"/>
</xsl:template>
</xsl:stylesheet>
提供された XML ドキュメントに適用した場合:
<badge_counts>
<gold>2</gold>
<silver>15</silver>
<bronze>32</bronze>
</badge_counts>
XPath 式を評価し、結果を出力します。
49