position() returns a value equal to the context position : position « XSLT stylesheet « XML Tutorial






File: Data.xml

<chapter>
  <title>"title 1" Excerpt</title>
  <para>para1</para>
  <figure>
    <title>title 1</title>
  </figure>
  <para>para2</para>
  <sect1>
    <figure>
      <title>"He Lights"</title>
    </figure>
    <para>line 1</para>
    <sect2>
      <figure>
        <title>title 2</title>
      </figure>
    </sect2>
  </sect1>
</chapter>

File: Transform.xslt
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  version="1.0">
  <xsl:output method="xml" omit-xml-declaration="yes" indent="no" />
  
  <xsl:template match="chapter">
    <xsl:for-each select="descendant::figure/title">

      <xsl:sort />

      <xsl:if test="position() = 1">
        First figure title in chapter:
        <xsl:value-of select="." />
      </xsl:if>

      <xsl:if test="position() = last()">
        Last figure title in chapter:
        <xsl:value-of select="." />
      </xsl:if>

    </xsl:for-each>

  </xsl:template>
  

</xsl:stylesheet>
Output:


        First figure title in chapter:
        "He Lights"
        Last figure title in chapter:
        title 2








5.65.position
5.65.1.Get current position and text
5.65.2.if test="position() = last()"
5.65.3.position() returns a value equal to the context position
5.65.4.position() returns a number equal to the context position