<xsl:value-of select="$person/surname"/>
</xsl:template>
-</xsl:stylesheet>
+<xsl:template name="print_date">
+ <xsl:param name="date"/>
+ <xsl:variable name="year" select="substring($date,1,4)"/>
+ <xsl:variable name="month" select="substring($date,5,2)"/>
+ <xsl:variable name="day" select="substring($date,7,2)"/>
+ <xsl:call-template name="print_month">
+ <xsl:with-param name="month" select="$month"/>
+ </xsl:call-template>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="print_day">
+ <xsl:with-param name="day" select="$day"/>
+ </xsl:call-template>
+ <xsl:text>, </xsl:text>
+ <xsl:value-of select="$year"/>
+</xsl:template>
+
+<xsl:template name="print_month">
+ <xsl:param name="month"/>
+ <xsl:choose>
+ <xsl:when test="$month = '01'">January</xsl:when>
+ <xsl:when test="$month = '02'">February</xsl:when>
+ <xsl:when test="$month = '03'">March</xsl:when>
+ <xsl:when test="$month = '04'">April</xsl:when>
+ <xsl:when test="$month = '05'">May</xsl:when>
+ <xsl:when test="$month = '06'">June</xsl:when>
+ <xsl:when test="$month = '07'">July</xsl:when>
+ <xsl:when test="$month = '08'">August</xsl:when>
+ <xsl:when test="$month = '09'">September</xsl:when>
+ <xsl:when test="$month = '10'">October</xsl:when>
+ <xsl:when test="$month = '11'">November</xsl:when>
+ <xsl:when test="$month = '12'">December</xsl:when>
+ </xsl:choose>
+</xsl:template>
+<xsl:template name="print_day">
+ <xsl:param name="day"/>
+ <xsl:choose>
+ <xsl:when test="$day = '01'">1st</xsl:when>
+ <xsl:when test="$day = '02'">2nd</xsl:when>
+ <xsl:when test="$day = '03'">3rd</xsl:when>
+ <xsl:when test="$day = '11'">11th</xsl:when>
+ <xsl:when test="$day = '11'">12th</xsl:when>
+ <xsl:when test="$day = '11'">13th</xsl:when>
+ <xsl:when test="substring($day,2,1) = '1'">
+ <xsl:value-of select="$day"/>
+ <xsl:text>st</xsl:text>
+ </xsl:when>
+ <xsl:when test="substring($day,2,1) = '2'">
+ <xsl:value-of select="$day"/>
+ <xsl:text>nd</xsl:text>
+ </xsl:when>
+ <xsl:when test="substring($day,2,1) = '3'">
+ <xsl:value-of select="$day"/>
+ <xsl:text>rd</xsl:text>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="$day"/>
+ <xsl:text>th</xsl:text>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+</xsl:stylesheet>