【发布时间】:2014-09-23 19:22:07
【问题描述】:
这是我的要求 - 1)我有一个xml和对应的xsd文档 2) 这是一个复杂的 xml,具有多个元素及其层次结构。但是只有某些元素/字段是重要的 3)我想用这些字段创建一个excel,用户可以在其中输入多行数据 4)当用户点击创建xml时,应该为每一行创建单独的xml 5) 创建的 xml 应包含所有元素(用户输入 + 原始 xml 中的更多元素)
这只是一个示例-
<A>
<A1/>
<A2/>
</A>
<B>
<B1>*User entered value*</B1>
<B2>*User entered value*</B2>
</B>
<C>
<C1/>
<C2/>
</C>
我在 MSXML2.DOMDocument60 上找到了一些参考资料,其中可以使用此 API 创建 xml,还可以通过 excel 宏针对架构进行验证。但就我而言,有 1000 个标签。以下是我想到的一些选项-
- 使用DOMDocument60 API,使用宏逐行构造xml。由于有 1000 多个标签,这种方法会占用 1000 多行代码,这会使维护工作变得繁琐!
- 由于我有示例 xml,我可以清空现有值,然后使用用户输入的值(从 excel 单元格数据中获取)通过宏更新 xml。这似乎更有效,因为它可以节省 1000 行代码,但这可能吗?由于需要更新的元素分布在 xml 中,我是否能够搜索一个元素并仅更新该元素而不影响 xml 中的任何其他数据/标签?
- 可以用 xsd 做什么吗?我没有想到我的要求
- 还有其他选择吗?
感谢您对此的任何帮助。谢谢!
【问题讨论】: