在xsd冗余中使用=“可选”吗?

时间:2011-05-05 14:02:01

标签: xml xsd schema

如果我将use的{​​{1}}定义为xs:attribute或者根本没有定义它,那么它是否对任何目的(验证,绑定......)都很重要?


如果它是多余的,为什么要提供它?

3 个答案:

答案 0 :(得分:22)

是的,这是多余的。

这个section of the XSD Primer解释了出现约束的血腥细节,但这里是相关部分:

  

use的默认值为optional

与所有明确指定的值匹配的默认值:它只是区分“不关心”和“我实际上想要那个值”的方法。

答案 1 :(得分:7)

许多语言设计者试图遵循一个原则,即如果有多个选项,其中一个是默认选项,那么您应该能够明确地请求默认值,而不是仅仅依赖于什么都不做。

答案 2 :(得分:1)

这是默认值,所以是多余的。它可能是为标记创建者提供的,他们希望表明他们确实考虑过这种用法,或者可能在编程时创建模式时更容易动态切换值。