xsl-list
[Top] [All Lists]

RE: [xsl] can a value of a parameter depends on a other value

2011-12-01 09:51:10


Hello, 

 

I did some investigation and found this script.

 


<xsl:variable name="foo">
  <xsl:choose>
    <xsl:when test="condition1">
      ...value if condition1 is true
    </xsl:when>
    <xsl:otherwise>
      ...value if condition1 is not true
    </xsl:otherwise>
  </xsl:choose>
</xsl:variable>
  
<xsl:apply-templates select="/foo/bar">
  <xsl:with-param name="foo" select="$foo"/>
</xsl:apply-templates>


 

Is this a good example of a condtional with-param ?

 

Roelof

 

------------------
From: rwobben(_at_)hotmail(_dot_)com
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Date: Thu, 1 Dec 2011 14:18:17 +0000
Subject: [xsl] can a value of a parameter depends on a other value



Oke,

I understand.

I my situation there will be two parameters page and month and one variable 
named articlesperpage.

Then it will look like this :

<xsl:output method="xml"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system=http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
omit-xml-declaration="yes"
encoding="UTF-8"
indent="yes" />

<xsl:param name="page" />
<xsl:param name="month" />


<xsl:variable name="articlesperpage">
<xsl:choose>
<xsl:when test="$page='1' and $month='2005-01' ">3</xsl:when>
<xsl:otherwise>4</xsl:otherwise>
</xsl:choose>
</xsl:variable>

<xsl:template match="/">
<xsl:apply-templates select="/data/test/entry"/>
</xsl:template>


<xsl:template match="test/entry">
<xsl:value-of select="$articlesperpage" />
</xsl:template>

</xsl:stylesheet>

Roelof






----------------------------------------
Date: Thu, 1 Dec 2011 13:13:11 +0000
From: davidc(_at_)nag(_dot_)co(_dot_)uk
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
CC: rwobben(_at_)hotmail(_dot_)com
Subject: Re: [xsl] can a value of a parameter depends on a other value


so, you're almost there, so now you can change

<xsl:param name="page">


to



<xsl:param name="page">
<xsl:variable name="hmm">
<xsl:choose>
<xsl:when test="$page='1'">wahoo</xsl:when>
<xsl:otherwise>humbug</xsl:otherwise>
</xsl:choose>
</xsl:variable>


and change


<xsl:value-of select="$page"/>

to

<xsl:value-of select="$hmm/>


and instead of saying 1 or 2 it should say wahoo or humbug, and you have
a variable depending conditionally on the global parameter page
after that it's just a matter if making the right conditions and
outputing the right text

David


________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
                                        
--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>