Re: A smarter choose operation XSL 1.1
Performing this simple test: <xsl:variable name="test" select="(1, 2, 3)" /> I am getting the error: Error in expression (1, 2, 3): expected ")", found "," Did I write that wrong? Karl.. On Wed, Jun 10, 2009 at 3:16 PM, Karl Stubsjoen<kstubs@xxxxxxxxx> wrote: > I am not worthy! > OK, I will give this a try, thanks! > > On Wed, Jun 10, 2009 at 2:53 PM, Michael Kay<mike@xxxxxxxxxxxx> wrote: >> select="(1.0, 1.7, 2.25, 3.0)[count(($opt.one, $opt.two, $opt.three)[.])+1]" >> >> The strange predicate [.] selects items in the sequence that are true. >> >> Regards, >> >> Michael Kay >> http://www.saxonica.com/ >> http://twitter.com/michaelhkay >> >>> -----Original Message----- >>> From: Karl Stubsjoen [mailto:kstubs@xxxxxxxxx] >>> Sent: 10 June 2009 22:20 >>> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >>> Subject: A smarter choose operation XSL 1.1 >>> >>> I have 3 optional param values that are either true/false. I >>> need a solution which will return 4 different numbers when: >>> >>> 1) all param values are true >>> 2) two param values are true >>> 3) one param value is true >>> 4) none are true >>> >>> I was about to write one big choose and then thought maybe >>> there is a more efficient way of doing it. So any ideas on >>> this one? For sake of discussion, here is a mock up of the >>> template and param values I >>> have: >>> >>> <xsl:template name="test"> >>> <xsl:param name="optional.one" select="true()" /> >>> <xsl:param name="optional.two" select="true()" /> >>> <xsl:param name="optional.three" select="true()" /> >>> >>> <!-- >>> Return: >>> >>> When All, return 3.00 >>> When Two, return 2.25 >>> When One, return 1.70 >>> When Zero, return 1.00 >>> --> >>> >>> </xsl:template/> >>> >>> Thanks for the help! >>> >>> Karl..
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format