我希望能够根据另一个属性的值来验证元素中的属性。像这样的东西。
<Root>
<Vehicle type="Unicycle" numWheels="1" />
<Vehicle type="Bicycle" numWheels="2" />
</Root>
要求是,如果车辆类型是“独轮车”,那么 numWheels 必须为 1。否则我不在乎它有多少个轮子。
我有类似的东西作为类型的起点,我想在其中施加限制。
<!-- Number of Wheels restrictions -->
<xsd:simpleType name="NumberOfWheelsType">
<xsd:restriction base="xsd:integer">
<xsd:minInclusive value="1"/>
</xsd:restriction>
</xsd:simpleType>
我必须承认我不太确定从哪里开始创建我想要的限制,所以任何指导都将不胜感激。
我正在使用 xmllint 验证架构,我认为这会将我限制为 XML 架构 1.0(如果我错了,请纠正我,因为我无法以一种或另一种方式证明这一点)。