Subject: Re: [xsl] sum of duration as string From: "Martin Honnen martin.honnen@xxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Wed, 9 Mar 2016 15:10:55 -0000 |
Hello,
I have a comma separated string of durations :
<base name='BASECOCOS'>PT2.206S,PT2.206S,PT0.435S,PT0.435S,PT1.022S,PT1.022S,PT1.490S,PT1.490S,PT12M15.963S,PT12M15.963S</base>
I want to calculate the sum of the durations who are in odd positions.
I've tried this :
<xsl:function name="local:sumDuration" as="xs:duration"> <xsl:param name="seq" as="xs:string+"/> <xsl:choose> <xsl:when test="count($seq) ge 3"> <xsl:variable name="dur1" as="xs:duration" select="xs:duration($seq[1])"/> <xsl:value-of select="$dur1 + local:sumDuration(subsequence($seq,3))"/> </xsl:when> <xsl:otherwise> <xsl:value-of select="xs:duration($seq[1])"/> </xsl:otherwise> </xsl:choose> </xsl:function>
...
<xsl:value-of select="local:sumDuration(tokenize(./text(),','))"/>
I get this error :
ID SystC(me: /home/ext-cmarchand/devel/avo-optim/inneo/src/main/makeTempsTableFromLogs/xslt/makeTable.xsl ScC)nario: makeTable fichier XSL: /home/ext-cmarchand/devel/avo-optim/inneo/src/main/makeTempsTableFromLogs/xslt/makeTable.xsl Nom du moteur: Saxon-PE 9.5.1.3 GravitC): fatal Description: XPTY0004: Only subtypes of xs:duration can be added
Try to use xs:dayTimeDuration($seq[1]) instead of xs:duration.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] sum of duration as string, cmarchand@xxxxxxxxxx | Thread | AW: [xsl] sum of duration as string, Dr. Patrik Stellmann |
[xsl] sum of duration as string, cmarchand@xxxxxxxxxx | Date | AW: [xsl] sum of duration as string, Dr. Patrik Stellmann |
Month |