我正在處理用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