<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=XML_Tutorial%2FXSLT_stylesheet%2Flast</id>
		<title>XML Tutorial/XSLT stylesheet/last - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=XML_Tutorial%2FXSLT_stylesheet%2Flast"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XSLT_stylesheet/last&amp;action=history"/>
		<updated>2026-04-05T02:43:19Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=XML_Tutorial/XSLT_stylesheet/last&amp;diff=10807&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XSLT_stylesheet/last&amp;diff=10807&amp;oldid=prev"/>
				<updated>2010-05-26T08:26:55Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 08:26, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=XML_Tutorial/XSLT_stylesheet/last&amp;diff=10806&amp;oldid=prev</id>
		<title> в 18:22, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=XML_Tutorial/XSLT_stylesheet/last&amp;diff=10806&amp;oldid=prev"/>
				<updated>2010-05-25T18:22:32Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== if test=&amp;quot;not(position()=last())&amp;quot;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;cars&amp;gt;&lt;br /&gt;
  &amp;lt;manufacturer name=&amp;quot;Chevrolet&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Cavalier&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Corvette&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Impala&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Malibu&amp;lt;/car&amp;gt;&lt;br /&gt;
  &amp;lt;/manufacturer&amp;gt;&lt;br /&gt;
  &amp;lt;manufacturer name=&amp;quot;Ford&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Pinto&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Mustang&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Taurus&amp;lt;/car&amp;gt;&lt;br /&gt;
  &amp;lt;/manufacturer&amp;gt;&lt;br /&gt;
  &amp;lt;manufacturer name=&amp;quot;Volkswagen&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Beetle&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Jetta&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Passat&amp;lt;/car&amp;gt;&lt;br /&gt;
    &amp;lt;car&amp;gt;Touraeg&amp;lt;/car&amp;gt;&lt;br /&gt;
  &amp;lt;/manufacturer&amp;gt;&lt;br /&gt;
&amp;lt;/cars&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
  xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:output method=&amp;quot;text&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:for-each select=&amp;quot;cars/manufacturer/@name&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:if test=&amp;quot;not(position()=last())&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:text&amp;gt;, &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
      &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
