You are better off using exslt:node-set() from http://exslt.org/common than a specific EXSLT processor implementation is much more portable on different processors. In this case, you need to:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exslt="http://exslt.org/common" extension-element-prefixes="exslt"> </xsl:stylesheet>
For example, in Saxon 6.5 you can use it as:
<total> <xsl:variable name="myTotal" select="exslt:node-set($flipMachineTimes)"/> <xsl:value-of select="sum($myTotal/FlipMachineTime)"/> </total>
If you set the style sheet version to 1.1, it will be simpler (as it should be):
<total> <xsl:value-of select="sum(exslt:node-set($flipMachineTimes/FlipMachineTime))"/> </total>
Seeing your meaning, I think you are working on something huge and complex, which cannot be solved here with a simple question. There may be too many details that you might omit. However, if this is just a case of displaying a value (where ???), I can suggest this latter.
Try creating a variable for each cell:
<Cell> <xsl:attribute name="ExternalId"> <xsl:value-of select="@ExternalId"/> </xsl:attribute> <FlipMaschinenlaufzeit> <xsl:choose> <xsl:when test="./FlipPlanbelegungszeit > 0"> <xsl:value-of select="$planbelegungszeit - (($planbelegungszeit * ($organisatorischeAusfallzeit div 100)) + ($planbelegungszeit * ($stoerungsbedingteUnterbrechungen div 100)) + ($planbelegungszeit * ($nebenzeit div 100)))"/> </xsl:when> <xsl:otherwise>0</xsl:otherwise> </xsl:choose> </FlipMaschinenlaufzeit> </Cell> <xsl:varible name="a"> </xsl:variable> <xsl:value-of select="$a + $b + $c + ..."/>
source share