[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
RE: [xsl] XSL If Statement - repost with code
Subject: RE: [xsl] XSL If Statement - repost with code From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Sun, 24 Aug 2008 22:08:57 +0100 |
Please don't ask questions about WD-xsl on this list. The language has been obsolete for ten years, and it is very hard to find a specification of it. In XSLT (unlike WD-xsl) using a "match" attribute on an xsl:if element is a syntax error. Michael Kay http://www.saxonica.com/ > -----Original Message----- > From: Sumit Patki [mailto:sumitpatki@xxxxxxxxx] > Sent: 24 August 2008 19:44 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] XSL If Statement - repost with code > > Here is the xsl and xml I am using to write the state matrix > in html o/p only if matrix element has 1 in it. > None of the XSL:IF statements in the below code work. > > I think I can change namespace to > "http://www.w3.org/1999/XSL/Transform" instead of > "http://www.w3.org/TR/WD-xsl" since the xsl file doesn't have > any other WD-XSL specific tags. Even though I change the > namespace, it doesn't work. The extension of the xsl file is > .xsl I am not sure what it will be for xslt. > > XSL code: > > <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> > > <xsl:template match="/"> > <HTML> > <BODY STYLE="font-family:Arial, helvetica, sans-serif; > FONT-SIZE: x-small"> > > <table STYLE="border: 1px #000066 outset ; border-collapse: > collapse" width="100%"> > > <tr> > <td colspan="2"> > <table border="0" width="100%" cellspacing="0" cellpadding="0"> > <tr> > > <td width="100%" STYLE=" font-family: Arial, > Helvetica, sans-serif; font-size: 11px; color: #000000;"> > > > <xsl:apply-templates select="topic/detail/content" /> > > </td> > </tr> > </table> > <!-- matrix code start --> > <table border="0" width="100%" > > <tr> > <td align="center" STYLE="font-weight: bold;"> > <xsl:value-of select="topic/detail/heading" /> </td> > </tr> > </table> > > > <xsl:for-each select="topic/detail"> > <!-- <xsl:if test="matrix > 0"> --> > <xsl:if match=".[matrix=1]"> > <table border="2"> > <tr> > <td align="center" STYLE="font-weight: bold;"> > <xsl:value-of select="topic/detail/tableheading1" /> </td> > <td align="center" STYLE="font-weight: bold;"> > <xsl:value-of select="topic/detail/tableheading2" /> </td> > </tr> > <xsl:for-each select="topic/detail/table/state" > > <tr> > <td STYLE="font-weight: bold;vertical-align: > top;"> <xsl:value-of select="statename" /> </td> > <td STYLE="vertical-align: top;"> > <xsl:apply-templates select="statedesc" /> </td> > </tr> > </xsl:for-each> > > </table> > </xsl:if> > </xsl:for-each> > <!--matrix code end--> > > > </td> > </tr> > </table> > > > > </BODY> > </HTML> > </xsl:template> > > > > <xsl:template match="topic/detail/content"> > > <xsl:apply-templates /> > > </xsl:template> > > <xsl:template match="br"> > <br><xsl:apply-templates /></br> > </xsl:template> > > > <xsl:template match="text()"><xsl:value-of /></xsl:template> > > </xsl:stylesheet> > > > XML Code: > <?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet > type="text/xsl" href="help.xsl" ?> <topic> > <detail> > <pageid>123</pageid> > <name>test</name> > <content>test content <br /></content> > <heading>State Matrix</heading> > <matrix>1</matrix> > <tableheading1>State Code/Name</tableheading1> > <tableheading2>State Description</tableheading2> > <table> > <state> > <statename>01/AL</statename> > <statedesc>Alabama</statedesc> > </state> > <state> > <statename>02/AK</statename> > <statedesc>Alaska</statedesc> > </state> > <state> > <statename>04/AZ</statename> > <statedesc>Arizona</statedesc> > </state> > </table> > </detail> > </topic>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] XSL If Statement - repost, Norman Gray | Thread | Re: [xsl] XSL If Statement - repost, David Carlisle |
Re: [xsl] relative URI in href, Florent Georges | Date | Re: [xsl] XSL If Statement - repost, David Carlisle |
Month |