EXSLT - set:leading - XSLT Template Implementation

Supported Version: 1
XML Definition: set.leading.xml
Source: set.leading.template.xsl

Source

<xsl:template name="set:leading">
   <xsl:param name="nodes"
              select="/.." />
   <xsl:param name="node"
              select="/.." />
   <xsl:variable name="end-node"
                 select="$node[1]" />
   <xsl:choose>
      <xsl:when test="not($end-node) or not($nodes)">
         <xsl:apply-templates select="$nodes"
                              mode="set:leading" />
      </xsl:when>
      <xsl:when test="count($end-node|$nodes) != count($nodes) or                        count($nodes[1] | $end-node) = 1" />
      <xsl:otherwise>
         <xsl:apply-templates select="$nodes[1]"
                              mode="set:leading" />
         <xsl:call-template name="set:leading">
            <xsl:with-param name="nodes"
                            select="$nodes[position() > 1]" />
            <xsl:with-param name="node"
                            select="$end-node" />
         </xsl:call-template>
      </xsl:otherwise>
   </xsl:choose>
</xsl:template>
<xsl:template match="node()|@*"
              mode="set:leading">
   <xsl:copy-of select="." />
</xsl:template>

Change History

Submitted: 2001-03-28
Creator: Jeni Tennison(http://www.jenitennison.com)

Returns the nodes in one node set that come before a particular node.

VersionModifiedByDetails
1.12001-05-08Jeni Tennison

Added a description of how the template-equivalent to the function works.

1.22001-05-22Jeni Tennison
  • Added vendor implementations in Saxon and 4XSLT
  • Changed status to stable
1.32001-06-11Jeni Tennison

Added vendor implementation in jd.xslt.

1.42001-08-23Jeni Tennison

Added vendor implementation in libxslt.

1.52002-08-20Craig Stewart

Added Xalan-J implementation to the list.

1.62002-11-12Craig Stewart

Updated 4XSLT version to 0.12.0a3.

Copyright

http://www.exslt.org/set/functions/leading/set.leading.template.xsl.html last modified 2002-11-12