我正在处理用XSD文件初始化的XmlSchema对象。 XSD文件包含一些验证规则(类型,最小值,最大值等),并且某些元素具有默认值属性。如何从XmlSchema获取默认值
下面是一个简单的例子:
1. XML文件:
<person>
<first>john</first>
<last>doe</last>
<age>50</age>
</person>
XML是在如下的对象被加载。
2. XSD文件:
<?xml version="1.0" encoding="iso-8859-1" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="person" >
<xs:complexType>
<xs:all>
<xs:element name ="first" type="xs:string" minOccurs="0"/>
<xs:element name ="last" type="xs:string" minOccurs="0"/>
<xs:element name ="age" type="xs:integer" minOccurs="0" default="30"/>
</xs:all>
</xs:complexType>
</xs:element>
</xs:schema>
的XSD被加载到的XmlSchema对象。
3.我想检索年龄的默认值,而不执行验证和常规的XML解析,如果我必须执行验证,如果节点验证成功(验证处理程序不在在成功时调用)?
我试图获得值为IXmlSchemaInfo.SchemaElement
,但它在验证发生后设置为空。
OK,一些澄清:
的默认值是指当用户没有指定的年龄元素的默认值。该XML可能是:
<person>
<first>john</first>
<last>doe</last>
<age></age>
</person>
我会尝试更精确:
- 我有三个文本框,txtFirst,txtLast和txtAge。
- 我有一个三个属性的数据对象。第一,最后和年龄。
- 将文本框绑定到其是基于XML的文件被初始化的数据对象,所以当出现了“年龄”没有价值,我想从架构
不是很确定'默认值'是什么意思,模式允许的最低有效值?看来xml已经有了一个值。请提供实际的模式和实际的XML。 – Jodrell 2011-06-07 09:01:44