File: Data.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="Transform.xslt" type="text/xsl"?>
<member>
<state joined="1995">Austria</state>
<state joined="1950">Belgium</state>
<state joined="1973">Denmark</state>
<state joined="1986">Portugal</state>
<state joined="1986">Spain</state>
<state joined="1995">Sweden</state>
<state joined="1973">United Kingdom</state>
</member>
File: Transform.xslt
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" />
<xsl:template match="member">
<xsl:text>Number of EU Member States: </xsl:text>
<xsl:value-of select="count(state)" />
<xsl:text> </xsl:text>
<xsl:apply-templates select="state/@joined">
<xsl:sort data-type="number" order="descending" />
</xsl:apply-templates>
<xsl:text> </xsl:text>
</xsl:template>
<xsl:template match="state/@joined">
<xsl:text> - </xsl:text>
<xsl:apply-templates select=".." />
<xsl:text> (</xsl:text>
<xsl:value-of select="." />
<xsl:text>) </xsl:text>
</xsl:template>
</xsl:stylesheet>
Output:
Number of EU Member States: 7
- Austria (1995)
- Sweden (1995)
- Portugal (1986)
- Spain (1986)
- Denmark (1973)
- United Kingdom (1973)
- Belgium (1950)
|