我有以下示例xml:
<ip_addresses>
<ip_address>
<type>local</type>
<ip>192.168.1.1</ip>
</ip_address>
<ip_address>
<type>public</type>
<ip>82.125.1.1</ip>
</ip_address>
</ip_addresses>
如何在我的xml架构中使用不同的正则表达式进行ip检查,而不依赖于<type>
标签中的值?
我也试过像<ip type="local">192.168.1.1</ip>
这样的东西,但我无法使xml架构正常工作。
答案 0 :(得分:0)
在XSD 1.0中,你不能使一个元素的类型以另一个元素的值为条件。
在XSD 1.1中,您可以使用断言来完成此操作。例如(在ip_address级别)你可以写
<xs:assert test="(@type='local' and @ip='192.168.1.1') or @type='public'"/>