xsl-list
[Top] [All Lists]

RE: Creating a variable based on another element value

2003-10-08 07:11:00
Hi,

Given this xm ldoc:
<ve pos=1"><entrydata><text>mena</text></entrydata></ve>
<ve pos=2"><entrydata><text>proc</text></entrydata></ve>
<ve pos=3"><entrydata><text>security</text></entrydata></ve>
<ve pos=4"><entrydata><text>protocal</text></entrydata></ve>
<ve pos=5"><entrydata><text>network</text></entrydata></ve>
<ve pos=6"><entrydata><text>lol</text></entrydata></ve>

I would like to store the position number of the <ve> tag (in 
a variable 
called "secpos") which contains entrydata[0]/text='Security. 

This will always return an empty node-set, you probably mean entrydata[1] or 
something?

I have got the 
ve which does this but i dont know how to extract the 
position attribute and 
create a variable at the same time? This is what i have got 
at the moment:

<xsl:variable name="secpos" 
select="viewentry[entrydata/text='Security']" />

but i need it to store the position attribute of the ve which 
has text 
containing security? Apologies if this question is a bit easy 
to others but 
i didnt know where to look..

How about

  <xsl:variable name="secpos" select="ve[entrydata/text = 'security']/@pos"/>

You didn't specify what the current context is for the evaluation, so I assume 
the parent element of the ve elements. Note that XPath string comparisions are 
not case-insensitive.

Cheers,

Jarno - Velvet Acid Christ: Fun With Knives

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



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