合并XML文档
我需要根据段落ID合并多个XML文档,如下所述。基本上,这是一种文档同步情况,添加到主控文档中的paragprahs需要从辅助文档中添加;从主控文档中删除的段落必须从辅助文档中删除,最后,主控文档段落节点上的某些属性(例如“字体”)必须复制到辅助文档中,而某些属性需要保留(例如“作者”)。我在c#.net中编写了一些相当暴力的代码,它可以半工作(没有编码属性处理保持/更新逻辑),但更喜欢XSLT解决方案,因为它似乎是XSLT的完美应用程序,但我是一个XSLT“处女”,被投入到一个新的“匆忙”项目中。。。至少有人能告诉我如何合并这两个文档(即从主文档到辅助文档添加段落)吗 比如说 master.xml:合并XML文档,xml,merge,document,Xml,Merge,Document,我需要根据段落ID合并多个XML文档,如下所述。基本上,这是一种文档同步情况,添加到主控文档中的paragprahs需要从辅助文档中添加;从主控文档中删除的段落必须从辅助文档中删除,最后,主控文档段落节点上的某些属性(例如“字体”)必须复制到辅助文档中,而某些属性需要保留(例如“作者”)。我在c#.net中编写了一些相当暴力的代码,它可以半工作(没有编码属性处理保持/更新逻辑),但更喜欢XSLT解决方案,因为它似乎是XSLT的完美应用程序,但我是一个XSLT“处女”,被投入到一个新的“匆忙”项目
<paragraphs>
<paragraph id="intro" font="bold" author="JS">
<sentences>
<sentence>Bla bla bla bla</sentence>
<sentence>More Bla bla bla bla</sentence>
</sentence>
</Paragraph>
<paragraph id="main1" font="bold" author="FTG">
<sentences>
<sentence>any text here</sentence>
<sentence>More Bla bla bla bla</sentence>
</sentence>
</paragraph>
<paragraph id="main2" font="bold" author="FTG">
<sentences>
<sentence>Added to Master Doc</sentence>
</sentence>
</Paragraph>
呜呜呜呜呜呜
更多的废话废话废话废话
这里有文本吗
更多的废话废话废话废话
添加到主控文档
和Secondary.Xml
<paragraphs>
<paragraph id="intro" font="normal" author="ZZ">
<sentences>
<sentence>Bla bla bla bla</sentence>
<sentence>More Bla bla bla bla</sentence>
</sentence>
</paragraph>
<paragraph id="main1" font="normal" author="XYZ">
<sentences>
<sentence>main1 has been edited in secondary doc but needs to remain unchanged</sentence>
<sentence>More Bla bla bla bla</sentence>
</sentence>
</paragraph>
<paragraph id="conclusion" font="bold" author="FTG">
<sentences>
<sentence>In conclusion.....bla.../sentence>
</sentence>
</paragraph>
</paragraphs>
呜呜呜呜呜呜
更多的废话废话废话废话
main1已在辅助单据中编辑,但需要保持不变
更多的废话废话废话废话
总之………bla…/句子>
需要通过从辅助文档中删除结论段落、从主文档中将main2 doc添加到辅助文档、将主文档到辅助文档中的字体属性应用到匹配段落,但在匹配段落中保持作者属性不变来合并。后面的部分(属性克隆/保留是一个非常小的问题)
呜呜呜呜呜呜
更多的废话废话废话废话
main1已在辅助文档中编辑,但需要保持不变
更多的废话废话废话废话
添加到主控文档
<paragraphs>
<paragraph id="intro" font="bold" author="ZZ">
<sentences>
<sentence>Bla bla bla bla</sentence>
<sentence>More Bla bla bla bla</sentence>
</sentence>
</paragraph>
<paragraph id="main1" font="normal" author="FTG">
<sentences>
<sentence>main1 has been edited in secondary doc but meeds to remain unchanged</sentence>
<sentence>More Bla bla bla bla</sentence>
</sentence>
</Paragraph>
<paragraph id="main2" font="bold" author="FTG">
<sentences>
<sentence>Added to Master Doc</sentence>
</sentence>
</Paragraph>
</paragraphs>