2010-01-31 75 views
-1

我是XSLT的新鲜蜜蜂。我有时间限制,我必须非常紧急地提供一些东西。通用XSLT转换

我正在粘贴下面的xml示例。这里是我有input.xml和output.xml的小解释。这两个文件需要合并,因为它们有不同的格式。这两个文件都需要根据元素“ID”进行合并。 output.xml需要在input.xml中合并。如果input.xml中元素的ID与output.xml的元素ID匹配,则output.xml中的子元素需要在input.xml中匹配元素的结束标记之前进行合并。

如果您有任何问题,请将其解雇。

input.xml中
<Result ID="A"> 
    <Comment>Blah blah blah.</Comment> 
    <aaa>111</aaa> 
    <a1>000</a1> 
    <a2 ID="B"> 
    <a2a>9iu</a2a> 
    <a23>kjf</a23> 
    <b ID="C"> 
    <b1>k</b1> 
    </b> 
    <c>jjj</c> 
    <d ID="E"> 
    <d12>ppp</d12> 
    <d23 ID="W" /> 
    </d> 
    <e ID="AA"> 
    <d ID="G"> 
     <d12>ppp</d12> 
     <d23 ID="O" /> 
    </d> 
    </e> 
</Result> 

output.xml中
<Insert> 
    <mn ID="A"> 
    <mn1>345</mn1> 
    <mn2>123</mn2> 
    </mn> 
    <no ID="C"> 
    <op>09</op> 
    <io>89</io> 
    </no> 
    <ab ID="B"> 
    <ab>jik</ab> 
    <dc>hdg</dc> 
    </ab> 
</Insert> 

merged.xml(所需的输出):

<Result ID="A"> 
    <Comment>Blah blah blah.</Comment> 
    <aaa>111</aaa> 
    <a1>000</a1> 
    <a2 ID="B"> 
    <a2a>9iu</a2a> 
    <a23>kjf</a23> 
    <b ID="C"> 
     <b1>k</b1> 
     <op>09</op> 
     <io>89</io> 
    </b> 
    <c>jjj</c> 
    <d ID="E"> 
     <d12>ppp</d12> 
     <d23 ID="W" /> 
    </d> 
    <ab>jik</ab> 
    <dc>hdg</dc> 
    </a2> 
    <e ID="AA"> 
    <d ID="G"> 
     <d12>ppp</d12> 
     <d23 ID="O" /> 
    </d> 
    </e> 
    <mn1>345</mn1> 
    <mn2>123</mn2> 
</Result> 

我需要一个通用的XSLT溶液,这将不工作硬编码标签名称。

+2

紧急??非常抽象的标题..大声笑 – 2010-03-26 06:27:33

回答