Compare value of attribute with if statement
File: Data.xml
<?xml version="1.0"?>
<Characters>
<Character age="1">Character 1</Character>
<Character age="2">Character 2</Character>
<Character age="3">Character 3</Character>
<Character age="4">Character 4</Character>
<Character age="5">Character 5</Character>
</Characters>
File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="/">
<html>
<head>
<title>select</title>
</head>
<body>
<h3>header 3.</h3>
<xsl:apply-templates select="/Characters/Character" />
</body>
</html>
</xsl:template>
<xsl:template match="Character">
<xsl:if test="@age > 2 ">
<paragraph>
<b>
<xsl:value-of select="." />
</b>
is older than expected.
<b>
<xsl:value-of select="@age" />
</b>
, is correct.
</paragraph>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
Output:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>select</title>
</head>
<body>
<h3>header 3.</h3>
<paragraph><b>Character 3</b>
is older than expected.
<b>3</b>
, is correct.
</paragraph>
<paragraph><b>Character 4</b>
is older than expected.
<b>4</b>
, is correct.
</paragraph>
<paragraph><b>Character 5</b>
is older than expected.
<b>5</b>
, is correct.
</paragraph>
</body>
</html>
Related examples in the same category