[Home] [By Thread] [By Date] [Recent Entries]

Subject: RE: xpath question
From: Stuart Brown <sbrown@xxxxxxxxxxx>
Date: Thu, 27 Mar 2003 17:10:35 -0000
HI Florian,

You can use the local-name() function to solve this problem. It returns the
(unqualified) name of the context element. In these circumstances you would
usually select with a wildcard, and then use local-name() in a predicate to
filter it down. Something like:

<xsl:template match="column">
 <xsl:for-each select="/root/group/*[local-name()=current()/@name]">
  <!-- Do whatever -->
 </xsl:for-each>
</xsl:template>

The above selects the actual fruity element. If you want the <group> change
the xpath in the for-each to "/root/group[*[local-name()=current()/@name]]".

Cheers,

Stuart

> -----Original Message-----
> From: florian [mailto:csshsh@xxxxxxxxxxxxxxx]
> Sent: 27 March 2003 17:08
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject:  xpath question
> 
> 
> 
> hi!
> 
> i have a document xml doc like this:
> 
> <root>
>   <group>
>      <apple>bla</apple>
>      <orange>bla</orange>
>   </group>
>   <group>
>      <apple>bla</apple>
>      <orange>bla</orange>
>   </group>
> 
>   <order>
>     <column name="orange" />
>     <column name="apple" />
>   </order>
> </root>
> 
> i would like to do the following: im going though all the column nodes
> and would like to access the group nodes where the column 
> attribute name
> and the group node name match up.
> 
> basically i can just not think of a way to do that in xpath.. anybody
> got an tip? how can i say in xpath that it should get the node with
> the name in @name and not just access the name attribute of a group
> node..
> 
> thanks alot!
> 
> ciao!
> florian
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 

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


Current Thread
  • xpath question
    • florian - Thu, 27 Mar 2003 11:56:27 -0500 (EST)
      • Wendell Piez - Thu, 27 Mar 2003 12:28:26 -0500 (EST)
        • florian - Fri, 28 Mar 2003 07:46:02 -0500 (EST)
      • florian - Thu, 27 Mar 2003 12:29:33 -0500 (EST)
      • <Possible follow-ups>
      • Stuart Brown - Thu, 27 Mar 2003 12:14:19 -0500 (EST) <=
      • Bryan Archer - Thu, 27 Mar 2003 12:28:07 -0500 (EST)
      • Andrew Welch - Fri, 28 Mar 2003 08:24:09 -0500 (EST)
      • Bryan Archer - Fri, 28 Mar 2003 08:28:57 -0500 (EST)
        • florian - Fri, 28 Mar 2003 08:54:56 -0500 (EST)
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member