我还没有想出一个好的,干净的方式来做到这一点,所以我会给你带来我的困境!XML元素覆盖
我想用XML表示一个配置。我有一些领域,一些需要,一些不是,大多数都有严格的限制。我有一个基本的配置,我将代表作为config.xml中可能有这样一些内容:
...
<config>
<element-a value="3.2" />
<element-b value="hello world" />
</config>
...
有相关联的模式,说这两个领域的需要。一个是浮动,一个是一个字符串。现在我有另一个配置,它与第一个相似,只有一个小改动。我谨代表这样说:
...
<include base-config="config.xml">
<config>
<element-a value="1.5" />
</config>
...
实际上,这种新的配置拉一切从基本配置文件中的元素,只规定了什么是压倒一切的。我不能为此使用相同的模式,因为现在所有的元素都是可选的,但是我想对数据保持相同的约束(最好不必创建一个新的模式,并且所有元素都是“可选的”)。
是否有符合XML标准的方式来做到这一点?或者任何人有幸完成了这一切?也许你有一个你想分享的设计模式?
目前,我期待具有每架构的两个副本,并在处理步骤然后过载更新的元素我将加载碱。这是一个麻烦的方法,所以希望有更好的方法。
假设我拥有BaseSchema和OverrideableSchema包含的GlobalTypes。我如何挑选和选择BaseSchema中需要的元素,以及OverrideableSchema中的可选元素? – Anthony 2011-04-01 23:15:14
(至于读取实际的配置和执行超载,我完全预期的XML不由我在这里。我在实施的解决办法是总是需要一个基础包括通过了严格的架构。) – Anthony 2011-04-01 23:16:19