[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Function within an expression


Subject: Re: [xsl] Function within an expression
From: Raffaele Sena <raff@xxxxxxxxxxxx>
Date: Wed, 5 Jan 2005 10:27:44 -0800

yes, and yes.

It should be possible to do like your example (I think :) but it's definitively possible to create a "local" variable related to current node:

<xsl:for-each select="$lines">
  <xsl:variable name="type" select="substring(., 1, 3)"/>
  <record>
     <xsl:apply-templates select="$field_definitions/*[@type = $type]"/>
    ...
  </record/>
</xsl:for-each>

-- Raffaele

On Jan 5, 2005, at 10:10 AM, Jim Neff wrote:

Is it possible to do a function inside of an expression?

Here is my XSL code:

<xsl:for-each select="$lines">

<record>

<xsl:apply-templates select="$field_definitions/*[@type = (substring(., 1,
3))]">

<xsl:sort select="field_no" order="ascending" data-type="number"/>

<xsl:with-param name="current_context" select="."/>

</xsl:apply-templates>

</record>


</xsl:for-each>



My question is in regards to the substring function in the apply-templates
expression.


The current context of the $lines variable will look something like this:

"AA0 12345 fdsajl129..."

I'm trying to match the first three characters of that string.

If I can't do this, can I create a variable for this for-each ONLY?

Thanks again,
Jim neff



!DSPAM:41dc2394326932124535203!


Current Thread
Keywords
xsl