2

我有以下场景:使用 XML 数据绑定,我有一个从架构 A 创建的对象,以及一个使用架构 B 创建的不同对象。但是,架构 B导入架构 A 以定义 A 类型的子节点。

所以,现在我有:

  • unit1,objectA(来自模式 A)
  • unit2,objectB(来自模式 B),objectA(来自导入模式 A 的模式 B)

当然,该类unit2.objectAunit1.objectA. unit2 中的定义也不同,因为它不包含一些命名空间属性(这很重要:我认为这些是隐含的,因为父节点也有它们。)

这是我的问题:鉴于这些只是IXMLDocument对象,我可以做很多事情,但我希望能够unit1.objectAunit2.objectA.

我最初的想法是应该能够从文档中导出节点,并且应该有一个选项可以根据正确的模式使这个导出的节点“洁净”(因此,文档 B 中的类型 A 的节点应该导出并针对模式 A 进行验证。)我知道这可能希望太多,所以我的问题可能会被改写:

如何在导出的节点/文档中添加/覆盖命名空间属性 ( , , ) 时将节点从IXMLDocument对象导出到新对象?IXMLDocumentxmlnsxmlns:xsixsi:schemaLocation

4

1 回答 1

0

原来是一个非常棘手的问题。求助于我的 XML 库中的低级 DOM 函数和大量的肘部油脂;必须导出想要的片段,并手动调整架构和命名空间,然后重新格式化所有内容。

于 2012-12-22T17:52:53.303 回答