我需要解决这个问题,看起来我需要帮助。
我们有一个现有的架构X [X是一个行业标准架构]我们正在为新架构Y(具有不同的目标命名空间)构建一些扩展。
现在问题是我们想要将Schema Y的元素/属性的使用限制为仅作为X的已定义元素/类型的成员。[模式验证在使用无效的情况下应该失败 ]
我们如何实现这一目标?这样做的最佳方式是什么?
RM
答案 0 :(得分:0)
我会说这取决于你修改了多少以及模式是什么样的。一方面是你的扩展靠近根或靠近叶子。
这是接近根的一般方法。
X.xsd
element name=foo type=fooType
complexType fooType
sequence
element name=bar type=BarType
Y.xsd
import X.xsd namespace=xns
element name=foo type=foo2Type
complexType foo2Type
sequence
element name=bar type=xns:BarType
element name=baz type=BazType
这里你添加了一个你自己定义的新元素baz,但是bar将包含行业标准所要求的所有孩子。
将X导入Y(使用import元素)。