2016-08-03 67 views
1

誰でもxsdで私を助けることができますか? 私のXSDは、次のようになります。XSDで空のXML要素:nil = "true"およびnillable = "true"?

<xs:element name="StringExample" type="xs:string" nillable="true" /> 
<xs:element name="DateTimeExample" type="xs:dateTime" nillable="true"/> 

そして、私はStringExample""(空きスペース)またはnullに等しい場合、XMLは次のようになりますことをしたい:

<StringExample /> 

そしてDateTimeExampleがnullに等しい場合xmlは以下のようになります。

<DateTimeExample /> 

答えて

1

XSDは、XML文書の有効性の条件を指定します。空の要素が終了タグを使用するのか、空のタグを使用するのかは、それらの条件の一部ではありません。両方の形式はXMLレベルで同等であり、XSDを介して制御することはできません。

XSDを入力として使用し、XMLを出力として生成する任意のツールは、終了タグまたは空タグを生成するように構成することができます。しかし、準拠しているXMLプロセッサはどのフォームが使われているか気にしません。

nillable="true"が実際に行うことは、関連付けられた要素がxsi:nil属性を持つことができるかどうかを制御します。これは、要素の内容がnilであることを帯域外で示すことです。 W3C Schema Part 0: Primerのセクション2.9 Nil Valuesのnil値の詳細を参照してください。

+0

私は理解しています。情報をよろしくお願いします! – user2388887

関連する問題