[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: dynamic node access

Subject: Re: dynamic node access
From: RQamar <qamar_rahil@xxxxxxxxxxx>
Date: Mon, 21 Feb 2005 17:19:41 +0000
xml node access
David Carlisle wrote:


Then you might need something


<xsl:template match="/">
   <Top>
       <PrimeConcept><xsl:apply-templates select="something"mode="top"/></PrimeConcept>
       <SubConcept><xsl:apply-templates select="something else "mode="somethingelse"/></SubConcept>
   </Top>
</xsl:template>

or you might not.



I wrote my code in this form initially although I didnt think it was ideal for my requirement.


By writing a <SubConcept> node in this form, the output xml file ensures that a <SubConcept> node definitely exists. However, I want the output xml file to have a <SubConcept> node only if

(i) A <TopNode> Car is found in the input xml, and
(ii) A <TopNode> Toyota is found in the input xml provided (i) is true, which is why I have an <xsl:if> clause nested within another <xsl:if> clause.


My input file is very large so Im not sure whether it makes sense to post the entire doc but a snippet of it is

-------------------
<TopNode id="10180" name="Car">
     <Child>
          <Concept name="Toyota" ref="10235"/>
      </Child>
</TopNode>
<TopNode id="10235" name="Toyota">
      <Child>
          <Concept name="Corolla" ref="10279"/>
      </Child>
</TopNode >
<TopNode id="10279" name="Corolla"/>

-------------------

Is it possible to do what I want? One way I was thinking of coming round this problem is to declare a global variable and then assign it a value locally (I know there are some issues with assignment in XSLT and Im reading them at the moment). This variable will contain a boolean value of whether 'Toyota' exists from the inner <xsl:if> clause and only call the <SubConcepts> <xsl:apply-template> if the value is 'true'. Dont know if its the best approach but that was one way I was thinking of resolving the issue.

Comments?

Thanks
Rahil

but only you know what your input looks like or what transformation you
are trying to do.



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

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.