A selection between two variants are commonly needed in programming. XPath 2.0 introduces "if (...) then ... else ..." to achieve the selection. If the condition in brackets after "if" is fulfilled the expression after "then" is used, otherwise the on after "else".
Comparison of numbers uses notation similar to mathematics one. Only symbol which is not commonly used in basic math is "!=" which means not equal.
Please note the "qqq" example. The sign for "less-then" character (<) requires special treatment as use of "<" character is reserved in XML for mark up and so it must be written as <.
|
XSLT
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/> <xsl:template match="/aaa"> <xxx> <xsl:value-of select="if (33=33) then 1 else 0"/> </xxx> <yyy> <xsl:value-of select="if (33!=33) then 1 else 0"/> </yyy> <zzz> <xsl:value-of select="if (33>44) then 1 else 0"/> </zzz> <qqq> <xsl:value-of select="if (33<=44) then 1 else 0"/> </qqq> </xsl:template> </xsl:stylesheet> |
|
|
XML
<aaa/> |
Output
<xxx>1</xxx> <yyy>0</yyy> <zzz>0</zzz> <qqq>1</qqq> |
| Previous chapter: | Stylesheet Functions |
| Next chapter: | Conditional Expressions |
| Previous page: | - - - |
| Next page: | Operator = and sequences |