【发布时间】:2013-09-09 09:13:41
【问题描述】:
是否可以为 XML 模式中的缺失元素定义默认值。我有以下sn-p:
<xs:element name="protocol" nillable="false" minOccurs="0" default="ftp">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="ftp"/>
<xs:enumeration value="webdav"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
如果我在 XML 文件中有
<protocol>ftp</protocol>
或
<protocol>webdav</protocol>
它验证并且我获得了正确的值。 如果我在 XML 文件中有
<protocol></protocol>
它也验证了,我获得了 ftp 的默认值。
我的搜索显示默认属性值在缺少属性时应用,而默认元素值在元素为空时应用。是否可以为缺少的元素设置默认值?
问候
兰比乌斯
【问题讨论】:
-
minOccurs应该是 1 -
我希望协议元素是可选的,但如果缺少,它应该是 ftp。看起来这是不可能的,我应该在应用程序中处理该逻辑,而不是在架构中。