何らかの理由で、のnillableを.Netスキーマ検証ツールで正しく動作させることができません。私は親ノードをオプションにする方法を見つけようとしていますが、同時に空のノードがバリデーターを通過するのを防ぎます。子ノードのスキーマ検証ツール「nillable」が機能しません。
は、ここで現在の要素のバリデータです:
<xs:element name="Dates" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="From" type="datetime" minOccurs="0" maxOccurs="1" />
<xs:element name="To" type="datetime" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
</xs:element>
私は=「false」をしかし、それは動作しませんnillableなに日付要素を変更しようとした - 空のノードはまだ過去のことになりますバリデーター。
また、3つの要素ノードをすべてnillable = "false"に変更しようとしました。空の親ノードを検出するのにうまくいきますが、両方の子ノードが残りのオプションではなく必要なノードになります。
ここに何か不足していますか?はい、私はいつもちょうどそれにいくつかのコードをスローし、それを動作させることができます...しかし、私は私に必要なものを与えるスキーマの宣言にここにバリエーションがあることを賭けている。
非常に近いと思いますが、最初の例(From/Toノードあり)は検証に失敗します(http://www.xmlforasp.net/SchemaValidator.aspxを参照)。これは正しい方向に向いているように見えますが、スキーマ検証ツールサイトでスキーマを試してみると、私は物事を悪化させました。 :-) – jerhewet
@ jerhewetあなたは本当に正しいです。投稿されたバージョンに、外側の 'choice'の' maxOccurs = "2" 'がありません。 – Filburt
あなたは* Da Manです!多分ダ・ウーマン - どちらの場合でも/性別でこれは私が探していたものです。非常に幸せなキャンピングカー! – jerhewet