Chevrolet, Ford, Volkswagen&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== last() function is in for-each element. The context is therefore all selected chapters.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter A&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter B&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter C&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter D&amp;lt;/chapter&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;TABLE&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:for-each select=&amp;quot;//chapter&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;TR&amp;gt;&lt;br /&gt;
            &amp;lt;TD&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:text&amp;gt;(last = &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:value-of select=&amp;quot;last()&amp;quot;/&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:text&amp;gt;)&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
            &amp;lt;/TD&amp;gt;&lt;br /&gt;
          &amp;lt;/TR&amp;gt;&lt;br /&gt;
        &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
      &amp;lt;/TABLE&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;TABLE&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter A(last = 4)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter B(last = 4)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter C(last = 4)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter D(last = 4)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;/TABLE&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== last() function is in template. The context is therefore a single chapter element.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter A&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter B&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter C&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter D&amp;lt;/chapter&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;TABLE&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:for-each select=&amp;quot;//chapter&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;TR&amp;gt;&lt;br /&gt;
            &amp;lt;TD&amp;gt;&lt;br /&gt;
              &amp;lt;xsl:apply-templates select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
            &amp;lt;/TD&amp;gt;&lt;br /&gt;
          &amp;lt;/TR&amp;gt;&lt;br /&gt;
        &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
      &amp;lt;/TABLE&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;chapter&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;.&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;(last = &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;last()&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;)&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;TABLE&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter A(last = 1)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter B(last = 1)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter C(last = 1)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;TR&amp;gt;&amp;lt;TD&amp;gt;Chapter D(last = 1)&amp;lt;/TD&amp;gt;&amp;lt;/TR&amp;gt;&amp;lt;/TABLE&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== last() returns a number equal to the context size from the expression evaluation context==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;&lt;br /&gt;
    &amp;lt;AAA&amp;gt;&lt;br /&gt;
      &amp;lt;BBB&amp;gt;&lt;br /&gt;
        &amp;lt;CCC&amp;gt;A&amp;lt;/CCC&amp;gt;&lt;br /&gt;
      &amp;lt;/BBB&amp;gt;&lt;br /&gt;
      &amp;lt;BBB/&amp;gt;&lt;br /&gt;
      &amp;lt;BBB/&amp;gt;&lt;br /&gt;
    &amp;lt;/AAA&amp;gt;&lt;br /&gt;
    &amp;lt;AAA&amp;gt;&lt;br /&gt;
      &amp;lt;BBB/&amp;gt;&lt;br /&gt;
      &amp;lt;BBB&amp;gt;&lt;br /&gt;
        &amp;lt;CCC&amp;gt;B&amp;lt;/CCC&amp;gt;&lt;br /&gt;
        &amp;lt;CCC&amp;gt;C&amp;lt;/CCC&amp;gt;&lt;br /&gt;
        &amp;lt;CCC&amp;gt;D&amp;lt;/CCC&amp;gt;&lt;br /&gt;
        &amp;lt;CCC&amp;gt;E&amp;lt;/CCC&amp;gt;&lt;br /&gt;
      &amp;lt;/BBB&amp;gt;&lt;br /&gt;
    &amp;lt;/AAA&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;DIV&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:for-each select=&amp;quot;//BBB&amp;quot;&amp;gt;&lt;br /&gt;
          &amp;lt;xsl:call-template name=&amp;quot;printout&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsl:for-each&amp;gt;&lt;br /&gt;
      &amp;lt;/DIV&amp;gt;&lt;br /&gt;
      &amp;lt;DIV&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:apply-templates select=&amp;quot;//CCC&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/DIV&amp;gt;&lt;br /&gt;
      &amp;lt;DIV&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:apply-templates select=&amp;quot;//AAA[last()]//CCC&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/DIV&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;CCC&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:call-template name=&amp;quot;printout&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template name=&amp;quot;printout&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:if test=&amp;quot;position()=1&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsl:value-of select=&amp;quot;name()&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;(&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;position()&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;/&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;last()&amp;quot;/&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;)&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;DIV&amp;gt;BBB(1/5)(2/5)(3/5)(4/5)(5/5)&amp;lt;/DIV&amp;gt;&amp;lt;DIV&amp;gt;CCC(1/5)(2/5)(3/5)(4/5)(5/5)&amp;lt;/DIV&amp;gt;&amp;lt;DIV&amp;gt;CCC(1/4)(2/4)(3/4)(4/4)&amp;lt;/DIV&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== last()- Returns a value equal to the context size==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;ISO-8859-1&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;africa&amp;gt;&lt;br /&gt;
 &amp;lt;source&amp;gt;&lt;br /&gt;
  &amp;lt;title&amp;gt;CIA Factbook&amp;lt;/title&amp;gt;&lt;br /&gt;
  &amp;lt;url&amp;gt;http://www.cia.gov/cia/publications/factbook/&amp;lt;/url&amp;gt;&lt;br /&gt;
  &amp;lt;populations estimate=&amp;quot;true&amp;quot; year=&amp;quot;2002&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
 &amp;lt;nation&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Algeria&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;capital&amp;gt;Algiers&amp;lt;/capital&amp;gt;&lt;br /&gt;
  &amp;lt;population&amp;gt;32277942&amp;lt;/population&amp;gt;&lt;br /&gt;
  &amp;lt;cc&amp;gt;dz&amp;lt;/cc&amp;gt;&lt;br /&gt;
 &amp;lt;/nation&amp;gt;&lt;br /&gt;
 &amp;lt;nation&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Burundi&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;capital&amp;gt;Bujumbura&amp;lt;/capital&amp;gt;&lt;br /&gt;
  &amp;lt;population&amp;gt;6373002&amp;lt;/population&amp;gt;&lt;br /&gt;
  &amp;lt;cc&amp;gt;bi&amp;lt;/cc&amp;gt;&lt;br /&gt;
 &amp;lt;/nation&amp;gt;&lt;br /&gt;
 &amp;lt;nation&amp;gt;&lt;br /&gt;
  &amp;lt;name&amp;gt;Eritrea&amp;lt;/name&amp;gt;&lt;br /&gt;
  &amp;lt;capital&amp;gt;Asmara&amp;lt;/capital&amp;gt;&lt;br /&gt;
  &amp;lt;population&amp;gt;4465651&amp;lt;/population&amp;gt;&lt;br /&gt;
  &amp;lt;cc&amp;gt;er&amp;lt;/cc&amp;gt;&lt;br /&gt;
 &amp;lt;/nation&amp;gt;&lt;br /&gt;
&amp;lt;/africa&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;US-ASCII&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
  xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:output method=&amp;quot;text&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;africa&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:text&amp;gt;The nations of Africa are &amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:apply-templates select=&amp;quot;nation&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
  &amp;lt;xsl:template match=&amp;quot;nation&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:value-of select=&amp;quot;name&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;position() != last()&amp;quot;&amp;gt;,&amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;position() mod 5 = 0&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:text&amp;gt;&amp;amp;#10;&amp;lt;/xsl:text&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;position() = (last() - 1)&amp;quot;&amp;gt;and&amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:if test=&amp;quot;position() = last()&amp;quot;&amp;gt;.&amp;lt;/xsl:if&amp;gt;&lt;br /&gt;
  &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
The nations of Africa are Algeria,Burundi,andEritrea.&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== You can select the last element of given type==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
File: Data.xml&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;data&amp;gt;    &lt;br /&gt;
        &amp;lt;chapter&amp;gt;Chapter A&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter B&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter C&amp;lt;/chapter&amp;gt;&lt;br /&gt;
    &amp;lt;chapter&amp;gt;Chapter D&amp;lt;/chapter&amp;gt;&lt;br /&gt;
&amp;lt;/data&amp;gt;&lt;br /&gt;
File: Transform.xslt&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;xsl:stylesheet&lt;br /&gt;
      version=&amp;quot;1.0&amp;quot;&lt;br /&gt;
      xmlns:xsl=&amp;quot;http://www.w3.org/1999/XSL/Transform&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:variable name=&amp;quot;totalChapters&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;//chapter[last()]&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:variable&amp;gt;&lt;br /&gt;
    &amp;lt;xsl:template match=&amp;quot;/&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsl:value-of select=&amp;quot;$totalChapters&amp;quot;/&amp;gt;&lt;br /&gt;
    &amp;lt;/xsl:template&amp;gt;&lt;br /&gt;
&amp;lt;/xsl:stylesheet&amp;gt;&lt;br /&gt;
Output:&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;Chapter D&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
			</entry>

	</feed>