This question这里询问XSD文件中指定的默认值。基本上你可以说字段“foo”默认值为“bar”
我想知道的...是否可以将字段默认值作为另一个字段中的值?如果字段“foo”是“bar”并且“otherfoo”为空,我可以说它的默认值是“foo”中的值......类似于以下内容:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="button" type="button"/>
<xs:complexType name="button">
<xs:attribute name="id" type="xs:string"/>
<xs:attribute name="label1" type="xs:string" default="Go"/>
<xs:attribute name="label2" type="xs:string" default=label1/>
</xs:complexType>
</xs:schema>
<button id="1"/>
Label1默认为“Go”... Label2默认为Label1中的值。
目标是删除冗余,例如:
<Field Name="State" DataSourceField="State" />
答案 0 :(得分:3)
不幸的是,这是不可能的,实际上XML Schema很少或根本不支持跨元素依赖(包括验证)。