Welcome to WebmasterWorld Guest from

Forum Moderators: httpwebwitch

Conditional statement

4:05 am on Oct 8, 2006 (gmt 0)

10+ Year Member


I'm new to XML and I'm having issues with a simple conditional statement.

Here's the XSL side, including the conditional statement:


<?xml version="1.0"?>
<HTML xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:when test="response/totalresults > 0">
Results <strong><xsl:value-of select="response/start"/></strong> - <strong><xsl:value-of select="response/end"/></strong>
out of <strong><xsl:value-of select="response/totalresults"/></strong> total found.
<xsl:for-each select="response/results/result">
<DIV STYLE="background-color:teal; color:white; padding:4px">
<SPAN STYLE="font-weight:bold; color:white"><xsl:value-of select="jobtitle"/></SPAN>
- <xsl:value-of select="jobtitle"/>
<DIV STYLE="margin-left:20px; margin-bottom:1em; font-size:10pt">
<xsl:value-of select="description"/>
<SPAN STYLE="font-style:italic">
(<xsl:value-of select="calories"/> calories per serving)

Sorry, we found no matches for "whatever."




Here's XML structure:


<?xml version="1.0" encoding="UTF-8"?>
<results />


And of course, the error message:


msxml3.dll error '80004005'

Expected token 'eof' found '>'. response/totalresults -->><-- 0


I would appreciate any pointers.


1:43 pm on Oct 8, 2006 (gmt 0)

WebmasterWorld Senior Member 5+ Year Member

I suspect the statement

<xsl:when test="response/totalresults > 0">


<xsl:when test="response/totalresults!= 0">

if you need to use > suspect it needs escaping &gt; or \> maybe? Thats my guess, but not experienced in XSL.

11:02 pm on Oct 8, 2006 (gmt 0)

10+ Year Member

daveVk, I tried your suggestions but for some reason it still doesn't work. I'm not experienced with XSL either and it's pretty frustrating.
5:50 am on Oct 9, 2006 (gmt 0)

WebmasterWorld Senior Member 5+ Year Member

[w3schools.com...] by this example you may need to wrap stylesheet within <stylesheet> and <template> tags and yes they use &gt; , eg <xsl:when test="price&gt;'10'"> why '10' and not just 10?
8:13 pm on Oct 9, 2006 (gmt 0)

10+ Year Member

I got it to work - I had stuff all over the place and not properly formatted... as you said it had something to do with the <stylesheet> and <template> tags being in right order.
The comparison works wine with numbers that are not enclosed within single quotes.



Featured Threads

My Threads

Hot Threads This Week

Hot Threads This Month