每次我尝试做类似的事情时:
<xsl:value-of select="wd:XMLNAME_57-Payment_Deducted+preceding-sibling::wd:Result_Lines/wd:XMLNAME_57-Payment_Deducted"></xsl:value-of>
我在 Oxygen 中遇到了一个错误,说的是...
Description: XPTY0004: A sequence of more than one item is not allowed as the second operand of '+'
我尝试将每种情况转换为变量,然后在 add 函数中调用变量并尝试创建序列。似乎没有任何效果:
<xsl:variable name="child_support" select="preceding-sibling::wd:Result_Lines/wd:XMLNAME_57-Payment_Deducted[position()=1]"></xsl:variable>
<xsl:value-of select="sum(wd:XMLNAME_57-Payment_Deducted+(concat($child_support, '')))"></xsl:value-of>
<xsl:sequence select="format-number(preceding-sibling::wd:Result_Lines/wd:XMLNAME_57-Payment_Deducted+wd:XMLNAME_57-Payment_Deducted, '#')"></xsl:sequence>
这是类似于我试图为加法运算符调用的 xml 的内容:
<?xml version='1.0' encoding='UTF-8'?>
<wd:Report_Data xmlns:wd="urn:com.workday.report/CR-INT034-ADP-Garnishment_Disbursements_File-Outbound2">
<wd:Report_Entry>
<wd:Result_Lines>
<wd:XMLNAME_57-Payment_Deducted>2</wd:XMLNAME_57-Payment_Deducted>
</wd:Result_Lines>
<wd:Result_Lines>
<wd:XMLNAME_57-Payment_Deducted>276.92</wd:XMLNAME_57-Payment_Deducted>
</wd:Result_Lines>
</wd:Report_Entry>
</wd:Report_Data>
我错过了什么?如果我创建了一个 xslt 函数会起作用吗?XSLT 函数不是我以前创建过的东西。
我可以使用一些帮助来找出问题所在。
谢谢,莎拉