现在,我正在尝试做到这一点,因此我只有在选中第一个属性为检查时才验证付款中的第二个checknum属性。这是一些xml示例
未选择支票付款
<payment type="transfer" >
<to category="utilities">Central Electric</to>
<amount>94.85</amount>
<date>2005-08-29</date>
<description>Electric Bill</description>
</payment>
选择支票付款
<payment type="check" checknum="C1213">
<to category="food">Pizza Now</to>
<amount>33.24</amount>
<date>2005-08-28</date>
<description>Dinner</description>
</payment>
我会使用哪种类型的 attlist 语句来明确说 check 必须有 checknum 但不能用于所有其他选择?
我在想这样的事情
<!ELEMENT payment (to,amount,date,description)>
<!ATTLIST payment type (check | transfer | atm) "check" >
<!ATTLIST payment type (check) checknum >
但是当然第三行是无效的。