|
Subject: RE: [xsl] How can I get context node in this complex expresion? (current( ) didn't work) From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Wed, 4 May 2005 22:26:50 +0100 |
Can't be done in a single XPath 1.0 expression - you need to build up the
result of the XPath expression in a series of variables declared at the XSLT
level.
In XPath 2.0 you use the "for" expression to bind variables at any level of
nesting, for example,
<xsl:apply-templates
select="ROW[for $x in COB_ID return $x =
$cob_rowset[CXC_CAD_ID=key('cad_key_ori',
$cob_rowset[COB_ID = $x]/CXC_CAD_ID)/CAD_REL_ID]/COB_ID]">
I'm assuming a ROW has only one COB_ID, otherwise these aren't equivalent.
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: Jaime Stuardo [mailto:jstuardo@xxxxxxxxxxx]
> Sent: 04 May 2005 22:10
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] How can I get context node in this complex
> expresion? (current( ) didn't work)
>
> Hi all...
>
> This is the real case I have:
>
> <xsl:apply-templates
> select="ROW[COB_ID=$cob_rowset[CXC_CAD_ID=key('cad_key_ori',
> $cob_rowset[COB_ID = 2]/CXC_CAD_ID)/CAD_REL_ID]/COB_ID]">
>
> where:
> $cob_rowset : a nodeset that I assign previously. It is
> correctly assigned.
> 'cad_key_ori' a key that is correctly defined as well.
>
> That expresion works the way I want (showing some records
> according to the predicate). But that is a particular case.
> The general case is replacing the '2' above for the node
> COB_ID whose parent is ROW. For instance, I tried:
>
> <xsl:apply-templates
> select="ROW[COB_ID=$cob_rowset[CXC_CAD_ID=key('cad_key_ori',
> $cob_rowset[COB_ID =
> current()/COB_ID]/CXC_CAD_ID)/CAD_REL_ID]/COB_ID]">
>
> The call to current() didn't work (it didn't show anything
> and I know that 'COB_ID=2' is present in ROW nodeset). I
> think it is because current() is pointing to $cob_rowset context node.
>
> Any help would be greatly appreciated.
>
> Thanks
> Jaime
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [xsl] How can I get context node in, Jaime Stuardo | Thread | RE: [xsl] How can I get context nod, Jaime Stuardo |
| Re: [xsl] variables and inline tags, Wendell Piez | Date | RE: [xsl] How can I get context nod, Jaime Stuardo |
| Month |