[xsl] Can you break one node tree into two?

Subject: [xsl] Can you break one node tree into two?
From: "Wilde Rebecca L SSgt HQ SSG/STS" <Rebecca.Wilde@xxxxxxxxxxxxx>
Date: Mon, 31 Jan 2005 15:36:28 -0600
Hello,

I'm trying to take some XML such as:

<RootEle xmlns="">
  <Letter>
      <From/>
      <To/>
      <Address/>
      <Subject/>
      <Body/>
  </Letter>
</RootEle>

And I would like my XSLT to output:

<RootEle xmlns="">
   <Letter>
       <From/>
       <To/>
       <Address/>
   </Letter>
</RootEle>
<RootEle xmlns="">
    <Letter>
        <Subject/>
        <Body/>
    </Letter>
</RootEle>

Basically I want to say as soon as I see the Address node I want to
break it out and everything above it into one node tree and everything
below it into a second node tree.  The nodes could be anything, but if
an Address node is passed to me, I need to break the node tree into two.

I am think I need to do something with the xsl:copy-of and the
xsl:for-each, but my xslt knowledge is very limited and attempting to
use this is not creating anything near what I had hoped for.

If it isn't possible to return two node trees (which I suspect it
isn't),  how would I make it look like: <NewRoot>
  <RootEle xmlns="">
    <Letter>
       <From/>
       <To/>
       <Address/>
    </Letter>
  </RootEle>
  <RootEle xmlns="">
    <Letter>
        <Subject/>
        <Body/>
    </Letter>
  </RootEle>
</NewRoot>

Thank you,
Becky

Current Thread