File: Data.xml
<?xml version="1.0"?>
<people>
<person born="1912" died="1954">
<name>
<first_name>A</first_name>
<last_name>B</last_name>
</name>
<profession>C</profession>
<profession>D</profession>
<profession>E</profession>
</person>
<person born="2008" died="2008">
<name>
<first_name>F</first_name>
<middle_initial>G</middle_initial>
<last_name>H</last_name>
</name>
<profession>I</profession>
<hobby>J</hobby>
</person>
</people>
File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="people">
<html>
<head><title>Famous Scientists</title></head>
<body>
<dl>
<xsl:apply-templates/>
</dl>
</body>
</html>
</xsl:template>
<xsl:template match="person">
<dt><xsl:apply-templates select="name"/></dt>
<dd><ul>
<li>Born: <xsl:apply-templates select="@born"/></li>
<li>Died: <xsl:apply-templates select="@died"/></li>
</ul></dd>
</xsl:template>
</xsl:stylesheet>
Output:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Famous Scientists</title>
</head>
<body>
<dl>
<dt>
A
B
</dt>
<dd>
<ul>
<li>Born: 1912</li>
<li>Died: 1954</li>
</ul>
</dd>
<dt>
F
G
H
</dt>
<dd>
<ul>
<li>Born: 2008</li>
<li>Died: 2008</li>
</ul>
</dd>
</dl>
</body>
</html>
|