Xml XSD的默认值
这里询问XSD文件中指定的默认值。基本上,您可以说字段“foo”默认为值“bar” 我想知道的是。。。是否可以将字段默认值作为另一个字段中的值?如果字段“foo”是“bar”而“otherfoo”是空的,我可以说它的默认值是“foo”中的值吗。。。大致如下:Xml XSD的默认值,xml,schema,xsd,Xml,Schema,Xsd,这里询问XSD文件中指定的默认值。基本上,您可以说字段“foo”默认为值“bar” 我想知道的是。。。是否可以将字段默认值作为另一个字段中的值?如果字段“foo”是“bar”而“otherfoo”是空的,我可以说它的默认值是“foo”中的值吗。。。大致如下: <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="button" type="button"/> <xs
<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" />
不幸的是,这是不可能的,事实上,XML模式很少或根本不支持跨元素依赖关系(包括验证)。我没有看到任何迹象表明这是可能的,所以我并不惊讶。。。这让我很难过,因为现在我必须编辑代码来完成“er”的工作。无论如何,我不相信模式是适合这种事情的地方。如果您正在使用XSLT读取文件以编程该级别的默认值,那么就很容易了。