次のような XML があるとします。
<foo ...>
<bar a="s1" b="s2" />
<bar a="s3" />
</foo>
XSD で定義したいのは、 attribute のデフォルト値が attributeb
の値であることですa
。それは可能ですか?
前もって感謝します!
次のような XML があるとします。
<foo ...>
<bar a="s1" b="s2" />
<bar a="s3" />
</foo>
XSD で定義したいのは、 attribute のデフォルト値が attributeb
の値であることですa
。それは可能ですか?
前もって感謝します!
短い答え:いいえ。
"XML Schema Part 1: Structures Second Edition" のセクション "3.2.1 The Attribute Declaration Schema Component" によると、中程度の回答です。属性が実際に存在しない場合に使用される指定された値"
長くて実用的な答え: 鍵は「スキーマ検証後の情報セット」です。では、何のためにスキーマ ドキュメントが必要なのか自問してみてください。
use="required"
for 属性を使用してくださいb
XmlSerializer
)、この「スキーマ検証後の情報セット」という用語を満たす後処理を明示的に追加する必要があります。の値がb
設定されていないかどうかを検出し、自分で設定します-それがビジネス要件ですb
を と同じ値として扱いますa
)、ドキュメントを追加します。XML スキーマにはそのような概念はありません。外挿を使用する - これは「の値が現在の USD/EUR 比率になる」と同じ要件になりますb
- それは単に計算された値です