我有一个包含多个帐户的 XML,我正在尝试使用 score/max_score 格式对多个分数求和。
XML:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="accounts.xsl"?>
<accounts>
<account active="yes">
<id>1</id>
<name>James</name>
<score>50/100</score>
</account>
<account active="yes">
<id>2</id>
<name>Caty</name>
<score>10/100</score>
</account>
<account active="yes">
<id>3</id>
<name>Acacia</name>
<score>30/100</score>
</account>
<account active="yes">
<id>4</id>
<name>James</name>
<score>50/100</score>
</account>
<account active="yes">
<id>5</id>
<name>Scoot_5</name>
<score>40/100</score>
</account>
</accounts>
和 XSLT:
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:template match="/">
<html>
<body>
<p>
<xsl:value-of select="sum(//accounts/account/score/number(substring-before(.,'/')))"/>
</p>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
但是,当我运行 xml 时说它有错误并且不返回总和。为什么?