1<?xml version="1.0" encoding="UTF-8"?>
2
3<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
4  <xsl:output method="text"/>
5
6  <xsl:template match="/">
7    <xsl:call-template name="recurse1">
8      <xsl:with-param name="num">
9        <xsl:value-of select="0"/>
10      </xsl:with-param>
11    </xsl:call-template>
12    <xsl:text>&#xa;</xsl:text>
13  </xsl:template>
14
15  <xsl:template name="recurse1">
16    <xsl:param name="num"/>
17    <xsl:call-template name="recurse2">
18      <xsl:with-param name="num" select="0"/>
19    </xsl:call-template>
20    <xsl:if test="not($num = 19)">
21      <xsl:variable name="tmpnumber"><xsl:value-of select="$num + 1"/></xsl:variable>
22      <xsl:call-template name="recurse1">
23        <xsl:with-param name="num">
24          <xsl:value-of select="$tmpnumber"/>
25        </xsl:with-param>
26      </xsl:call-template>
27    </xsl:if>
28  </xsl:template>
29
30  <xsl:template name="recurse2">
31    <xsl:param name="num"/>
32    <xsl:call-template name="recursefinal">
33      <xsl:with-param name="num" select="0"/>
34    </xsl:call-template>
35    <xsl:if test="not($num = 19)">
36      <xsl:variable name="tmpnumber"><xsl:value-of select="$num + 1"/></xsl:variable>
37      <xsl:call-template name="recurse2">
38        <xsl:with-param name="num" select="$tmpnumber"/>
39      </xsl:call-template>
40    </xsl:if>
41  </xsl:template>
42
43  <xsl:template name="recursefinal">
44    <xsl:param name="num"/>
45    <xsl:call-template name="dodot"/>
46    <xsl:call-template name="dodot"/>
47    <xsl:call-template name="dodot"/>
48    <xsl:call-template name="dodot"/>
49    <xsl:call-template name="dodot"/>
50    <xsl:call-template name="dodot"/>
51    <xsl:call-template name="dodot"/>
52    <xsl:call-template name="dodot"/>
53    <xsl:call-template name="dodot"/>
54    <xsl:call-template name="dodot"/>
55    <xsl:call-template name="dodot"/>
56    <xsl:call-template name="dodot"/>
57    <xsl:call-template name="dodot"/>
58    <xsl:call-template name="dodot"/>
59    <xsl:call-template name="dodot"/>
60    <xsl:if test="not($num = 10)">
61      <xsl:variable name="tmpnumber"><xsl:value-of select="$num + 1"/></xsl:variable>
62      <xsl:call-template name="recursefinal">
63        <xsl:with-param name="num" select="$tmpnumber"/>
64      </xsl:call-template>
65    </xsl:if>
66  </xsl:template>
67
68  <xsl:template name="dodot">
69    <xsl:variable name="ElementTexts">
70      <xsl:for-each select="element">
71        <xsl:value-of select="text"/>
72      </xsl:for-each>
73    </xsl:variable>
74    <xsl:value-of select="$ElementTexts"/>
75  </xsl:template>
76</xsl:stylesheet>
77