xsl-list
[Top] [All Lists]

RE: Variable iteration

2005-05-19 06:06:01
fadi,

If you don't care about the order of test,

test="@requiredknowledge=preceding::*[name()=concat('chunk_name',$n,'_knowledge')]">

Could be something like:

test="@requiredknowledge=preceding::*[substring(local-name(), 1, 10) = 'chunk_name' and ...]">

If you want to test for a specific order of $n, you could use a loop to pass in various values of n. How you generate that loop of numbers should be an FAQ. Essentially, select arbitrary nodes from XML (or current XSL) doc, and use position().

<xsl:for-each select="/foo/bar[position() &lt;= 3]"> // use a better path
   <xsl:variable name="n" select=" position of . "/>
   ...
</

Regards,

--A

From: fadi qutaishat <fadi_taher2000(_at_)yahoo(_dot_)com>
Reply-To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Variable iteration Date: Thu, 19 May 2005 04:05:47 -0700 (PDT)

Hi all,

I am having the following xslt file

...

<xsl:template match="chunk" mode="content">

<xsl:choose>
<xsl:when
test="@requiredknowledge=preceding::*[name()=concat('chunk_name',$n,'_knowledge')]">


<xsl:copy-of select="section"/>

</xsl:when>
</xsl:choose>
</xsl:for-each>
</xsl:template>
...

In case of any matches this files extracts the
chunks? sections that meets the condition. My problem
that I might have something like
chunk_name1_knowledge,  chunk_name2_knowledge,
chunk_name5_knowledge, chunk_name9_knoweldge, etc.
which are not sequentially ordered.

How can I assign these different values (i.e numbers)
to the variable $n.

I know that things can be structured in a different
way, but to some extent I think I would need them like
that way.

_________________________________________________________________
Don?t just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/


--~------------------------------------------------------------------
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>