两个属性之间的XSD按位逻辑

问题描述

XSD是否可以在两个XML属性之间应用(按位)逻辑?

我希望捕获以下架构冲突:

<parent mask="0x0007">
  <child id="1" value="0x0001"/>
  <child id="2" value="0x0002"/>
  <child id="x" value="0x0010"/> // catch this!
</parent>

子x显然不能被其父遮罩。

简单的逻辑:

if ((value AND mask) != value) then
  # child element is invalid
endif

我的应用程序当然可以在XML加载期间捕获到这一点。 但是我的应用程序在此之前应用了模式验证,如果我们在那个阶段能够抓住这一点,那就太好了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)