[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: why get the value not be calculated

Subject: Re: why get the value not be calculated
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Sat, 31 Dec 2011 10:57:32 -0800
Re:  why get the value not be calculated
I was under the impression that you were using XSLT 1.0. Tunnel
parameters are a feature only of XSLT 2.0 and above.

In case you are using XSLT 2.0, the code can be significantly
refactored and simplified.




On Sat, Dec 31, 2011 at 10:43 AM, Roelof Wobben <rwobben@xxxxxxxxxxx> wrote:
>
> Oke,
>
>
>
> I found this what maybe can solve the problem.
>
>
>
> <xsl:apply-templates select="." mode="custom_template">
> B  <xsl:with-param name="attribute_name" tunnel="yes">
> B  B  B <xsl:choose>
> B  B  B  B  <xsl:when test="@attribute1">Attribute no. 1</xsl:when>
> B  B  B  B  <xsl:when test="@attribute2">Attribute no. 2</xsl:when>
> B  B  B  B  <xsl:otherwise>Error</xsl:otherwise>
> B  B  B </xsl:choose>
> B  </xsl:with-param>
> B  <xsl:with-param name="attribute_value" tunnel="yes">
> B  B  B <xsl:choose>
> B  B  B  B  <xsl:when test="@attribute1"><xsl:value-of
select="@attribute1"/></xsl:when>
> B  B  B  B  <xsl:when test="@attribute2"><xsl:value-of
select="@attribute1"/></xsl:when>
> B  B  B  B  <xsl:otherwise>No matching attribute </xsl:otherwise>
> B  B  B </xsl:choose>
> B  </xsl:with-param>
> </xsl:apply-templates>
>
>
>
>
> I have to take a look if I can adapt this to my situation.
>
>
>
> Roelof
>
>
>
>
>
>
>
>
>
> ---------------------------------------- > From: dnovatchev@xxxxxxxxx >
Date: Sat, 31 Dec 2011 10:37:26 -0800 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >
Subject: Re:  why get the value not be calculated > > Just use: > > > >
Also, note that in many cases it may be better to use > and not . Parameters
can be > passed with in the same way they are passed with > . > > On Sat, Dec
31, 2011 at 10:21 AM, Roelof Wobben wrote: > > > > Oke, > > > > > > > > I
understand it. > > > > But I need to put the result of the calculation into a
param so I can use the result again on another place in the script. > > > > >
> > > So I think I need a call template and with param. > > > > > > > > Roelof
> > > > > > > > > > > > ---------------------------------------- > From:
dnovatchev@xxxxxxxxx > Date: Sat, 31 Dec 2011 09:56:20 -0800 > To:
xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: Re:  why get the value not be
calculated > > I think that your expression seems to calculate correctly the
wanted > value. For example: > >
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > > > > > > >
"floor(number($total_articles)-1) > div > $articles_per_page +1"/> > > > >
When this transformation is applied on any XML document (not used at > all in
this example), the wanted, correct result is produced: > > 4 > > > > On Sat,
Dec 31, 2011 at 9:39 AM, Roelof Wobben wrote: > > > > Oke, > > > > > > > > It
worked but does the value of the calculation put into the param number_pages ?
> > > > > > > > What I try to calculate is how many pages I need for
displaying all the articles when I have a fixed number of articles on a page.
> > > > > > > > So as example : > > > > > > > > I have 4 articles. > > > > And
I want to have 3 articles on a page. > > > > Then I need 4/3 = 1.3333 pages. >
> > > Then I have to make it the next whole number so it will be 2. > > > > >
> > > Roelof > > > > > > > > > > > > > > > > > > > >
---------------------------------------- > From: dnovatchev@xxxxxxxxx > Date:
Sat, 31 Dec 2011 09:27:53 -0800 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >
Subject: Re:  why get the value not be calculated > > Yes, you have one
excessive ')'. Change to: > > "floor(number($total_articles)-1) div
$articles_per_page +1"/> > > This makes the expression syntactically correct
-- I haven't tried to > understand wht you want to calculate, so this may or
maynot be the > semantically right expression. > > > > On Sat, Dec 31, 2011 at
9:15 AM, Roelof Wobben wrote: > > > > Thanks > > > > > > > > But I get now
this error message : > > > > > > > > XSLTProcessor::importStylesheet():
xsl:value-of : could not compile select expression
'floor(number($total_articles)-1) div $articles_per_page)+1' > > > > > > > >
Roelof > > > > > > > > > > > > > > > > > > > > > > > > > > > >
---------------------------------------- > From: dnovatchev@xxxxxxxxx > Date:
Sat, 31 Dec 2011 09:11:22 -0800 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >
Subject: Re:  why get the value not be calculated > > On Sat, Dec 31,
2011 at 9:04 AM, Roelof Wobben wrote: > > > floor(number($total_articles)-1)
div $articles_per_page)+1"/ > > You want an XPath expression to be evaluated
-- not just output. > > Therefore, use: > > > > > > > > -- > Cheers, > Dimitre
Novatchev > --------------------------------------- > Truly great madness
cannot be achieved without significant intelligence. >
--------------------------------------- > To invent, you need a good
imagination and a pile of junk > ------------------------------------- > Never
fight an inanimate object > ------------------------------------- > To avoid
situations in which you might make mistakes may be the > biggest mistake of
all > ------------------------------------ > Quality means doing it right when
no one is looking. > ------------------------------------- > You've achieved
success in your field when you don't know whether what > you're doing is work
or play > ------------------------------------- > Facts do not cease to exist
because they are ignored. > ------------------------------------- > I finally
figured out the only reason to be alive is to enjoy it. > >
>



--
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
To avoid situations in which you might make mistakes may be the
biggest mistake of all
------------------------------------
Quality means doing it right when no one is looking.
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
Facts do not cease to exist because they are ignored.
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.