XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Subtree transformation

Hello,

I am wondering if it is possible to change a subtree of an XML tree 
whose structure is not always the same. For example, the input XML can 
look like

<a>
   <b>
     <c id="1"/>
   </b>
</a>

I want to add some more "<c>" tags as children of the "<b>" tag to get 
something like this:

<a>
   <b>
     <c id="1"/>
     <c id="2"/>
     ...
   </b>
</a>

If the input would always look like this I would write a stylesheet that 
looks like the following:

<xsl:stylesheet match="/">
<a>
   <b>
     <xsl:copy-of="/a/b/c"/>
     <c id="2"/>
     <c id="3"/>
   </b>
</a>

But how can I add further siblings to "<c>" if the preceding nodes 
differ and if there are more tags below the closing "</b>" like in this 
example:

<a>
   <b>
     <bb>
       <bbb/>
     </bb>
     <c id="1"/>
   </b>
   <d>
      <e/>
      ...
   </d>
</a>


I need to copy everything and add some additional "<c>" tags. I dont't 
know how to do that becase with xsl:copy-of I can copy the whole tree 
but it can not be changed and if I iterate trough the tree with xsl:copy 
every tag is immideately closed. It would be nice if someone could help.

Regards,
Garvin


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS