現在、選択した最初の属性がチェックである場合にのみ、支払いのチェックナムの2番目の属性を検証しようとしています。ここにいくつかの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>
check には checknum が必要ですが、他のすべての選択には必要ないと具体的に言うには、どのタイプの attlist ステートメントを使用しますか?
私はこのようなことを線で考えていました
<!ELEMENT payment (to,amount,date,description)>
<!ATTLIST payment type (check | transfer | atm) "check" >
<!ATTLIST payment type (check) checknum >
しかし、もちろん 3 行目は有効ではありません。