加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

通过XSD限制基于另一个元素的XML元素

发布时间:2020-12-16 07:41:46 所属栏目:百科 来源:网络整理
导读:我相信这与keyref有关,但我不确定,我真的不确定它可以完成. 比如说我有myElement1和myElement2.如果XML文件中没有myElement2,那么myElement1必须存在,否则它是可选的. 有没有办法强制这种类型的验证在我的XSD文件? 类似的问题已经被问了几次..在stackoverfl
我相信这与keyref有关,但我不确定,我真的不确定它可以完成.

比如说我有myElement1和myElement2.如果XML文件中没有myElement2,那么myElement1必须存在,否则它是可选的.

有没有办法强制这种类型的验证在我的XSD文件?

类似的问题已经被问了几次..在stackoverflow或任何科技博客..

但答案总是不可能的,

案例如:

(a)根据任何其他元素/属性的值或存在来验证元素
(b)根据任何其他元素/属性的值或存在来验证元素的值
(c)根据任何其他元素/属性的值或存在来验证属性
(d)在同一范围内定义具有不同类型/数据类型的同名的元素/属性
(e)根据任何其他元素/属性的价值或存在来验证子元素

所有上述情况都是不可能实现的

但是如果可以实现一些转换的东西,那么你可以得到帮助.
我的意思是说,“首先要按照你的要求进行转换和修改XML,

示例::如果特定字段预期具有某些值..如果条件满足则传递XML,如果不符合则不通过
在下一个程序块中,XSD将要验证,显然是错误的:)你可以弄清楚它缺少你的自定义验证.

无论如何,意图是根据数据阻止或传递xml.这就是你在做什么..

注意:Schematron最近已经进入了良好的做法!这是教程:http://zvon.org/xxl/SchematronTutorial/General/contents.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读