Re: [xsl] building path expressions around dynamic element node names

Subject: Re: [xsl] building path expressions around dynamic element node names
From: Rahil <qamar_rahil@xxxxxxxxxxx>
Date: Wed, 18 May 2005 12:54:36 +0100
Thanks for the suggestions.

I read in one of the earlier discussions that having a dynamically named element isnt good practice. But does it really matter if the input xml file has only been generated as an intermediary and the structure will not be used for the final output?

Also, I wanted to know how to access <Dynamic1> when the control is inside B/Class ? I tried a few combinations path expressions but none of them looked right.

Im attaching my sample input xml file once again for ease.

<Top>
  <Dynamic1>
        <A>
              <Class id="123">Dynamic1</Class>
       </A>
        <B>
              <Class id="897">Not Present</Class>
        </B>
  </Dynamic1>
  <Dynamic2>
        <A>
              <Class id="567">Dynamic2</Class>
       </A>
        <B>
              <Class id="908">Car</Class>
        </B>
  </Dynamic2>
</Top>

Regards
Rahil



David Carlisle wrote:

  Thus if you want to check if the context
  node is 'Dynamic1' you can use
 <xsl:if test="name(.) = 'Dynamic1' ">

It's usually better to use
<xsl:if test="self::Dynamic1">
especially if namespaces are involved.

David


________________________________________________________________________ This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. For more information on a proactive anti-virus service working around the clock, around the globe, visit: http://www.star.net.uk ________________________________________________________________________

Current Thread