When the value of a predicate [X] is an integer, it's a shorthand for
[position()=X]. So E[position()] means E[position()=position()] which is the
same as E[true()], or simply E. Your mistake is in forgetting that the
context changes inside the square brackets. So you need to assign a variable
to the value of position() outside the predicate, and then use the variable
inside the predicate:
<xsl:variable name="pos" select="position">
<xsl:value-of select="x/y/z[$pos]"/>
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Adam J Knight [mailto:adam(_at_)brightidea(_dot_)com(_dot_)au]
Sent: 15 April 2005 03:44
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Trouble with position!
Hi all,
With this xml structure in mind:
<dfile>
<df_column_names>
<df_column name="employee_name" type="hyperlink">Name:</df_column>
<df_column name="department" type="text">Department:</df_column>
<df_column name="position" type="text">Position:</df_column>
</df_column_names>
<df_data_row>
<data_key>1695</data_key>
<df_data>Charles Hilditch</df_data>
<df_data>Processing</df_data>
<df_data>Mill Supervisor</df_data>
</df_data_row>
</dfile>
I am trying to select the type attribute for a particular
df_data element.
<xsl:for-each select="./df_data">
<xsl:value-of
select="/dfile/df_column_names/df_column[position()]/@type"/>
</xsl:for-each>
My algorithm is simply select the type attribute from df_column whose
position Is equal to current df_data element being processed.
I keep getting the type attribute for the first db_column name only.
Thanx to those who respond.
Cheers,
Adam
--~------------------------------------------------------------------
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>
--~--