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

RE: How to copy the previous operations?

Subject: RE: How to copy the previous operations?
From: cknell@xxxxxxxxxx
Date: Wed, 19 Nov 2003 12:50:14 -0500
xsl copy
You've got a misconception about the process of creating a new tree of nodes that is tipped by this statement " (which should have already copied the first group identifier a's signature part)".

A stylesheet refers only to the input tree and itself. I does not have read access to the output tree. Therefor the notion that your stylesheet can refer to a tree fragment that has been "already copied" is fatally flawed.

I think this problem can be resolved by recursive calls to a named template, but there isn't enough information to decide exactly how it should be structured. Is there a set number of <group> elements in a document, or is this arbitrary?
-- 
Charles Knell
cknell@xxxxxxxxxx - email



-----Original Message-----
From:     Ram <sram_30@xxxxxxxxx>
Sent:     Wed, 19 Nov 2003 08:21:57 -0800 (PST)
To:       xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject:   How to copy the previous operations?

Hi,
 Can anyone help me out how to copy the previous operations?
The xml source would look like this:

<formatted-xml>
  <group><identifier>a</identifier>
   <signature>signature <identifier>DNSQuery1</identifier>
     <in>in<long>long</long><identifier>ant</identifier></in>
   </signature>
  </group>
  <group><identifier>b</identifier><identifier>a</identifier>
    <signature>signature<identifier>DNSQuery2</identifier>                
       
     
<inout>inout<string>string</string><identifier>grass</identifier></inout>
    </signature>
  </group>
  <group><identifier>c</identifier><identifier>b</identifier>
     <signature>signature<identifier>DNSQuery3</identifier>               
        
       <out>out<boolean>boolean</boolean>
<identifier>fish</identifier></out>
     </signature>
  </group>
</formatted-xml>

    What I have to do is, I should copy the signature part the first group
identifier 'a' to the signature part in group identifier 'b', because it
is followed by the group identifier 'a'.
    Similarly, the third group identifier 'c' is followed by the second
group identifier 'b' (which should have already copied the 
first group identifier a's signature part) and so the second group
identifier's signature part should be copied to the third group identifier
signature part.

I tried the following xsl.

<xsl:template match="group">
  <xsl:if test="identifier[2]= preceding::group/identifier">
     <xsl:copy>
        <xsl:apply-templates select="preceding::group/signature"/>
     </xsl:copy>
  </xsl:if>
</xsl:template>
 
  But it didn't work.

Thanks and regards,
Ram


__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree

 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

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.