home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / XML Utilities / Professional Programmer XSL IDE / Xselerator25.msi / Data.Cab / F37608_testFoldl.xsl < prev    next >
Encoding:
Extensible Markup Language  |  2002-01-20  |  1.0 KB  |  35 lines

  1. <xsl:stylesheet version="1.0"
  2. xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  3. xmlns:msxsl="urn:schemas-microsoft-com:xslt"
  4. xmlns:saxon="http://icl.com/saxon"
  5. xmlns:foldr-func="foldr-func"
  6. exclude-result-prefixes="xsl foldr-func"
  7. >
  8.  
  9.    <xsl:import href="foldl.xsl"/>
  10.  
  11.    <!-- This transformation must be applied to:
  12.         numList.xml 
  13.      -->
  14.    <foldr-func:foldr-func/>
  15.    <xsl:variable name="vFoldrFun" select="document('')/*/foldr-func:*[1]"/>
  16.     <xsl:output  encoding="UTF-8" omit-xml-declaration="yes"/>
  17.  
  18.     <xsl:template match="/">
  19.  
  20.       <xsl:call-template name="foldl">
  21.         <xsl:with-param name="pFunc" select="$vFoldrFun"/>
  22.         <xsl:with-param name="pList" select="/*/*"/>
  23.         <xsl:with-param name="pA0" select="0"/>
  24.       </xsl:call-template>
  25.     </xsl:template>
  26.  
  27.     <xsl:template match="*[namespace-uri() = 'foldr-func']">
  28.          <xsl:param name="arg1" select="0"/>
  29.          <xsl:param name="arg2" select="0"/>
  30.          
  31.          <xsl:value-of select="$arg1 + $arg2"/>
  32.     </xsl:template>
  33.  
  34. </xsl:stylesheet>
  35.